From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 26941 invoked from network); 4 Jun 2022 18:04:31 -0000 Received: from mother.openwall.net (195.42.179.200) by inbox.vuxu.org with ESMTPUTF8; 4 Jun 2022 18:04:31 -0000 Received: (qmail 24333 invoked by uid 550); 4 Jun 2022 18:04:28 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 24301 invoked from network); 4 Jun 2022 18:04:28 -0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=L8650l2aZ/PmDbKl68301ov53WQKTB+EisD3OXeWg7tIhqmKXhuYhr9CtLH1TI2n5qw7xZlHDTbToO8Dk3cTln6a8/BMy40vCkT934ZTsIHloAeqJ0X9YDN3XUp1T/qIhZ20Is6zdL2m8ocMEdV3fFcjxudiHPue96aq39HrHy33mduxap8qVAAB+mZklre+g7c6ogUiGiF3JnmQw00qZdFn2pWpGkF8QeZ87yUuwhVzcYv7aDEyxeiTPG/bVNTlFDOB51tsBxX4ow+ugNoHfitsDaLVY0+1r9UDXA6/Pin6k3Nn4bbpp9v36+fOg0lCOz6zGTSnQU+6mtzD9eaGyA== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=232YA8DaMoIqyQBgUwnwtIZ+uYgako2zEKc4RVBdHg4=; b=megmUGf2bpuJZdJWT8HW2pI3Dqyue6QO90ItPt/sFzZV6msyWOzU0yh2DTiJVoKBYZNb3GCNMPvY/cxy0lS3nqmGWZgZATX1Ux7ivSeObOHetpC0k3OU2qvoa121pF3iYP4mSGm+TVefiLZGbYlUr0XFZgQApVnh8yzVYBeRTQoxYog+OgmVzlBXxwg7j13/nc4yAhdziXpR65tGtZ4Epp6Now4L5z+q7CDyr1VBtZ8S8vFefw46hiZM30+9pLBMKwTWPRwUGns6OWcCbo4Fkl0E/G3YVbpTjV40qVE8xucnLbOg4X7df2t156VsL/Zn5DjPw+tcdhvQrFp1VLitxw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=trust-in-soft.com; dmarc=pass action=none header.from=trust-in-soft.com; dkim=pass header.d=trust-in-soft.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=trust-in-soft.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=232YA8DaMoIqyQBgUwnwtIZ+uYgako2zEKc4RVBdHg4=; b=U/GEocn1yF4tweBPEp5WTu11V6yXCZbVmFWQIgiFZL3AoFQz8GyoUxVskWTVjQchpd39w4CC5e7ONIvSk5AWN+htV0ggw11X3eHyeA0xRNnuH5iZJR++s8j+WgE1BgmaQgfo6w76VyNTASunPtPqssm3Nlb0aj9KLKD62LWCT0zhF0PHdnhxwN7ZRmxhEfXDF6y+1ygDs7UDtCAHWpb4CWJVMT59mbvQ0E+gb4FW3Fjd1vKI6SJYKXvRgU0XuNLgp5kVANmVVpeB57Q4stRmopAjCRjUqXtB4JUF4A/Pl8XaaN47kthNh/vT7r3mJnAwUNK8T5UEXevYisbPFQOpKg== From: Pascal Cuoq To: "musl@lists.openwall.com" Thread-Topic: [musl] [PATCH] fix undefined behavior from large shifts Thread-Index: AQHYeDgwNhMmNT/cgUqOUR7o6TeGZK0/ipBO Date: Sat, 4 Jun 2022 18:04:15 +0000 Message-ID: References: <20220604172550.uf7vboamzar4etk3@gen2.localdomain> In-Reply-To: <20220604172550.uf7vboamzar4etk3@gen2.localdomain> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=trust-in-soft.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 35dc0cfd-83ec-429f-4cdb-08da4654a31e x-ms-traffictypediagnostic: PR0P264MB3839:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ZONVL+2Fk1X4TwZDLZQMjMIYcAT3C7dmAQyeA/uaU8T1MIdiHh2ZRacy1tM9boYemP6hlMP0cvE4/ill58UfHVuj2bUZi54ah+GcRPXsJtQd8iJU1eDduYAP4tzYpBpbB9he7aAwmpstWH4F0hDesAmhUTjRp5ETM8FvAfEyr/JtlHpAptWE8jDI3mFp4/pOOfaikXCUoOP2uDlXpRLD4iyCm43obOSDIkwrE/3FSboM8zQinDFk8ZRrjJYKG7IaMSXaMxBQWbvdifJsDyB9BLBvxCXGuhP8x7Km4xzwqB6cu9+0t1ADKel6BBZ2XKqgBShNZRAVPTId/fEBTOkwGgF3ae+IX4nBq56UuTghhma7wb3syKs1aARlLhaYQJml9uNOtU4YMDWFlSeudLfwXrNrLucxkec03+1qMkgI/pU7yoWD2jAY+EgFB78Rg0JuMaW/9iGAXd0Fg2aihhBG3pAC/8Z9QAYQt8e1mWBv0QpijpIVHwEmcOM4hZpirWwcqObvGO65RJcDGf/1A/D0MBSKjkb757kvH9/iL1gN8ZHqb2frWekh0HaLL6dR6yEjmKlJ21f8ook9pxqMxm/fWzfPKCpsGziJBqi2AmZBGU6k9FbXNOQLzzK1LO6hwRuedyP9k5rPbWwgByJY6eD6DRt34jNXicpqJH4EPcK7BkGamEoec5yjblXSGPSYTYyLq9Ge5yJ3GpgRtjCCXY6Hrh8G59rm3OijDmbUQmrJ154= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PR0P264MB0794.FRAP264.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230001)(396003)(366004)(346002)(136003)(39830400003)(376002)(53546011)(6512007)(26005)(2616005)(6506007)(41300700001)(508600001)(71200400001)(86362001)(33656002)(186003)(66446008)(38100700002)(8936002)(316002)(6916009)(8676002)(76116006)(66946007)(38070700005)(6486002)(4744005)(122000001)(5660300002)(2906002)(36756003)(66556008)(64756008)(66476007)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?oGRJi3K4PMIgfCZYY7OQWwqThuPNtZ2fEgf2K7jecyys6QzoiK4dsrpfoCic?= =?us-ascii?Q?K9Xcsg9H4Q/Dl/ns9YfRmsIR1kj6KacxxvF53yOP9U5Edkfn2tX+nGeKAgzm?= =?us-ascii?Q?DlwmxvCBZfLmwGEl+izH6F3YKid1EZ4WBlACq68/VWeM8Eng8YYsvvqN9ift?= =?us-ascii?Q?I1/fakax74wiNFuGEC2CCkpEhk0cebcBOdEoh13IhXtWDE/A1c4ive1Nx3sr?= =?us-ascii?Q?07DWlnvWn95q+/NIr5lcaXMHp6+LFpBCC2Ut+cfP52XGFX4jma8SHkLSczeq?= =?us-ascii?Q?gmJlD7414PbV9riDVPJw1Q4GwpSHSN+clydMJV4N6cgUqC2hBqeRfjOmWV/A?= =?us-ascii?Q?hJEwxHc44OAHBP74cEsAMDidkAkpT15yve9kJSZcwapWwJrGSWTIVfM84xxs?= =?us-ascii?Q?CtoF8gpZL1N18j6EeEcECROsP2KgtS1ZIDTqKCCKy+65opzaeSgkun2NNG1+?= =?us-ascii?Q?uyz/9VO+BRHlnw1m1rVEt6oUgad7OPYCiVKpQrL7PPGfYBWR2MRpwD9CIwcu?= =?us-ascii?Q?wFqU0D97mrxajAR3tpB4Y/72Y+NdtZ+LGoPcaoUOLqxTOYV6C1qrnN8z+oMZ?= =?us-ascii?Q?0p3+ThgWVH7OZo2z34ROZTawa/KGMMWmD581svQ0iQJ0Jkn8aEm9ra8MA7LD?= =?us-ascii?Q?Th0Oyd2BJPJjTYdUm9bvnL0az+srUY+WczVnqQGhOOwEpOIGQLxN4OFS1xBP?= =?us-ascii?Q?Y8VOdF7OBWZAoglW9MTs8v9p0XQXMFbHtnJFDHb4X2w21Vp+nPlQatCXIT3h?= =?us-ascii?Q?7v/5PvEIepTOUWfgCLs99qds5Jp0oZDgesfyCMJvbJKcGyxXchjkRgHfdd5f?= =?us-ascii?Q?mho7AydQWFDJ+hQ+QQYF6oG1rnXL76ktQjW5oquRqCgmO6PO1WV3mYMkXFTP?= =?us-ascii?Q?erZ7vm85NqNs9foOxOP2XO8zrtJzzPW77ZGw0jYWhvPlj3ruwHOCSlQpZ1kP?= =?us-ascii?Q?97H5i4ggGGzoNnsWp58ErdwVY+mN3cC5wqSEfpK3bO6/jkYYcQ6XjN2fWCu7?= =?us-ascii?Q?5/sC7gqoU9Hg0vD1GBjbAF7/k+sy7t/FdrBWkVy9Y+1b//vGiVgsg9FFDJDT?= =?us-ascii?Q?v3cWNG7G+Wf7EQj7svr7xFKbgatXoGGfCuQlUxwnSWLTxNJZDrB4uFw4CeKM?= =?us-ascii?Q?dOF4/vdd01/ZAIh5390m+ULA2Q9kjDk9f4si8232oLzNc4R5wQufvZNrzfgX?= =?us-ascii?Q?OBIlE6PVghnzOpQFKRs3xDtLfh698J+AgNCApBn1Ia1KLN1/S+Ym97L3NAO6?= =?us-ascii?Q?KG8YlCXxxPX7S6phZp+25Hjx56AcD2U52Z9zaw7UX8Ycbl2FOgJo9tJcrHhM?= =?us-ascii?Q?Zv7idRoxIzPFOq3x100LEjWXh9RMB61vujWQzmKwGI7rloQo5iv+6NlJy69W?= =?us-ascii?Q?H4WtRMP3dQzzkV0IvUxADhXJvDVjOrKT6K8DxT2kmoSlSof1kpaDnQ1UNFrR?= =?us-ascii?Q?MO543mXKfNasonAL+hH+xKmAfxxM6FrBTYO+HSp60XHi5DMuS1l+aTcQDox+?= =?us-ascii?Q?Q2aT2qCyfDtfuqVCXLEpJ4WQUfWzevAvf9af4an2Dlgl24KHcqonbz5O5Ar1?= =?us-ascii?Q?4r/+De6n58rRK/4IECld6uwtP14GsC1N8O4CtlN9X2etkPOrNsiMfghy6gJ6?= =?us-ascii?Q?emPmZRkqcZUBtTigRtq927rgcL35zX7bwcUmcwoFv6rcECcPhhhu4xdDoun7?= =?us-ascii?Q?aBoIzEXcE92zg97vEo8mAXnIAJuaPE3DZKErIhbSHwJfr+04j8eQk5DLAUI3?= =?us-ascii?Q?l9zJqLjmgA=3D=3D?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: trust-in-soft.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PR0P264MB0794.FRAP264.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 35dc0cfd-83ec-429f-4cdb-08da4654a31e X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Jun 2022 18:04:15.3590 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: c0bee27e-6b2c-476e-88fe-f5a620006e7f X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ODUE/mCCDqvuwxPqE8cSRUGRkcntKEB6NBuw8NYXx2DnHPPaYzhvIijXy1uGWSYu/tDGElZFwTuBMPSTIaSGJQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR0P264MB3839 Subject: Re: [musl] [PATCH] fix undefined behavior from large shifts > On 4 Jun 2022, at 19:26, NRK wrote: >=20 > + uint32_t nw =3D (uint32_t)n[0]<<24 | (uint32_t)n[1]<<16 | n[2]<<8; > + uint32_t hw =3D (uint32_t)h[0]<<24 | (uint32_t)h[1]<<16 | h[2]<<8; If it were a goal to support 16-bit ints in musl, then your patch would sti= ll have UB by shifting a 1 into the sign bit with {h,n}[2]<<8, which in C i= s a form of signed arithmetic overflow (the C++ standard makes a special ca= se for this situation but the C standard doesn't). However, I do not think it is a goal to support narrower that 32-bit ints i= n musl, and the original code is free of UB in these conditions.=