From owner-freebsd-net@freebsd.org Mon Feb 3 22:59:38 2020 Return-Path: Delivered-To: freebsd-net@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 12DF5231F44 for ; Mon, 3 Feb 2020 22:59:38 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from CAN01-TO1-obe.outbound.protection.outlook.com (mail-eopbgr670065.outbound.protection.outlook.com [40.107.67.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "GlobalSign Organization Validation CA - SHA256 - G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48BNZ16k1Fz4GXV; Mon, 3 Feb 2020 22:59:37 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OPo+aUZ0ty2+NckF1hL7JTQG7a4kTJJw9Au8Isd0CjQRGOjvDtkpolrmz4viyLFDziSzadUsE2KMmHDAq3plRcQB2EvQDh4BoPJLBmHggV6Jnk849y283TDqkHqc2Yig6CDZ6WIARZVe57g7n04Z3wq9kcqBnuqiBnfczqMWjTjhu2Iso29VuzJYrfSkrU9nyscMCxMQMeV/AIGYHlbcskuvAco3eHGNZ/0Bl1Fpy53LaO1ndmSQHqglc2+E4btA4YvJ42/KWlPStYHfdxKV0kIuSWRhq7kg5xIyOaeVEBJT3G81kANeKE1yrChbjOWvJmvzNN3nlL3Hqq+F8tayOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ibj50xD1F9W/8l6ge2U1CV+ZqK/4h6Stwa0fen4uzVA=; b=dqmt2PoYc4I8Z3IS3FDftzHDvxzuqkHDxDzfiNIh+JjcDFfin03+a3Ru7gXWSf8mBmRMgs/o0ssa2fDa1gF075gOZEZHGRebnAMVqowCaH8myYE8RTZmvhQIA0n5R0jCafIvmH1syMGSpm4zzWIIQ45AuqeZq8bJVElXTZjTEWG6hF7Uw0k5SzzUOVe+AeBb8tDfGCNoDNB9/70t1H6UnKVYVRPvlmuId9YrIbIHn7kLDxGfF41gIx8SRuXfnOyo27vhABPh/GTAm3sNVFPl9vXwAyC9lqUDRRa2xxs7hg01RF2bzkeqJaJAMLiByP5t3XPJ3ju24/ww1ru6eP4aGA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=uoguelph.ca; dmarc=pass action=none header.from=uoguelph.ca; dkim=pass header.d=uoguelph.ca; arc=none Received: from YTBPR01MB3374.CANPRD01.PROD.OUTLOOK.COM (10.255.46.82) by YTBPR01MB3902.CANPRD01.PROD.OUTLOOK.COM (10.255.47.148) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2686.30; Mon, 3 Feb 2020 22:59:36 +0000 Received: from YTBPR01MB3374.CANPRD01.PROD.OUTLOOK.COM ([fe80::410e:652b:6fbc:9aa4]) by YTBPR01MB3374.CANPRD01.PROD.OUTLOOK.COM ([fe80::410e:652b:6fbc:9aa4%3]) with mapi id 15.20.2686.031; Mon, 3 Feb 2020 22:59:36 +0000 From: Rick Macklem To: Kristof Provost CC: freebsd-net Subject: Re: Does sosend() need CURVNET_SET/CURVNET_RESTORE? Thread-Topic: Does sosend() need CURVNET_SET/CURVNET_RESTORE? Thread-Index: AQHV2g6GHsgkYI39oUK5ywsAZhXoO6gI8nkAgAEi9uQ= Date: Mon, 3 Feb 2020 22:59:36 +0000 Message-ID: References: , In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 1621aca9-f33b-4607-bc84-08d7a8fcbe06 x-ms-traffictypediagnostic: YTBPR01MB3902: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 0302D4F392 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(366004)(136003)(376002)(39860400002)(396003)(189003)(199004)(4744005)(316002)(786003)(6506007)(8936002)(6916009)(26005)(478600001)(86362001)(4326008)(450100002)(186003)(8676002)(2906002)(33656002)(66446008)(71200400001)(91956017)(64756008)(66556008)(76116006)(81156014)(81166006)(7696005)(66946007)(55016002)(9686003)(66476007)(5660300002)(52536014); DIR:OUT; SFP:1101; SCL:1; SRVR:YTBPR01MB3902; H:YTBPR01MB3374.CANPRD01.PROD.OUTLOOK.COM; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: uoguelph.ca does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: fp8bafOd5OYYdYKKb4ceHlM6N+DvkSBxevR5HSUL42x2QXNGkngROSedOGI1/pTTUsOJ8WiRLBm20sYxaJdcJHyqb7JzKG2f9XwM+uyc4r8NdJhRrQ/sNzKT9WLUfILt5yq+PD6YV1Itg5vnehX7zF3wP7uoHwzDkPI9oWF9z322Q5/2ZLGUnuhybqq5gNkILOhJwDewHvVgFD9JC2Jpbe+4Hh3VYbrOc03y2foQtmmf7hvv6/E7nNMKt7Dg7wB0GPR+exnq96+KaZKMFmXOv7A5fc6FJKt6JCgyIayGifptD9FtXiDRq5Dgw3qq31xDvmlv9TTFuA9JrfkoS/aYRWBreJ9ROKj8r0M+WcdcMmsDmz5ZzQ0iUY8vzHRdfQJib0gUdBJy5p8IJs0k3Yz2XU/YEecg9Sy5SOuUNrH7feyH5ivFJjLJ1gblJLd61LHL x-ms-exchange-antispam-messagedata: AUb3TXD1q0aUn1bx0ICYL5ikrv8yEq2AXatfuqPMJUgSMqO474cN1xAGVBAD4zc77qoe6HHD4OQQBQQmCDZXHVFFpDpjWwyzfq9uST5c+AHHosDWd6Q2x9Bn3D3uRQko+YOBeulkx6Fw7DUKPWU/Pw== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: uoguelph.ca X-MS-Exchange-CrossTenant-Network-Message-Id: 1621aca9-f33b-4607-bc84-08d7a8fcbe06 X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Feb 2020 22:59:36.9242 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: be62a12b-2cad-49a1-a5fa-85f4f3156a7d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: axUu6uBAmBnqhHwFJK2mNpq83xMpRTTAoCMoUuV9jtCxF2JZmmoXNDLAdZXJpfadLBNL/TIRDd8yDxqC1mCvRg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: YTBPR01MB3902 X-Rspamd-Queue-Id: 48BNZ16k1Fz4GXV X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-5.99 / 15.00]; NEURAL_HAM_MEDIUM(-0.99)[-0.993,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Feb 2020 22:59:38 -0000 Kristof Provost wrote:=0A= >On 2 Feb 2020, at 13:22, Rick Macklem wrote:=0A= >> The current krpc code calls sosend() and soreceive() without any=0A= >> CURVNET_SET()/CURVNET_RESTORE() wrapped around them.=0A= >>=0A= >sosend() and soreceive() do the CURVENT_SET()/CURVNET_RESTORE() dance=0A= >for you.=0A= Duh, I'm getting old. When I looked at sosend(), I didn't spot the CURVNET = calls=0A= in it.=0A= =0A= >> When I recently used sosend_generic(), it panic'd without them.=0A= >>=0A= >sosend_generic() does not, because usually sosend() calls it, so it=92d=0A= >already be set.=0A= Ok, I had thought the=0A= error =3D so->so_proto->pr_usrreqs->pru_sosend(so, addr, ui= o,=0A= 1706 top, control, flags, td);=0A= call in sosend() was calling tcp_usr_send().=0A= If it is just calling sosend_generic(), then I can just call sosend() for t= he=0A= KERN_TLS case. I'll check to see if sosend() is calling sosend_generic().= =0A= =0A= Thanks for your help, rick=0A= =0A= Best regards,=0A= Kristof=0A=