ldap group bug

Dmitry Melekhov <[email protected]>
Newsgroups gmane.comp.security.cyrus.sasl
Message-ID <[email protected]>
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!
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.