summaryrefslogtreecommitdiffstats
path: root/net/bridge/br_private.h
diff options
context:
space:
mode:
authorYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>2010-04-18 05:42:07 +0200
committerYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>2010-04-23 06:35:55 +0200
commit8ef2a9a59854994bace13b5c4f7edc2c8d4d124e (patch)
treeef123540d1bb398ec1c6cc9b713425e1da8b5f04 /net/bridge/br_private.h
parentipv6 mcast: Introduce include/net/mld.h for MLD definitions. (diff)
downloadlinux-8ef2a9a59854994bace13b5c4f7edc2c8d4d124e.tar.xz
linux-8ef2a9a59854994bace13b5c4f7edc2c8d4d124e.zip
bridge br_multicast: Make functions less ipv4 dependent.
Introduce struct br_ip{} to store ip address and protocol and make functions more generic so that we can support both IPv4 and IPv6 with less pain. Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Diffstat (limited to 'net/bridge/br_private.h')
-rw-r--r--net/bridge/br_private.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h
index 63181e4a2a67..45d11e49fbbb 100644
--- a/net/bridge/br_private.h
+++ b/net/bridge/br_private.h
@@ -45,6 +45,14 @@ struct mac_addr
unsigned char addr[6];
};
+struct br_ip
+{
+ union {
+ __be32 ip4;
+ } u;
+ __be16 proto;
+};
+
struct net_bridge_fdb_entry
{
struct hlist_node hlist;
@@ -64,7 +72,7 @@ struct net_bridge_port_group {
struct rcu_head rcu;
struct timer_list timer;
struct timer_list query_timer;
- __be32 addr;
+ struct br_ip addr;
u32 queries_sent;
};
@@ -77,7 +85,7 @@ struct net_bridge_mdb_entry
struct rcu_head rcu;
struct timer_list timer;
struct timer_list query_timer;
- __be32 addr;
+ struct br_ip addr;
u32 queries_sent;
};