History

netfilter: fix nf_conntrack_bridge/ipv6 link error

When CONFIG_IPV6 is disabled, the bridge netfilter code produces a link error: ERROR: "br_ip6_fragment" [net/bridge/netfilter/nf_conntrack_bridge.ko] undefined! ERROR: "nf_ct_frag6_gather" [net/bridge/netfilter/nf_conntrack_bridge.ko] undefined! The problem is that it assumes that whenever IPV6 is not a loadable module, we can call the functions direction. This is clearly not true when IPV6 is disabled. There are two other functions defined like this in linux/netfilter_ipv6.h, so change them all the same way.

Arnd Bergmann committed 7 years ago

Commit 43a38c31 parent 7e6daf51 file · +12 −4Browse files

Unified · Split

include/linux/netfilter_ipv6.h+12−4
@@ -75,8 +75,10 @@ static inline int nf_ipv6_chk_addr(struct net *net, const struct in6_addr *addr, · 74 unmodified lines
75 return 1;75 return 1;
76 76
77 return v6_ops->chk_addr(net, addr, dev, strict);77 return v6_ops->chk_addr(net, addr, dev, strict);
78#else78#elif IS_BUILTIN(CONFIG_IPV6)
79 return ipv6_chk_addr(net, addr, dev, strict);79 return ipv6_chk_addr(net, addr, dev, strict);
80#else
81 return 1;
80#endif82#endif
81}83}
82 84
@@ -113,8 +115,10 @@ static inline int nf_ipv6_br_defrag(struct net *net, struct sk_buff *skb, · 30 unmodified lines
113 return 1;115 return 1;
114 116
115 return v6_ops->br_defrag(net, skb, user);117 return v6_ops->br_defrag(net, skb, user);
116#else118#elif IS_BUILTIN(CONFIG_IPV6)
117 return nf_ct_frag6_gather(net, skb, user);119 return nf_ct_frag6_gather(net, skb, user);
120#else
121 return 1;
118#endif122#endif
119}123}
120 124
@@ -138,8 +142,10 @@ static inline int nf_br_ip6_fragment(struct net *net, struct sock *sk, · 17 unmodified lines
138 return 1;142 return 1;
139 143
140 return v6_ops->br_fragment(net, sk, skb, data, output);144 return v6_ops->br_fragment(net, sk, skb, data, output);
141#else145#elif IS_BUILTIN(CONFIG_IPV6)
142 return br_ip6_fragment(net, sk, skb, data, output);146 return br_ip6_fragment(net, sk, skb, data, output);
147#else
148 return 1;
143#endif149#endif
144}150}
145 151
@@ -154,8 +160,10 @@ static inline int nf_ip6_route_me_harder(struct net *net, struct sk_buff *skb) · 8 unmodified lines
154 return -EHOSTUNREACH;160 return -EHOSTUNREACH;
155 161
156 return v6_ops->route_me_harder(net, skb);162 return v6_ops->route_me_harder(net, skb);
157#else163#elif IS_BUILTIN(CONFIG_IPV6)
158 return ip6_route_me_harder(net, skb);164 return ip6_route_me_harder(net, skb);
165#else
166 return -EHOSTUNREACH;
159#endif167#endif
160}168}
161 169

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t