lkml.org 
[lkml]   [2000]   [Jan]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: dst cache overflow
Date
Hello!

> if ((1 << sk->state) &
> - (TCPF_ESTABLISHED|TCPF_SYN_SENT|TCPF_SYN_RECV|TCPF_CLOSE_WAIT)) {
> + (TCPF_ESTABLISHED|TCPF_SYN_SENT|TCPF_CLOSE_WAIT)) {

SYN-RECV sockets _are_ legal here. They occur as result of crossed SYNs.
We must send FIN of them.


> lock_sock(sk);
>
> /* Clear out any half completed packets. FIN if needed. */
> - if (tcp_close_state(sk,0))
> + if (tcp_close_state(sk,sk->state == TCP_CLOSE_WAIT))

Hey! Andi, second argument of tcp_close_state() means that socket
loses association to descriptor. You will break rsh now! It will
work only for 3 minutes.

Alexey

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:55    [from the cache]
©2003-2011 Jasper Spaans