diff options
author | Arnaldo Carvalho de Melo <acme@mandriva.com> | 2005-08-21 05:40:16 -0300 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2005-08-29 16:03:52 -0700 |
commit | 24117727b753426d85ba09671c24854834f81b2c (patch) | |
tree | 3a72f0f6e92bec1db7cd4431fc04f454ac1d4569 /net | |
parent | 03ace394ac9bcad38043a381ae5f4860b9c9fa1c (diff) | |
download | linux-24117727b753426d85ba09671c24854834f81b2c.tar.gz linux-24117727b753426d85ba09671c24854834f81b2c.tar.bz2 linux-24117727b753426d85ba09671c24854834f81b2c.zip |
[DCCP]: Fix ackno setting in SYNC/SYNCACK packets
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/dccp/output.c | 10 |
1 files changed, 3 insertions, 7 deletions
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); |