]> git.sur5r.net Git - openldap/commitdiff
ITS#4750
authorQuanah Gibson-Mount <quanah@openldap.org>
Fri, 21 Nov 2008 02:26:20 +0000 (02:26 +0000)
committerQuanah Gibson-Mount <quanah@openldap.org>
Fri, 21 Nov 2008 02:26:20 +0000 (02:26 +0000)
CHANGES
configure
configure.in
include/portable.hin
libraries/libldap/init.c

diff --git a/CHANGES b/CHANGES
index ee489394b21b88e0f7a8f5f7783aebefdf90680e..9bb6cee8244fca772160a1d28fa11cfd4c6bb65c 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -9,6 +9,7 @@ OpenLDAP 2.4.13 Release (2008/11/20)
        Fixed libldap interaction with GnuTLS CN IP-based matches (ITS#5789)
        Fixed libldap MAXHOSTNAMELEN typo (ITS#5815)
        Fixed libldap Ipv6 detection (ITS#5739)
+       Fixed libldap setuid usage with .ldaprc (ITS#4750)
        Fixed slapacl crasher (ITS#5820)
        Fixed slapd acl checks on ADD (ITS#4556,ITS#5723)
        Fixed slapd acl application to newly created backends (ITS#5572)
index d04d8d64ac25201e2f829b480d61002bc755b743..94b083ff78719b1beb17df16bbc67a163f0137f6 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.in OpenLDAP: pkg/ldap/configure.in,v 1.631.2.15 2008/11/08 00:14:44 quanah Exp .
+# From configure.in OpenLDAP: pkg/ldap/configure.in,v 1.631.2.16 2008/11/10 19:15:16 quanah Exp .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.59.
 #
@@ -37109,6 +37109,7 @@ fi
 
 
 
+
 
 
 for ac_func in \
@@ -37121,6 +37122,7 @@ for ac_func in \
        flock                   \
        fstat                   \
        getdtablesize           \
+       geteuid                 \
        getgrgid                \
        gethostname             \
        getpass                 \
index 56928631a5fc1f4b6f5f63881cc8a7e329913569..f0857e0681f8214ab31fff037b83495d5a9842f8 100644 (file)
@@ -2423,6 +2423,7 @@ AC_CHECK_FUNCS(                   \
        flock                   \
        fstat                   \
        getdtablesize           \
+       geteuid                 \
        getgrgid                \
        gethostname             \
        getpass                 \
index e5ff22e8ff2424ba01bcacdee6c7b7b456f6e50f..c2ceb55c5588e81a69c4694dbe51e23735d59c03 100644 (file)
 /* Define to 1 if you have the `getdtablesize' function. */
 #undef HAVE_GETDTABLESIZE
 
+/* Define to 1 if you have the `geteuid' function. */
+#undef HAVE_GETEUID
+
 /* Define to 1 if you have the `getgrgid' function. */
 #undef HAVE_GETGRGID
 
index 4109b7eb7490b544e23983d5033e94fa9390f5cd..d61ec89fbf9b29fa2dea5d75e9f2734aa90c0b6c 100644 (file)
 #include <stdio.h>
 #include <ac/stdlib.h>
 
+#ifdef HAVE_GETEUID
+#include <ac/unistd.h>
+#endif
+
 #include <ac/socket.h>
 #include <ac/string.h>
 #include <ac/ctype.h>
@@ -629,6 +633,12 @@ void ldap_int_initialize( struct ldapoptions *gopts, int *dbglvl )
 #endif
 
        openldap_ldap_init_w_sysconf(LDAP_CONF_FILE);
+
+#ifdef HAVE_GETEUID
+       if ( geteuid() != getuid() )
+               return;
+#endif
+
        openldap_ldap_init_w_userconf(LDAP_USERRC_FILE);
 
        {