diff options
Diffstat (limited to 'include/net/flow.h')
-rw-r--r-- | include/net/flow.h | 5 |
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 | ||
42 | union flowi_uli { | 44 | union 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 | ||
181 | static inline struct flowi *flowi4_to_flowi(struct flowi4 *fl4) | 186 | static inline struct flowi *flowi4_to_flowi(struct flowi4 *fl4) |