]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/net/flow.h
[PATCH] Split i386 and x86_64 ptrace.h
[linux-2.6-omap-h63xx.git] / include / net / flow.h
index ec7eb86eb2035fa7ed44dce421b7a0579d617329..3ca210ec1379f549e0e2f0d4e3fd821283b70709 100644 (file)
@@ -26,12 +26,13 @@ struct flowi {
                struct {
                        struct in6_addr         daddr;
                        struct in6_addr         saddr;
+                       __u32                   fwmark;
                        __u32                   flowlabel;
                } ip6_u;
 
                struct {
-                       __u16                   daddr;
-                       __u16                   saddr;
+                       __le16                  daddr;
+                       __le16                  saddr;
                        __u32                   fwmark;
                        __u8                    scope;
                } dn_u;
@@ -42,6 +43,7 @@ struct flowi {
 #define fld_scope      nl_u.dn_u.scope
 #define fl6_dst                nl_u.ip6_u.daddr
 #define fl6_src                nl_u.ip6_u.saddr
+#define fl6_fwmark     nl_u.ip6_u.fwmark
 #define fl6_flowlabel  nl_u.ip6_u.flowlabel
 #define fl4_dst                nl_u.ip4_u.daddr
 #define fl4_src                nl_u.ip4_u.saddr
@@ -64,20 +66,30 @@ struct flowi {
                } icmpt;
 
                struct {
-                       __u16   sport;
-                       __u16   dport;
+                       __le16  sport;
+                       __le16  dport;
                        __u8    objnum;
                        __u8    objnamel; /* Not 16 bits since max val is 16 */
                        __u8    objname[16]; /* Not zero terminated */
                } dnports;
 
                __u32           spi;
+
+#ifdef CONFIG_IPV6_MIP6
+               struct {
+                       __u8    type;
+               } mht;
+#endif
        } uli_u;
 #define fl_ip_sport    uli_u.ports.sport
 #define fl_ip_dport    uli_u.ports.dport
 #define fl_icmp_type   uli_u.icmpt.type
 #define fl_icmp_code   uli_u.icmpt.code
 #define fl_ipsec_spi   uli_u.spi
+#ifdef CONFIG_IPV6_MIP6
+#define fl_mh_type     uli_u.mht.type
+#endif
+       __u32           secid;  /* used by xfrm; see secid.txt */
 } __attribute__((__aligned__(BITS_PER_LONG/8)));
 
 #define FLOW_DIR_IN    0
@@ -85,10 +97,10 @@ struct flowi {
 #define FLOW_DIR_FWD   2
 
 struct sock;
-typedef void (*flow_resolve_t)(struct flowi *key, u32 sk_sid, u16 family, u8 dir,
+typedef void (*flow_resolve_t)(struct flowi *key, u16 family, u8 dir,
                               void **objp, atomic_t **obj_refp);
 
-extern void *flow_cache_lookup(struct flowi *key, u32 sk_sid, u16 family, u8 dir,
+extern void *flow_cache_lookup(struct flowi *key, u16 family, u8 dir,
                               flow_resolve_t resolver);
 extern void flow_cache_flush(void);
 extern atomic_t flow_cache_genid;