From owner-svn-src-head@FreeBSD.ORG Sun Jun 9 14:32:00 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 88F05F9F; Sun, 9 Jun 2013 14:32:00 +0000 (UTC) (envelope-from jilles@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 6209F1B81; Sun, 9 Jun 2013 14:32:00 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r59EW08m042027; Sun, 9 Jun 2013 14:32:00 GMT (envelope-from jilles@svn.freebsd.org) Received: (from jilles@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r59EW0ZX042025; Sun, 9 Jun 2013 14:32:00 GMT (envelope-from jilles@svn.freebsd.org) Message-Id: <201306091432.r59EW0ZX042025@svn.freebsd.org> From: Jilles Tjoelker Date: Sun, 9 Jun 2013 14:32:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251575 - head/lib/libc/net X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Jun 2013 14:32:00 -0000 Author: jilles Date: Sun Jun 9 14:31:59 2013 New Revision: 251575 URL: http://svnweb.freebsd.org/changeset/base/251575 Log: Make recv() and send() cancellation points, as required by POSIX. Call the recvfrom() and sendto() functions overridden by libthr instead of the _recvfrom() and _sendto() versions that are not cancellation points. Modified: head/lib/libc/net/recv.c head/lib/libc/net/send.c Modified: head/lib/libc/net/recv.c ============================================================================== --- head/lib/libc/net/recv.c Sun Jun 9 13:58:37 2013 (r251574) +++ head/lib/libc/net/recv.c Sun Jun 9 14:31:59 2013 (r251575) @@ -33,12 +33,10 @@ static char sccsid[] = "@(#)recv.c 8.2 ( #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include -#include "un-namespace.h" ssize_t recv(s, buf, len, flags) @@ -46,5 +44,9 @@ recv(s, buf, len, flags) size_t len; void *buf; { - return (_recvfrom(s, buf, len, flags, NULL, 0)); + /* + * POSIX says recv() shall be a cancellation point, so call the + * cancellation-enabled recvfrom() and not _recvfrom(). + */ + return (recvfrom(s, buf, len, flags, NULL, 0)); } Modified: head/lib/libc/net/send.c ============================================================================== --- head/lib/libc/net/send.c Sun Jun 9 13:58:37 2013 (r251574) +++ head/lib/libc/net/send.c Sun Jun 9 14:31:59 2013 (r251575) @@ -33,12 +33,10 @@ static char sccsid[] = "@(#)send.c 8.2 ( #include __FBSDID("$FreeBSD$"); -#include "namespace.h" #include #include #include -#include "un-namespace.h" ssize_t send(s, msg, len, flags) @@ -46,5 +44,9 @@ send(s, msg, len, flags) size_t len; const void *msg; { - return (_sendto(s, msg, len, flags, NULL, 0)); + /* + * POSIX says send() shall be a cancellation point, so call the + * cancellation-enabled sendto() and not _sendto(). + */ + return (sendto(s, msg, len, flags, NULL, 0)); }