提交 033d9744 编写于 作者: D David S. Miller

Merge master.kernel.org:/pub/scm/linux/kernel/git/acme/net-2.6

...@@ -50,6 +50,7 @@ static void dccp_rcv_closereq(struct sock *sk, struct sk_buff *skb) ...@@ -50,6 +50,7 @@ static void dccp_rcv_closereq(struct sock *sk, struct sk_buff *skb)
return; return;
} }
if (sk->sk_state != DCCP_CLOSING)
dccp_set_state(sk, DCCP_CLOSING); dccp_set_state(sk, DCCP_CLOSING);
dccp_send_close(sk, 0); dccp_send_close(sk, 0);
} }
...@@ -561,6 +562,12 @@ int dccp_rcv_state_process(struct sock *sk, struct sk_buff *skb, ...@@ -561,6 +562,12 @@ int dccp_rcv_state_process(struct sock *sk, struct sk_buff *skb,
return 0; return 0;
} }
if (unlikely(dh->dccph_type == DCCP_PKT_SYNC)) {
dccp_send_sync(sk, DCCP_SKB_CB(skb)->dccpd_seq,
DCCP_PKT_SYNCACK);
goto discard;
}
switch (sk->sk_state) { switch (sk->sk_state) {
case DCCP_CLOSED: case DCCP_CLOSED:
return 1; return 1;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册