From: Mark Huang Date: Tue, 1 Feb 2005 03:27:07 +0000 (+0000) Subject: - bound vnet mods by #ifdef X-Git-Tag: before-fedora-2_6_18-1_2239_FC5-vs2_0_2_2-rc6-merge~267 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=708822fbe69633679fd243519d3139ea01389643;p=linux-2.6.git - bound vnet mods by #ifdef - bound runtime vnet code by if (vnet_active) - vnet needs packet_ops and packet_family_ops, export them if configured --- diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c index df4cd7648..5d18568d2 100644 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c @@ -453,8 +453,11 @@ static int packet_rcv(struct sk_buff *skb, struct net_device *dev, struct packe sk = pt->af_packet_priv; po = pkt_sk(sk); - if ((int) sk->sk_xid > 0 && sk->sk_xid != skb->xid) +#if defined(CONFIG_VNET) || defined(CONFIG_VNET_MODULE) + if (vnet_active && + (int) sk->sk_xid > 0 && sk->sk_xid != skb->xid) goto drop; +#endif skb->dev = dev; @@ -1801,14 +1804,19 @@ struct proto_ops packet_ops = { .mmap = packet_mmap, .sendpage = sock_no_sendpage, }; -EXPORT_SYMBOL(packet_ops); +#if defined(CONFIG_VNET) || defined(CONFIG_VNET_MODULE) +EXPORT_SYMBOL(packet_ops); +struct net_proto_family packet_family_ops; +EXPORT_SYMBOL(packet_family_ops); +#else +static +#endif struct net_proto_family packet_family_ops = { .family = PF_PACKET, .create = packet_create, .owner = THIS_MODULE, }; -EXPORT_SYMBOL(packet_family_ops); static struct notifier_block packet_netdev_notifier = { .notifier_call =packet_notifier,