projects
/
openwrt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
kernel: fix ip6_tunnel compilation
[openwrt.git]
/
target
/
linux
/
generic
/
patches-4.4
/
666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
diff --git
a/target/linux/generic/patches-4.4/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
b/target/linux/generic/patches-4.4/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
index
7123c80
..
d511520
100644
(file)
--- a/
target/linux/generic/patches-4.4/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
+++ b/
target/linux/generic/patches-4.4/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
@@
-311,13
+311,13
@@
Signed-off-by: Steven Barth <cyrus@openwrt.org>
+ for (fmr = t->parms.fmrs; fmr; fmr = fmr->next) {
+ unsigned mshift = 32 - fmr->ip4_prefix_len;
+ if (ntohl(fmr->ip4_prefix.s_addr) >> mshift ==
+ for (fmr = t->parms.fmrs; fmr; fmr = fmr->next) {
+ unsigned mshift = 32 - fmr->ip4_prefix_len;
+ if (ntohl(fmr->ip4_prefix.s_addr) >> mshift ==
-+ ntohl(ip
h
->daddr) >> mshift)
++ ntohl(ip
_hdr(skb)
->daddr) >> mshift)
+ break;
+ }
+
+ /* change dstaddr according to FMR */
+ if (fmr)
+ break;
+ }
+
+ /* change dstaddr according to FMR */
+ if (fmr)
-+ ip4ip6_fmr_calc(&fl6.daddr, ip
h
, skb_tail_pointer(skb), fmr, true);
++ ip4ip6_fmr_calc(&fl6.daddr, ip
_hdr(skb)
, skb_tail_pointer(skb), fmr, true);
+
err = ip6_tnl_xmit2(skb, dev, dsfield, &fl6, encap_limit, &mtu);
if (err != 0) {
+
err = ip6_tnl_xmit2(skb, dev, dsfield, &fl6, encap_limit, &mtu);
if (err != 0) {