[SCM] Samba Shared Repository - branch master updated

Volker Lendecke vlendec at samba.org
Sun Feb 28 06:40:53 MST 2010


The branch, master has been updated
       via  0e9882a... s3: Fix but 7145 -- duplicate sam and unix accounts
      from  99fc004... s3: vfs_full_audit.c: implement negated vfs_ops in the success/failure list

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 0e9882a65e91e4ab55dc103c7f6aec4ccd966db0
Author: Volker Lendecke <vl at samba.org>
Date:   Sun Feb 28 14:38:14 2010 +0100

    s3: Fix but 7145 -- duplicate sam and unix accounts
    
    For me this survives the
    
    TESTS=posix_s3 POSIX_SUBTESTS="RPC-SAMR-LARGE-DC LOCAL-NSS-WRAPPER" make test
    
    reproducer. Günther, please check!
    
    Volker

-----------------------------------------------------------------------

Summary of changes:
 source3/winbindd/wb_next_grent.c |   11 +++++++++++
 source3/winbindd/wb_next_pwent.c |   11 +++++++++++
 2 files changed, 22 insertions(+), 0 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/winbindd/wb_next_grent.c b/source3/winbindd/wb_next_grent.c
index 5f81bca..0e9dbd5 100644
--- a/source3/winbindd/wb_next_grent.c
+++ b/source3/winbindd/wb_next_grent.c
@@ -59,6 +59,11 @@ struct tevent_req *wb_next_grent_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);
@@ -109,6 +114,12 @@ static void wb_next_grent_fetch_done(struct tevent_req *subreq)
 
 	if (state->gstate->num_groups == 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;
diff --git a/source3/winbindd/wb_next_pwent.c b/source3/winbindd/wb_next_pwent.c
index 25ab7b3..fbaaa48 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;


-- 
Samba Shared Repository


More information about the samba-cvs mailing list