The branch, v3-3-test has been updated
       via  3d22b77f1ac5e8f83d1063d87c68e60655a3ed6b (commit)
       via  d4bc1f8d79929dc1a1d06e92eaf85923a1848e6f (commit)
      from  44ab658b6d80c66f20d80aede7fc7cd2b9a941b1 (commit)

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


- Log -----------------------------------------------------------------
commit 3d22b77f1ac5e8f83d1063d87c68e60655a3ed6b
Author: Michael Adam <[email protected]>
Date:   Wed Oct 1 08:53:15 2008 +0200

    idmap: Remove passd check from idmap_backends_unixid_to_sid().
    
    As noted by Metzy, it makes no sense here to check id->sid.
    What is worse, this might even be passed in uninitialized.
    
    This still fixes the bug for me (of course), but we might need
    to check, if another special handling of passdb is needed
    (possibly changing from constant return code NT_STATUS_OK...)
    
    Michael
    (cherry picked from commit 651b5d6deaab4fb3cb726fafd98171c79777631c)
    
    Signed-off-by: Michael Adam <[email protected]>

commit d4bc1f8d79929dc1a1d06e92eaf85923a1848e6f
Author: Michael Adam <[email protected]>
Date:   Wed Oct 1 08:30:15 2008 +0200

    Fix uid_to_sid mapping when the idmap cache is empty.
    
    This failed for backends other than passed, since
    idmap_backends_unixid_to_sid() always asked passdb first,
    which returned Success no matter whether a mapping was
    found or not.
    
    One effect wast that getpwuid failed after "net cache flush".
    Only after filling the cache with a getpwnam call it succeeded.
    
    This fix makes the behaviour of idmap_backends_unixid_to_sid()
    exactly the same as that of idmap_backends_sid_to_unixid()
    
    Michael
    (cherry picked from commit da7eb5e22e56ea718e393375085cf66a90afafc8)
    
    Signed-off-by: Michael Adam <[email protected]>

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

Summary of changes:
 source/winbindd/idmap.c |   10 ----------
 1 files changed, 0 insertions(+), 10 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/winbindd/idmap.c b/source/winbindd/idmap.c
index aaba7e5..6be55ef 100644
--- a/source/winbindd/idmap.c
+++ b/source/winbindd/idmap.c
@@ -735,16 +735,6 @@ NTSTATUS idmap_backends_unixid_to_sid(const char *domname, 
struct id_map *id)
        maps[0] = id;
        maps[1] = NULL;
 
-       /*
-        * Always give passdb a chance first
-        */
-
-       dom = idmap_init_passdb_domain(NULL);
-       if ((dom != NULL)
-           && NT_STATUS_IS_OK(dom->methods->unixids_to_sids(dom, maps))) {
-               return NT_STATUS_OK;
-       }
-
        dom = idmap_find_domain(domname);
        if (dom == NULL) {
                return NT_STATUS_NONE_MAPPED;


-- 
Samba Shared Repository

Reply via email to