[Date Prev][Date Next] [Chronological] [Thread] [Top]

RE: segmenation fault with saslAuthzTo (ITS#2533)



OK, that segfault is now fixed.

  -- Howard Chu
  Chief Architect, Symas Corp.       Director, Highland Sun
  http://www.symas.com               http://highlandsun.com/hyc
  Symas: Premier OpenSource Development and Support 

> -----Original Message-----
> From: owner-openldap-bugs@OpenLDAP.org
> [mailto:owner-openldap-bugs@OpenLDAP.org]On Behalf Of
> norbert+lists.openldap-bugs@burgundy.dyndns.org

> --On Freitag, 23. Mai 2003 04:09 +0000 Kurt Zeilenga 
> <openldap-its@OpenLDAP.org> wrote:
> 
> > fixed in HEAD, please test.  Thanks, Kurt
> 
> It now works for a few more steps but still segfaults:
> 
> <==slap_sasl2dn: Converted SASL name to 
> uid=norbert,ou=people,dc=example,dc=com
> getdn: dn:id converted to uid=norbert,ou=people,dc=example,dc=com
> ==>slap_sasl_authorized: can 
> uid=norbert,ou=people,dc=example,dc=com become 
> uid=root,ou=people,dc=example,dc=com?
> ==>slap_sasl_check_authz: does 
> uid=root,ou=people,dc=example,dc=com match 
> saslAuthzTo rule in uid=norbert,ou=people,dc=example,dc=com?
> bdb_dn2entry("uid=norbert,ou=people,dc=example,dc=com")
> => bdb_entry_get: found entry: 
> "uid=norbert,ou=people,dc=example,dc=com"
> bdb_entry_get: rc=0
> => access_allowed: auth access to 
> "uid=norbert,ou=People,dc=example,dc=com" 
> "saslAuthzTo" requested
> => dn: [1]
> => dn: [2] cn=subschema
> => acl_get: [3] check attr saslAuthzTo
> <= acl_get: [3] acl uid=norbert,ou=People,dc=example,dc=com attr: 
> saslAuthzTo
> access_allowed: no res from state (saslAuthzTo)
> => acl_mask: access to entry 
> "uid=norbert,ou=People,dc=example,dc=com", 
> attr "saslAuthzTo" requested
> => acl_mask: to all values by "", (=n)
> <= check a_dn_pat: self
> <= check a_dn_pat: users
> <= check a_dn_pat: anonymous
> <= acl_mask: [3] applying auth(=x) (stop)
> <= acl_mask: [3] mask: auth(=x)
> => access_allowed: auth access granted by auth(=x)
> ===>slap_sasl_match: comparing DN 
> uid=root,ou=people,dc=example,dc=com to 
> rule uid=.*,ou=People,dc=example,dc=com
> slap_parseURI: parsing uid=.*,ou=People,dc=example,dc=com
> ldap_url_parse_ext(uid=.*,ou=People,dc=example,dc=com)
> >>> dnNormalize: <uid=.*,ou=People,dc=example,dc=com>
> => ldap_bv2dn(uid=.*,ou=People,dc=example,dc=com,0)
> <= ldap_bv2dn(uid=.*,ou=People,dc=example,dc=com,0)=0
> => ldap_dn2bv(272)
> <= ldap_dn2bv(uid=.*,ou=people,dc=example,dc=com,272)=0
> <<< dnNormalize: <uid=.*,ou=people,dc=example,dc=com>
> <===slap_sasl_match: comparison returned 0
> Segmentation fault
> 
> 
> #0  0x401830cd in pthread_mutex_lock () from /lib/libpthread.so.0
> #1  0x401ff628 in free () from /lib/libc.so.6
> #2  0x080f2dae in ber_bvarray_free_x (a=0x4064262c, ctx=0x410) at 
> memory.c:720
> #3  0x080f2de1 in ber_bvarray_free (a=0x4064261c) at memory.c:730
> #4  0x08097ca9 in slap_sasl_check_authz (conn=0x405f5f44, 
> searchDN=0x0, 
> assertDN=0xbf5ff73c, ad=0x81d65d8, authc=0xbf5ff744)
>     at saslauthz.c:537
> #5  0x0809828b in slap_sasl_authorized (conn=0x405f5f44, 
> authcDN=0xbf5ff744, authzDN=0xbf5ff73c) at saslauthz.c:683
> #6  0x0809bc6a in slap_sasl_authorize (sconn=0x821c648, 
> context=0x405f5f44, 
> requested_user=0xbf5ff73c "$", rlen=39,
>     auth_identity=0x821d059 "norbert", alen=7, def_realm=0x0, 
> urlen=0, 
> props=0x821c550) at sasl.c:755
> #7  0x4002075f in do_authorization (s_conn=0x821c648) at server.c:1016
> #8  0x40020d13 in sasl_server_step (conn=0x821c648, clientin=0x0, 
> clientinlen=105, serverout=0xbf5ff850, serveroutlen=0x0)
>     at server.c:1274
> #9  0x0809c909 in slap_sasl_bind (op=0x821d5c8, rs=0xbf5ff90c) at 
> sasl.c:1386
> #10 0x08082609 in do_bind (op=0x821d5c8, rs=0xbf5ff90c) at bind.c:295
> #11 0x0806ec11 in connection_operation (ctx=0xbf5ff97c, 
> arg_v=0x821d5c8) at 
> connection.c:939
> #12 0x080d1cb1 in ldap_int_thread_pool_wrapper (xpool=0x81c76c8) at 
> tpool.c:463
> #13 0x401821b0 in pthread_start_thread () from /lib/libpthread.so.0
> 
> 
> Norbert
> 
> 
>