Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p7IoL-0006mJ-RA for pgsql-hackers@arkaria.postgresql.org; Mon, 19 Dec 2022 16:16:17 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1p7IoK-0005bM-E7 for pgsql-hackers@arkaria.postgresql.org; Mon, 19 Dec 2022 16:16:16 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p7IoK-0005bC-47 for pgsql-hackers@lists.postgresql.org; Mon, 19 Dec 2022 16:16:16 +0000 Received: from relay7-d.mail.gandi.net ([2001:4b98:dc4:8::227]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p7IoH-0007aW-9s for pgsql-hackers@lists.postgresql.org; Mon, 19 Dec 2022 16:16:15 +0000 Received: (Authenticated sender: adsend@dunslane.net) by mail.gandi.net (Postfix) with ESMTPSA id 0670B2000B for ; Mon, 19 Dec 2022 16:16:09 +0000 (UTC) Content-Type: multipart/mixed; boundary="------------vykP2fV1TdwGB8PzdJuTRj9T" Message-ID: <06005bfb-0fd7-9d08-e0e5-440f277b73b4@dunslane.net> Date: Mon, 19 Dec 2022 11:16:08 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Content-Language: en-US From: Andrew Dunstan Subject: Add a test to ldapbindpasswd To: PostgreSQL Hackers List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------vykP2fV1TdwGB8PzdJuTRj9T Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit There is currently no test for the use of ldapbindpasswd in the pg_hba.conf file. This patch, mostly the work of John Naylor, remedies that. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com --------------vykP2fV1TdwGB8PzdJuTRj9T Content-Type: text/x-patch; charset=UTF-8; name="0001-Add-a-test-for-ldapbindpasswd.patch" Content-Disposition: attachment; filename="0001-Add-a-test-for-ldapbindpasswd.patch" Content-Transfer-Encoding: base64 RnJvbSA3OGNhNmI0MDU2MDFjZTBkODg0NDA2Yjk0ZmEzNTZlMzhlMTlkMmUwIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgRHVuc3RhbiA8YW5kcmV3QGR1bnNsYW5l Lm5ldD4KRGF0ZTogTW9uLCAxOSBEZWMgMjAyMiAwNjozODoxMSAtMDUwMApTdWJqZWN0OiBb UEFUQ0hdIEFkZCBhIHRlc3QgZm9yIGxkYXBiaW5kcGFzc3dkCgpUaGUgZXhpc3RpbmcgTERB UCB0ZXN0cyBkb24ndCBjb3ZlciB0aGUgdXNlIG9mIGxkYXBiaW5kcGFzc3dkIGluCnBnX2hi YS5jb25mLCBzbyByZW1lZHkgdGhhdC4KCkF1dGhvcjogSm9obiBOYXlsb3IKLS0tCiBzcmMv dGVzdC9sZGFwL21lc29uLmJ1aWxkICAgICAgICAgfCAgIDEgKwogc3JjL3Rlc3QvbGRhcC90 LzAwMl9iaW5kcGFzc3dkLnBsIHwgMTk4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KwogMiBmaWxlcyBjaGFuZ2VkLCAxOTkgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAw NjQ0IHNyYy90ZXN0L2xkYXAvdC8wMDJfYmluZHBhc3N3ZC5wbAoKZGlmZiAtLWdpdCBhL3Ny Yy90ZXN0L2xkYXAvbWVzb24uYnVpbGQgYi9zcmMvdGVzdC9sZGFwL21lc29uLmJ1aWxkCmlu ZGV4IDg1NzczODVlZTUuLjRjOGRmOTJhMjYgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L2xkYXAv bWVzb24uYnVpbGQKKysrIGIvc3JjL3Rlc3QvbGRhcC9tZXNvbi5idWlsZApAQCAtNSw2ICs1 LDcgQEAgdGVzdHMgKz0gewogICAndGFwJzogewogICAgICd0ZXN0cyc6IFsKICAgICAgICd0 LzAwMV9hdXRoLnBsJywKKwkgICd0LzAwMl9iaW5kcGFzc3dkLnBsJywKICAgICBdLAogICAg ICdlbnYnOiB7CiAgICAgICAnd2l0aF9sZGFwJzogbGRhcC5mb3VuZCgpID8gJ3llcycgOiAn bm8nLApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvbGRhcC90LzAwMl9iaW5kcGFzc3dkLnBsIGIv c3JjL3Rlc3QvbGRhcC90LzAwMl9iaW5kcGFzc3dkLnBsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAwMDAuLjBlZDNhNjMwYWYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMv dGVzdC9sZGFwL3QvMDAyX2JpbmRwYXNzd2QucGwKQEAgLTAsMCArMSwxOTggQEAKKworIyBD b3B5cmlnaHQgKGMpIDIwMjIsIFBvc3RncmVTUUwgR2xvYmFsIERldmVsb3BtZW50IEdyb3Vw CisKK3VzZSBzdHJpY3Q7Cit1c2Ugd2FybmluZ3M7Cit1c2UgRmlsZTo6Q29weTsKK3VzZSBQ b3N0Z3JlU1FMOjpUZXN0OjpVdGlsczsKK3VzZSBQb3N0Z3JlU1FMOjpUZXN0OjpDbHVzdGVy OwordXNlIFRlc3Q6Ok1vcmU7CisKKworbXkgKCRzbGFwZCwgJGxkYXBfYmluX2RpciwgJGxk YXBfc2NoZW1hX2Rpcik7CisKKyRsZGFwX2Jpbl9kaXIgPSB1bmRlZjsgICAgIyB1c3VhbGx5 IGluIFBBVEgKKworaWYgKCRFTlZ7d2l0aF9sZGFwfSBuZSAneWVzJykKK3sKKwlwbGFuIHNr aXBfYWxsID0+ICdMREFQIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBidWlsZCc7Cit9CitlbHNp ZiAoJEVOVntQR19URVNUX0VYVFJBfSAhfiAvXGJsZGFwXGIvKQoreworCXBsYW4gc2tpcF9h bGwgPT4gJ1BvdGVudGlhbGx5IHVuc2FmZSB0ZXN0IExEQVAgbm90IGVuYWJsZWQgaW4gUEdf VEVTVF9FWFRSQSc7Cit9CitlbHNpZiAoJF5PIGVxICdkYXJ3aW4nICYmIC1kICcvdXNyL2xv Y2FsL29wdC9vcGVubGRhcCcpCit7CisJIyB0eXBpY2FsIHBhdGhzIGZvciBIb21lYnJldwor CSRzbGFwZCAgICAgICAgICAgPSAnL3Vzci9sb2NhbC9vcHQvb3BlbmxkYXAvbGliZXhlYy9z bGFwZCc7CisJJGxkYXBfc2NoZW1hX2RpciA9ICcvdXNyL2xvY2FsL2V0Yy9vcGVubGRhcC9z Y2hlbWEnOworfQorZWxzaWYgKCReTyBlcSAnZGFyd2luJyAmJiAtZCAnL29wdC9sb2NhbC9l dGMvb3BlbmxkYXAnKQoreworCSMgdHlwaWNhbCBwYXRocyBmb3IgTWFjUG9ydHMKKwkkc2xh cGQgICAgICAgICAgID0gJy9vcHQvbG9jYWwvbGliZXhlYy9zbGFwZCc7CisJJGxkYXBfc2No ZW1hX2RpciA9ICcvb3B0L2xvY2FsL2V0Yy9vcGVubGRhcC9zY2hlbWEnOworfQorZWxzaWYg KCReTyBlcSAnbGludXgnKQoreworCSRzbGFwZCAgICAgICAgICAgPSAnL3Vzci9zYmluL3Ns YXBkJzsKKwkkbGRhcF9zY2hlbWFfZGlyID0gJy9ldGMvbGRhcC9zY2hlbWEnIGlmIC1kICcv ZXRjL2xkYXAvc2NoZW1hJzsKKwkkbGRhcF9zY2hlbWFfZGlyID0gJy9ldGMvb3BlbmxkYXAv c2NoZW1hJyBpZiAtZCAnL2V0Yy9vcGVubGRhcC9zY2hlbWEnOworfQorZWxzaWYgKCReTyBl cSAnZnJlZWJzZCcpCit7CisJJHNsYXBkICAgICAgICAgICA9ICcvdXNyL2xvY2FsL2xpYmV4 ZWMvc2xhcGQnOworCSRsZGFwX3NjaGVtYV9kaXIgPSAnL3Vzci9sb2NhbC9ldGMvb3Blbmxk YXAvc2NoZW1hJzsKK30KK2Vsc2lmICgkXk8gZXEgJ29wZW5ic2QnKQoreworCSRzbGFwZCAg ICAgICAgICAgPSAnL3Vzci9sb2NhbC9saWJleGVjL3NsYXBkJzsKKwkkbGRhcF9zY2hlbWFf ZGlyID0gJy91c3IvbG9jYWwvc2hhcmUvZXhhbXBsZXMvb3BlbmxkYXAvc2NoZW1hJzsKK30K K2Vsc2UKK3sKKwlwbGFuIHNraXBfYWxsID0+ICJsZGFwIHRlc3RzIG5vdCBzdXBwb3J0ZWQg b24gJF5PIG9yIGRlcGVuZGVuY2llcyBub3QgaW5zdGFsbGVkIjsKK30KKworIyBtYWtlIHlv dXIgb3duIGVkaXRzIGhlcmUKKyMkc2xhcGQgPSAnJzsKKyMkbGRhcF9iaW5fZGlyID0gJyc7 CisjJGxkYXBfc2NoZW1hX2RpciA9ICcnOworCiskRU5We1BBVEh9ID0gIiRsZGFwX2Jpbl9k aXI6JEVOVntQQVRIfSIgaWYgJGxkYXBfYmluX2RpcjsKKworbXkgJGxkYXBfZGF0YWRpciAg PSAiJHtQb3N0Z3JlU1FMOjpUZXN0OjpVdGlsczo6dG1wX2NoZWNrfS9vcGVubGRhcC1kYXRh IjsKK215ICRzbGFwZF9jZXJ0cyAgID0gIiR7UG9zdGdyZVNRTDo6VGVzdDo6VXRpbHM6OnRt cF9jaGVja30vc2xhcGQtY2VydHMiOworbXkgJHNsYXBkX2NvbmYgICAgPSAiJHtQb3N0Z3Jl U1FMOjpUZXN0OjpVdGlsczo6dG1wX2NoZWNrfS9zbGFwZC5jb25mIjsKK215ICRzbGFwZF9w aWRmaWxlID0gIiR7UG9zdGdyZVNRTDo6VGVzdDo6VXRpbHM6OnRtcF9jaGVja30vc2xhcGQu cGlkIjsKK215ICRzbGFwZF9sb2dmaWxlID0gIiR7UG9zdGdyZVNRTDo6VGVzdDo6VXRpbHM6 OmxvZ19wYXRofS9zbGFwZC5sb2ciOworbXkgJGxkYXBfY29uZiAgICAgPSAiJHtQb3N0Z3Jl U1FMOjpUZXN0OjpVdGlsczo6dG1wX2NoZWNrfS9sZGFwLmNvbmYiOworbXkgJGxkYXBfc2Vy dmVyICAgPSAnbG9jYWxob3N0JzsKK215ICRsZGFwX3BvcnQgICAgID0gUG9zdGdyZVNRTDo6 VGVzdDo6Q2x1c3Rlcjo6Z2V0X2ZyZWVfcG9ydCgpOworbXkgJGxkYXBzX3BvcnQgICAgPSBQ b3N0Z3JlU1FMOjpUZXN0OjpDbHVzdGVyOjpnZXRfZnJlZV9wb3J0KCk7CitteSAkbGRhcF91 cmwgICAgICA9ICJsZGFwOi8vJGxkYXBfc2VydmVyOiRsZGFwX3BvcnQiOworbXkgJGxkYXBz X3VybCAgICAgPSAibGRhcHM6Ly8kbGRhcF9zZXJ2ZXI6JGxkYXBzX3BvcnQiOworbXkgJGxk YXBfYmFzZWRuICAgPSAnZGM9ZXhhbXBsZSxkYz1uZXQnOworbXkgJGxkYXBfcm9vdGRuICAg PSAnY249TWFuYWdlcixkYz1leGFtcGxlLGRjPW5ldCc7CitteSAkbGRhcF9yb290cHcgICA9 ICdzZWNyZXQnOworbXkgJGxkYXBfcHdmaWxlICAgPSAiJHtQb3N0Z3JlU1FMOjpUZXN0OjpV dGlsczo6dG1wX2NoZWNrfS9sZGFwcGFzc3dvcmQiOworCitub3RlICJzZXR0aW5nIHVwIHNs YXBkIjsKKworIyBuZWVkIHRvIGNyZWF0ZSBuZXcgY29uZmlnIHdpdGhvdXQgYW5vbnltb3Vz IGF1dGgKK3VubGluayAkc2xhcGRfY29uZjsKKworYXBwZW5kX3RvX2ZpbGUoCisJJHNsYXBk X2NvbmYsCisJcXF7aW5jbHVkZSAkbGRhcF9zY2hlbWFfZGlyL2NvcmUuc2NoZW1hCitpbmNs dWRlICRsZGFwX3NjaGVtYV9kaXIvY29zaW5lLnNjaGVtYQoraW5jbHVkZSAkbGRhcF9zY2hl bWFfZGlyL25pcy5zY2hlbWEKK2luY2x1ZGUgJGxkYXBfc2NoZW1hX2Rpci9pbmV0b3JncGVy c29uLnNjaGVtYQorCitwaWRmaWxlICRzbGFwZF9waWRmaWxlCitsb2dmaWxlICRzbGFwZF9s b2dmaWxlCisKK2FjY2VzcyB0byAqCisgICAgICAgIGJ5ICogcmVhZAorICAgICAgICBieSB1 c2VycyBhdXRoCisKK2RhdGFiYXNlIGxkaWYKK2RpcmVjdG9yeSAkbGRhcF9kYXRhZGlyCisK K1RMU0NBQ2VydGlmaWNhdGVGaWxlICRzbGFwZF9jZXJ0cy9jYS5jcnQKK1RMU0NlcnRpZmlj YXRlRmlsZSAkc2xhcGRfY2VydHMvc2VydmVyLmNydAorVExTQ2VydGlmaWNhdGVLZXlGaWxl ICRzbGFwZF9jZXJ0cy9zZXJ2ZXIua2V5CisKK3N1ZmZpeCAiZGM9ZXhhbXBsZSxkYz1uZXQi Cityb290ZG4gIiRsZGFwX3Jvb3RkbiIKK3Jvb3RwdyAkbGRhcF9yb290cHd9KTsKKworY29w eSAiLi4vc3NsL3NzbC9zZXJ2ZXJfY2EuY3J0IiwgIiRzbGFwZF9jZXJ0cy9jYS5jcnQiCisg IHx8IGRpZSAiY29weWluZyBjYS5jcnQ6ICQhIjsKK2NvcHkgIi4uL3NzbC9zc2wvc2VydmVy LWNuLW9ubHkuY3J0IiwgIiRzbGFwZF9jZXJ0cy9zZXJ2ZXIuY3J0IgorICB8fCBkaWUgImNv cHlpbmcgc2VydmVyLmNydDogJCEiOzsKK2NvcHkgIi4uL3NzbC9zc2wvc2VydmVyLWNuLW9u bHkua2V5IiwgIiRzbGFwZF9jZXJ0cy9zZXJ2ZXIua2V5IgorICB8fCBkaWUgImNvcHlpbmcg c2VydmVyLmtleTogJCEiOzsKKworc3lzdGVtX29yX2JhaWwgJHNsYXBkLCAnLWYnLCAkc2xh cGRfY29uZiwgJy1oJywgIiRsZGFwX3VybCAkbGRhcHNfdXJsIjsKKworRU5ECit7CisJa2ls bCAnSU5UJywgYGNhdCAkc2xhcGRfcGlkZmlsZWAgaWYgLWYgJHNsYXBkX3BpZGZpbGU7Cit9 CisKKyMgd2FpdCB1bnRpbCBzbGFwZCBhY2NlcHRzIHJlcXVlc3RzCitteSAkcmV0cmllcyA9 IDA7Cit3aGlsZSAoMSkKK3sKKwlsYXN0CisJICBpZiAoCisJCXN5c3RlbV9sb2coCisJCQki bGRhcHNlYXJjaCIsICItc2Jhc2UiLAorCQkJIi1IIiwgICAgICAgICAkbGRhcF91cmwsCisJ CQkiLWIiLCAgICAgICAgICRsZGFwX2Jhc2VkbiwKKwkJCSItRCIsICAgICAgICAgJGxkYXBf cm9vdGRuLAorCQkJIi15IiwgICAgICAgICAkbGRhcF9wd2ZpbGUsCisJCQkiLW4iLCAgICAg ICAgICInb2JqZWN0Y2xhc3M9KiciKSA9PSAwKTsKKwlkaWUgImNhbm5vdCBjb25uZWN0IHRv IHNsYXBkIiBpZiArKyRyZXRyaWVzID49IDMwMDsKKwlub3RlICJ3YWl0aW5nIGZvciBzbGFw ZCB0byBhY2NlcHQgcmVxdWVzdHMuLi4iOworCVRpbWU6OkhpUmVzOjp1c2xlZXAoMTAwMDAw MCk7Cit9CisKKyRFTlZ7J0xEQVBVUkknfSAgICA9ICRsZGFwX3VybDsKKyRFTlZ7J0xEQVBC SU5ERE4nfSA9ICRsZGFwX3Jvb3RkbjsKKyRFTlZ7J0xEQVBDT05GJ30gICA9ICRsZGFwX2Nv bmY7CisKKyMgdXNlIHNhbWUgZGF0YSBhcyAwMDEgdGVzdAorCitub3RlICJzZXR0aW5nIHVw IFBvc3RncmVTUUwgaW5zdGFuY2UiOworCitteSAkbm9kZSA9IFBvc3RncmVTUUw6OlRlc3Q6 OkNsdXN0ZXItPm5ldygnbm9kZScpOworJG5vZGUtPmluaXQ7Ciskbm9kZS0+YXBwZW5kX2Nv bmYoJ3Bvc3RncmVzcWwuY29uZicsICJsb2dfY29ubmVjdGlvbnMgPSBvblxuIik7Ciskbm9k ZS0+c3RhcnQ7CisKKyRub2RlLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywgJ0NSRUFURSBVU0VS IHRlc3QwOycpOworJG5vZGUtPnNhZmVfcHNxbCgncG9zdGdyZXMnLCAnQ1JFQVRFIFVTRVIg dGVzdDE7Jyk7Ciskbm9kZS0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsICdDUkVBVEUgVVNFUiAi dGVzdDJAZXhhbXBsZS5uZXQiOycpOworCitub3RlICJydW5uaW5nIHRlc3RzIjsKKworc3Vi IHRlc3RfYWNjZXNzCit7CisJbG9jYWwgJFRlc3Q6OkJ1aWxkZXI6OkxldmVsID0gJFRlc3Q6 OkJ1aWxkZXI6OkxldmVsICsgMTsKKworCW15ICgkbm9kZSwgJHJvbGUsICRleHBlY3RlZF9y ZXMsICR0ZXN0X25hbWUsICVwYXJhbXMpID0gQF87CisJbXkgJGNvbm5zdHIgPSAidXNlcj0k cm9sZSI7CisKKwlpZiAoJGV4cGVjdGVkX3JlcyBlcSAwKQorCXsKKwkJJG5vZGUtPmNvbm5l Y3Rfb2soJGNvbm5zdHIsICR0ZXN0X25hbWUsICVwYXJhbXMpOworCX0KKwllbHNlCisJewor CQkjIE5vIGNoZWNrcyBvZiB0aGUgZXJyb3IgbWVzc2FnZSwgb25seSB0aGUgc3RhdHVzIGNv ZGUuCisJCSRub2RlLT5jb25uZWN0X2ZhaWxzKCRjb25uc3RyLCAkdGVzdF9uYW1lLCAlcGFy YW1zKTsKKwl9Cit9CisKK25vdGUgInVzZSBsZGFwYmluZHBhc3N3ZCI7CisKK3VubGluaygk bm9kZS0+ZGF0YV9kaXIgLiAnL3BnX2hiYS5jb25mJyk7Ciskbm9kZS0+YXBwZW5kX2NvbmYo J3BnX2hiYS5jb25mJywKKwlxcXtsb2NhbCBhbGwgYWxsIGxkYXAgbGRhcHNlcnZlcj0kbGRh cF9zZXJ2ZXIgbGRhcHBvcnQ9JGxkYXBfcG9ydCBsZGFwYmFzZWRuPSIkbGRhcF9iYXNlZG4i IGxkYXBiaW5kZG49IiRsZGFwX3Jvb3RkbiIgbGRhcGJpbmRwYXNzd2Q9d3Jvbmd9CispOwor JG5vZGUtPnJlc3RhcnQ7CisKKyRFTlZ7IlBHUEFTU1dPUkQifSA9ICdzZWNyZXQxJzsKK3Rl c3RfYWNjZXNzKCRub2RlLCAndGVzdDEnLCAyLCAnc2VhcmNoK2JpbmQgYXV0aGVudGljYXRp b24gZmFpbHMgd2l0aCB3cm9uZyBsZGFwYmluZHBhc3N3ZCcpOworCit1bmxpbmsoJG5vZGUt PmRhdGFfZGlyIC4gJy9wZ19oYmEuY29uZicpOworJG5vZGUtPmFwcGVuZF9jb25mKCdwZ19o YmEuY29uZicsCisJcXF7bG9jYWwgYWxsIGFsbCBsZGFwIGxkYXBzZXJ2ZXI9JGxkYXBfc2Vy dmVyIGxkYXBwb3J0PSRsZGFwX3BvcnQgbGRhcGJhc2Vkbj0iJGxkYXBfYmFzZWRuIiBsZGFw YmluZGRuPSIkbGRhcF9yb290ZG4iIGxkYXBiaW5kcGFzc3dkPSIkbGRhcF9yb290cHcifQor KTsKKyRub2RlLT5yZXN0YXJ0OworCit0ZXN0X2FjY2Vzcygkbm9kZSwgJ3Rlc3QxJywgMCwg J3NlYXJjaCtiaW5kIGF1dGhlbnRpY2F0aW9uIHN1Y2NlZWRzIHdpdGggbGRhcGJpbmRwYXNz d2QnKTsKKworZG9uZV90ZXN0aW5nKCk7Ci0tIAoyLjM0LjEKCg== --------------vykP2fV1TdwGB8PzdJuTRj9T--