s4:dsdsb: Check return code of cli_credentials_guess()
authorAndreas Schneider <asn@samba.org>
Tue, 22 Jun 2021 07:37:13 +0000 (09:37 +0200)
committerAndrew Bartlett <abartlet@samba.org>
Tue, 29 Jun 2021 02:19:35 +0000 (02:19 +0000)
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
source4/dsdb/samdb/ldb_modules/proxy.c

index c3f12bae3a16dd2d07ee1d19588fcb10121e4331..e3635340cebe1d4ab33e6a1e26025261b8a17e7e 100644 (file)
@@ -65,6 +65,7 @@ static int load_proxy_info(struct ldb_module *module)
        int ret;
        const char *olddn, *newdn, *url, *username, *password, *oldstr, *newstr;
        struct cli_credentials *creds;
+       bool ok;
 
        /* see if we have already loaded it */
        if (proxy->upstream != NULL) {
@@ -131,7 +132,12 @@ static int load_proxy_info(struct ldb_module *module)
                ldb_oom(ldb);
                goto failed;
        }
-       cli_credentials_guess(creds, ldb_get_opaque(ldb, "loadparm"));
+       ok = cli_credentials_guess(creds, ldb_get_opaque(ldb, "loadparm"));
+       if (!ok) {
+               ldb_oom(ldb);
+               goto failed;
+       }
+
        cli_credentials_set_username(creds, username, CRED_SPECIFIED);
        cli_credentials_set_password(creds, password, CRED_SPECIFIED);