Commit 9123de2c043996050bacf77031cad845f5976f5d
Committed by
David S. Miller
1 parent
57dab5d0bf
[NETFILTER]: ip6table_mangle: reroute when nfmark changes in NF_IP6_LOCAL_OUT
Now that IPv6 supports policy routing we need to reroute in NF_IP6_LOCAL_OUT when the mark value changes. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Showing 3 changed files with 3 additions and 8 deletions Side-by-side Diff
include/linux/netfilter_ipv6.h
include/net/ip6_route.h
net/ipv6/netfilter/ip6table_mangle.c
... | ... | @@ -180,12 +180,8 @@ |
180 | 180 | && (memcmp(&(*pskb)->nh.ipv6h->saddr, &saddr, sizeof(saddr)) |
181 | 181 | || memcmp(&(*pskb)->nh.ipv6h->daddr, &daddr, sizeof(daddr)) |
182 | 182 | || (*pskb)->nfmark != nfmark |
183 | - || (*pskb)->nh.ipv6h->hop_limit != hop_limit)) { | |
184 | - | |
185 | - /* something which could affect routing has changed */ | |
186 | - | |
187 | - DEBUGP("ip6table_mangle: we'd need to re-route a packet\n"); | |
188 | - } | |
183 | + || (*pskb)->nh.ipv6h->hop_limit != hop_limit)) | |
184 | + return ip6_route_me_harder(*pskb) == 0 ? ret : NF_DROP; | |
189 | 185 | |
190 | 186 | return ret; |
191 | 187 | } |