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 1w6qd2-004iLz-0q for pgsql-hackers@arkaria.postgresql.org; Sun, 29 Mar 2026 13:56:36 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w6qcz-00GWEv-27 for pgsql-hackers@arkaria.postgresql.org; Sun, 29 Mar 2026 13:56:34 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w6qcz-00GWEm-0J for pgsql-hackers@lists.postgresql.org; Sun, 29 Mar 2026 13:56:33 +0000 Received: from mail-oo1-xc33.google.com ([2607:f8b0:4864:20::c33]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w6qcw-00000001eTe-45Uw for pgsql-hackers@postgresql.org; Sun, 29 Mar 2026 13:56:32 +0000 Received: by mail-oo1-xc33.google.com with SMTP id 006d021491bc7-67ba5921b84so2171399eaf.3 for ; Sun, 29 Mar 2026 06:56:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1774792590; cv=none; d=google.com; s=arc-20240605; b=EJHeYPWEcRm/FVbiKtzg+xpx2oBxmn8nPQhQCpDkZ/kXsY3UyhALoMOYqVTsbr9kPR DaO2Aq14jMy/4hpq8lC8YABb0gjoF2nytRT84GaTaplRF1klGnBJBr/J/uPByHzgU7mr CJCGMTWbiRnbHcjrE/pVNSTfGif9p4NJY5iF+biRzwBakpjroE01WYKvP65tj+uXimap 3U0/YSpnjT4wI5q198GQb0hY3sKY7r/s8eEF7ZHP3N2p8IJNtZYaYHcFNNWZ94XxsIgB MxfGA/A6Wrve8Tt29JB1gsldD7rq+Kqh5HR7feSxD7zyT2WyOSVM10K9OLRSmq57xi2k NzeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=sOvMmcVFCXY+qNQ/xkvsLbgiHfzhAz4r16dFZKBrsxk=; fh=VGa3R0oa0FRPcN78guNd6FDHXGrtR/KPANZSzaQ3HZw=; b=T/bY2keGbvto1bHcTL5CH7g2+yQd7Sp06XfCBU5EYX0DKSdfy+JqVAC5aSUBdZhTc2 hk4clVeIWug4aWtkO8zzlCIt6RVDPnX59sY7oWyCT9IhXJFaYlfncQxn+aKKGM1VGAlc UmrjgB+OsVfdAO9RY2zEOnh8mTF+Mpel3okerxAr5fUI0VU1r88d8eMoWEXuKT371dJ6 FRPHIHDv+Xb7qNIrS+3GV+ee5ZMdSDgV1x073NbtYrjtgrMUg4qflDElaE7zTElhZrNB n64dyPIYlmsVreOtd9/FjVl4+C1MpozqgoLO/pNEKJW9gjsbBrUoSTJzW3mHvPQnbdCP SK7Q==; darn=postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1774792590; x=1775397390; darn=postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=sOvMmcVFCXY+qNQ/xkvsLbgiHfzhAz4r16dFZKBrsxk=; b=ISHIiZr68cVN21kF7R9MAoAI6r8zLdBlPtfUC1DyhfiDvr4fFpNh4bjVyCoqPMd+1M ddkcjZJ2OqJGOnx1a4xggZMLCJjE8utPDJ0kHbaqJbNh24qrEMlsNZ5Sbh4Ypb7D10/L +CGzgOafnzVBakr5lvUZz0XBoGIdE3q0Dyagm0u3vjSKkYVzwrfWng8MbF8bWKixexSY djynowZEzf0x3RPJLAc2NOB8Usq1IhSZSbyL228DKz1E9X88xA+TPjbH7KMxkn/WLdwf 7HgL8qdzr5dU2MmVnSquyURtdCmc6jHtajUOWnDr/h1xAj0f04njoo66P5YLOb2fHLqz Oajg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774792590; x=1775397390; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=sOvMmcVFCXY+qNQ/xkvsLbgiHfzhAz4r16dFZKBrsxk=; b=EoegnNDs5NfTRnDe9eU33L+ShuRg6BVSQHzIek+VsElAAB2f0qFlZJ5b3ooiNz4yoE fAA8dSp6WHp1JlxoCqObwQR3J153o3uSuUme2s9OQsfv5RCvTWZEd4rjOhdYEggPafaL AoNIHZVItih9fyFNk1meBl3MFsKlas/8fNp3LZn/1nSA5sF80abUoVj3sntEZQEWVWYN ieRsM1+FYKjC/bN0meQvmwclM6oo8nVZ0Yl/B61GG/1jIE94D4gQGr7/e47mkpBGO2S2 GctIJNT1HeB18I8lpfF0vJpcNB5rOGn2jtMGaZChVd0uJGP4iHn2TN5mu4aTWePHeFd7 z0EQ== X-Gm-Message-State: AOJu0YzdfAVTXizHJLp3sbNyiI9J9sqImW7qCYkZ/l42dpF3S/TVfTE+ 6LsrzS2uyxWbKr364zLZxI4ERkgDgrLtM18cztXKCCLaT1fT/XAWDFLYvTsj002FnYd5a8WvxUy vI091QiuKE14sOywFQqeNbcKshgT2n6o= X-Gm-Gg: ATEYQzzDDJJr8SGP2XcddG92YB8bi8K6k1lrcun4TF+4Vt96d+ukHA3cCYC13x+amyY eEvLmuypG4nenB0wqD0PzGZeIXyK5uwRQk7UiAI+U/DVK7kJCjT2UaugBp6OGQMfsukS65m/fzR R5J4L4APGzfqAUgNU1m+XbiKIiuy5ZbZcp28jqaAoj2ZbQhmkcwTicVaQJrph8DZcZ1bEH1PkvY DSOuZtd1K8cbIWo2W1wE0um5XaUSz2m0kdvPG7W0wgeIisz/nCab1Kcw9ZNnuYuWraUyhy0xBlz pMioD9A9Oq8WdD6Umzx3O1gU6aG9E3Jdanr5gHLIVBk/yiSs08xDwOotsaFzCJ63qoDXJp8V7RD Bocs= X-Received: by 2002:a05:6820:4b81:b0:67d:f24d:bff1 with SMTP id 006d021491bc7-67e18753aaamr5042153eaf.59.1774792590257; Sun, 29 Mar 2026 06:56:30 -0700 (PDT) MIME-Version: 1.0 References: <9FF1E1E8-D9EE-43C5-ADFA-7AE94BA57159@yandex-team.ru> In-Reply-To: From: Andrew Jackson Date: Sun, 29 Mar 2026 08:55:54 -0500 X-Gm-Features: AQROBzC_WpB2_R0LH3E3cIql4q3SJ-BFM9IZyg3-59ratijeMGc_GRB6miyasiw Message-ID: Subject: Re: Add ldapservice connection parameter To: Laurenz Albe Cc: pgsql-hackers , Roman Khapov , niushiji@gmail.com Content-Type: multipart/mixed; boundary="000000000000e522d5064e2a19fc" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000e522d5064e2a19fc Content-Type: text/plain; charset="UTF-8" Laurenz, Thank you for the review. Included with this email are 2 patches. `0004-Add-ldapservice-connection-parameter.patch` contains all of the changes you recommended: - Removed the redundant/unneeded check for the string ldap - The function has now been moved from parseServiceInfo() to conninfo_add_defaults(). - I will say though the reason I included this in parseServiceInfo() was I consider this new LDAP functionality and the existing pg_service.conf() functionality all different ways of accessing a postgres "service". I thought it made sense to handle all service parsing in a single function. Happy to keep it moved it if I was incorrect about this - A failed parseServiceInfo() now returns false in conninfo_add_defaults() - Made documentation a bit more explicit. Also I added support for specifying PGLDAPPSERVICE in the form of an env var as well. Also added additional tests. > For the same reason, I am not entirely happy with the name "ldapservice", but I can't think of anything better. I have a few suggestions here. Maybe `remoteserviceuri` would be a better name. This tells the reader that it's a uri and not the name of a service. LDAP is not mentioned because maybe in the future this functionality could be expanded to read connection parameters from an HTTP server, postgres side channel, etc. Alternatively we could bypass the naming altogether and add this functionality into the existing pgservice parameter. I have attached a second patch `0001-Allow-LDAP-lookup-from-pgservice-connection-paramete.patch` that has an implementation of this. The idea being that if you pass a string that starts with ldap:// it will look up the service at the given LDAP uri instead of looking for the corresponding service in the pg_service.conf file. This would be a breaking change for anyone who populated their service names as LDAP uris, I would imagine this would be a very small number of users, if any. It also ends up being a smaller patch overall. > I don't have an LDAP server handy, so I couldn't test the patch On the off chance that it helps, we now have unit tests over the LDAP service functionality. It should automatically start a slapd server, etc. If you add a false assertion in the perl code it should fail the test and also dump a bunch of files into the src/test/ldap directory. You can copy paste the slapd invocation that is left there. I did have to fight with App Armor a bit to get it to be okay with a slapd process reading files in unexpected locations. Thanks again for the review, Andrew Jackson --000000000000e522d5064e2a19fc Content-Type: application/x-patch; name="0004-Add-ldapservice-connection-parameter.patch" Content-Disposition: attachment; filename="0004-Add-ldapservice-connection-parameter.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mnbsrs9b0 RnJvbSBkODgzZjVhOGMwMzQwNjY3YTEzYzQxZjFhMzM4NTJkZWZmNDI3YTFiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgSmFja3NvbiA8YWphY2tzb25AZHJ3aG9sZGluZ3Mu Y29tPgpEYXRlOiBTYXQsIDI4IE1hciAyMDI2IDIzOjI5OjQ4IC0wNTAwClN1YmplY3Q6IFtQQVRD SF0gQWRkIGxkYXBzZXJ2aWNlIGNvbm5lY3Rpb24gcGFyYW1ldGVyCgpDdXJyZW50bHkgdGhlcmUg ZXhpc3RzLCBvbmx5IGluIHBnX3NlcnZpY2UuY29uZiwgdGhlIGFiaWxpdHkgdG8gbG9vawp1cCBj b25uZWN0aW9uIHBhcmFtZXRlcnMgZnJvbSBhIGNlbnRyYWxpemVkIExEQVAgc2VydmVyLiBUaGlz IHBhdGNoCmV4cGFuZHMgdGhlIHVzYWJpbGl0eSBvZiB0aGlzIGJlIGFsbG93aW5nIGl0IHRvIGJl IHNwZWNpZmllZCBkaXJlY3RseSBpbgphIGNvbm5lY3Rpb24gc3RyaW5nIGluc3RlYWQgb2Ygb25s eSBpbiBhIHBnX3NlcnZpY2UuY29uZiBmaWxlLgoKVGhpcyBhZGRzIHRoZSBQR0xEQVBTRVJWSUNF IGVudiB2YXIgdGhhdCBwcm92aWRlcyBhbiBlbnZ2YXIgaW50ZXJmYWNlCnRvIHRoaXMgZnVuY3Rp b25hbGl0eS4gQWxzbyB0aGUgZnVuY3Rpb25hbGl0eSBoYXMgYmVlbiBtb3ZlZCB0bwpjb25uaW5m b19hZGRfZGVmYXVsdHMgYWZ0ZXIgcmV2aWV3LiBBbHNvIDIgdGVzdHMgaGF2ZSBiZWVuIGFkZGVk LiBPbmUgdG8KdmFsaWRhdGUgdGhlIGVudiB2YXIgZnVuY3Rpb25hbGl0eSBhbmQgb25lIHRvIHZh bGlkYXRlIHRoYXQgdGhpcwpwYXJhbWV0ZXIgaXMgaWdub3JlZCB3aGVuIHVzZWQgaW4gcGdfc2Vy dmljZS5jb25mIGZpbGVzCi0tLQogZG9jL3NyYy9zZ21sL2xpYnBxLnNnbWwgICAgICAgICAgICAg ICAgICAgICAgIHwgMjIgKysrKysrKysrKysrKysKIHNyYy9pbnRlcmZhY2VzL2xpYnBxL2ZlLWNv bm5lY3QuYyAgICAgICAgICAgICB8IDE0ICsrKysrKysrKwogc3JjL2ludGVyZmFjZXMvbGlicHEv bGlicHEtaW50LmggICAgICAgICAgICAgIHwgIDEgKwogLi4uL3QvMDAzX2xkYXBfY29ubmVjdGlv bl9wYXJhbV9sb29rdXAucGwgICAgIHwgMjkgKysrKysrKysrKysrKysrKysrKwogNCBmaWxlcyBj aGFuZ2VkLCA2NiBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2xpYnBx LnNnbWwgYi9kb2Mvc3JjL3NnbWwvbGlicHEuc2dtbAppbmRleCA2ZGI4MjM4MDhmYy4uYmJkMzFj ZjZmOTUgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9saWJwcS5zZ21sCisrKyBiL2RvYy9zcmMv c2dtbC9saWJwcS5zZ21sCkBAIC0yMzUwLDYgKzIzNTAsMTggQEAgcG9zdGdyZXNxbDovLyUyRnZh ciUyRmxpYiUyRnBvc3RncmVzcWwvZGJuYW1lCiAgICAgICA8L2xpc3RpdGVtPgogICAgICA8L3Zh cmxpc3RlbnRyeT4KIAorICAgICA8dmFybGlzdGVudHJ5IGlkPSJsaWJwcS1jb25uZWN0LWxkYXBz ZXJ2aWNlIiB4cmVmbGFiZWw9ImxkYXBzZXJ2aWNlIj4KKyAgICAgIDx0ZXJtPjxsaXRlcmFsPmxk YXBzZXJ2aWNlPC9saXRlcmFsPjwvdGVybT4KKyAgICAgIDxsaXN0aXRlbT4KKyAgICAgICA8cGFy YT4KKyAgICAgICAgVGhpcyBvcHRpb24gc3BlY2lmaWVzIGFuIExEQVAgcXVlcnkgdGhhdCBjYW4g YmUgdXNlZCB0byByZWZlcmVuY2UgY29ubmVjdGlvbiBwYXJhbWV0ZXJzCisgICAgICAgIHN0b3Jl ZCBvbiBhbiBMREFQIHNlcnZlci4gQW55IGNvbm5lY3Rpb24gcGFyYW1ldGVyIHRoYXQgaXMgbG9v a2VkIHVwIGluIHRoaXMgd2F5IGlzCisgICAgICAgIG92ZXJyaWRkZW4gYnkgZXhwbGljaXRseSBu YW1lZCBjb25uZWN0aW9uIHBhcmFtZXRlcnMuIFRoaXMgcGFyYW1ldGVyIGlzIGlnbm9yZWQgd2hl biB1c2VkCisgICAgICAgIGluIGEgcGdfc2VydmljZS5jb25mIGZpbGUuIFRoaXMgZnVuY3Rpb25h bGl0eSBpcyBkZXNjcmliZWQgaW4gbW9yZSBkZXRhaWwgaW4gPHhyZWYgbGlua2VuZD0ibGlicHEt bGRhcCIvPi4KKyAgICAgICAgPC9wYXJhPgorICAgICAgPC9saXN0aXRlbT4KKyAgICAgPC92YXJs aXN0ZW50cnk+CisKICAgICAgPHZhcmxpc3RlbnRyeSBpZD0ibGlicHEtY29ubmVjdC10YXJnZXQt c2Vzc2lvbi1hdHRycyIgeHJlZmxhYmVsPSJ0YXJnZXRfc2Vzc2lvbl9hdHRycyI+CiAgICAgICA8 dGVybT48bGl0ZXJhbD50YXJnZXRfc2Vzc2lvbl9hdHRyczwvbGl0ZXJhbD48L3Rlcm0+CiAgICAg ICA8bGlzdGl0ZW0+CkBAIC05MTcwLDYgKzkxODIsMTYgQEAgbXlFdmVudFByb2MoUEdFdmVudElk IGV2dElkLCB2b2lkICpldnRJbmZvLCB2b2lkICpwYXNzVGhyb3VnaCkKICAgICAgPC9wYXJhPgog ICAgIDwvbGlzdGl0ZW0+CiAKKyAgICA8bGlzdGl0ZW0+CisgICAgIDxwYXJhPgorICAgICAgPGlu ZGV4dGVybT4KKyAgICAgICA8cHJpbWFyeT48ZW52YXI+UEdMREFQU0VSVklDRTwvZW52YXI+PC9w cmltYXJ5PgorICAgICAgPC9pbmRleHRlcm0+CisgICAgICA8ZW52YXI+UEdMREFQU0VSVklDRTwv ZW52YXI+IGJlaGF2ZXMgdGhlIHNhbWUgYXMgdGhlCisgICAgICA8eHJlZiBsaW5rZW5kPSJsaWJw cS1jb25uZWN0LWxkYXBzZXJ2aWNlIi8+IGNvbm5lY3Rpb24gcGFyYW1ldGVyLgorICAgICA8L3Bh cmE+CisgICAgPC9saXN0aXRlbT4KKwogICAgIDxsaXN0aXRlbT4KICAgICAgPHBhcmE+CiAgICAg ICA8aW5kZXh0ZXJtPgpkaWZmIC0tZ2l0IGEvc3JjL2ludGVyZmFjZXMvbGlicHEvZmUtY29ubmVj dC5jIGIvc3JjL2ludGVyZmFjZXMvbGlicHEvZmUtY29ubmVjdC5jCmluZGV4IGRiOWI0YzhlZGJm Li5iNGI5YmIxYmIyNCAxMDA2NDQKLS0tIGEvc3JjL2ludGVyZmFjZXMvbGlicHEvZmUtY29ubmVj dC5jCisrKyBiL3NyYy9pbnRlcmZhY2VzL2xpYnBxL2ZlLWNvbm5lY3QuYwpAQCAtMjA3LDYgKzIw NywxMCBAQCBzdGF0aWMgY29uc3QgaW50ZXJuYWxQUWNvbm5pbmZvT3B0aW9uIFBRY29ubmluZm9P cHRpb25zW10gPSB7CiAJCSJEYXRhYmFzZS1TZXJ2aWNlLUZpbGUiLCAiIiwgNjQsCiAJb2Zmc2V0 b2Yoc3RydWN0IHBnX2Nvbm4sIHBnc2VydmljZWZpbGUpfSwKIAorCXsibGRhcHNlcnZpY2UiLCAi UEdMREFQU0VSVklDRSIsIE5VTEwsIE5VTEwsCisJCSJEYXRhYmFzZS1MREFQLVNlcnZpY2UiLCAi IiwgMjAsCisJb2Zmc2V0b2Yoc3RydWN0IHBnX2Nvbm4sIHBnbGRhcHNlcnZpY2UpfSwKKwogCXsi dXNlciIsICJQR1VTRVIiLCBOVUxMLCBOVUxMLAogCQkiRGF0YWJhc2UtVXNlciIsICIiLCAyMCwK IAlvZmZzZXRvZihzdHJ1Y3QgcGdfY29ubiwgcGd1c2VyKX0sCkBAIC02NzI2LDYgKzY3MzAsMTYg QEAgY29ubmluZm9fYWRkX2RlZmF1bHRzKFBRY29ubmluZm9PcHRpb24gKm9wdGlvbnMsIFBRRXhw QnVmZmVyIGVycm9yTWVzc2FnZSkKIAlQUWNvbm5pbmZvT3B0aW9uICpzc2xtb2RlX2RlZmF1bHQg PSBOVUxMLAogCQkJICAgKnNzbHJvb3RjZXJ0ID0gTlVMTDsKIAljaGFyCSAgICp0bXA7CisjaWZk ZWYgVVNFX0xEQVAKKwljb25zdCBjaGFyICpsZGFwc2VydmljZSA9IGNvbm5pbmZvX2dldHZhbChv cHRpb25zLCAibGRhcHNlcnZpY2UiKTsKKworCWlmIChsZGFwc2VydmljZSA9PSBOVUxMKQorCQls ZGFwc2VydmljZSA9IGdldGVudigiUEdMREFQU0VSVklDRSIpOworCisJaWYgKGxkYXBzZXJ2aWNl ICE9IE5VTEwpCisJCWlmIChsZGFwU2VydmljZUxvb2t1cChsZGFwc2VydmljZSwgb3B0aW9ucywg ZXJyb3JNZXNzYWdlKSAhPSAwKQorCQkJcmV0dXJuIGZhbHNlOworI2VuZGlmCiAKIAkvKgogCSAq IElmIHRoZXJlJ3MgYSBzZXJ2aWNlIHNwZWMsIHVzZSBpdCB0byBvYnRhaW4gYW55IG5vdC1leHBs aWNpdGx5LWdpdmVuCmRpZmYgLS1naXQgYS9zcmMvaW50ZXJmYWNlcy9saWJwcS9saWJwcS1pbnQu aCBiL3NyYy9pbnRlcmZhY2VzL2xpYnBxL2xpYnBxLWludC5oCmluZGV4IGJkN2ViNTlmNWY4Li5k ODUxMGNjMDkyOCAxMDA2NDQKLS0tIGEvc3JjL2ludGVyZmFjZXMvbGlicHEvbGlicHEtaW50LmgK KysrIGIvc3JjL2ludGVyZmFjZXMvbGlicHEvbGlicHEtaW50LmgKQEAgLTM5Miw2ICszOTIsNyBA QCBzdHJ1Y3QgcGdfY29ubgogCWNoYXIJICAgKnBnc2VydmljZTsJCS8qIFBvc3RncmVzIHNlcnZp Y2UsIGlmIGFueSAqLwogCWNoYXIJICAgKnBnc2VydmljZWZpbGU7CS8qIHBhdGggdG8gYSBzZXJ2 aWNlIGZpbGUgY29udGFpbmluZwogCQkJCQkJCQkgKiBzZXJ2aWNlKHMpICovCisJY2hhcgkgICAq cGdsZGFwc2VydmljZTsJLyogUG9zdGdyZXMgTERBUCBzZXJ2aWNlLCBpZiBhbnkgKi8KIAljaGFy CSAgICpwZ3VzZXI7CQkJLyogUG9zdGdyZXMgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCBpZiBhbnkg Ki8KIAljaGFyCSAgICpwZ3Bhc3M7CiAJY2hhcgkgICAqcGdwYXNzZmlsZTsJCS8qIHBhdGggdG8g YSBmaWxlIGNvbnRhaW5pbmcgcGFzc3dvcmQocykgKi8KZGlmZiAtLWdpdCBhL3NyYy90ZXN0L2xk YXAvdC8wMDNfbGRhcF9jb25uZWN0aW9uX3BhcmFtX2xvb2t1cC5wbCBiL3NyYy90ZXN0L2xkYXAv dC8wMDNfbGRhcF9jb25uZWN0aW9uX3BhcmFtX2xvb2t1cC5wbAppbmRleCAzNTlmYzdhOTk4YS4u MDNkMjc2MTIwYjQgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L2xkYXAvdC8wMDNfbGRhcF9jb25uZWN0 aW9uX3BhcmFtX2xvb2t1cC5wbAorKysgYi9zcmMvdGVzdC9sZGFwL3QvMDAzX2xkYXBfY29ubmVj dGlvbl9wYXJhbV9sb29rdXAucGwKQEAgLTgwLDYgKzgwLDkgQEAgYXBwZW5kX3RvX2ZpbGUoCiAJ JHNydmZpbGVfdmFsaWQsIHFxewogW215X3Nydl0KIGxkYXA6Ly9sb2NhbGhvc3Q6JGxkYXBfcG9y dC9kYz1leGFtcGxlLGRjPW5ldD9kZXNjcmlwdGlvbj9vbmU/KGNuPW15ZGF0YWJhc2UpCisKK1tt eV9zcnZfMl0KK2xkYXBzZXJ2aWNlPWxkYXA6Ly9sb2NhbGhvc3Q6JGxkYXBfcG9ydC9kYz1leGFt cGxlLGRjPW5ldD9kZXNjcmlwdGlvbj9vbmU/KGNuPW15ZGF0YWJhc2UpCiB9KTsKIAogIyBGaWxl IGRlZmluZWQgd2l0aCBubyBjb250ZW50cywgdXNlZCBhcyBkZWZhdWx0IHZhbHVlIGZvcgpAQCAt MTk2LDYgKzE5OSwzMiBAQCBsb2NhbCAkRU5We1BHU0VSVklDRUZJTEV9ID0gIiRzcnZmaWxlX2Vt cHR5IjsKIAkJZXhwZWN0ZWRfc3Rkb3V0ID0+CiAJCSAgcXIvZGVmaW5pdGlvbiBvZiBzZXJ2aWNl ICJ1bmRlZmluZWQtc2VydmljZSIgbm90IGZvdW5kLyk7CiAKKwlkZWxldGUgJEVOVntQR1NFUlZJ Q0V9OworCisJJGR1bW15X25vZGUtPmNvbm5lY3Rfb2soCisJCSJsZGFwc2VydmljZT1sZGFwOi8v bG9jYWxob3N0OiRsZGFwX3BvcnQvZGM9ZXhhbXBsZSxkYz1uZXQ/ZGVzY3JpcHRpb24/b25lPyhj bj1teWRhdGFiYXNlKSIsCisJCSdjb25uZWN0aW9uIHdpdGggY29ycmVjdCAibGRhcHNlcnZpY2Ui IHN0cmluZycsCisJCXNxbCA9PiAiU0VMRUNUICdjb25uZWN0Ml80JyIsCisJCWV4cGVjdGVkX3N0 ZG91dCA9PiBxci9jb25uZWN0Ml80Lyk7CisKKwkkZHVtbXlfbm9kZS0+Y29ubmVjdF9vaygKKwkJ InBvc3RncmVzOi8vP2xkYXBzZXJ2aWNlPWxkYXAlM0ElMkYlMkZsb2NhbGhvc3QlM0EkbGRhcF9w b3J0JTJGZGMlM0RleGFtcGxlJTJDZGMlM0RuZXQlM0ZkZXNjcmlwdGlvbiUzRm9uZSUzRiUyOGNu JTNEbXlkYXRhYmFzZSUyOSIsCisJCSdjb25uZWN0aW9uIHdpdGggY29ycmVjdCAibGRhcHNlcnZp Y2UiJywKKwkJc3FsID0+ICJTRUxFQ1QgJ2Nvbm5lY3QyXzUnIiwKKwkJZXhwZWN0ZWRfc3Rkb3V0 ID0+IHFyL2Nvbm5lY3QyXzUvKTsKKworCWxvY2FsICRFTlZ7UEdMREFQU0VSVklDRX0gPSAibGRh cDovL2xvY2FsaG9zdDokbGRhcF9wb3J0L2RjPWV4YW1wbGUsZGM9bmV0P2Rlc2NyaXB0aW9uP29u ZT8oY249bXlkYXRhYmFzZSkiOworCSRkdW1teV9ub2RlLT5jb25uZWN0X29rKAorCQkiIiwKKwkJ J2Nvbm5lY3Rpb24gd2l0aCBjb3JyZWN0ICJsZGFwc2VydmljZSIgcHJvdmlkZWQgYnkgZW52IHZh cicsCisJCXNxbCA9PiAiU0VMRUNUICdjb25uZWN0Ml82JyIsCisJCWV4cGVjdGVkX3N0ZG91dCA9 PiBxci9jb25uZWN0Ml82Lyk7CisJZGVsZXRlICRFTlZ7UEdMREFQU0VSVklDRX07CisKKwkkZHVt bXlfbm9kZS0+Y29ubmVjdF9mYWlscygKKwkJJycsCisJCSdjb25uZWN0aW9uIGZhaWxzIHdpdGgg bGRhcHNlcnZpY2Ugc3BlY2lmaWVkIGluIHBnX3NlcnZpY2UuY29uZiBmaWxlJyk7CisKIAkjIFJl bW92ZSBkZWZhdWx0IHBnX3NlcnZpY2UuY29uZi4KIAl1bmxpbmsoJHNydmZpbGVfZGVmYXVsdCk7 CiB9Ci0tIAoyLjUxLjIKCg== --000000000000e522d5064e2a19fc Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Allow-LDAP-lookup-from-pgservice-connection-paramete.patch" Content-Disposition: attachment; filename="0001-Allow-LDAP-lookup-from-pgservice-connection-paramete.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mnbssekd1 RnJvbSA1ZjlhNzIwYTUyNjQ3MTI4Njg2NGQ5MjU1OWU2MzYxNDYwY2EwNGNiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgSmFja3NvbiA8YWphY2tzb25AZHJ3aG9sZGluZ3Mu Y29tPgpEYXRlOiBTYXQsIDI4IE1hciAyMDI2IDIzOjI5OjQ4IC0wNTAwClN1YmplY3Q6IFtQQVRD SF0gQWxsb3cgTERBUCBsb29rdXAgZnJvbSBwZ3NlcnZpY2UgY29ubmVjdGlvbiBwYXJhbWV0ZXIK CkN1cnJlbnRseSB0aGVyZSBleGlzdHMsIG9ubHkgaW4gcGdfc2VydmljZS5jb25mLCB0aGUgYWJp bGl0eSB0byBsb29rCnVwIGNvbm5lY3Rpb24gcGFyYW1ldGVycyBmcm9tIGEgY2VudHJhbGl6ZWQg TERBUCBzZXJ2ZXIuIFRoaXMgcGF0Y2gKZXhwYW5kcyB0aGUgdXNhYmlsaXR5IG9mIHRoaXMgYmUg YWxsb3dpbmcgaXQgdG8gYmUgc3BlY2lmaWVkIGRpcmVjdGx5IGluCmEgY29ubmVjdGlvbiBzdHJp bmcgaW5zdGVhZCBvZiBvbmx5IGluIGEgcGdfc2VydmljZS5jb25mIGZpbGUuCgpUaGlzIHBhdGNo IGFkZHMgYSBjaGVjayBpbiBwYXJzZVNlcnZpY2VJbmZvIHRoYXQgY2hlY2tzIGlmIHBnc2Vydmlj ZSBpcwphbiBMREFQIHNjaGVtZSBhZGRyZXNzIGFuZCBpZiBzbyBhdHRlbXB0cyB0byBjb25uZWN0 IHRvIHRoYXQgTERBUCBzZXJ2ZXIKYW5kIGdyYWIgY29ubmVjdGlvbiBwYXJhbWV0ZXJzIGZyb20g dGhlcmUuIFRoaXMgaXMgYSBicmVha2luZyBjaGFuZ2UgaW4KdGhhdCBpdCBpcyBwb3NzaWJsZSB0 aGF0IHBlb3BsZSBwcmV2aW91c2x5IG5hbWVkIHRoZWlyIHBnc2VydmljZSBhZnRlcgphbiBMREFQ IGFkZHJlc3MuCi0tLQogZG9jL3NyYy9zZ21sL2xpYnBxLnNnbWwgICAgICAgICAgICAgICAgICAg ICAgIHwgIDQgKysrCiBzcmMvaW50ZXJmYWNlcy9saWJwcS9mZS1jb25uZWN0LmMgICAgICAgICAg ICAgfCAgNSArKysrCiAuLi4vdC8wMDNfbGRhcF9jb25uZWN0aW9uX3BhcmFtX2xvb2t1cC5wbCAg ICAgfCAyNSArKysrKysrKysrKysrKysrKysrCiAzIGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlv bnMoKykKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvbGlicHEuc2dtbCBiL2RvYy9zcmMvc2dt bC9saWJwcS5zZ21sCmluZGV4IDZkYjgyMzgwOGZjLi40ZDIzMGEyYTY1ZiAxMDA2NDQKLS0tIGEv ZG9jL3NyYy9zZ21sL2xpYnBxLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL2xpYnBxLnNnbWwKQEAg LTIzMzMsNiArMjMzMywxMCBAQCBwb3N0Z3Jlc3FsOi8vJTJGdmFyJTJGbGliJTJGcG9zdGdyZXNx bC9kYm5hbWUKICAgICAgICAgbmFtZSBpbiA8ZmlsZW5hbWU+cGdfc2VydmljZS5jb25mPC9maWxl bmFtZT4gdGhhdCBob2xkcyBhZGRpdGlvbmFsIGNvbm5lY3Rpb24gcGFyYW1ldGVycy4KICAgICAg ICAgVGhpcyBhbGxvd3MgYXBwbGljYXRpb25zIHRvIHNwZWNpZnkgb25seSBhIHNlcnZpY2UgbmFt ZSBzbyBjb25uZWN0aW9uIHBhcmFtZXRlcnMKICAgICAgICAgY2FuIGJlIGNlbnRyYWxseSBtYWlu dGFpbmVkLiBTZWUgPHhyZWYgbGlua2VuZD0ibGlicHEtcGdzZXJ2aWNlIi8+LgorCisgICAgICAg IFlvdSBjYW4gYWxzbyBzcGVjaWZ5IGFuZCBMREFQIGFkZHJlc3MgaGVyZSB3aGljaCB3aWxsIGxv b2sgdXAgcGFyYW1ldGVycyBmcm9tIGFuIExEQVAKKyAgICAgICAgc2VydmVyLiBTZWUgPHhyZWYg bGlua2VuZD0ibGlicHEtbGRhcCIvPi4gUGxlYXNlIG5vdGUgdGhhdCBpZiBhbiBMREFQIGFkZHJl c3MgaXMgc3BlY2lmaWVkCisgICAgICAgIG5vIGF0dGVtcHQgd2lsbCBiZSBtYWRlIHRvIGxvb2sg dXAgcGFyYW1ldGVycyBpbiA8ZmlsZW5hbWU+cGdfc2VydmljZS5jb25mPC9maWxlbmFtZT4uCiAg ICAgICAgPC9wYXJhPgogICAgICAgPC9saXN0aXRlbT4KICAgICAgPC92YXJsaXN0ZW50cnk+CmRp ZmYgLS1naXQgYS9zcmMvaW50ZXJmYWNlcy9saWJwcS9mZS1jb25uZWN0LmMgYi9zcmMvaW50ZXJm YWNlcy9saWJwcS9mZS1jb25uZWN0LmMKaW5kZXggZGI5YjRjOGVkYmYuLjUwYWRhMjkzOWI2IDEw MDY0NAotLS0gYS9zcmMvaW50ZXJmYWNlcy9saWJwcS9mZS1jb25uZWN0LmMKKysrIGIvc3JjL2lu dGVyZmFjZXMvbGlicHEvZmUtY29ubmVjdC5jCkBAIC02MDA2LDYgKzYwMDYsMTEgQEAgcGFyc2VT ZXJ2aWNlSW5mbyhQUWNvbm5pbmZvT3B0aW9uICpvcHRpb25zLCBQUUV4cEJ1ZmZlciBlcnJvck1l c3NhZ2UpCiAJaWYgKHNlcnZpY2UgPT0gTlVMTCkKIAkJcmV0dXJuIDA7CiAKKyNpZmRlZiBVU0Vf TERBUAorCWlmIChwZ19zdHJuY2FzZWNtcChzZXJ2aWNlLCBMREFQX1VSTCwgc3RybGVuKExEQVBf VVJMKSkgPT0gMCkKKwkJcmV0dXJuIGxkYXBTZXJ2aWNlTG9va3VwKHNlcnZpY2UsIG9wdGlvbnMs IGVycm9yTWVzc2FnZSk7CisjZW5kaWYKKwogCS8qCiAJICogRmlyc3QsIHRyeSB0aGUgInNlcnZp Y2VmaWxlIiBvcHRpb24gaW4gY29ubmVjdGlvbiBzdHJpbmcuICBUaGVuLCB0cnkKIAkgKiB0aGUg UEdTRVJWSUNFRklMRSBlbnZpcm9ubWVudCB2YXJpYWJsZS4gIEZpbmFsbHksIGNoZWNrCmRpZmYg LS1naXQgYS9zcmMvdGVzdC9sZGFwL3QvMDAzX2xkYXBfY29ubmVjdGlvbl9wYXJhbV9sb29rdXAu cGwgYi9zcmMvdGVzdC9sZGFwL3QvMDAzX2xkYXBfY29ubmVjdGlvbl9wYXJhbV9sb29rdXAucGwK aW5kZXggMzU5ZmM3YTk5OGEuLjY3ZGE5MDU3OGNmIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9sZGFw L3QvMDAzX2xkYXBfY29ubmVjdGlvbl9wYXJhbV9sb29rdXAucGwKKysrIGIvc3JjL3Rlc3QvbGRh cC90LzAwM19sZGFwX2Nvbm5lY3Rpb25fcGFyYW1fbG9va3VwLnBsCkBAIC04MCw2ICs4MCw5IEBA IGFwcGVuZF90b19maWxlKAogCSRzcnZmaWxlX3ZhbGlkLCBxcXsKIFtteV9zcnZdCiBsZGFwOi8v bG9jYWxob3N0OiRsZGFwX3BvcnQvZGM9ZXhhbXBsZSxkYz1uZXQ/ZGVzY3JpcHRpb24/b25lPyhj bj1teWRhdGFiYXNlKQorCitbbXlfc3J2XzJdCitsZGFwc2VydmljZT1sZGFwOi8vbG9jYWxob3N0 OiRsZGFwX3BvcnQvZGM9ZXhhbXBsZSxkYz1uZXQ/ZGVzY3JpcHRpb24/b25lPyhjbj1teWRhdGFi YXNlKQogfSk7CiAKICMgRmlsZSBkZWZpbmVkIHdpdGggbm8gY29udGVudHMsIHVzZWQgYXMgZGVm YXVsdCB2YWx1ZSBmb3IKQEAgLTE5Niw2ICsxOTksMjggQEAgbG9jYWwgJEVOVntQR1NFUlZJQ0VG SUxFfSA9ICIkc3J2ZmlsZV9lbXB0eSI7CiAJCWV4cGVjdGVkX3N0ZG91dCA9PgogCQkgIHFyL2Rl ZmluaXRpb24gb2Ygc2VydmljZSAidW5kZWZpbmVkLXNlcnZpY2UiIG5vdCBmb3VuZC8pOwogCisJ ZGVsZXRlICRFTlZ7UEdTRVJWSUNFfTsKKworCSRkdW1teV9ub2RlLT5jb25uZWN0X29rKAorCQki c2VydmljZT1sZGFwOi8vbG9jYWxob3N0OiRsZGFwX3BvcnQvZGM9ZXhhbXBsZSxkYz1uZXQ/ZGVz Y3JpcHRpb24/b25lPyhjbj1teWRhdGFiYXNlKSIsCisJCSdjb25uZWN0aW9uIHdpdGggY29ycmVj dCAic2VydmljZSIgc3RyaW5nIHBvcHVsYXRlZCB3aXRoIExEQVAgYWRkcmVzcycsCisJCXNxbCA9 PiAiU0VMRUNUICdjb25uZWN0Ml80JyIsCisJCWV4cGVjdGVkX3N0ZG91dCA9PiBxci9jb25uZWN0 Ml80Lyk7CisKKwkkZHVtbXlfbm9kZS0+Y29ubmVjdF9vaygKKwkJInBvc3RncmVzOi8vP3NlcnZp Y2U9bGRhcCUzQSUyRiUyRmxvY2FsaG9zdCUzQSRsZGFwX3BvcnQlMkZkYyUzRGV4YW1wbGUlMkNk YyUzRG5ldCUzRmRlc2NyaXB0aW9uJTNGb25lJTNGJTI4Y24lM0RteWRhdGFiYXNlJTI5IiwKKwkJ J2Nvbm5lY3Rpb24gd2l0aCBjb3JyZWN0ICJsZGFwc2VydmljZSIgc3RyaW5nIHBvcHVsYXRlZCB3 aXRoIExEQVAgYWRkcmVzcycsCisJCXNxbCA9PiAiU0VMRUNUICdjb25uZWN0Ml81JyIsCisJCWV4 cGVjdGVkX3N0ZG91dCA9PiBxci9jb25uZWN0Ml81Lyk7CisKKwlsb2NhbCAkRU5We1BHU0VSVklD RX0gPSAibGRhcDovL2xvY2FsaG9zdDokbGRhcF9wb3J0L2RjPWV4YW1wbGUsZGM9bmV0P2Rlc2Ny aXB0aW9uP29uZT8oY249bXlkYXRhYmFzZSkiOworCSRkdW1teV9ub2RlLT5jb25uZWN0X29rKAor CQkiIiwKKwkJJ2Nvbm5lY3Rpb24gd2l0aCBjb3JyZWN0ICJzZXJ2aWNlIiBwcm92aWRlZCBieSBl bnYgdmFyIHBvcHVsYXRlZCB3aXRoIExEQVAgYWRkcmVzcycsCisJCXNxbCA9PiAiU0VMRUNUICdj b25uZWN0Ml82JyIsCisJCWV4cGVjdGVkX3N0ZG91dCA9PiBxci9jb25uZWN0Ml82Lyk7CisJZGVs ZXRlICRFTlZ7UEdMREFQU0VSVklDRX07CisKIAkjIFJlbW92ZSBkZWZhdWx0IHBnX3NlcnZpY2Uu Y29uZi4KIAl1bmxpbmsoJHNydmZpbGVfZGVmYXVsdCk7CiB9Ci0tIAoyLjUxLjIKCg== --000000000000e522d5064e2a19fc--