s3-winbind: Fixed the winbind caching.
[kamenim/samba.git] / source3 / winbindd / winbindd_cache.c
index 1bfbdb6699cb9101c90116b24fae733255e82c81..a3e202bc7e44c7d345a10cc909b9d495e08a40af 100644 (file)
@@ -41,6 +41,7 @@ extern struct winbindd_methods reconnect_methods;
 extern struct winbindd_methods ads_methods;
 #endif
 extern struct winbindd_methods builtin_passdb_methods;
+extern struct winbindd_methods sam_passdb_methods;
 
 /*
  * JRA. KEEP THIS LIST UP TO DATE IF YOU ADD CACHE ENTRIES.
@@ -143,6 +144,13 @@ static struct winbind_cache *get_cache(struct winbindd_domain *domain)
                domain->backend = &builtin_passdb_methods;
                domain->initialized = True;
        }
+
+       if (strequal(domain->name, get_global_sam_name()) &&
+           sid_equal(&domain->sid, get_global_sam_sid())) {
+               domain->backend = &sam_passdb_methods;
+               domain->initialized = True;
+       }
+
        if ( !domain->initialized ) {
                init_dc_connection( domain );
        }