]> Pileus Git - ~andy/linux/blobdiff - net/xfrm/xfrm_policy.c
ipv6: fix incorrect ipsec fragment
[~andy/linux] / net / xfrm / xfrm_policy.c
index 3c87a1c4066f7ffdaf38dd1f4bb1405a3cb4043b..ccfbd328a69d7948736157555bfa857236875156 100644 (file)
@@ -26,6 +26,7 @@
 #include <linux/cache.h>
 #include <linux/audit.h>
 #include <net/dst.h>
+#include <net/flow.h>
 #include <net/xfrm.h>
 #include <net/ip.h>
 #ifdef CONFIG_XFRM_STATISTICS
@@ -1920,6 +1921,9 @@ no_transform:
        }
 ok:
        xfrm_pols_put(pols, drop_pols);
+       if (dst && dst->xfrm &&
+           dst->xfrm->props.mode == XFRM_MODE_TUNNEL)
+               dst->flags |= DST_XFRM_TUNNEL;
        return dst;
 
 nopol: