flow: virtualize flow cache entry methods
[firefly-linux-kernel-4.4.55.git] / include / net / xfrm.h
index a7df3275b86027c7c56f4ca1d5a4c7de3f4846f7..35396e2dd1dce4cddc247b07af97fca47e9956b7 100644 (file)
@@ -19,6 +19,7 @@
 #include <net/route.h>
 #include <net/ipv6.h>
 #include <net/ip6_fib.h>
+#include <net/flow.h>
 
 #include <linux/interrupt.h>
 
@@ -275,7 +276,8 @@ struct xfrm_policy_afinfo {
                                             struct dst_entry *dst,
                                             int nfheader_len);
        int                     (*fill_dst)(struct xfrm_dst *xdst,
-                                           struct net_device *dev);
+                                           struct net_device *dev,
+                                           struct flowi *fl);
 };
 
 extern int xfrm_policy_register_afinfo(struct xfrm_policy_afinfo *afinfo);
@@ -480,6 +482,7 @@ struct xfrm_policy {
        atomic_t                refcnt;
        struct timer_list       timer;
 
+       struct flow_cache_object flo;
        u32                     priority;
        u32                     index;
        struct xfrm_mark        mark;