1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 **************************************************************************** 11 ****************************************************************************/ 12#ifndef _LINUX_IF_BRIDGE_H 13#define _LINUX_IF_BRIDGE_H 14 15#include <linux/types.h> 16 17#define SYSFS_BRIDGE_ATTR "bridge" 18#define SYSFS_BRIDGE_FDB "brforward" 19#define SYSFS_BRIDGE_PORT_SUBDIR "brif" 20#define SYSFS_BRIDGE_PORT_ATTR "brport" 21#define SYSFS_BRIDGE_PORT_LINK "bridge" 22 23#define BRCTL_VERSION 1 24 25#define BRCTL_GET_VERSION 0 26#define BRCTL_GET_BRIDGES 1 27#define BRCTL_ADD_BRIDGE 2 28#define BRCTL_DEL_BRIDGE 3 29#define BRCTL_ADD_IF 4 30#define BRCTL_DEL_IF 5 31#define BRCTL_GET_BRIDGE_INFO 6 32#define BRCTL_GET_PORT_LIST 7 33#define BRCTL_SET_BRIDGE_FORWARD_DELAY 8 34#define BRCTL_SET_BRIDGE_HELLO_TIME 9 35#define BRCTL_SET_BRIDGE_MAX_AGE 10 36#define BRCTL_SET_AGEING_TIME 11 37#define BRCTL_SET_GC_INTERVAL 12 38#define BRCTL_GET_PORT_INFO 13 39#define BRCTL_SET_BRIDGE_STP_STATE 14 40#define BRCTL_SET_BRIDGE_PRIORITY 15 41#define BRCTL_SET_PORT_PRIORITY 16 42#define BRCTL_SET_PATH_COST 17 43#define BRCTL_GET_FDB_ENTRIES 18 44 45#define BR_STATE_DISABLED 0 46#define BR_STATE_LISTENING 1 47#define BR_STATE_LEARNING 2 48#define BR_STATE_FORWARDING 3 49#define BR_STATE_BLOCKING 4 50 51struct __bridge_info 52{ 53 __u64 designated_root; 54 __u64 bridge_id; 55 __u32 root_path_cost; 56 __u32 max_age; 57 __u32 hello_time; 58 __u32 forward_delay; 59 __u32 bridge_max_age; 60 __u32 bridge_hello_time; 61 __u32 bridge_forward_delay; 62 __u8 topology_change; 63 __u8 topology_change_detected; 64 __u8 root_port; 65 __u8 stp_enabled; 66 __u32 ageing_time; 67 __u32 gc_interval; 68 __u32 hello_timer_value; 69 __u32 tcn_timer_value; 70 __u32 topology_change_timer_value; 71 __u32 gc_timer_value; 72}; 73 74struct __port_info 75{ 76 __u64 designated_root; 77 __u64 designated_bridge; 78 __u16 port_id; 79 __u16 designated_port; 80 __u32 path_cost; 81 __u32 designated_cost; 82 __u8 state; 83 __u8 top_change_ack; 84 __u8 config_pending; 85 __u8 unused0; 86 __u32 message_age_timer_value; 87 __u32 forward_delay_timer_value; 88 __u32 hold_timer_value; 89}; 90 91struct __fdb_entry 92{ 93 __u8 mac_addr[6]; 94 __u8 port_no; 95 __u8 is_local; 96 __u32 ageing_timer_value; 97 __u32 unused; 98}; 99 100#endif 101