aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/patches-3.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
diff options
context:
space:
mode:
authorZoltan Herpai <wigyori@uid0.hu>2016-11-06 11:13:37 +0100
committerGitHub <noreply@github.com>2016-11-06 11:13:37 +0100
commit9ce27c83ad3fe2fa5e6ba707dc6bc1182a0f32ed (patch)
tree87316c92634bbaa73948928ce290205a5076fd32 /target/linux/generic/patches-3.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
parentcabb0c506526fe468e4aa985086e50c440192122 (diff)
parent7862d74a17bb5a4a6d6b0d60d8cf33650b75c92a (diff)
downloadmaster-187ad058-9ce27c83ad3fe2fa5e6ba707dc6bc1182a0f32ed.tar.gz
master-187ad058-9ce27c83ad3fe2fa5e6ba707dc6bc1182a0f32ed.tar.bz2
master-187ad058-9ce27c83ad3fe2fa5e6ba707dc6bc1182a0f32ed.zip
Merge pull request #156 from wigyori/dirtycow-fixes
CVE-2016-5195 (dirtycow) fixes for 3.18, 4.1, 4.4
Diffstat (limited to 'target/linux/generic/patches-3.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch')
-rw-r--r--target/linux/generic/patches-3.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch4
1 files changed, 2 insertions, 2 deletions
diff --git a/target/linux/generic/patches-3.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch b/target/linux/generic/patches-3.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
index 000665f047..e3e4000f93 100644
--- a/target/linux/generic/patches-3.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
+++ b/target/linux/generic/patches-3.18/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
@@ -297,13 +297,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 ==
-+ ntohl(iph->daddr) >> mshift)
++ ntohl(ip_hdr(skb)->daddr) >> mshift)
+ break;
+ }
+
+ /* change dstaddr according to FMR */
+ if (fmr)
-+ ip4ip6_fmr_calc(&fl6.daddr, iph, 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) {