s4:CLDAP - "fill_netlogon_samlogon_reponse" - check for out of memory
authorMatthias Dieter Wallnöfer <mdw@samba.org>
Tue, 13 Apr 2010 07:25:26 +0000 (09:25 +0200)
committerMatthias Dieter Wallnöfer <mdw@samba.org>
Tue, 13 Apr 2010 07:32:35 +0000 (09:32 +0200)
source4/cldap_server/netlogon.c

index 292327496c4efa563ad75bf809d51df7f33b8b74..86f044aa87f509a05f3ac0af473d3c3cdd6d291b 100644 (file)
@@ -76,6 +76,7 @@ NTSTATUS fill_netlogon_samlogon_response(struct ldb_context *sam_ctx,
        /* the domain has an optional trailing . */
        if (domain && domain[strlen(domain)-1] == '.') {
                domain = talloc_strndup(mem_ctx, domain, strlen(domain)-1);
+               NT_STATUS_HAVE_NO_MEMORY(domain);
        }
 
        if (domain && strcasecmp_m(domain, lp_dnsdomain(lp_ctx)) == 0) {
@@ -240,14 +241,16 @@ NTSTATUS fill_netlogon_samlogon_response(struct ldb_context *sam_ctx,
 #endif
 
        pdc_name         = talloc_asprintf(mem_ctx, "\\\\%s", lp_netbios_name(lp_ctx));
+       NT_STATUS_HAVE_NO_MEMORY(pdc_name);
        domain_uuid      = samdb_result_guid(dom_res->msgs[0], "objectGUID");
        dns_domain       = lp_dnsdomain(lp_ctx);
        forest_domain    = samdb_forest_name(sam_ctx, mem_ctx);
+       NT_STATUS_HAVE_NO_MEMORY(forest_domain);
        pdc_dns_name     = talloc_asprintf(mem_ctx, "%s.%s", 
                                           strlower_talloc(mem_ctx, 
                                                           lp_netbios_name(lp_ctx)), 
                                           dns_domain);
-
+       NT_STATUS_HAVE_NO_MEMORY(pdc_dns_name);
        flatname         = lp_sam_name(lp_ctx);
        server_site      = samdb_server_site_name(sam_ctx, mem_ctx);
        /* FIXME: Hardcoded site name */