From c0100454cf37833d23fdb9d24412de659f683c12 Mon Sep 17 00:00:00 2001 From: Pavel Machek Date: Wed, 10 May 2000 06:54:40 +0000 Subject: Added more convient interface for ea_find. What is special about int default;? Compiler chokes on that! --- nest/route.h | 1 + nest/rt-attr.c | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/nest/route.h b/nest/route.h index d15ffae6..523d3905 100644 --- a/nest/route.h +++ b/nest/route.h @@ -324,6 +324,7 @@ typedef struct ea_list { #define EALF_CACHED 4 /* Attributes belonging to cached rta */ eattr *ea_find(ea_list *, unsigned ea); +int ea_get_int(ea_list *, unsigned ea, int def); void ea_dump(ea_list *); void ea_sort(ea_list *); /* Sort entries in all sub-lists */ unsigned ea_scan(ea_list *); /* How many bytes do we need for merged ea_list */ diff --git a/nest/rt-attr.c b/nest/rt-attr.c index d2e5ae91..53e85a6a 100644 --- a/nest/rt-attr.c +++ b/nest/rt-attr.c @@ -70,6 +70,15 @@ ea_find(ea_list *e, unsigned id) return a; } +int +ea_get_int(ea_list *e, unsigned id, int def) +{ + eattr *a = ea_find(e, id); + if (!a) + return def; + return a->u.data; +} + static inline void ea_do_sort(ea_list *e) { -- cgit v1.2.3