summaryrefslogtreecommitdiffstats
path: root/sys/net/bridge.h
diff options
context:
space:
mode:
authorps <ps@FreeBSD.org>2001-10-05 05:45:27 +0000
committerps <ps@FreeBSD.org>2001-10-05 05:45:27 +0000
commitd0afbb304af764bf12d6222552917b0f272c5201 (patch)
tree0b476ffbda93b6f592ea67ee5913d3d077fee0cf /sys/net/bridge.h
parentda7f535b3c9dff24f74f65a207240841d391ec18 (diff)
downloadFreeBSD-src-d0afbb304af764bf12d6222552917b0f272c5201.zip
FreeBSD-src-d0afbb304af764bf12d6222552917b0f272c5201.tar.gz
Make it so dummynet and bridge can be loaded as modules.
Submitted by: billf
Diffstat (limited to 'sys/net/bridge.h')
-rw-r--r--sys/net/bridge.h15
1 files changed, 9 insertions, 6 deletions
diff --git a/sys/net/bridge.h b/sys/net/bridge.h
index 4f81ebe..82db1ca 100644
--- a/sys/net/bridge.h
+++ b/sys/net/bridge.h
@@ -76,8 +76,6 @@ typedef struct _bdg_addr {
extern bdg_addr bdg_addresses[BDG_MAX_PORTS];
extern int bdg_ports ;
-extern void bdgtakeifaces(void);
-
/*
* out of the 6 bytes, the last ones are more "variable". Since
* we are on a little endian machine, we have to do some gimmick...
@@ -86,10 +84,6 @@ extern void bdgtakeifaces(void);
#define HASH_FN(addr) ( \
ntohs( ((short *)addr)[1] ^ ((short *)addr)[2] ) & (HASH_SIZE -1))
-struct ifnet *bridge_in(struct ifnet *ifp, struct ether_header *eh);
-/* bdg_forward frees the mbuf if necessary, returning null */
-struct mbuf *bdg_forward(struct mbuf *m0, struct ether_header *eh, struct ifnet *dst);
-
#ifdef __i386__
#define BDG_MATCH(a,b) ( \
((unsigned short *)(a))[2] == ((unsigned short *)(b))[2] && \
@@ -136,6 +130,15 @@ struct bdg_stats {
#define BDG_STAT(ifp, type) bdg_stats.s[ifp->if_index].p_in[(int)type]++
#ifdef _KERNEL
+typedef struct ifnet *bridge_in_t(struct ifnet *, struct ether_header *);
+/* bdg_forward frees the mbuf if necessary, returning null */
+typedef struct mbuf *bdg_forward_t(struct mbuf *, struct ether_header *const,
+ struct ifnet *);
+typedef void bdgtakeifaces_t(void);
+extern bridge_in_t *bridge_in_ptr;
+extern bdg_forward_t *bdg_forward_ptr;
+extern bdgtakeifaces_t *bdgtakeifaces_ptr;
+
/*
* Find the right pkt destination:
* BDG_BCAST is a broadcast
OpenPOWER on IntegriCloud