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 1x4Dxh-0070ye-01 for pgsql-hackers@arkaria.postgresql.org; Wed, 09 Sep 2026 08:47:21 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1x4Dxf-00DCak-31 for pgsql-hackers@arkaria.postgresql.org; Wed, 09 Sep 2026 08:47:19 +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 1x3TVO-00HVXO-30 for pgsql-hackers@lists.postgresql.org; Mon, 07 Sep 2026 07:11:02 +0000 Received: from email.dnscdc.tech ([194.226.250.15]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1x3TVM-00000003MZ7-1VUm for pgsql-hackers@lists.postgresql.org; Mon, 07 Sep 2026 07:11:02 +0000 Received: with id 84CD4280D5D; Mon, 7 Sep 2026 14:10:56 +0700 (+07) Received: with id D58EA280051; Mon, 7 Sep 2026 14:10:52 +0700 (+07) From: Efimtsev Fjodor To: "exclusion@gmail.com" CC: Grigorev Jurij , "pgsql-hackers@lists.postgresql.org" Subject: Re: Importing pg_bsd_indent into our source tree Thread-Topic: Importing pg_bsd_indent into our source tree Thread-Index: AQHdPpYMzBdqMDi/wke1+BZ1U5K8Qg== Date: Mon, 7 Sep 2026 07:10:51 +0000 Message-ID: <8f9b2d2a11024e2ba03d072afc981ebf@localhost.localdomain> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: Content-Type: multipart/mixed; boundary="_002_8f9b2d2a11024e2ba03d072afc981ebfftdataru_" MIME-Version: 1.0 X-KLMS-Rule-ID: 1 X-KLMS-Message-Action: clean X-KLMS-AntiSpam-Lua-Profiles: 205752 [Sep 07 2026] X-KLMS-AntiSpam-Version: 6.1.1.27 X-KLMS-AntiSpam-Envelope-From: f.efimtsev@ftdata.ru X-KLMS-AntiSpam-Rate: 0 X-KLMS-AntiSpam-Status: not_detected X-KLMS-AntiSpam-Method: none X-KLMS-AntiSpam-Auth: dkim=none X-MS-Exchange-Organization-SCL: -1 X-KLMS-AntiSpam-Interceptor-Info: scan successful X-KLMS-AntiPhishing: Clean, bases: 2026/09/07 06:34:00 X-KLMS-AntiVirus: Kaspersky Security for Linux Mail Server, version 8.0.3.30, bases: 2026/09/07 05:42:00 #28546841 X-KLMS-AntiVirus-Status: Clean, skipped List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_002_8f9b2d2a11024e2ba03d072afc981ebfftdataru_ Content-Type: text/plain; charset="koi8-r" Content-Transfer-Encoding: quoted-printable Hi Alexander, thank you for your patch.=20 I think your patched version of strspn() assumes that all of these are true= : - s1 is NULL-terminated or has characters not in s2; - s2 doesn't contain '\n'; - s1 is not an empty string (pointing to NULL). Also it redefines a libc function with a macro which doesn't seem very clea= n. The attached version is safer in that it is bounded and avoids shadowing a = stdlib function. Regards, Fedor Efimtsev= --_002_8f9b2d2a11024e2ba03d072afc981ebfftdataru_ Content-Type: text/x-patch; name="0001-fix-sanitizer-warning-in-src-tools-pg_bsd_indent-lex.patch" Content-Description: 0001-fix-sanitizer-warning-in-src-tools-pg_bsd_indent-lex.patch Content-Disposition: attachment; filename="0001-fix-sanitizer-warning-in-src-tools-pg_bsd_indent-lex.patch"; size=1836; creation-date="Mon, 07 Sep 2026 07:08:49 GMT"; modification-date="Mon, 07 Sep 2026 07:08:49 GMT" Content-Transfer-Encoding: base64 RnJvbSAyODMwZjA2NmNhMjk1ZDM3MzE2MzlhOWY1NzdjZjVmNGM3Y2Y4MDc2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRvciBFZmltdHNldiA8Zi5lZmltdHNldkBmdGRhdGEucnU+ CkRhdGU6IE1vbiwgNyBTZXAgMjAyNiAxMzo0MDo1NiArMDcwMApTdWJqZWN0OiBbUEFUQ0hdIGZp eCBzYW5pdGl6ZXIgd2FybmluZyBpbiBzcmMvdG9vbHMvcGdfYnNkX2luZGVudC9sZXhpLmMKCi0t LQogc3JjL3Rvb2xzL3BnX2JzZF9pbmRlbnQvbGV4aS5jIHwgMzQgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMxIGluc2VydGlvbnMoKyksIDMgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL3Rvb2xzL3BnX2JzZF9pbmRlbnQvbGV4aS5jIGIv c3JjL3Rvb2xzL3BnX2JzZF9pbmRlbnQvbGV4aS5jCmluZGV4IGU4NDYxODhkNmY0Li43ZjI4ZTYz MWY0MyAxMDA2NDQKLS0tIGEvc3JjL3Rvb2xzL3BnX2JzZF9pbmRlbnQvbGV4aS5jCisrKyBiL3Ny Yy90b29scy9wZ19ic2RfaW5kZW50L2xleGkuYwpAQCAtMjEyLDYgKzIxMiwzNCBAQCBpc19mdW5j X2RlZmluaXRpb24oY2hhciAqdHApCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCitzdGF0aWMgc2l6 ZV90CitpbmRlbnRfc3Ryc3BuKGNvbnN0IGNoYXIgKnMxLCBjb25zdCBjaGFyICpzMiwgY29uc3Qg Y2hhciAqZW5kKQoreworICAgIGNvbnN0IGNoYXIgKnAgPSBzMTsKKworICAgIHdoaWxlIChwIDwg ZW5kICYmICpwICE9ICdcbicgJiYgKnAgIT0gJ1wwJykKKyAgICB7CisgICAgICAgIGNvbnN0IGNo YXIgKnNwYW5wOworICAgICAgICBib29sIGZvdW5kID0gZmFsc2U7CisKKyAgICAgICAgZm9yIChz cGFucCA9IHMyOyAqc3BhbnAgIT0gJ1wwJzsgc3BhbnArKykKKyAgICAgICAgeworICAgICAgICAg ICAgaWYgKCh1bnNpZ25lZCBjaGFyKSAqc3BhbnAgPT0gKHVuc2lnbmVkIGNoYXIpICpwKQorICAg ICAgICAgICAgeworICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTsKKyAgICAgICAgICAgICAg ICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIGlmICghZm91bmQp CisgICAgICAgICAgICBicmVhazsKKworICAgICAgICBwKys7CisgICAgfQorCisgICAgcmV0dXJu IHAgLSBzMTsKK30KKwogaW50CiBsZXhpKHN0cnVjdCBwYXJzZXJfc3RhdGUgKnN0YXRlKQogewpA QCAtMjU1LDExICsyODMsMTEgQEAgbGV4aShzdHJ1Y3QgcGFyc2VyX3N0YXRlICpzdGF0ZSkKIAkJ aW50IGxlbjsKIAogCQlpZiAoYnVmX3B0clsxXSA9PSAnYicgfHwgYnVmX3B0clsxXSA9PSAnQicp Ci0JCSAgICBsZW4gPSBzdHJzcG4oYnVmX3B0ciArIDIsICIwMSIpICsgMjsKKwkJICAgIGxlbiA9 IGluZGVudF9zdHJzcG4oYnVmX3B0ciArIDIsICIwMSIsIGJ1Zl9lbmQpICsgMjsKIAkJZWxzZSBp ZiAoYnVmX3B0clsxXSA9PSAneCcgfHwgYnVmX3B0clsxXSA9PSAnWCcpCi0JCSAgICBsZW4gPSBz dHJzcG4oYnVmX3B0ciArIDIsICIwMTIzNDU2Nzg5QUJDREVGYWJjZGVmIikgKyAyOworCQkgICAg bGVuID0gaW5kZW50X3N0cnNwbihidWZfcHRyICsgMiwgIjAxMjM0NTY3ODlBQkNERUZhYmNkZWYi LCBidWZfZW5kKSArIDI7CiAJCWVsc2UKLQkJICAgIGxlbiA9IHN0cnNwbihidWZfcHRyICsgMSwg IjAxMjM0NTY3OCIpICsgMTsKKwkJICAgIGxlbiA9IGluZGVudF9zdHJzcG4oYnVmX3B0ciArIDEs ICIwMTIzNDU2NzgiLCBidWZfZW5kKSArIDE7CiAJCWlmIChsZW4gPiAwKSB7CiAJCSAgICBDSEVD S19TSVpFX1RPS0VOKGxlbik7CiAJCSAgICBtZW1jcHkoZV90b2tlbiwgYnVmX3B0ciwgbGVuKTsK LS0gCjIuNTUuMAoK --_002_8f9b2d2a11024e2ba03d072afc981ebfftdataru_--