From owner-cvs-sys Thu Feb 19 11:39:27 1998 Return-Path: Received: (from daemon@localhost) by hub.freebsd.org (8.8.8/8.8.8) id LAA10344 for cvs-sys-outgoing; Thu, 19 Feb 1998 11:39:27 -0800 (PST) (envelope-from owner-cvs-sys) Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id LAA10243; Thu, 19 Feb 1998 11:39:03 -0800 (PST) (envelope-from fenner@FreeBSD.org) From: Bill Fenner Received: (from fenner@localhost) by freefall.freebsd.org (8.8.8/8.8.5) id LAA12679; Thu, 19 Feb 1998 11:38:21 -0800 (PST) Date: Thu, 19 Feb 1998 11:38:21 -0800 (PST) Message-Id: <199802191938.LAA12679@freefall.freebsd.org> To: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, cvs-sys@FreeBSD.ORG Subject: cvs commit: src/sys/kern uipc_socket.c Sender: owner-cvs-sys@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk fenner 1998/02/19 11:38:21 PST Modified files: sys/kern uipc_socket.c Log: Revert sosend() to its behavior from 4.3-Tahoe and before: if so_error is set, clear it before returning it. The behavior introduced in 4.3-Reno (to not clear so_error) causes potentially transient errors (e.g. ECONNREFUSED if the other end hasn't opened its socket yet) to be permanent on connected datagram sockets that are only used for writing. (soreceive() clears so_error before returning it, as does getsockopt(...,SO_ERROR,...).) Submitted by: Van Jacobson , via a comment in the vat sources. Revision Changes Path 1.37 +7 -3 src/sys/kern/uipc_socket.c