summaryrefslogtreecommitdiff
path: root/nest/iface.h
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2009-05-06 22:02:45 +0200
committerOndrej Zajicek <santiago@crfreenet.org>2009-05-06 22:02:45 +0200
commit20e94fb85b7097b57089e3912475ac881fd5528d (patch)
tree0f85803ddd2d27440bc177887127000963103705 /nest/iface.h
parent10ab65a8c9eb846655feacd22c29747743a65328 (diff)
A change in OSPF and RIP interface patterns.
Allows to add more interface patterns to one common 'options' section like: interface "eth3", "eth4" { options common to eth3 and eth4 }; Also removes undocumented and unnecessary ability to specify more interface patterns with different 'options' sections: interface "eth3" { options ... }, "eth4" { options ... };
Diffstat (limited to 'nest/iface.h')
-rw-r--r--nest/iface.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/nest/iface.h b/nest/iface.h
index e37f9522..f884dd90 100644
--- a/nest/iface.h
+++ b/nest/iface.h
@@ -116,16 +116,22 @@ void neigh_init(struct pool *);
* Interface Pattern Lists
*/
-struct iface_patt {
+struct iface_patt_node {
node n;
- byte *pattern; /* Interface name pattern */
- ip_addr prefix; /* Interface prefix */
+ int positive;
+ byte *pattern;
+ ip_addr prefix;
int pxlen;
+};
+
+struct iface_patt {
+ node n;
+ list ipn_list; /* A list of struct iface_patt_node */
/* Protocol-specific data follow after this structure */
};
-struct iface_patt *iface_patt_match(list *, struct iface *);
+struct iface_patt *iface_patt_find(list *, struct iface *);
int iface_patts_equal(list *, list *, int (*)(struct iface_patt *, struct iface_patt *));
#endif