summaryrefslogtreecommitdiff
path: root/source3/winbindd/wb_next_pwent.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/winbindd/wb_next_pwent.c')
-rw-r--r--source3/winbindd/wb_next_pwent.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/source3/winbindd/wb_next_pwent.c b/source3/winbindd/wb_next_pwent.c
index 25ab7b38d3..fbaaa48b6b 100644
--- a/source3/winbindd/wb_next_pwent.c
+++ b/source3/winbindd/wb_next_pwent.c
@@ -55,6 +55,11 @@ struct tevent_req *wb_next_pwent_send(TALLOC_CTX *mem_ctx,
state->gstate->domain = state->gstate->domain->next;
}
+ if ((state->gstate->domain != NULL)
+ && sid_check_is_domain(&state->gstate->domain->sid)) {
+ state->gstate->domain = state->gstate->domain->next;
+ }
+
if (state->gstate->domain == NULL) {
tevent_req_nterror(req, NT_STATUS_NO_MORE_ENTRIES);
return tevent_req_post(req, ev);
@@ -101,6 +106,12 @@ static void wb_next_pwent_fetch_done(struct tevent_req *subreq)
if (state->gstate->num_users == 0) {
state->gstate->domain = state->gstate->domain->next;
+
+ if ((state->gstate->domain != NULL)
+ && sid_check_is_domain(&state->gstate->domain->sid)) {
+ state->gstate->domain = state->gstate->domain->next;
+ }
+
if (state->gstate->domain == NULL) {
tevent_req_nterror(req, NT_STATUS_NO_MORE_ENTRIES);
return;