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 fb684c2..540df41 100644 (file)
@@ -85,7 +85,7 @@ config BRIDGE_EBT_IP
 
 config BRIDGE_EBT_IP6
        tristate "ebt: IP6 filter support"
 
 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.
        help
          This option adds the IP6 match, which allows basic IPV6 header field
          filtering.
index dd96064..0718699 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_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
 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 c883ec8..2f430d4 100644 (file)
@@ -123,6 +123,7 @@ ebt_log_packet(unsigned int pf, unsigned int hooknum,
                goto out;
        }
 
                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;
        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;
        }
                print_ports(skb, nexthdr, offset_ph);
                goto out;
        }
+#endif
 
        if ((bitmask & EBT_LOG_ARP) &&
            ((eth_hdr(skb)->h_proto == htons(ETH_P_ARP)) ||
 
        if ((bitmask & EBT_LOG_ARP) &&
            ((eth_hdr(skb)->h_proto == htons(ETH_P_ARP)) ||