From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id eGjOHD5Gg2piTi0AWB0awg (envelope-from ) for ; Mon, 17 Aug 2026 13:34:54 -0400 Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=efficios.com header.i=@efficios.com header.a=rsa-sha256 header.s=selector1 header.b=WbgEdFY2; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 63B891E0A3; Mon, 17 Aug 2026 13:34:54 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-5.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham autolearn_force=no version=4.0.1 Received: from vm01.sourceware.org (vm01.sourceware.org [38.145.34.32]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id EB21B1E09B for ; Mon, 17 Aug 2026 13:34:53 -0400 (EDT) Received: from vm01.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 7B6724B99F7A for ; Mon, 17 Aug 2026 17:34:53 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7B6724B99F7A Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=efficios.com header.i=@efficios.com header.a=rsa-sha256 header.s=selector1 header.b=WbgEdFY2 Received: from YT6PR01CU002.outbound.protection.outlook.com (mail-canadacentralazlp170120003.outbound.protection.outlook.com [IPv6:2a01:111:f403:c103::3]) by sourceware.org (Postfix) with ESMTPS id B49B54BAE7F3; Mon, 17 Aug 2026 17:34:28 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B49B54BAE7F3 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=efficios.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=efficios.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org B49B54BAE7F3 Authentication-Results: sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:c103::3 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1786988068; cv=pass; b=XI/XgMAEUfqrUZ8pXMvN5tqQOjorqmJjLlCAcCvOLBNy6rChHYnd6wjaHfD5S6xU0xaGsbZIry6OkLlI8Ob2EuzstTCAnClIEgNz4hNuKwRy0tpO465d+bnmteBEV69xUhV6PGiqDJfE236FmOgxU1gxpwZ7p5WCSDXe3Wdvn1A= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1786988068; c=relaxed/simple; bh=T/KpDZs//sVxCXaT8d5gzYZ9QPXC62KjbFOZKRzIWQ8=; h=DKIM-Signature:Message-ID:Date:Subject:To:From:MIME-Version; b=yFCxNtf/6L87eDPvwVMg2O007StiA1BrFUHzWbXKeWVng81zhIV8ss3qof5byg9B3i9AhzcelzXi+xoms3n/wGrt5vBlZmuvdQ4sQAyy6Xgg8dggk5xZnqm2WI5QaSHRm3loV/WpsJq/hDDQjg/29yXLAtzb/Z/dlAllxCUQfXc= ARC-Authentication-Results: i=2; sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=efficios.com header.i=@efficios.com header.a=rsa-sha256 header.s=selector1 header.b=WbgEdFY2 DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B49B54BAE7F3 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=WjmUMHqzNyOPW3zEIGZjnpYP91r/d5oSXcJ94py0Odpz+HTNn1NeAtqZHKHZEh0ThHNfRytFPG1BjYor0EOoDzhSnAO3tytkFJMRccFyQA6XakW+m162EVRDdK2as9Q+5yY7UDaf057NFb3+jQ8NGQHpXRShTjK/2Z4+g93X4g03Bc4fOOtpBtJ6umtEGWRoXNo0RImLRKvCqmDhD/0L5eTtG+HSZr+XZuMnBxISQ4c1zmDM7zrVs/PlZGKMzU6P3OLiLQu4PbVse+d+4GTymf9ZX4WkYCpOWtRHygqJAESfsq/EvcLYEejVsEBt2F0q8bhlX1s8QElOKXBA17MIpA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=0YePl9CpfoBw9zDbjmiTAnIsbPbirpIvdqXZXFVB0VI=; b=MpT7nvr7faUqgVCdN0UdkdDzLYJmKEOvGw9tL7Jp4mjo82Mnl7mBcA8A4lGG8qVk4jaFHhJcH9hnOWj1cNFEs2cpDxlgFEHCa5iEo3JGL7+FCouJM6Rzsvd54rgsRKrxBapsz1l1SOevs9GgcztEKUxp8WMfJLD+ZJfGd/OGOKyNHT4TafSOAASNDFUwB6cBSs+wHq1+ZItQP6OMBhFViBKtCCfUv7l6MUMq9njM8IIz7Unxjq3spO2iNr0iKD2G4AdqeFLz/lRu0qT6YLRZQaW8BDNZcNC/vj9yhyoXDUCB6vqY0hy9F9wMkY8clnWiYpBr0HNF3kHzztOGEIM4bA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=efficios.com; dmarc=pass action=none header.from=efficios.com; dkim=pass header.d=efficios.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=efficios.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0YePl9CpfoBw9zDbjmiTAnIsbPbirpIvdqXZXFVB0VI=; b=WbgEdFY2kaii/gsPbBLO11qT2qYrArMP9beT5BytbraxPvMbfK631Zr6ZAB59cLoLLzDk5VomD5d3XV39xcOsFH89lNxiViuc0lhMzbiB5jgUERBMvM2i09YxJvwMcMtEqvkcTbl5UsHLgpKxiH+WNsNUymjV7dIWEM2gitDfRqE+fxAY7vQeVbqE7+WEMEZHxJWONij1sMeHUJy3r7B3UoL1nBML/YSLDKr/fgdqUpe/JE+zXkc60mWUyXLvO3RvlrKZ2fHornYkvhzrVvp+VfaiLupIQYwiqiCMOCvNXCE1zmw4mYL8hiLM095AC599hLOj21Qz2uAin4i/epmUA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=efficios.com; Received: from YQXPR01MB5418.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:2c::6) by YT3PR01MB9852.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:b01:90::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Mon, 17 Aug 2026 17:34:22 +0000 Received: from YQXPR01MB5418.CANPRD01.PROD.OUTLOOK.COM ([fe80::bbfa:179f:fdc8:b15d]) by YQXPR01MB5418.CANPRD01.PROD.OUTLOOK.COM ([fe80::bbfa:179f:fdc8:b15d%7]) with mapi id 15.21.0315.016; Mon, 17 Aug 2026 17:34:22 +0000 Message-ID: <19cccf49-efe7-4854-b08c-eca5e1fc8927@efficios.com> Date: Mon, 17 Aug 2026 13:34:21 -0400 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 12/13] gdb/remote: remove uses of sprintf To: Andrew Burgess , gdb-patches@sourceware.org, binutils@sourceware.org References: <20260817151646.152571-1-simon.marchi@efficios.com> <20260817151646.152571-13-simon.marchi@efficios.com> <878q643d2u.fsf@redhat.com> Content-Language: fr From: Simon Marchi In-Reply-To: <878q643d2u.fsf@redhat.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: YQBPR0101CA0318.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:6c::8) To YQXPR01MB5418.CANPRD01.PROD.OUTLOOK.COM (2603:10b6:c01:2c::6) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: YQXPR01MB5418:EE_|YT3PR01MB9852:EE_ X-MS-Office365-Filtering-Correlation-Id: ee0dc60f-4865-4989-0126-08defc85c65e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|4143699003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: kA6FYlN80hfjr7bwon2g/eoV+Un0X+n6sl4ZcR+K7mZtsaH9ucsPX+pfrLUo/ELcitv4aN5vnZjai3h+OZ4hpYUsFy5jHULFSmJ0zIW6uVqtfMmI6OYcRvebXoRst/bTy96cMbxF5qw2Z7C0YhTDMi3XhnZvMec4zjrD9e4pQjFCqKu0hHL+mgI6GwS7fFe/WEtLxTSRGeYPosHro8HiOgIv4sC3rLYuF0tjgCJ9eQkCQ98EGxzVxJ4/ji2PXQ1oHfXfswib+HdOHdm+agkk5wVsl+gngYgAqdybUqE/DLkcswO2xzoUO5W7DvcaxdF1vRIy56aWlmd58XXCrUdwkjWRKLGOzb1y8uTouqNDkO58DIG57B7rqO+xWSDFvGD9R9SFfTotdpNUnWQRIW+nSTzecuS+qmM5p2LuyChibvJXqc/5e1AQd/F3fKJi+iKAeS9V2EAu4vdmQlpWYbUE8cTVaqkvuiSIpOy+ZXW/rvnKTaJI9MQjcrpY3zE/kd+rdyYJDViUncAPugoDd3q9YAz/MLeuaOfa/RAnhUD/swUvL7TnqTWpK5EQ7534hO8QjweYoFPMZWBa//awRCrK+3FdhjLdzq4SLhQiAQkA3uiayA0BN6vrEAzQH6D4t/0G5kGDPP5I8fiXWBWvn9VXE4sdOhQOa/TPGS4tPVx76IQ= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:YQXPR01MB5418.CANPRD01.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(4143699003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a094UHB3cTJsV3NoTHYzc0l1MnNPZ1ZPWXFLUlpuMk1iUnpQaC9jRnNLRUNk?= =?utf-8?B?b0dHcE5TMktwV3pieUVRNk1UVWxHYkZSMlVWblNkWXhEaldoanBpdU9hRyt5?= =?utf-8?B?b0paL1loSXZiWm5vSXEwM2VwR0pxVzRmb05yaG1Bb2VDTGthays5TXk1bndm?= =?utf-8?B?UW1KRVVJWlNyektKc01adjlid3NBbllJS2JhQ0F6YUp6WHhhZUdiTytUY2ND?= =?utf-8?B?dytHbmRaMExwM0tpTmxCZjNjbXh0Z0FFUFpGMUZ4bUQvZjBTd3JtdVdIWXdu?= =?utf-8?B?WXpsT2pPUEJ5Q042bExWQjBkZ0V2dG92QzNENjZEZ3FuOFVoOXJCUUhKbS9x?= =?utf-8?B?TVVuNGx6aitzOHRQZ0xiNnBDNTgwUkw5L1JPakZSNkE1NElIR0p5TFNGOXk4?= =?utf-8?B?RUJTc3E0ZkRPTHRDQ2FaVFg2dlhoYkpMZlpzenhhTXVZUkhXL0VKbDh5cmVn?= =?utf-8?B?S3JaVHQ1NWFscnBaU1pkVmdJcWZuMVU3a3g1dnhlV3c4TmVRM1F3UHVMNDJD?= =?utf-8?B?VDlRWm9WN2JsU3UxMUMxYjB2TEFwUGNPcXBmd09ENVR2WlplUG40SDZyak5q?= =?utf-8?B?Um1vb1ZEbHBpcDdVSUIwWDVlUGxmMEozWWw5Vlh2aTBUZWVKTS9oZUxnRldH?= =?utf-8?B?NjZuajRvQ0tjOXlyTlNRaTA4RC9yV1FQL0hGTWVZSFYzbUhMRkVRQitjenNv?= =?utf-8?B?V0xSNmhzMmdHRWF4SGNxdzBOU0VtYTZhUVhrWisvNkZSS0d2RHhQWDZZYkJB?= =?utf-8?B?ZUZzOVcrc1lhT2dXUTJyckNIRmdHazRmNkhOQlMvMlB4alZmSTlybzZveXJN?= =?utf-8?B?aGpDVUlPTGJvTzl1TWdLWGNHYWRJWGNBNzF1c1kwdU84RE85dnR0Qm41VkYr?= =?utf-8?B?YlBQeEdISEUxRmZhd0dMMHJUeXltRkRvNzE4YTZmNFVoRENkMTlTMVBUSysv?= =?utf-8?B?MEdzNktvY2NXT1UwQVJVSk1ZVTJEdUNIcjArVkFWdWc0em4zZ3YwOGdQVzkv?= =?utf-8?B?R3NjNlBpWXp4QlU0L3JnTUFqNDVwK3dOYUJoWHlsSkRucW41VUFDdm5Pckdk?= =?utf-8?B?WmN4ZG9qREUxTUN5T1YvUTd1MStaYVRhTDJRQ0JieDNZd1AwSXExaG9lUnlm?= =?utf-8?B?OTJOS3hmK0l1MTlxQ2hGTlJyVG0wenJvRjRNdkpmUVVxOXpzY1NFWVZvb0Mz?= =?utf-8?B?UjdnUi85QVFnNldxWm1QZHBSNlg1OEpXa0ZXWEI3bTlEU0hyb3hzcXl5RkU4?= =?utf-8?B?bmd2bmJHNjY4S2o2U09qRDdaSHdiTENwNHVCeG9IQmVhd2dBWlJjMDg2bUdo?= =?utf-8?B?andjd2I2eCsvZWt1TStFc0pYLy9UUTRIOVA0U2hyb2VTbElMa1hCUkRZcGpC?= =?utf-8?B?YmgrL1dBM1piWFBydGNjRVJIMlA2RXdJTXhZS3lyei9TNkluTGJCbDlidndD?= =?utf-8?B?c3QzemxQWVJmS2JlUFFsc1ZlUmJBK3dDMmVkbklOandOVVJQeWkxWVgwKys3?= =?utf-8?B?c1pOakhpQ0F6REpyemhXaGxvV0tSSGs0MjM1T2psTHhlVmlaekY1SGlCUDdZ?= =?utf-8?B?ODI2MzVFQXNDZUp4OFNGV21uTWRKTGtuV0k2Mjh2V0diZDdCMnVIVDB3WXJi?= =?utf-8?B?NVl5SmdFVU1UaWhmTWM0TXIzMGcxdG1PNkZhbnoxM0FpOXF1bEVnWW9KUVM4?= =?utf-8?B?ditWcHFqQnlwTEpMQ2R4dTF6aTFLT2xBdEtFc0NNZE5lc0RWelZhejQrTHhw?= =?utf-8?B?ZUFrMTExSXJEaGViYzNmaCszc29SRUdTUjZYM2UwWEg2S3FkNURJN25FclE5?= =?utf-8?B?T1MxREVndFhQY0FuZ29lM2M1UGFPT2lQemc2Y3VsTUxSOFZiTWtrZWw0dUw4?= =?utf-8?B?NTVXUU4vaU1OV21OTEZtOVNzd0ozVzhyY1ZPbU9NVDJZYStOMHQrVWtFRmVq?= =?utf-8?B?aVpmYnR4K1dzUnd5UVhTK1lBc2ZiYzVQK0dSQ2x1aVJUQS9XQy9Hcnd4TzBK?= =?utf-8?B?U0V3SllyQTNRWS92aytNVDNLR2VQVmYvME4xcGl5TzF6ZmlOZHVjSmJIWE8v?= =?utf-8?B?OXVHY29BcEhVaHhxVktwRzJWdFVaYVJRUkxrYnNBSmtpeTdFMkFBcnpIZDJ2?= =?utf-8?B?MURLNlhFRlRPR2x2TXhYWTBaMVkyM3k4ZEhxdGY4ZEVNd0thdE4xa1BiWmpD?= =?utf-8?B?Y1RoR2tVTmt4RDRJV081dDNBR3UzN25TYUhLWm1jNS9DYnBxL3dQdW1PUXBQ?= =?utf-8?B?a0Y2Q3ViUlVlZksyR0ZKVGFZWFdyMmJuRlZGdzZqVXRhYkNpYXdsVlk1QWlt?= =?utf-8?B?b0xFNE9id1FLNk9BUlgva3pwRHBVOHZqRUlndUlSSkhMVFJraW1ZQT09?= X-OriginatorOrg: efficios.com X-MS-Exchange-CrossTenant-Network-Message-Id: ee0dc60f-4865-4989-0126-08defc85c65e X-MS-Exchange-CrossTenant-AuthSource: YQXPR01MB5418.CANPRD01.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Aug 2026 17:34:22.3353 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4f278736-4ab6-415c-957e-1f55336bd31e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: iWToY0PnaTswRrJho5Es8GnxLOC2d6Zq00prH/PGJFRw3NOTxFC7A0arE+6RgrPYHeI35sEaDoE8/4g1E43BuA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: YT3PR01MB9852 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org On 8/17/26 12:51 PM, Andrew Burgess wrote: >> @@ -11532,35 +11533,42 @@ remote_add_target_side_condition (struct gdbarch *gdbarch, >> /* Send conditions to the target. */ >> for (agent_expr *aexpr : bp_tgt->conditions) >> { >> - xsnprintf (buf, buf_end - buf, "X%x,", (int) aexpr->buf.size ()); >> - buf += strlen (buf); >> + buf += xsnprintf (buf, buf_end - buf, "X%x,", (int) aexpr->buf.size ()); >> + >> for (int i = 0; i < aexpr->buf.size (); ++i) >> buf = pack_hex_byte (buf, aexpr->buf[i]); >> + > > I wonder if we should add an assert here either inside, or just after, > the loop, to check that we've not blown past BUF_END? Unless I'm > misunderstanding this, these PACK_HEX_BYTE calls could overrun the > buffer, right? I noted in the commit message that I didn't do it, because I wanted to focus just on the *printf calls, but I can always do it as a follow-up. Simon