Mailing-List: contact cygwin-developers-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner AT cygwin DOT com Delivered-To: mailing list cygwin-developers AT cygwin DOT com Date: Wed, 28 Aug 2002 13:28:35 +0200 From: Corinna Vinschen To: cygapp , cygdev Subject: HEADSUP: New behaviour of socket send/write functionality Message-ID: <20020828132835.F5475@cygbert.vinschen.de> Mail-Followup-To: cygapp , cygdev Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.3.22.1i Hi, I've just checked in a change to the socket function sendto() which changes the behaviour when the socket has been shutdown, e.g. by the peer. In that case send() returned -1 and ESHUTDOWN so far. According to SUSv3 and Linux, send() *should* return EPIPE and raise the SIGPIPE signal. The Linux implementation additionally knows a flag called MSG_NOSIGNAL which suppresses the SIGPIPE signal in that case. My patch implements just that, returning EPIPE instead of ESHUTDOWN and raising SIGPIPE if not MSG_NOSIGNAL is given in the flags argument. I thought it would be good to give this heads up, since that fix could change the behaviour of some applications. I checked ssh, sshd, inetd and friends, that they still work so the change doesn't break everything. But I'd like to encourage the maintainers of socket related applications to check, if their application still works as expected. The change could also coincidentally result in solving some problems about hanging apps (rsync, perhaps?) but that's not sure, obviously. Ok, that's all folks, Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Developer mailto:cygwin AT cygwin DOT com Red Hat, Inc.