aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2017-09-13 08:20:45 -0400
committerPeter Eisentraut <peter_e@gmx.net>2017-09-13 08:22:42 -0400
commit1a2fdc99a4b341feb6c01304e58f01dd0e095d9a (patch)
treeb2e9d3e27da30ea17d05808d1e6933b9098e847d /src
parent69835bc8988812c960f4ed5aeee86b62ac73602a (diff)
downloadpostgresql-1a2fdc99a4b341feb6c01304e58f01dd0e095d9a.tar.gz
postgresql-1a2fdc99a4b341feb6c01304e58f01dd0e095d9a.zip
Define LDAP_NO_ATTRS if necessary.
Commit 83aaac41c66959a3ebaec7daadc4885b5f98f561 introduced the use of LDAP_NO_ATTRS to avoid requesting a dummy attribute when doing search+bind LDAP authentication. It turns out that not all LDAP implementations define that macro, but its value is fixed by the protocol so we can define it ourselves if it's missing. Author: Thomas Munro Reported-By: Ashutosh Sharma Discussion: https://postgr.es/m/CAE9k0Pm6FKCfPCiAr26-L_SMGOA7dT_k0%2B3pEbB8%2B-oT39xRpw%40mail.gmail.com
Diffstat (limited to 'src')
-rw-r--r--src/backend/libpq/auth.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/backend/libpq/auth.c b/src/backend/libpq/auth.c
index 62ff624dbd7..39a57d48353 100644
--- a/src/backend/libpq/auth.c
+++ b/src/backend/libpq/auth.c
@@ -2398,6 +2398,11 @@ InitializeLDAPConnection(Port *port, LDAP **ldap)
#define LPH_USERNAME "$username"
#define LPH_USERNAME_LEN (sizeof(LPH_USERNAME) - 1)
+/* Not all LDAP implementations define this. */
+#ifndef LDAP_NO_ATTRS
+#define LDAP_NO_ATTRS "1.1"
+#endif
+
/*
* Return a newly allocated C string copied from "pattern" with all
* occurrences of the placeholder "$username" replaced with "user_name".