Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wk7K3-000TmC-0P for pgsql-hackers@arkaria.postgresql.org; Wed, 15 Jul 2026 21:39:19 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wk7K1-009v3F-37 for pgsql-hackers@arkaria.postgresql.org; Wed, 15 Jul 2026 21:39:17 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wk7K1-009v35-1t for pgsql-hackers@lists.postgresql.org; Wed, 15 Jul 2026 21:39:17 +0000 Received: from mail-pl1-x630.google.com ([2607:f8b0:4864:20::630]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wk7Jz-00000000Tya-0tfK for pgsql-hackers@postgresql.org; Wed, 15 Jul 2026 21:39:17 +0000 Received: by mail-pl1-x630.google.com with SMTP id d9443c01a7336-2ceae1ed204so32975525ad.0 for ; Wed, 15 Jul 2026 14:39:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=j-davis-com.20251104.gappssmtp.com; s=20251104; t=1784151553; x=1784756353; darn=postgresql.org; h=mime-version:user-agent:content-transfer-encoding:content-type :references:in-reply-to:date:cc:to:from:subject:message-id:from:to :cc:subject:date:message-id:reply-to:content-type; bh=LKcRdaZ/jb2R6Dssio5+veT58X1Xq+50SstB7VOrYAA=; b=Py2Xd6To7kSjb7h84ylqx6YgUQIgmUOIBTNPR28G8HUZfOeAkIPQzPUX9kdyymjA8l o7+kFVMvNGst4xlR+y13wMD8/2n9utVkCnjY41VzN+nanQYnaOkDX6Axv+GQ6rEU66Sy ebymrfuVdUD0lD/8I5oA2ZCehGrqdpzEfrne33objPUDZpINMRH8irZaeUqJ73PteYao c5DqLiCCaVQpaFjpVeJR6I7zJKLBabcvmO5FND0a47dMhM8VOw9JZvy97hqxGgeYUvTR UyHiOmWoC8QXhij5CKxMmPGHMYdo55AeTZtLPcjuWrOdrbD1RGE0zcwR0KJfK0rAQM8E IVdQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784151553; x=1784756353; h=mime-version:user-agent:content-transfer-encoding:content-type :references:in-reply-to:date:cc:to:from:subject:message-id:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=LKcRdaZ/jb2R6Dssio5+veT58X1Xq+50SstB7VOrYAA=; b=IVgZ8F6Bf9n7QlsmMl5psMR2zWfKJiBGFSgUPlt/C77UtgBmgdYwu9CQ2jvXzaWy7S VH9lGMRUj9oSn7ban8/o8z55MBULqVGYqaFJuJnLxbRWlhUEi4nCcwZ6gWk0K7cSJMBW cUH+rZLr2d8AChGhrQhFTDIecnMwmnAjTMRp8fS3mrC4MmHPUKLcfaKQJiemDel1e/sq uxnikcO22uKaSC8BO/lT9Hd1sYUqMEvblZlOJww7VeEOWMgmXzZ+M2L/eGtWwz0/kKj9 0hEwHGkTNAi+ZgFtJV2DlCPZ2hfOR+LUhe62KVlx10l8KmOuCDCx4N6ugp2FtShSH5Bb DDjg== X-Forwarded-Encrypted: i=1; AHgh+RozV14XoG9HaRmd/S7a8rQaGpNm7C0yjCHGBY9cJOsDfO+aoG2jNuKlvyu8wa+MaWSC3dAqGusHVYnQPFN3@postgresql.org X-Gm-Message-State: AOJu0YzUs9ld5pXZcSSfbJdZTxQx6ZR7NPJzK7QUtDp56OSNcJrJPo0m RPiXSfyUa7THlyTpljGfJbVvNVPmtkY32IAmE9SZ/j4BkL0z5EUX8+vSf9J0IrVS7w== X-Gm-Gg: AfdE7cnD4W34Eb0OLaf9ZZUEVgfjqe9MTS8XF4N3emAAIxfKUFcNA0tC9jMXE4IbK4z dTkdqCXWxpzcbO4NhIWy8R9JA8KH3/uNW7YgBGJh2XHY1Q/FPX4EEE92UDUKZiR5hFfEWceYmk0 kTIkl8qUIaF6yAoZi5BgJMgCSnh5TfIyFM60t2CF4Fe1vaHJptBNVjAP+a2TfxTrBaeYXndwNiT pGlDzcvags4xfCwknowrwzCpsFPMJgKLq9nvWgxBM0pzuSce3cSJb4x+0OvgUkBaAO4a8QrLBPv b1OLOk5c00WV2JQEDJNSLujGiGPZifsNeVslzvVgdMyrofsByJQfPmgaVWwINpNuUA8PsZmliRd vFOEjdE/AUiVOLoO0ZjpoIWOAxOCxQ7xFhWKN/ISqHHkGbp/PQgjC2tazv6AjMY4613Ecg1w= X-Received: by 2002:a05:6a21:6b12:b0:3bf:63af:85d with SMTP id adf61e73a8af0-3c1108b6099mr21846091637.18.1784151552984; Wed, 15 Jul 2026 14:39:12 -0700 (PDT) Received: from [10.15.241.83] ([4.4.38.74]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-3140e4fcd31sm4924751eec.4.2026.07.15.14.39.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Jul 2026 14:39:12 -0700 (PDT) Message-ID: <55491ca4edb3a78ecd62b8d313eca7dd57de5e79.camel@j-davis.com> Subject: Re: Small patch to improve safety of utf8_to_unicode(). From: Jeff Davis To: Tom Lane Cc: Chao Li , pgsql-hackers@postgresql.org Date: Wed, 15 Jul 2026 14:39:11 -0700 In-Reply-To: <765830662fd26e0861189c775443fc76ea8213da.camel@j-davis.com> References: <541F240E-94AD-4D65-9794-7D6C316BC3FF@gmail.com> <313BCA0E-2E74-4EB6-9AA8-10DB7F439151@gmail.com> <592441c1d871a4ed0ac1708e132f447caa35869c.camel@j-davis.com> <3058CAA1-40E0-4098-893B-615F77CD35E1@gmail.com> <0cedb517aee8b79b8e31a4e42885ed88c2a67c5f.camel@j-davis.com> <16CAD4DB-9D4A-481A-BB4E-78775C4F4B2C@gmail.com> <3213927.1783950167@sss.pgh.pa.us> <3228110.1783963143@sss.pgh.pa.us> <3228230.1783963239@sss.pgh.pa.us> <765830662fd26e0861189c775443fc76ea8213da.camel@j-davis.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.52.3-0ubuntu1.1 MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Mon, 2026-07-13 at 20:26 -0700, Jeff Davis wrote: > Attached a patch. I added some perl code to check that the expansion > factor of the UTF8 representation doesn't exceed 3, and added a > static > assert in the C code to compare to MaxAllocSize. I plan to commit this soon. Only to master, unless you'd like me to backport to silence some coverity warnings. Regards, Jeff Davis