Fix looping over multiple entities or groups
This commit is contained in:
parent
c2eca7ed43
commit
ab4283ceac
|
@ -80,9 +80,7 @@ func (s *server) handleSearchEntities(w ldap.ResponseWriter, m *ldap.Message) {
|
||||||
if exprAnd {
|
if exprAnd {
|
||||||
e, complete, err = s.entitySearchResultWithMatch(ctx, ents[i], r.BaseObject(), r.Attributes(), matchGroup)
|
e, complete, err = s.entitySearchResultWithMatch(ctx, ents[i], r.BaseObject(), r.Attributes(), matchGroup)
|
||||||
if !complete {
|
if !complete {
|
||||||
res := ldap.NewSearchResultDoneResponse(ldap.LDAPResultSuccess)
|
continue
|
||||||
w.Write(res)
|
|
||||||
return
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
e, err = s.entitySearchResult(ctx, ents[i], r.BaseObject(), r.Attributes())
|
e, err = s.entitySearchResult(ctx, ents[i], r.BaseObject(), r.Attributes())
|
||||||
|
@ -236,9 +234,7 @@ func (s *server) handleSearchGroups(w ldap.ResponseWriter, m *ldap.Message) {
|
||||||
s.l.Debug("Match UID: ", matchUid)
|
s.l.Debug("Match UID: ", matchUid)
|
||||||
e, complete, err = s.groupSearchResultWithMatch(ctx, groups[i], r.BaseObject(), r.Attributes(), matchUid)
|
e, complete, err = s.groupSearchResultWithMatch(ctx, groups[i], r.BaseObject(), r.Attributes(), matchUid)
|
||||||
if !complete {
|
if !complete {
|
||||||
res := ldap.NewSearchResultDoneResponse(ldap.LDAPResultSuccess)
|
continue
|
||||||
w.Write(res)
|
|
||||||
return
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
e, err = s.groupSearchResult(ctx, groups[i], r.BaseObject(), r.Attributes())
|
e, err = s.groupSearchResult(ctx, groups[i], r.BaseObject(), r.Attributes())
|
||||||
|
|
Loading…
Reference in a new issue