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

RE: slapd 2.1.22 segfaults with subordinate and sasl



> -----Original Message-----
> From: owner-openldap-software@OpenLDAP.org
> [mailto:owner-openldap-software@OpenLDAP.org]On Behalf Of Tom Riddle

> I am experiencing a segfault in slapd configured with a
> subordinate backend:

> Why is it trying to connect to serverA ?  Looking at the code we see:
> in slap_sasl2dn(), severs/slapd/saslauthz.c line 609:
>
>     /* Must do an internal search */
>     be = select_backend( &dn, 0, 1 );
>
> We are passing true for the last argument - noSubs
> And in select_backend(), servers/slapd/backend.c lines 555,556:
>
>             if ( ( SLAP_GLUE_SUBORDINATE( &backends[i] ) ) &&
> noSubs ) {
>                 continue;
>             }
>
> So we see that the code is purposely skipping the subordinate
> backend.
> Is this correct ? It does not look right to me.  Should we
> actually be
> passing 0 as the last arg to select_backend() ??

No. Searches must always start from the top of the tree, because that is the
only place that has full knowledge of the tree. None of the subordinates are
aware of each other's existence. If you had two subordinates
ou=foo,o=bar,o=baz and o=bar,o=baz and did a subtree search based at
o=bar,o=baz with noSubs=FALSE, you would miss all the entries from the lower
subordinate.

> Searching the archives reveals a similar problem:
> http://www.openldap.org/lists/openldap-software/200304/msg00579.html
> Was that ever resolved ?

Like Quanah said - please use the ITS to report bugs. That's the only way to
keep track, the only way to be certain of their outcome.

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