From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id DDDC33858D35 for ; Tue, 23 May 2023 09:18:04 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org DDDC33858D35 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 34N6EgrZ000558; Tue, 23 May 2023 09:18:01 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : in-reply-to : references : date : message-id : content-type : mime-version; s=corp-2023-03-30; bh=zN+ZZb/VvBfEkBBKwNhwomjhJ9nhdJ/u4Vv5DP80z+0=; b=CQaGwjVHSzBPvGVgufrIB/g5k+YkcCb2zsdUY0rXvTsgsDXwyLCvmIcg/nr5BM/vD7rI VERIb2VdzfPyoNIPUlB2KQyPbCsAfTEzJi3384D6LpxjJYD1w4UNcAuBNTg3A7gHhNan gLXHuyqYHTyRuZ2ayjPf6xcK35Loh8pfRWiR6LMFQNOTFX6kJemlmw2KZpcwfBtLB7Nr xHUuwn7n3xuwGgO32kd9FY8T2ipz2BZn7jjn7PK9vZMDRoyUlxmU8dBEYNBA0kuInxNF jKyNF3XAulOMpml6Uy/Coiw80Xxdp5/jowWKnP74LPZ7gvZMDAz0sYtXzsecDCEl+/e8 0g== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3qpprtmney-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 23 May 2023 09:18:01 +0000 Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 34N78Ykf024394; Tue, 23 May 2023 09:17:59 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2044.outbound.protection.outlook.com [104.47.56.44]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3qqk8u2q5f-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 23 May 2023 09:17:58 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CzfJAM+4SCss1XoI8IC3PEawi8/6OTr+TT16xCqYn2rHWtW8NeY4yg0pfUZHr2Lb9XzwoRZGmteG066vT9CVcpAUp6O80B41LDx6a4PXSedHqlj2xftiuXfN93jC70448CLi73Awf97qWtrY1KRs4SzcBtJrliLzd+aWR7u7nl2Rhj0Y+LIOycOVrbtF/EpQNnxgMatXRo1FqtscL1Wr7GoZ7CFUZNiibZjIMbGLoT3uV+ERfyOm4q7Ed5uV+QiIC0wXsiPujnsWTx3L42w+y3EXFf23iG+sJVmK+lvIFFtacmtghZNKjMgdEz5KWYrCwncA++hfkSHpP8/mrgkGiQ== 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=zN+ZZb/VvBfEkBBKwNhwomjhJ9nhdJ/u4Vv5DP80z+0=; b=Qf5RcG6W+kdLOPoCAOJAcvD3WzzQYHSu21/vm3WaUv/mvyV0ZRtecOL86UqUoaWPTg7rM9qNggDDQH4ZuwiUFVptvXMPA0hicmtc8huQA+F/2SUleaMK1sCDaPRzMJ9Rxa1ZEbmMWOdkcKbAa/A9iWrelnhxAGdlAjTRKRR6c1rQzdI1h/2WpLvlh10whsgyKD/lit3B9RQ4ZMv12JLH8u6uaSQ79scjRPaCAhdOZBMYJfSlVLK9E5MD2EbAMClIqlrCCgCr6qgN5DGwaE7XM+Ww2pYhH08Z5b9uIu2E5M41pDuoEU8cybN+PGoBA6Ze/fsklLviv/tKlbNPe8lnXA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zN+ZZb/VvBfEkBBKwNhwomjhJ9nhdJ/u4Vv5DP80z+0=; b=WKxuDM8LIXELKNiRlsoo/LRBZDPo4COLS1AlSCxkML6zCurH2P373JCv2rWRaGpLtUjXDQ+NmsOHKOJgiWcOcDTlRJn5xcBBIYeeHyUV8XI1YxzMR98l9oTGzjVikEfIzeC8bBZECmv1SAritOy/TPI9KeEAy0EZOWPZNVgr9Qg= Received: from BYAPR10MB2888.namprd10.prod.outlook.com (2603:10b6:a03:88::32) by DS7PR10MB5150.namprd10.prod.outlook.com (2603:10b6:5:3a1::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6411.28; Tue, 23 May 2023 09:17:57 +0000 Received: from BYAPR10MB2888.namprd10.prod.outlook.com ([fe80::8fdc:eba5:f60:597d]) by BYAPR10MB2888.namprd10.prod.outlook.com ([fe80::8fdc:eba5:f60:597d%4]) with mapi id 15.20.6411.028; Tue, 23 May 2023 09:17:56 +0000 From: "Jose E. Marchesi" To: Tristan Gingold via Binutils Cc: Tristan Gingold Subject: Re: [PATCH v2] pe/coff - add support for base64 encoded long section names In-Reply-To: (Tristan Gingold via Binutils's message of "Mon, 22 May 2023 21:48:22 +0200") References: Date: Tue, 23 May 2023 11:17:50 +0200 Message-ID: <871qj7wgn5.fsf@oracle.com> User-Agent: Gnus/5.13 (Gnus v5.13) Content-Type: text/plain X-ClientProxiedBy: FR3P281CA0056.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:4b::6) To BYAPR10MB2888.namprd10.prod.outlook.com (2603:10b6:a03:88::32) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BYAPR10MB2888:EE_|DS7PR10MB5150:EE_ X-MS-Office365-Filtering-Correlation-Id: add3ea72-db25-47f4-6c8b-08db5b6e987f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +SzMCKKIfyj9wmkv6YAW3YAQRR4tE0U7Xts7gpRmXFKv7mY8AeCjHUqvtyijv/k4WpCBbcK5XBQfiCJSfdvA13DCYSTldIm3pRHnkLKLMTBEoTVK15npSwUneKYMh4mA9ez9LGeR8DQiTwEdWEVKoHxlCHRyiYR4waqrbkHBwVY7u5WGgqB6fZ8FZC0IO3MPJpc71w1O8dN/SRNTkfjDQ8TDP6D84rSTVHBNGTgyCarkPKFSq7irkw8c4xQoEge0mkHcbBAYQ9mW4y6ZD8r+T7N3bF7VZxkrcEERREGnLk50jj0tvBovF9vzfDRYjoUTZLDb46z17Hn3TEeAl9Culg1qazBUyB13o9+Efc81NrleaBWWCBtoZyNwrjf3Of29ZR7FMCqnBYjruLSpdSupVTVeDNadqB0rbdc3KjQ8EF8Eci6LvssQxkge+/ABor4gNsHJkGQXqRz4gqw7MUxJhZZ/DhmF6fGoai4yvEe1KnwespBk4fioToqzrilcH5cjZJ90B5BLKclcclldcAVVdOvagjNrBz/sYuPup2j+eRg75Uch4s0wegDaAfqpKNbFl5a4UajytvmUtRnNfCdLM6ewF9xmH25NZ6k28rlqgoMMdHh0immeVCax7qF5lV6V X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR10MB2888.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(346002)(366004)(39860400002)(376002)(396003)(451199021)(8936002)(38100700002)(66946007)(66556008)(66476007)(478600001)(86362001)(6916009)(4326008)(316002)(6666004)(83380400001)(6486002)(41300700001)(2616005)(36756003)(186003)(2906002)(6512007)(6506007)(5660300002)(26005)(8676002)(41080700001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?IIZB1QxlwZ3u1xCGEu10U2x91KlnVyM5xyrqbdgcN3If0dnjC7SKavdpYFv/?= =?us-ascii?Q?VNNghRVq9BZf7/UY4mFEhngLg8k+BH/fl+DdAt9pI5VrIDMXboT37IDhATBd?= =?us-ascii?Q?eDzDlIyK+PLD6b1gOtJ9cYNLzsHQ+8aLNNpy3I5SC4ZPm0rkmgib35lZkpiQ?= =?us-ascii?Q?oidUn6ke2tqjHfELhO8oNW5Az/iTqMbh5o2ZkGhlbmOJasFS3YvyLRQvUPKp?= =?us-ascii?Q?rePG3hF+YsAMOf3Ehe1uImucxf/AhF0vSEHZfM8LhZCMqZeMQBCCnBJSNuqU?= =?us-ascii?Q?tbxJ2swz8v3vTitDsDLQM+1v5dBlTz7Vo5GDXmzOcFUcTA/9cmOZd1icKl29?= =?us-ascii?Q?aOQnNHVapGwabwkb3A2Hzv/ifPz80P30yqlDSYmoux6op/XidAOT1lBeWCwR?= =?us-ascii?Q?IWHNq+P92oUsOVBN3jFQI0m8ciXXddMZMzEm9JAsAbEyi9tzJY5W9aJfFCTn?= =?us-ascii?Q?Dt5vo85BvWFvyNnx9qgvwwrU0jXiA1M3AioIOGqBdmgbX8rKck7cPCvZ6Utf?= =?us-ascii?Q?Fiy8YiYsR+Or9Q+r3amXXgDSTG5+PgBdj0GlDFRmwDs2Oy5nLIRYhiHOKOay?= =?us-ascii?Q?xyYWq7EVMuAoHbCk3fAszgzb0/Nu5OGeu895xkdZWRrUnOi9iqR00mHz4uVo?= =?us-ascii?Q?iE+j/qXC9OB/VsfXs9cJD4tTVVUCI/jz2pd0bxZgC8H3M6WWDAzhZAKFbPPc?= =?us-ascii?Q?oP6q3sq78EAzvd375HFMAM8Nu1qR/6KOPFcx0ILSbi9jJn2fdExPS/Vht1+F?= =?us-ascii?Q?f1+F7gCCrtCX0zWLw4uutVZL5zo38gYT9XOOi+Lm3e34Cu8srwPDE8DDhRxs?= =?us-ascii?Q?cm+u2wY1hxylT9VcHv/kRj2WLyDTzlGtmDuq1HybSAtYW9LoEXCFaeSSZogs?= =?us-ascii?Q?h4qQNNbom0zQozlqsj++BuEXmIpSdZni+lniq86HayGng+mvK7nKd98Ex/2/?= =?us-ascii?Q?ohYXBZOH2mkZjeav4iC/XF2BfHJ/47BPnk2in5Ar7egbQI4ZGjBKXzoaSNTq?= =?us-ascii?Q?nTQeXfW5zt0EBL4wtzwguZOtiJEVYBuWaor+g74MNrnVF9DEpUTY8S0s1uX0?= =?us-ascii?Q?wfm388Zg5AtiUdwuyDeC0sl0gZUYPkRp2+Ft9W5ZQXxH8maXygCn32/r45cC?= =?us-ascii?Q?S501DPgJfKpyHVmswMrNE3Sewn2qkr62TwYqZtUl81VpwjSZcq+XuEyUmCX0?= =?us-ascii?Q?VziV4MdoFXmd4BPybIG0+kZ96RYlH1aI93rwnk+oz2qb4C2cwi/McP3Tg0ZS?= =?us-ascii?Q?M7ju9nl+uibYP0zqZsk4+oo2mbpIyF6X2kCWwg68yoALk81MqYVrmP8HDQUL?= =?us-ascii?Q?2iZoKXeiwQuThoi3kv0YazwIQ79VGvRTtmPtOI7ZFZZmOexOUYoXvm8iljf+?= =?us-ascii?Q?qRisKFmmRrmppLJY9d/UJCIUKPpSAABZE2ljBxT68MPrT8jzwhSLzi91Jk9Y?= =?us-ascii?Q?EIPLTrrz6/N6OfpkiYhVx0qDFR7XbMyuHRgUFDQ13xa8NmP7NAFKYY4FacRo?= =?us-ascii?Q?dTCIGSRRkUoC2O7DeDNR+AvmJN2y/bVBiYY+z1Z8PrM4OHIm/h0KzQR7bGM0?= =?us-ascii?Q?cqgL2Hp3k3ga7q6lkrZltfhcUqBB9TTvIyJFImgCsx1R0TuNQLtyiZW/gVk4?= =?us-ascii?Q?gA=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: oIV7H46zvqMyImmMeLXykf860B/NfUL572+d5aBvHPV0zlRh7VBT2fJ3j3ejnU+6GBjvPVzBgvKWsDkms34nzsNR/Svy82xYKMKLY82Hpnw4b16hoiI47Woq21Ul44Cm8+SrT9IUYktrJ16GKVRtMHRH5AybGdDjOo84TkUhU9J3SeU2/b0oQAgoEdvbV/ySkKleEP9Gvdyr/Esl76INGN1l1Fk//fz1ndYOunhQtssZ0X0ExsvfKVsL+V95OkLhabt5LbR5QAGX21L3G2D8J7NGeDJsIdvoOewYKXJ4+IN9gbrDsmKRpHFooZ6HoCjTXH8Q54r2l/FdhN3dE86BJfBLjncuRT0TN2t2tbnA6BC6EG53gv/KRv/M1ym5iYVWWBvL50+kbCi6W0oeoP2YQrvY/aqwNBXakMRiVG+ItKMMrbv8XGVZ8Qh4o6LqdHkbHzPac9kLfCrypI4TjUVqEM5Ix0q4uosRooOj41y+itqnA3DaaYoFlIoUbUtq6/OvQt/tLGgsbzp9aLee8MK9kgSAfMQY9uvKrEHvz3qgY/5ro4b1fE37R4ir1+IlZfBNz1GlYS82wxQXStFTVUSqGP4mpmv7V94rC8ydGl9pfF4WgSpJJgolksbrw2vNb/ZMnoBcoGnGalkJJTJy00QAzsHFrbWCnHlorMN4VkBWjf+I6YJ3BYmbzVC9TdqsAhfThz7inB3OcI0T5SGz9z9Xe7GpVve6bnr5Y5zV3CQO48U06dx7S4QIx1AiOUOZGxZpYVDMrPqZDd2aT9/Lv6zpfQ== X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: add3ea72-db25-47f4-6c8b-08db5b6e987f X-MS-Exchange-CrossTenant-AuthSource: BYAPR10MB2888.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 May 2023 09:17:56.7887 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: l0l9mAXqu0KMphnuXxq8i+MuaCfSNK6E8LieYNphKNYazNnR13DJW5UzdqquEgKasxpcsVnZP4xIR9vOq9I7KhluzULIkaPH1l5nJGydFmA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB5150 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-05-23_06,2023-05-22_03,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 phishscore=0 mlxscore=0 mlxlogscore=999 bulkscore=0 malwarescore=0 suspectscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2304280000 definitions=main-2305230076 X-Proofpoint-GUID: F439vgURBY2L80LxuXITiACx0_Jb0EGT X-Proofpoint-ORIG-GUID: F439vgURBY2L80LxuXITiACx0_Jb0EGT X-Spam-Status: No, score=-6.2 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hello Tristan. > so new version of the patch, including generation of base64 encoded > section name indexes. > > I was able to assemble the test from PR 30444 (using -mbig-obj to > overcome the 2^16 sections number limit). Very nice. I wasn't aware of -mbig-ob. > +#ifdef COFF_WITH_PE > + { > + /* PE use a bae64 encoding for long section names whose > + index is very large. */ I would suggest to add a note to that comment making it explicit that this encoding is not RFC 4648, even if it happens to use the same alphabet. Spelling this as `base 64' rather than 'base64' may help to avoid confusion. > + static const char base64[] = > + "ABCDEFGHIJKLMNOPQRSTUVWXYZ" > + "abcdefghijklmnopqrstuvwxyz" > + "0123456789+/"; > + unsigned long off = string_size; > + unsigned i; > + > + section.s_name[0] = '/'; > + section.s_name[1] = '/'; > + for (i = SCNNMLEN - 1; i >=2; i--) > + { > + section.s_name[i] = base64[off & 0x3f]; > + off >>= 6; > + } > + } > +#endif > + if (string_size > 0xffffffffUL - (len + 1) > +#ifndef COFF_WITH_PE > + || string_size >= 10000000 > +#endif > + ) > {