From: Geoffrey Lee <glee@gnupilgrims.org>
To: kuznet@ms2.inr.ac.ru
Cc: netdev@oss.sgi.com
Subject: Re: [PATCH] connect() return value.
Date: Mon, 12 Aug 2002 09:25:46 +1000 [thread overview]
Message-ID: <20020811232546.GA27168@anakin.wychk.org> (raw)
In-Reply-To: <200208112046.AAA16082@sex.inr.ac.ru>
Yo,
On Mon, Aug 12, 2002 at 12:46:51AM +0400, kuznet@ms2.inr.ac.ru wrote:
> Hello!
>
> > connect() doesn't return -EINTR on signal,
>
> It does, when you ask not to restart after signal.
>
True. What I was getting at is the default behavior of an OS with
interruptibility for connect(), i.e. using signal() instead of
specifying / unspecifying the SA_RESTART flag with sigaction(), though
I will acknowledge that if you're using signal() you may be in for
some unpleasant surprises with signal interruptibility anyway.
I've done a bit more testing. It seems that OSF1 (Digital UNIX) will not
return -EINTR by default with signal(), contrary to what I have previously
stated. I must have been on drugs. However, Solaris will do this
(SunOS 5.6) by default with signal(), and I wanted to know what
is the "correct" behavior for connect() by default with signal().
So, current standings are with connect() interruptibility by default
(i.e. with signal()) are:
FreeBSD 4.6-STABLE: -EINTR
Digital UNIX (OSF1 V4.0): To completion
SunOS 5.6: -EINTR
Linux (2.4): To completion
>
> > The patch also addresses this.
>
> It would be better if it did not. :-)
>
I only patched it from what I observed with other Unices. :-)
I patched it largely due to observing what FreeBSD does with their
sockets connect() call.
Because my patched addresses 2 issues, if you are going to apply the
patch for the -EADDRNOTAVAIL issue, and you want a re-worked patch
without the connect() -EINTR issue, please let me know. But
it should be trivial to hand edit my prevoius patch posted.
-- G.
next prev parent reply other threads:[~2002-08-11 23:25 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-08-10 10:24 [PATCH] connect() return value Geoffrey Lee
2002-08-11 20:46 ` kuznet
2002-08-11 23:25 ` Geoffrey Lee [this message]
2002-08-12 1:28 ` kuznet
2002-08-13 2:21 ` Geoffrey Lee
2002-08-13 4:44 ` kuznet
2002-08-13 5:37 ` Geoffrey Lee
2002-08-13 10:17 ` kuznet
2002-08-13 11:34 ` Geoffrey Lee
2002-08-13 13:47 ` kuznet
2002-08-13 14:32 ` Geoffrey Lee
2002-08-13 15:28 ` kuznet
2002-08-13 23:51 ` Geoffrey Lee
2002-08-14 0:36 ` kuznet
2002-08-14 3:02 ` Geoffrey Lee
2002-08-14 4:16 ` kuznet
2002-08-14 4:57 ` Geoffrey Lee
2002-08-14 17:25 ` kuznet
2002-08-15 3:25 ` glee
2002-08-15 3:15 ` David S. Miller
2002-08-15 11:02 ` Geoffrey Lee
2002-08-15 21:23 ` David S. Miller
2002-08-16 1:08 ` Geoffrey Lee
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20020811232546.GA27168@anakin.wychk.org \
--to=glee@gnupilgrims.org \
--cc=kuznet@ms2.inr.ac.ru \
--cc=netdev@oss.sgi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).