Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Jan 2005 19:13:49 +0000
From:      David Malone <dwmalone@maths.tcd.ie>
To:        Steven Hartland <killing@multiplay.co.uk>
Cc:        freebsd-emulation@freebsd.org
Subject:   Re: Patch for linux ABI for MSG_NOSIGNAL and out of order tcp packet issue
Message-ID:  <20050118191349.GA43822@walton.maths.tcd.ie>
In-Reply-To: <00be01c4fd71$046adae0$b3db87d4@multiplay.co.uk>
References:  <00be01c4fd71$046adae0$b3db87d4@multiplay.co.uk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jan 18, 2005 at 03:18:42PM -0000, Steven Hartland wrote:
> The attached patch checks for
> MSG_NOSIGNAL and if set enables SO_NOSIGPIPE
> for the duration of send call.

I just had a quick look at the patch. The patch should probably
use kern_setsockopt, which will simplify it considerably.
(kern_setsockopt was introduced to FreeBSD 5 this summer to make
it easier to do this sort of thing). It would probably also be
better to do a kern_getsockopt first to find out if SO_NOPIPE is
set and only turn it off afterwards if it wasn't already on.

> Im not 100% sure this is the
> way to do it but have confirmed that the patch works on
> 5.2.1 so if someone could check and commit it that would
> be great.

I guess that it would be even better if we could just pass
SO_NOPIPE to send, or even implement MSG_NOSIGNAL on FreeBSD,
but your patch is probably a reasonably start.

	David.



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