| To: | dyp@xxxxxxxxxxxx |
|---|---|
| Subject: | Re: Fwd: Problem with recv syscall on socket when other side closed connection |
| From: | "David S. Miller" <davem@xxxxxxxxxx> |
| Date: | Mon, 26 Jun 2000 18:31:08 -0700 |
| Cc: | kuznet@xxxxxxxxxxxxx, dyp@xxxxxxxxxxxx, ak@xxxxxx, netdev@xxxxxxxxxxx |
| In-reply-to: | <0006270823180R.00485@dyp> (message from Denis Perchine on Tue, 27 Jun 2000 08:19:15 +0700) |
| References: | <200006261515.TAA22206@ms2.inr.ac.ru> <0006270823180R.00485@dyp> |
| Sender: | owner-netdev@xxxxxxxxxxx |
From: Denis Perchine <dyp@xxxxxxxxxxxx> Date: Tue, 27 Jun 2000 08:19:15 +0700 Usual way of handling connection reset when you do only read is to give all data available and then return 0, indicating EOF. Or some OSes (HPUX if I'm not mistaken) gives you all data available and then ECONNRESET. But not other way around... Connection reset effectively means that TCP's reliable data transport has been completely compromised, and therefore any attempt to move data across that socket should immediately indicate an error. What I am also trying to say is that when one says "all the data available", the rest of the connection has in effect dropped all meaning to that phrase, you no longer know what "all the data" is and between two different reset occurances "all the data" will be different so why would you want to read any of it at all? Later, David S. Miller davem@xxxxxxxxxx |
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Re: Fwd: Problem with recv syscall on socket when other side closed connection, Denis Perchine |
|---|---|
| Next by Date: | Re: Fwd: Problem with recv syscall on socket when other side closed connection, Denis Perchine |
| Previous by Thread: | Re: Fwd: Problem with recv syscall on socket when other side closed connection, Denis Perchine |
| Next by Thread: | Re: Fwd: Problem with recv syscall on socket when other side closed connection, Denis Perchine |
| Indexes: | [Date] [Thread] [Top] [All Lists] |