Bail out, rather than segfault on no domain sid.
authorAndrew Bartlett <abartlet@samba.org>
Thu, 13 Mar 2008 03:12:50 +0000 (14:12 +1100)
committerAndrew Bartlett <abartlet@samba.org>
Thu, 13 Mar 2008 03:12:50 +0000 (14:12 +1100)
Andrew Bartlett
(This used to be commit 7e85f318b571d1a909dffad0ecd661468ed497ca)

source4/dsdb/samdb/ldb_modules/objectclass.c

index 537a56045d24af0003288023496469edd37d01b1..4d4ef585cbb43bf6947ae49774420b90d003ee66 100644 (file)
@@ -258,14 +258,15 @@ static DATA_BLOB *get_sd(struct ldb_module *module, TALLOC_CTX *mem_ctx,
        struct auth_session_info *session_info
                = ldb_get_opaque(module->ldb, "sessionInfo");
        struct security_descriptor *sd;
+       struct dom_sid *domain_sid = samdb_domain_sid(module->ldb);
 
-       if (!objectclass->defaultSecurityDescriptor) {
+       if (!objectclass->defaultSecurityDescriptor || !domain_sid) {
                return NULL;
        }
        
        sd = sddl_decode(mem_ctx, 
                         objectclass->defaultSecurityDescriptor,
-                        samdb_domain_sid(module->ldb));
+                        domain_sid);
 
        if (!sd || !session_info || !session_info->security_token) {
                return NULL;