summaryrefslogtreecommitdiffstats
path: root/include/net
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2011-03-11 18:22:00 -0500
committerDavid S. Miller <davem@davemloft.net>2011-03-12 15:08:45 -0800
commit806566cc78390b1565ded91712cd28619cea5f57 (patch)
treeff82f281fd8f5a09820e88870e8fdd5199307764 /include/net
parent1d28f42c1bd4bb2363d88df74d0128b4da135b4a (diff)
downloadlinux-stable-806566cc78390b1565ded91712cd28619cea5f57.tar.gz
linux-stable-806566cc78390b1565ded91712cd28619cea5f57.tar.bz2
linux-stable-806566cc78390b1565ded91712cd28619cea5f57.zip
net: Create struct flowi_common
Pull out the AF independent members of struct flowi into a new struct flowi_common Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r--include/net/flow.h30
1 files changed, 21 insertions, 9 deletions
diff --git a/include/net/flow.h b/include/net/flow.h
index 8c4dbd078490..775968716b47 100644
--- a/include/net/flow.h
+++ b/include/net/flow.h
@@ -10,18 +10,30 @@
#include <linux/in6.h>
#include <asm/atomic.h>
-struct flowi {
- int flowi_oif;
- int flowi_iif;
- __u32 flowi_mark;
- __u8 flowi_tos;
- __u8 flowi_scope;
- __u8 flowi_proto;
- __u8 flowi_flags;
+struct flowi_common {
+ int flowic_oif;
+ int flowic_iif;
+ __u32 flowic_mark;
+ __u8 flowic_tos;
+ __u8 flowic_scope;
+ __u8 flowic_proto;
+ __u8 flowic_flags;
#define FLOWI_FLAG_ANYSRC 0x01
#define FLOWI_FLAG_PRECOW_METRICS 0x02
#define FLOWI_FLAG_CAN_SLEEP 0x04
- __u32 flowi_secid;
+ __u32 flowic_secid;
+};
+
+struct flowi {
+ struct flowi_common __fl_common;
+#define flowi_oif __fl_common.flowic_oif
+#define flowi_iif __fl_common.flowic_iif
+#define flowi_mark __fl_common.flowic_mark
+#define flowi_tos __fl_common.flowic_tos
+#define flowi_scope __fl_common.flowic_scope
+#define flowi_proto __fl_common.flowic_proto
+#define flowi_flags __fl_common.flowic_flags
+#define flowi_secid __fl_common.flowic_secid
union {
struct {