r26138: Don't talloc_free() res if an error occoured.
authorAndrew Bartlett <abartlet@samba.org>
Tue, 27 Nov 2007 01:47:57 +0000 (02:47 +0100)
committerStefan Metzmacher <metze@samba.org>
Fri, 21 Dec 2007 04:46:19 +0000 (05:46 +0100)
Andrew Bartlett
(This used to be commit 4a8a1003f3cc8db530182138e2331e860149e844)

source4/dsdb/samdb/cracknames.c

index e607dbc5deed50b42594099bdcbab34c054806fb..c0c44c8602854e7a0666bfe641555b102f552cfa 100644 (file)
@@ -110,7 +110,10 @@ static enum drsuapi_DsNameStatus LDB_lookup_spn_alias(krb5_context context, stru
        if (ret != LDB_SUCCESS && ret != LDB_ERR_NO_SUCH_OBJECT) {
                DEBUG(1, ("ldb_search: dn: %s not found: %s", service_dn_str, ldb_errstring(ldb_ctx)));
                return DRSUAPI_DS_NAME_STATUS_RESOLVE_ERROR;
-       } else if (ret == LDB_ERR_NO_SUCH_OBJECT || res->count != 1) {
+       } else if (ret == LDB_ERR_NO_SUCH_OBJECT) {
+               DEBUG(1, ("ldb_search: dn: %s not found", service_dn_str));
+               return DRSUAPI_DS_NAME_STATUS_NOT_FOUND;
+       } else if (res->count != 1) {
                talloc_free(res);
                DEBUG(1, ("ldb_search: dn: %s not found", service_dn_str));
                return DRSUAPI_DS_NAME_STATUS_NOT_FOUND;