Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 Aug 1997 17:57:37 -0700 (MST)
From:      Terry Lambert <terry@lambert.org>
To:        marcs@znep.com (Marc Slemko)
Cc:        sef@Kithrup.COM, julian@FreeBSD.ORG, current@FreeBSD.ORG
Subject:   Re: I've broken ping
Message-ID:  <199708240057.RAA05197@phaeton.artisoft.com>
In-Reply-To: <Pine.BSF.3.95.970823010850.6677D-100000@alive.znep.com> from "Marc Slemko" at Aug 23, 97 01:19:45 am

next in thread | previous in thread | raw e-mail | index | archive | help
> Running under 2.2-stable from a week or two ago, both the 2.2 and -current
> ping are still broken. I am seeing it hang in pr_addr if the reverse isn't
> resolvable; ^C wont kill it because it appears like a function call is
> being restarted.  I am confused about why this is happening.  ISTR some
> changes in FreeBSD WRT this that I haven't had time to follow.
> 
> Changing the sigaction() back to a signal() fixes this particular case.
> The signal() man page says function calls will be restarted, but the
> sigaction() man page implies they won't without SA_RESTART.  That follows
> with what I am aware that recent BSD code does.  It doesn't seem to fit
> with what I am seeing.

We went over the whole signal fiasco a while back.  Restart depends
on the compatability interface use to set the thing up.
You could have equally done:

	siginterrupt( SIGINT, 1);
	siginterrupt( SIGALRM, 1);

to stop them restarting, and left it "signal()".


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199708240057.RAA05197>