aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/flow.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/net/flow.h')
-rw-r--r--include/net/flow.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/net/flow.h b/include/net/flow.h
index 035aa7716967..51373f3a5e31 100644
--- a/include/net/flow.h
+++ b/include/net/flow.h
@@ -11,6 +11,7 @@
11#include <linux/in6.h> 11#include <linux/in6.h>
12#include <linux/atomic.h> 12#include <linux/atomic.h>
13#include <net/flow_dissector.h> 13#include <net/flow_dissector.h>
14#include <linux/uidgid.h>
14 15
15/* 16/*
16 * ifindex generation is per-net namespace, and loopback is 17 * ifindex generation is per-net namespace, and loopback is
@@ -37,6 +38,7 @@ struct flowi_common {
37#define FLOWI_FLAG_SKIP_NH_OIF 0x04 38#define FLOWI_FLAG_SKIP_NH_OIF 0x04
38 __u32 flowic_secid; 39 __u32 flowic_secid;
39 struct flowi_tunnel flowic_tun_key; 40 struct flowi_tunnel flowic_tun_key;
41 kuid_t flowic_uid;
40}; 42};
41 43
42union flowi_uli { 44union flowi_uli {
@@ -74,6 +76,7 @@ struct flowi4 {
74#define flowi4_flags __fl_common.flowic_flags 76#define flowi4_flags __fl_common.flowic_flags
75#define flowi4_secid __fl_common.flowic_secid 77#define flowi4_secid __fl_common.flowic_secid
76#define flowi4_tun_key __fl_common.flowic_tun_key 78#define flowi4_tun_key __fl_common.flowic_tun_key
79#define flowi4_uid __fl_common.flowic_uid
77 80
78 /* (saddr,daddr) must be grouped, same order as in IP header */ 81 /* (saddr,daddr) must be grouped, same order as in IP header */
79 __be32 saddr; 82 __be32 saddr;
@@ -131,6 +134,7 @@ struct flowi6 {
131#define flowi6_flags __fl_common.flowic_flags 134#define flowi6_flags __fl_common.flowic_flags
132#define flowi6_secid __fl_common.flowic_secid 135#define flowi6_secid __fl_common.flowic_secid
133#define flowi6_tun_key __fl_common.flowic_tun_key 136#define flowi6_tun_key __fl_common.flowic_tun_key
137#define flowi6_uid __fl_common.flowic_uid
134 struct in6_addr daddr; 138 struct in6_addr daddr;
135 struct in6_addr saddr; 139 struct in6_addr saddr;
136 /* Note: flowi6_tos is encoded in flowlabel, too. */ 140 /* Note: flowi6_tos is encoded in flowlabel, too. */
@@ -176,6 +180,7 @@ struct flowi {
176#define flowi_flags u.__fl_common.flowic_flags 180#define flowi_flags u.__fl_common.flowic_flags
177#define flowi_secid u.__fl_common.flowic_secid 181#define flowi_secid u.__fl_common.flowic_secid
178#define flowi_tun_key u.__fl_common.flowic_tun_key 182#define flowi_tun_key u.__fl_common.flowic_tun_key
183#define flowi_uid u.__fl_common.flowic_uid
179} __attribute__((__aligned__(BITS_PER_LONG/8))); 184} __attribute__((__aligned__(BITS_PER_LONG/8)));
180 185
181static inline struct flowi *flowi4_to_flowi(struct flowi4 *fl4) 186static inline struct flowi *flowi4_to_flowi(struct flowi4 *fl4)