ldap group bug

Dmitry Melekhov dm at belkam.com
Fri Jun 7 01:24:55 EDT 2013


Hello!

This bug exists in 2.1.26 , and, I guess , in previous versions.

Problem is that after user is authentificated with ldap bind , ldap 
connection for checking user in group ( lak_group_member function )
is made with this user's bind, not bind parameters from config file.
User can not ( and have not in our case- I don't know why , but this is 
not real problem ) have access to ldap groups.
And so, authentication is always fail.

I added unbind and anonymous bind ( enough in our case):

/var/local/files/sasl/cyrus-sasl-2.1.26/saslauthd# diff -ur lak.c.orig 
lak.c
--- lak.c.orig    2013-06-07 09:15:20.098788278 +0400
+++ lak.c    2013-06-07 09:22:31.504774185 +0400
@@ -1342,6 +1342,10 @@
          if (rc != LAK_OK)
              goto done;

+        lak_unbind (lak );
+        rc  = lak_bind(lak, "");
+
+
          rc = ldap_search_st(lak->ld, group_search_base, 
lak->conf->group_scope, group_filter, (char **) group_attrs, 0, 
&(lak->conf->timeout), &res);
          switch (rc) {
              case LDAP_SUCCESS:


but, it is obvoius that rebind should be done with credintials from 
config, but this is over my head :-(

Could you, please, fix this bug correctly?

Thank you!



More information about the Cyrus-sasl mailing list