From: Arnaldo Carvalho de Melo Date: Sun, 21 Aug 2005 08:40:16 +0000 (-0300) Subject: [DCCP]: Fix ackno setting in SYNC/SYNCACK packets X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=24117727b753426d85ba09671c24854834f81b2c;p=deliverable%2Flinux.git [DCCP]: Fix ackno setting in SYNC/SYNCACK packets Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller --- diff --git a/net/dccp/output.c b/net/dccp/output.c index 384fd0920983..708fc3c0a969 100644 --- a/net/dccp/output.c +++ b/net/dccp/output.c @@ -44,15 +44,8 @@ int dccp_transmit_skb(struct sock *sk, struct sk_buff *skb) int err, set_ack = 1; u64 ackno = dp->dccps_gsr; - /* - * FIXME: study DCCP_PKT_SYNC[ACK] to see what is the right - * thing to do here... - */ dccp_inc_seqno(&dp->dccps_gss); - dcb->dccpd_seq = dp->dccps_gss; - dccp_insert_options(sk, skb); - switch (dcb->dccpd_type) { case DCCP_PKT_DATA: set_ack = 0; @@ -62,6 +55,9 @@ int dccp_transmit_skb(struct sock *sk, struct sk_buff *skb) ackno = dcb->dccpd_seq; break; } + + dcb->dccpd_seq = dp->dccps_gss; + dccp_insert_options(sk, skb); skb->h.raw = skb_push(skb, dccp_header_size); dh = dccp_hdr(skb);