[SCM] Samba Shared Repository - branch v3-2-test updated - release-3-2-0pre2-3552-gf049fb5

Günther Deschner gd at samba.org
Wed Apr 15 23:47:31 GMT 2009


The branch, v3-2-test has been updated
       via  f049fb5643f93cc4806ada5db8e591bbe4cb9204 (commit)
      from  3591c95beaed3abfa10b1579e377b0103647a177 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test


- Log -----------------------------------------------------------------
commit f049fb5643f93cc4806ada5db8e591bbe4cb9204
Author: Günther Deschner <gd at samba.org>
Date:   Thu Apr 16 01:42:35 2009 +0200

    s3-lsa: Fix Bug #6263. Unexpected LookupSids reply crashes XP pre-SP3.
    
    LookupSids needs to bounce back string sids in case of NT_STATUS_NONE_MAPPED.
    
    Guenther
    (cherry picked from commit 597be402e40ff880b595ae49a8600b932365cbcb)

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

Summary of changes:
 source/rpc_server/srv_lsa_nt.c |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/rpc_server/srv_lsa_nt.c b/source/rpc_server/srv_lsa_nt.c
index 9d411ec..fd6cdfa 100644
--- a/source/rpc_server/srv_lsa_nt.c
+++ b/source/rpc_server/srv_lsa_nt.c
@@ -830,7 +830,15 @@ NTSTATUS _lsa_LookupSids(pipes_struct *p,
 					   &names,
 					   &mapped_count);
 
-	if (NT_STATUS_IS_ERR(status)) {
+	/* Only return here when there is a real error.
+	   NT_STATUS_NONE_MAPPED is a special case as it indicates that none of
+	   the requested sids could be resolved. Older versions of XP (pre SP3)
+	   rely that we return with the string representations of those SIDs in
+	   that case. If we don't, XP crashes - Guenther
+	   */
+
+	if (NT_STATUS_IS_ERR(status) &&
+	    !NT_STATUS_EQUAL(status, NT_STATUS_NONE_MAPPED)) {
 		return status;
 	}
 


-- 
Samba Shared Repository


More information about the samba-cvs mailing list