netdev
[Top] [All Lists]

Re: Fw: Re: [PATCH] ipv4 tcp autobind problem

To: hidden@xxxxxxxxxx (Kovacs Krisztian)
Subject: Re: Fw: Re: [PATCH] ipv4 tcp autobind problem
From: kuznet@xxxxxxxxxxxxx
Date: Tue, 7 Oct 2003 15:56:41 +0400 (MSD)
Cc: davem@xxxxxxxxxx (David S. Miller), jmorris@xxxxxxxxxx, netdev@xxxxxxxxxxx, linux-net@xxxxxxxxxxxxxxxx, bazsi@xxxxxxxxxx (Balazs Scheidler)
In-reply-to: <3F7990FB.7030606@xxxxxxxxxx> from "Kovacs Krisztian" at σΕΞ 30, 2003 04:19:39
Sender: netdev-bounce@xxxxxxxxxxx
Hello!

> - When the socket is closed (inet_release() is called, tproxy has its 
> "callback" function here), the corresponding entries are deleted from 
> tproxy's hash tables, again, based on the local ip:port pair.

The mistake is here. inet_release() has nothing to do to connection
state. Socket is not closed at this point, it goes to FIN-WAIT*, LAST-ACK or
something like this and can exist for long time after this and proxying
is to be continued all this time.

Right place to finish tracking is when socket is removed from TCP
hash tables, and to start tracking is when the socket is inserted
to TCP hash tables. BTW you would not see the problem with binding
if it was made right.

Alexey

<Prev in Thread] Current Thread [Next in Thread>