summaryrefslogtreecommitdiffstats
path: root/sys/net/if_bridgevar.h
diff options
context:
space:
mode:
authorthompsa <thompsa@FreeBSD.org>2005-12-14 02:52:13 +0000
committerthompsa <thompsa@FreeBSD.org>2005-12-14 02:52:13 +0000
commitdbd94fcd442b994abe665d34aeab2f591f98f217 (patch)
tree9d77641fd4a325856117cac0087488e049e353bd /sys/net/if_bridgevar.h
parent952c53a74a9de27a465719536a17a0cbd0ef1a4e (diff)
downloadFreeBSD-src-dbd94fcd442b994abe665d34aeab2f591f98f217.zip
FreeBSD-src-dbd94fcd442b994abe665d34aeab2f591f98f217.tar.gz
Add support for creating span ports so that one can snoop bridged traffic
from another interface/machine/network. Obtained from: OpenBSD MFC after: 2 weeks
Diffstat (limited to 'sys/net/if_bridgevar.h')
-rw-r--r--sys/net/if_bridgevar.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/net/if_bridgevar.h b/sys/net/if_bridgevar.h
index 98dfcda..7ec672a 100644
--- a/sys/net/if_bridgevar.h
+++ b/sys/net/if_bridgevar.h
@@ -106,6 +106,8 @@
#define BRDGSMA 20 /* set max age (ifbrparam) */
#define BRDGSIFPRIO 21 /* set if priority (ifbreq) */
#define BRDGSIFCOST 22 /* set if path cost (ifbreq) */
+#define BRDGADDS 23 /* add bridge span member (ifbreq) */
+#define BRDGDELS 24 /* delete bridge span member (ifbreq) */
/*
* Generic bridge control request.
@@ -123,8 +125,9 @@ struct ifbreq {
#define IFBIF_LEARNING 0x01 /* if can learn */
#define IFBIF_DISCOVER 0x02 /* if sends packets w/ unknown dest. */
#define IFBIF_STP 0x04 /* if participates in spanning tree */
+#define IFBIF_SPAN 0x08 /* if is a span port */
-#define IFBIFBITS "\020\1LEARNING\2DISCOVER\3STP"
+#define IFBIFBITS "\020\1LEARNING\2DISCOVER\3STP\4SPAN"
/* BRDGFLUSH */
#define IFBF_FLUSHDYN 0x00 /* flush learned addresses only */
@@ -295,6 +298,7 @@ struct bridge_softc {
LIST_HEAD(, bridge_rtnode) *sc_rthash; /* our forwarding table */
LIST_HEAD(, bridge_rtnode) sc_rtlist; /* list version of above */
uint32_t sc_rthash_key; /* key for hash */
+ LIST_HEAD(, bridge_iflist) sc_spanlist; /* span ports list */
};
#define BRIDGE_LOCK_INIT(_sc) do { \
OpenPOWER on IntegriCloud