From owner-freebsd-arch@FreeBSD.ORG Sun Mar 1 20:40:22 2015 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C44EC72F; Sun, 1 Mar 2015 20:40:22 +0000 (UTC) Received: from mailout.easymail.ca (mailout.easymail.ca [64.68.201.169]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6F1ED132; Sun, 1 Mar 2015 20:40:21 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mailout.easymail.ca (Postfix) with ESMTP id A074DE30D; Sun, 1 Mar 2015 15:40:20 -0500 (EST) X-Virus-Scanned: Debian amavisd-new at mailout.easymail.ca X-Spam-Flag: NO X-Spam-Score: -3.851 X-Spam-Level: X-Spam-Status: No, score=-3.851 required=5 tests=[ALL_TRUSTED=-1.8, AWL=-0.144, BAYES_00=-2.599, DNS_FROM_AHBL_RHSBL=0.692] Received: from mailout.easymail.ca ([127.0.0.1]) by localhost (easymail-mailout.easydns.vpn [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hPPjDZ216Zch; Sun, 1 Mar 2015 15:40:20 -0500 (EST) Received: from bsddt1241.lv01.astrodoggroup.com (unknown [40.141.24.126]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by mailout.easymail.ca (Postfix) with ESMTPSA id 335D5E2FF; Sun, 1 Mar 2015 15:40:20 -0500 (EST) Message-ID: <54F37897.8040009@astrodoggroup.com> Date: Sun, 01 Mar 2015 12:37:43 -0800 From: Harrison Grundy User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: freebsd-net@freebsd.org, freebsd-arch@freebsd.org Subject: Call for testers: Fix incorrect error codes in connect() Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 01 Mar 2015 20:40:22 -0000 connect(), in both the man page and under POSIX is documented to only return EINVAL for invalid lengths of the namelen parameter, which is a fatal error. As it stands now, it will also return EINVAL when called on TIMEWAIT or DROPPED sockets. The patch at https://reviews.freebsd.org/D1982 changes connect to return EADDRINUSE on time-wait and ECONNREFUSED on dropped. (Different values may make more sense here, POSIX doesn't seem to specify.) If anyone has time to run the patch attached to D1982, it'd be greatly appreciated as I'm trying to find out just how much (if any) software currently depends on the old broken behavior. Any input as to what connect should return in these cases is also appreciated. --- Harrison