dccp: fix bug in sequence number validation during connection setup
[firefly-linux-kernel-4.4.55.git] / include / linux / dccp.h
index 710c04302a157f1c3d56a8f4f163d2ce66347497..eaf95a023af4ee3b4276aa892a8280181a8cfeee 100644 (file)
@@ -376,8 +376,10 @@ static inline unsigned int dccp_hdr_len(const struct sk_buff *skb)
 /**
  * struct dccp_request_sock  -  represent DCCP-specific connection request
  * @dreq_inet_rsk: structure inherited from
- * @dreq_iss: initial sequence number sent on the Response (RFC 4340, 7.1)
- * @dreq_isr: initial sequence number received on the Request
+ * @dreq_iss: initial sequence number, sent on the first Response (RFC 4340, 7.1)
+ * @dreq_gss: greatest sequence number sent (for retransmitted Responses)
+ * @dreq_isr: initial sequence number received in the first Request
+ * @dreq_gsr: greatest sequence number received (for retransmitted Request(s))
  * @dreq_service: service code present on the Request (there is just one)
  * @dreq_featneg: feature negotiation options for this connection
  * The following two fields are analogous to the ones in dccp_sock:
@@ -387,7 +389,9 @@ static inline unsigned int dccp_hdr_len(const struct sk_buff *skb)
 struct dccp_request_sock {
        struct inet_request_sock dreq_inet_rsk;
        __u64                    dreq_iss;
+       __u64                    dreq_gss;
        __u64                    dreq_isr;
+       __u64                    dreq_gsr;
        __be32                   dreq_service;
        struct list_head         dreq_featneg;
        __u32                    dreq_timestamp_echo;