From owner-freebsd-emulation@FreeBSD.ORG Thu Dec 29 13:59:13 2005 Return-Path: X-Original-To: freebsd-emulation@freebsd.org Delivered-To: freebsd-emulation@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9229E16A420 for ; Thu, 29 Dec 2005 13:59:13 +0000 (GMT) (envelope-from killing@multiplay.co.uk) Received: from multiplay.co.uk (core6.multiplay.co.uk [85.236.96.23]) by mx1.FreeBSD.org (Postfix) with ESMTP id DED8543D4C for ; Thu, 29 Dec 2005 13:59:12 +0000 (GMT) (envelope-from killing@multiplay.co.uk) Received: from vader ([82.37.32.39]) by multiplay.co.uk (multiplay.co.uk [85.236.96.23]) (MDaemon.PRO.v8.1.3.R) with ESMTP id md50002153906.msg for ; Thu, 29 Dec 2005 13:58:50 +0000 Message-ID: <000e01c60c80$0c3d29c0$0100a8c0@multiplay.co.uk> From: "Steven Hartland" To: Date: Thu, 29 Dec 2005 13:59:03 -0000 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_000B_01C60C80.06B17C40" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.2670 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2670 X-Spam-Processed: multiplay.co.uk, Thu, 29 Dec 2005 13:58:50 +0000 (not processed: message from valid local sender) X-MDRemoteIP: 82.37.32.39 X-Return-Path: killing@multiplay.co.uk X-MDaemon-Deliver-To: freebsd-emulation@freebsd.org X-MDAV-Processed: multiplay.co.uk, Thu, 29 Dec 2005 13:58:52 +0000 Subject: linux MSG_NOSIGNAL broken in 6? X-BeenThere: freebsd-emulation@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Development of Emulators of other operating systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 29 Dec 2005 13:59:13 -0000 This is a multi-part message in MIME format. ------=_NextPart_000_000B_01C60C80.06B17C40 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original Content-Transfer-Encoding: 7bit If I follow the code correctly it looks like since revision 1.57 of linux_socket.c MSG_NOSIGNAL is broken for send as it doesn't make use of linux_to_bsd_msg_flags to convert the linux flags to bsd flags. If this is correct the attached patch should fix it. Steve ================================================ This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it. In the event of misdirection, illegible or incomplete transmission please telephone (023) 8024 3137 or return the E.mail to postmaster@multiplay.co.uk. ------=_NextPart_000_000B_01C60C80.06B17C40 Content-Type: application/octet-stream; name="linux_socket.c.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="linux_socket.c.patch" --- linux_socket.c.orig Thu Dec 29 14:45:19 2005=0A= +++ linux_socket.c Thu Dec 29 14:46:00 2005=0A= @@ -833,5 +833,5 @@=0A= bsd_args.buf =3D (caddr_t)PTRIN(linux_args.msg);=0A= bsd_args.len =3D linux_args.len;=0A= - bsd_args.flags =3D linux_args.flags;=0A= + bsd_args.flags =3D linux_to_bsd_msg_flags(linux_args.flags);=0A= bsd_args.to =3D NULL;=0A= bsd_args.tolen =3D 0;=0A= @@ -866,5 +866,5 @@=0A= bsd_args.buf =3D (caddr_t)PTRIN(linux_args.msg);=0A= bsd_args.len =3D linux_args.len;=0A= - bsd_args.flags =3D linux_args.flags;=0A= + bsd_args.flags =3D linux_to_bsd_msg_flags(linux_args.flags);=0A= bsd_args.from =3D NULL;=0A= bsd_args.fromlenaddr =3D 0;=0A= ------=_NextPart_000_000B_01C60C80.06B17C40--