summary refs log tree commit diff
path: root/include/net/flow.h
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/flow.h
parent1d28f42c1bd4bb2363d88df74d0128b4da135b4a (diff)
downloadlinux-806566cc78390b1565ded91712cd28619cea5f57.tar.gz
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/flow.h')
-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 {