[NETFILTER]: nf_conntrack: add __nf_copy() to copy members in skb
[firefly-linux-kernel-4.4.55.git] / include / linux / dccp.h
index ed6cc8962d87b9e8c50df5059b6c475450cf1a80..fdd4217f10471670e114003546bd8182d09ad70d 100644 (file)
@@ -176,20 +176,20 @@ enum {
 };
 
 /* DCCP features (RFC 4340 section 6.4) */
- enum {
-       DCCPF_RESERVED = 0,
-       DCCPF_CCID = 1,
+enum {
+       DCCPF_RESERVED = 0,
+       DCCPF_CCID = 1,
        DCCPF_SHORT_SEQNOS = 2,         /* XXX: not yet implemented */
-       DCCPF_SEQUENCE_WINDOW = 3,
+       DCCPF_SEQUENCE_WINDOW = 3,
        DCCPF_ECN_INCAPABLE = 4,        /* XXX: not yet implemented */
-       DCCPF_ACK_RATIO = 5,
-       DCCPF_SEND_ACK_VECTOR = 6,
-       DCCPF_SEND_NDP_COUNT = 7,
+       DCCPF_ACK_RATIO = 5,
+       DCCPF_SEND_ACK_VECTOR = 6,
+       DCCPF_SEND_NDP_COUNT = 7,
        DCCPF_MIN_CSUM_COVER = 8,
        DCCPF_DATA_CHECKSUM = 9,        /* XXX: not yet implemented */
-       /* 10-127 reserved */
-       DCCPF_MIN_CCID_SPECIFIC = 128,
-       DCCPF_MAX_CCID_SPECIFIC = 255,
+       /* 10-127 reserved */
+       DCCPF_MIN_CCID_SPECIFIC = 128,
+       DCCPF_MAX_CCID_SPECIFIC = 255,
 };
 
 /* this structure is argument to DCCP_SOCKOPT_CHANGE_X */
@@ -260,19 +260,20 @@ enum {
 
 static inline struct dccp_hdr *dccp_hdr(const struct sk_buff *skb)
 {
-       return (struct dccp_hdr *)skb->h.raw;
+       return (struct dccp_hdr *)skb_transport_header(skb);
 }
 
 static inline struct dccp_hdr *dccp_zeroed_hdr(struct sk_buff *skb, int headlen)
 {
-       skb->h.raw = skb_push(skb, headlen);
-       memset(skb->h.raw, 0, headlen);
-       return dccp_hdr(skb);
+       skb_push(skb, headlen);
+       skb_reset_transport_header(skb);
+       return memset(skb_transport_header(skb), 0, headlen);
 }
 
 static inline struct dccp_hdr_ext *dccp_hdrx(const struct sk_buff *skb)
 {
-       return (struct dccp_hdr_ext *)(skb->h.raw + sizeof(struct dccp_hdr));
+       return (struct dccp_hdr_ext *)(skb_transport_header(skb) +
+                                      sizeof(struct dccp_hdr));
 }
 
 static inline unsigned int __dccp_basic_hdr_len(const struct dccp_hdr *dh)
@@ -301,12 +302,14 @@ static inline __u64 dccp_hdr_seq(const struct sk_buff *skb)
 
 static inline struct dccp_hdr_request *dccp_hdr_request(struct sk_buff *skb)
 {
-       return (struct dccp_hdr_request *)(skb->h.raw + dccp_basic_hdr_len(skb));
+       return (struct dccp_hdr_request *)(skb_transport_header(skb) +
+                                          dccp_basic_hdr_len(skb));
 }
 
 static inline struct dccp_hdr_ack_bits *dccp_hdr_ack_bits(const struct sk_buff *skb)
 {
-       return (struct dccp_hdr_ack_bits *)(skb->h.raw + dccp_basic_hdr_len(skb));
+       return (struct dccp_hdr_ack_bits *)(skb_transport_header(skb) +
+                                           dccp_basic_hdr_len(skb));
 }
 
 static inline u64 dccp_hdr_ack_seq(const struct sk_buff *skb)
@@ -317,12 +320,14 @@ static inline u64 dccp_hdr_ack_seq(const struct sk_buff *skb)
 
 static inline struct dccp_hdr_response *dccp_hdr_response(struct sk_buff *skb)
 {
-       return (struct dccp_hdr_response *)(skb->h.raw + dccp_basic_hdr_len(skb));
+       return (struct dccp_hdr_response *)(skb_transport_header(skb) +
+                                           dccp_basic_hdr_len(skb));
 }
 
 static inline struct dccp_hdr_reset *dccp_hdr_reset(struct sk_buff *skb)
 {
-       return (struct dccp_hdr_reset *)(skb->h.raw + dccp_basic_hdr_len(skb));
+       return (struct dccp_hdr_reset *)(skb_transport_header(skb) +
+                                        dccp_basic_hdr_len(skb));
 }
 
 static inline unsigned int __dccp_hdr_len(const struct dccp_hdr *dh)
@@ -427,7 +432,7 @@ struct dccp_service_list {
 };
 
 #define DCCP_SERVICE_INVALID_VALUE htonl((__u32)-1)
-#define DCCP_SERVICE_CODE_IS_ABSENT             0
+#define DCCP_SERVICE_CODE_IS_ABSENT            0
 
 static inline int dccp_list_has_service(const struct dccp_service_list *sl,
                                        const __be32 service)
@@ -436,7 +441,7 @@ static inline int dccp_list_has_service(const struct dccp_service_list *sl,
                u32 i = sl->dccpsl_nr;
                while (i--)
                        if (sl->dccpsl_list[i] == service)
-                               return 1; 
+                               return 1;
        }
        return 0;
 }
@@ -511,7 +516,7 @@ struct dccp_sock {
        __u8                            dccps_hc_tx_insert_options:1;
        struct timer_list               dccps_xmit_timer;
 };
+
 static inline struct dccp_sock *dccp_sk(const struct sock *sk)
 {
        return (struct dccp_sock *)sk;