The branch, master has been updated
       via  64ddb66 s3:smbd/signing: use smbd_server_connection as talloc 
parent for its smb1 signing state
       via  074991c s3-passdb: Fix negative SID->uid/gid/both cache handling
      from  b5e9ece s3:smbd: remove global 'smbd_server_conn' !!!

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


- Log -----------------------------------------------------------------
commit 64ddb668843554725eb7cddc862c8e906f1bbe63
Author: Stefan Metzmacher <me...@samba.org>
Date:   Mon Dec 12 13:50:04 2011 +0100

    s3:smbd/signing: use smbd_server_connection as talloc parent for its smb1 
signing state
    
    metze
    
    Autobuild-User: Stefan Metzmacher <me...@samba.org>
    Autobuild-Date: Fri May 25 00:23:53 CEST 2012 on sn-devel-104

commit 074991cefe2b8bb58de869e099379e182fab28b7
Author: Ira Cooper <i...@samba.org>
Date:   Wed May 23 21:42:26 2012 -0400

    s3-passdb: Fix negative SID->uid/gid/both cache handling
    
    -1 uid/gid/both signals a non existent uid/gid/both.
    
    Signed-off-by: Stefan Metzmacher <me...@samba.org>

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

Summary of changes:
 source3/passdb/lookup_sid.c |   14 ++++++++++++++
 source3/smbd/signing.c      |    4 ++--
 2 files changed, 16 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/passdb/lookup_sid.c b/source3/passdb/lookup_sid.c
index 4ceba3c..3f8b06d 100644
--- a/source3/passdb/lookup_sid.c
+++ b/source3/passdb/lookup_sid.c
@@ -1347,6 +1347,20 @@ bool sids_to_unixids(const struct dom_sid *sids, 
uint32_t num_sids,
                }
        }
 done:
+       for (i=0; i<num_sids; i++) {
+               switch(ids[i].type) {
+               case WBC_ID_TYPE_GID:
+               case WBC_ID_TYPE_UID:
+               case WBC_ID_TYPE_BOTH:
+                       if (ids[i].id == -1) {
+                               ids[i].type = ID_TYPE_NOT_SPECIFIED;
+                       }
+                       break;
+               case WBC_ID_TYPE_NOT_SPECIFIED:
+                       break;
+               }
+       }
+
        ret = true;
 fail:
        TALLOC_FREE(wbc_ids);
diff --git a/source3/smbd/signing.c b/source3/smbd/signing.c
index 8e4c50f..f4a8d2a 100644
--- a/source3/smbd/signing.c
+++ b/source3/smbd/signing.c
@@ -186,7 +186,7 @@ bool srv_init_signing(struct smbd_server_connection *conn)
                struct smbd_shm_signing *s;
 
                /* setup the signing state in shared memory */
-               s = talloc_zero(server_event_context(), struct 
smbd_shm_signing);
+               s = talloc_zero(conn, struct smbd_shm_signing);
                if (s == NULL) {
                        return false;
                }
@@ -208,7 +208,7 @@ bool srv_init_signing(struct smbd_server_connection *conn)
                return true;
        }
 
-       conn->smb1.signing_state = smb_signing_init(server_event_context(),
+       conn->smb1.signing_state = smb_signing_init(conn,
                                                    allowed, desired, 
mandatory);
        if (!conn->smb1.signing_state) {
                return false;


-- 
Samba Shared Repository

Reply via email to