bridge: fix IPV6=n build
authorRandy Dunlap <randy.dunlap@oracle.com>
Tue, 17 Jun 2008 23:16:13 +0000 (16:16 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 17 Jun 2008 23:16:13 +0000 (16:16 -0700)
Fix bridge netfilter code so that it uses CONFIG_IPV6 as needed:

net/built-in.o: In function `ebt_filter_ip6':
ebt_ip6.c:(.text+0x87c37): undefined reference to `ipv6_skip_exthdr'
net/built-in.o: In function `ebt_log_packet':
ebt_log.c:(.text+0x88dee): undefined reference to `ipv6_skip_exthdr'
make[1]: *** [.tmp_vmlinux1] Error 1

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/bridge/netfilter/Kconfig
net/bridge/netfilter/Makefile
net/bridge/netfilter/ebt_log.c

index fb684c2ff8b60ab24f3d7c34c9777fdceb98d2f2..540df4106bec3164d516be36fa4f1732bb9cf2de 100644 (file)
@@ -85,7 +85,7 @@ config BRIDGE_EBT_IP
 
 config BRIDGE_EBT_IP6
        tristate "ebt: IP6 filter support"
-       depends on BRIDGE_NF_EBTABLES
+       depends on BRIDGE_NF_EBTABLES && IPV6
        help
          This option adds the IP6 match, which allows basic IPV6 header field
          filtering.
index dd960645b4139ca1c8e0545ae75bf1a81fad7d8c..0718699540b023fd6d95be217b79e4bfe5029821 100644 (file)
@@ -14,7 +14,7 @@ obj-$(CONFIG_BRIDGE_EBT_802_3) += ebt_802_3.o
 obj-$(CONFIG_BRIDGE_EBT_AMONG) += ebt_among.o
 obj-$(CONFIG_BRIDGE_EBT_ARP) += ebt_arp.o
 obj-$(CONFIG_BRIDGE_EBT_IP) += ebt_ip.o
-obj-$(CONFIG_BRIDGE_EBT_IP) += ebt_ip6.o
+obj-$(CONFIG_BRIDGE_EBT_IP6) += ebt_ip6.o
 obj-$(CONFIG_BRIDGE_EBT_LIMIT) += ebt_limit.o
 obj-$(CONFIG_BRIDGE_EBT_MARK) += ebt_mark_m.o
 obj-$(CONFIG_BRIDGE_EBT_PKTTYPE) += ebt_pkttype.o
index c883ec8a28b46c77673b1ada6316fd10ae983353..2f430d4ae9119d7ca7f723c424144aa5548aa106 100644 (file)
@@ -123,6 +123,7 @@ ebt_log_packet(unsigned int pf, unsigned int hooknum,
                goto out;
        }
 
+#if defined(CONFIG_BRIDGE_EBT_IP6) || defined(CONFIG_BRIDGE_EBT_IP6_MODULE)
        if ((bitmask & EBT_LOG_IP6) && eth_hdr(skb)->h_proto ==
           htons(ETH_P_IPV6)) {
                const struct ipv6hdr *ih;
@@ -146,6 +147,7 @@ ebt_log_packet(unsigned int pf, unsigned int hooknum,
                print_ports(skb, nexthdr, offset_ph);
                goto out;
        }
+#endif
 
        if ((bitmask & EBT_LOG_ARP) &&
            ((eth_hdr(skb)->h_proto == htons(ETH_P_ARP)) ||