The branch, v3-2-test has been updated
       via  bb76066e8797599e5ca75821a686e32dd0c97a74 (commit)
      from  ca58d12b6513beb40c14fcab2758cf21af0179f3 (commit)

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


- Log -----------------------------------------------------------------
commit bb76066e8797599e5ca75821a686e32dd0c97a74
Author: Volker Lendecke <[email protected]>
Date:   Tue Mar 24 11:07:16 2009 +0100

    Fix bug 6097
    
    A client sent a SID with authority 0 and 0 sub-authorities. W2k3 replies 
with
    NT_STATUS_INVALID_SID, even if other SIDs in the list are valid.
    
    Thanks to Pavel <[email protected]> for the bug report!

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

Summary of changes:
 source/passdb/lookup_sid.c     |    2 +-
 source/rpc_server/srv_lsa_nt.c |    4 ++++
 2 files changed, 5 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/passdb/lookup_sid.c b/source/passdb/lookup_sid.c
index a7175b9..d767fa4 100644
--- a/source/passdb/lookup_sid.c
+++ b/source/passdb/lookup_sid.c
@@ -804,7 +804,7 @@ NTSTATUS lookup_sids(TALLOC_CTX *mem_ctx, int num_sids,
                } else {
                        /* This is a normal SID with rid component */
                        if (!sid_split_rid(&sid, &rid)) {
-                               result = NT_STATUS_INVALID_PARAMETER;
+                               result = NT_STATUS_INVALID_SID;
                                goto fail;
                        }
                }
diff --git a/source/rpc_server/srv_lsa_nt.c b/source/rpc_server/srv_lsa_nt.c
index 9ce992c..9d411ec 100644
--- a/source/rpc_server/srv_lsa_nt.c
+++ b/source/rpc_server/srv_lsa_nt.c
@@ -830,6 +830,10 @@ NTSTATUS _lsa_LookupSids(pipes_struct *p,
                                           &names,
                                           &mapped_count);
 
+       if (NT_STATUS_IS_ERR(status)) {
+               return status;
+       }
+
        /* Convert from lsa_TranslatedName2 to lsa_TranslatedName */
        names_out = TALLOC_ARRAY(p->mem_ctx, struct lsa_TranslatedName,
                                 num_sids);


-- 
Samba Shared Repository

Reply via email to