summaryrefslogtreecommitdiff
path: root/system.h
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2011-10-09 22:30:16 +0200
committerFelix Fietkau <nbd@openwrt.org>2011-10-09 22:30:16 +0200
commit6103b065ee1fa7c9e3766b981cd090928683a2a6 (patch)
tree2f98e5893716b9d9978b3ff247ae93853f63b838 /system.h
parent76a04646be82ed9b9c80d86ac25b151bce36bffa (diff)
downloadnetifd-6103b065ee1fa7c9e3766b981cd090928683a2a6.tar.gz
add more options for bridges, enable stp by default and set forwarding delay to 1
Diffstat (limited to 'system.h')
-rw-r--r--system.h19
1 files changed, 18 insertions, 1 deletions
diff --git a/system.h b/system.h
index c9b28c8..a2bcf04 100644
--- a/system.h
+++ b/system.h
@@ -5,9 +5,26 @@
#include "device.h"
#include "interface-ip.h"
+enum bridge_opt {
+ /* stp and forward delay always set */
+ BRIDGE_OPT_AGEING_TIME = (1 << 0),
+ BRIDGE_OPT_HELLO_TIME = (1 << 1),
+ BRIDGE_OPT_MAX_AGE = (1 << 2),
+};
+
+struct bridge_config {
+ enum bridge_opt flags;
+ bool stp;
+ int forward_delay;
+
+ int ageing_time;
+ int hello_time;
+ int max_age;
+};
+
int system_init(void);
-int system_bridge_addbr(struct device *bridge);
+int system_bridge_addbr(struct device *bridge, struct bridge_config *cfg);
int system_bridge_delbr(struct device *bridge);
int system_bridge_addif(struct device *bridge, struct device *dev);
int system_bridge_delif(struct device *bridge, struct device *dev);