[erlang-questions] enotconn from gen_tcp socket
Attila Rajmund Nohl
attila.r.nohl@REDACTED
Fri Jun 8 15:50:58 CEST 2012
2012/6/8 Sergei Fomin <dafgar@REDACTED>:
> Hello.
>
> There is a server which gen_tcp:accept new connections and immediately logs
> inet:peername. But still, "Accepted {error,enotconn}" can be seen in the log
> files. One possible reason of such error is described in
> http://erlang.org/pipermail/erlang-questions/2012-May/066802.html , i.e. a
> client does 3-way handshake and sends RST packet immediately. Though, this
> scenario seems uncommon.
>
> Wonder, what other causes can lead to enotconn on just opened socket?
I think it doesn't have to be an RST, a normal connection closing
would also lead to this error. I've seen a very similar error a couple
of months ago when the OTP SFTP client did something similar as you,
i.e. it had a
{ok, PeerAddr} = inet:peername(Socket),
call soon after the Socket was created and sometimes this crashed with
a badmatch. The SFTP client has been fixed in R15B01, so there's a
case and error handling instead of the matching.
More information about the erlang-questions
mailing list