Thomas Bruederli
2014-06-24 36a10247c0b05d518f4c2c8f7bf74e3181ea5050
Merge branch 'master' of github.com:roundcube/roundcubemail
2 files modified
26 ■■■■■ changed files
plugins/password/drivers/ldap.php 11 ●●●● patch | view | raw | blame | history
plugins/password/drivers/ldap_simple.php 15 ●●●● patch | view | raw | blame | history
plugins/password/drivers/ldap.php
@@ -130,9 +130,10 @@
     */
    function search_userdn($rcmail)
    {
        $binddn = $rcmail->config->get('password_ldap_searchDN');
        $bindpw = $rcmail->config->get('password_ldap_searchPW');
        $ldapConfig = array (
            'binddn'    => $rcmail->config->get('password_ldap_searchDN'),
            'bindpw'    => $rcmail->config->get('password_ldap_searchPW'),
            'basedn'    => $rcmail->config->get('password_ldap_basedn'),
            'host'      => $rcmail->config->get('password_ldap_host'),
            'port'      => $rcmail->config->get('password_ldap_port'),
@@ -140,6 +141,12 @@
            'version'   => $rcmail->config->get('password_ldap_version'),
        );
        // allow anonymous searches
        if (!empty($binddn)) {
            $ldapConfig['binddn'] = $binddn;
            $ldapConfig['bindpw'] = $bindpw;
        }
        $ldap = Net_LDAP2::connect($ldapConfig);
        if (PEAR::isError($ldap)) {
plugins/password/drivers/ldap_simple.php
@@ -168,14 +168,16 @@
     */
    function search_userdn($rcmail, $ds)
    {
        $search_user = $rcmail->config->get('password_ldap_searchDN');
        $search_pass = $rcmail->config->get('password_ldap_searchPW');
        $search_user   = $rcmail->config->get('password_ldap_searchDN');
        $search_pass   = $rcmail->config->get('password_ldap_searchPW');
        $search_base   = $rcmail->config->get('password_ldap_search_base');
        $search_filter = $rcmail->config->get('password_ldap_search_filter');
        if (empty($search_user)) {
            return null;
        if (empty($search_filter)) {
            return false;
        }
        $this->_debug("C: Bind $search_user, pass: **** [" . strlen($search_pass) . "]");
        $this->_debug("C: Bind " . ($search_user ? $search_user : '[anonymous]'));
        // Bind
        if (!ldap_bind($ds, $search_user, $search_pass)) {
@@ -184,9 +186,6 @@
        }
        $this->_debug("S: OK");
        $search_base   = $rcmail->config->get('password_ldap_search_base');
        $search_filter = $rcmail->config->get('password_ldap_search_filter');
        $search_base   = rcube_ldap_password::substitute_vars($search_base);
        $search_filter = rcube_ldap_password::substitute_vars($search_filter);