summaryrefslogtreecommitdiff
path: root/net/dccp/output.c
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@mandriva.com>2005-08-17 03:10:59 -0300
committerDavid S. Miller <davem@sunset.davemloft.net>2005-08-29 16:01:50 -0700
commite92ae93a8aa66aea12935420cb22d4df1c18d023 (patch)
tree61ffc292a8e437f7d44bbfe00c4e052f7488dd25 /net/dccp/output.c
parentba602a816132dcc66e875dddf2c62512a9f6f8cb (diff)
downloadlwn-e92ae93a8aa66aea12935420cb22d4df1c18d023.tar.gz
lwn-e92ae93a8aa66aea12935420cb22d4df1c18d023.zip
[DCCP]: Send SYNCACK packets in response to SYNC packets
Also fix step 6 when receiving SYNC or SYNCACK packets, i.e. we were not using the updated swl. Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dccp/output.c')
-rw-r--r--net/dccp/output.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/net/dccp/output.c b/net/dccp/output.c
index dcc061bed924..384fd0920983 100644
--- a/net/dccp/output.c
+++ b/net/dccp/output.c
@@ -404,7 +404,8 @@ void dccp_send_delayed_ack(struct sock *sk)
sk_reset_timer(sk, &icsk->icsk_delack_timer, timeout);
}
-void dccp_send_sync(struct sock *sk, u64 seq)
+void dccp_send_sync(struct sock *sk, const u64 seq,
+ const enum dccp_pkt_type pkt_type)
{
/*
* We are not putting this on the write queue, so
@@ -420,7 +421,7 @@ void dccp_send_sync(struct sock *sk, u64 seq)
/* Reserve space for headers and prepare control bits. */
skb_reserve(skb, MAX_DCCP_HEADER);
skb->csum = 0;
- DCCP_SKB_CB(skb)->dccpd_type = DCCP_PKT_SYNC;
+ DCCP_SKB_CB(skb)->dccpd_type = pkt_type;
DCCP_SKB_CB(skb)->dccpd_seq = seq;
skb_set_owner_w(skb, sk);