[horde] passwd and LDAP

James Satterfield james at uberduper.com
Fri Aug 8 19:14:12 PDT 2003


Guys, I'm completely stumped here. I'm not bothering using the hooks, cause my
ldap allows anonymous, etc. So here's the config. The slapd logs will follow.

passwd/config/backends.php
$backends['ldap'] = array(
    'name' => 'UberDuper',
    'preferred' => '',
    'password policy' => array(
        'minLength' => 3,
        'maxLength' => 16
    ),
    'driver' => 'ldap',
    'params' => array(
        'host' => 'knight.uberduper.com',
        'port' => 389,
        'basedn' => 'ou=accounts,ou=uberduper.com,o=UberDuper',
        'uid' => 'uid',
        'realm' => '', // this will be appended to the username when
                       // looking for the userdn.
        'encryption' => 'plain',
        'tls' => false // make sure the host == cn in the server certificate
    )
);

And here's what I get from slapd when I try to change a password.
Aug  8 17:29:42 knight slapd[53037]: daemon: activity on 1 descriptors
Aug  8 17:29:42 knight slapd[53037]: daemon: new connection on 20
Aug  8 17:29:42 knight slapd[53037]: daemon: added 20r
Aug  8 17:29:42 knight slapd[53037]: daemon: activity on:
Aug  8 17:29:42 knight slapd[53037]:
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=8 active_threads=0
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=9 active_threads=0
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=10 active_threads=0
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: activity on 1 descriptors
Aug  8 17:29:42 knight slapd[53037]: daemon: activity on:
Aug  8 17:29:42 knight slapd[53037]:  20r
Aug  8 17:29:42 knight slapd[53037]:
Aug  8 17:29:42 knight slapd[53037]: daemon: read activity on 20
Aug  8 17:29:42 knight slapd[53037]: connection_get(20)
Aug  8 17:29:42 knight slapd[53037]: connection_get(20): got connid=19
Aug  8 17:29:42 knight slapd[53037]: connection_read(20): checking for input on
id=19
Aug  8 17:29:42 knight slapd[53037]: ber_get_next on fd 20 failed errno=35
(Resource temporarily unavailable)
Aug  8 17:29:42 knight slapd[53037]: do_bind
Aug  8 17:29:42 knight slapd[53037]: >>> dnPrettyNormal: <>
Aug  8 17:29:42 knight slapd[53037]: <<< dnPrettyNormal: <>, <>
Aug  8 17:29:42 knight slapd[53037]: do_bind: version=3 dn="" method=128
Aug  8 17:29:42 knight slapd[53037]: send_ldap_result: conn=19 op=0 p=3
Aug  8 17:29:42 knight slapd[53037]: send_ldap_result: err=0 matched="" text=""
Aug  8 17:29:42 knight slapd[53037]: send_ldap_response: msgid=1 tag=97 err=0
Aug  8 17:29:42 knight slapd[53037]: do_bind: v3 anonymous bind
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=8 active_threads=0
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=9 active_threads=0
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=10 active_threads=0
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: activity on 1 descriptors
Aug  8 17:29:42 knight slapd[53037]: daemon: activity on:
Aug  8 17:29:42 knight slapd[53037]:  20r
Aug  8 17:29:42 knight slapd[53037]:
Aug  8 17:29:42 knight slapd[53037]: daemon: read activity on 20
Aug  8 17:29:42 knight slapd[53037]: connection_get(20)
Aug  8 17:29:42 knight slapd[53037]: connection_get(20): got connid=19
Aug  8 17:29:42 knight slapd[53037]: connection_read(20): checking for input on
id=19
Aug  8 17:29:42 knight slapd[53037]: ber_get_next on fd 20 failed errno=35
(Resource temporarily unavailable)
Aug  8 17:29:42 knight slapd[53037]: do_search
Aug  8 17:29:42 knight slapd[53037]: >>> dnPrettyNormal:
<ou=accounts,ou=uberduper.com,o=UberDuper>
Aug  8 17:29:42 knight slapd[53037]: <<< dnPrettyNormal:
<ou=accounts,ou=uberduper.com,o=UberDuper>,
<ou=accounts,ou=uberduper.com,o=uberduper>
Aug  8 17:29:42 knight slapd[53037]: SRCH
"ou=accounts,ou=uberduper.com,o=UberDuper" 2 0
Aug  8 17:29:42 knight slapd[53037]:     0 0 0
Aug  8 17:29:42 knight slapd[53037]:     filter: (uid=jsatter)
Aug  8 17:29:42 knight slapd[53037]:     attrs:
Aug  8 17:29:42 knight slapd[53037]:
Aug  8 17:29:42 knight slapd[53037]: => bdb_back_search
Aug  8 17:29:42 knight slapd[53037]:
bdb_dn2entry_rw("ou=accounts,ou=uberduper.com,o=uberduper")
Aug  8 17:29:42 knight slapd[53037]: => bdb_dn2id_matched(
"ou=accounts,ou=uberduper.com,o=uberduper" )
Aug  8 17:29:42 knight slapd[53037]: ====>
bdb_cache_find_entry_dn2id("ou=accounts,ou=uberduper.com,o=uberduper"): 7 (1
tries)
Aug  8 17:29:42 knight slapd[53037]: ====> bdb_cache_find_entry_id( 7 )
"ou=accounts,ou=uberduper.com,o=UberDuper" (found) (1 tries)
Aug  8 17:29:42 knight slapd[53037]: search_candidates:
base="ou=accounts,ou=uberduper.com,o=UberDuper" (0x00000007) scope=2
Aug  8 17:29:42 knight slapd[53037]: => bdb_dn2idl(
"ou=accounts,ou=uberduper.com,o=uberduper" )
Aug  8 17:29:42 knight slapd[53037]: bdb_idl_fetch_key:
@ou=accounts,ou=uberduper.com,o=uberduper
Aug  8 17:29:42 knight slapd[53037]: <= bdb_dn2idl: id=2 first=7 last=8
Aug  8 17:29:42 knight slapd[53037]: => bdb_equality_candidates (objectClass)
Aug  8 17:29:42 knight slapd[53037]: => key_read
Aug  8 17:29:42 knight slapd[53037]: bdb_idl_fetch_key: [b49d1940]
Aug  8 17:29:42 knight slapd[53037]: <= bdb_index_read: failed (-30991)
Aug  8 17:29:42 knight slapd[53037]: <= bdb_equality_candidates: id=0, first=0,
last=0
Aug  8 17:29:42 knight slapd[53037]: => bdb_equality_candidates (uid)
Aug  8 17:29:42 knight slapd[53037]: <= bdb_equality_candidates: (uid)
index_param failed (18)
Aug  8 17:29:42 knight slapd[53037]: bdb_search_candidates: id=-1 first=7 last=8
Aug  8 17:29:42 knight slapd[53037]: ====> bdb_cache_return_entry_r( 7 ):
returned (0)
Aug  8 17:29:42 knight slapd[53037]: ====> bdb_cache_find_entry_id( 7 )
"ou=accounts,ou=uberduper.com,o=UberDuper" (found) (1 tries)
Aug  8 17:29:42 knight slapd[53037]: bdb_search: 7 does not match filter
Aug  8 17:29:42 knight slapd[53037]: ====> bdb_cache_return_entry_r( 7 ):
returned (0)
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=8 active_threads=1
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=9 active_threads=1
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=10 active_threads=1
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: ====> bdb_cache_find_entry_id( 8 )
"cn=jsatter,ou=accounts,ou=uberduper.com,o=UberDuper" (found) (1 tries)
Aug  8 17:29:42 knight slapd[53037]: bdb_search: 8 does not match filter
Aug  8 17:29:42 knight slapd[53037]: ====> bdb_cache_return_entry_r( 8 ):
returned (0)
Aug  8 17:29:42 knight slapd[53037]: send_search_result: err=0 matched=""
text=""
Aug  8 17:29:42 knight slapd[53037]: send_ldap_response: msgid=2 tag=101 err=0
Aug  8 17:29:42 knight slapd[53037]: daemon: activity on 1 descriptors
Aug  8 17:29:42 knight slapd[53037]: daemon: activity on:
Aug  8 17:29:42 knight slapd[53037]:  20r
Aug  8 17:29:42 knight slapd[53037]:
Aug  8 17:29:42 knight slapd[53037]: daemon: read activity on 20
Aug  8 17:29:42 knight slapd[53037]: connection_get(20)
Aug  8 17:29:42 knight slapd[53037]: connection_get(20): got connid=19
Aug  8 17:29:42 knight slapd[53037]: connection_read(20): checking for input on
id=19
Aug  8 17:29:42 knight slapd[53037]: ber_get_next on fd 20 failed errno=0
(Undefined error: 0)
Aug  8 17:29:42 knight slapd[53037]: connection_read(20): input error=-2 id=19,
closing.
Aug  8 17:29:42 knight slapd[53037]: connection_closing: readying conn=19 sd=20
for close
Aug  8 17:29:42 knight slapd[53037]: connection_close: deferring conn=19 sd=20
Aug  8 17:29:42 knight slapd[53037]: do_unbind
Aug  8 17:29:42 knight slapd[53037]: connection_resched: attempting closing
conn=19 sd=20
Aug  8 17:29:42 knight slapd[53037]: connection_close: conn=19 sd=20
Aug  8 17:29:42 knight slapd[53037]: daemon: removing 20
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=8 active_threads=0
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=9 active_threads=0
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=10 active_threads=0
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: activity on 1 descriptors
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=8 active_threads=0
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=9 active_threads=0
tvp=NULL
Aug  8 17:29:42 knight slapd[53037]: daemon: select: listen=10 active_threads=0
tvp=NULL


It pulls up the corrent user dn
cn=jsatter,ou=accounts,ou=uberduper.com,o=UberDuper, but says that it doesn't
match the filter  (cn=jsatter) which has me super confused. Horde comes back
and says the user wasn't found. I'm not sure how much more of this ldap hell I
can take.

Thanks for any help,
James.


PS: Sorry for the crosspost. The sork list looks highly low traffic.




More information about the horde mailing list