diff options
author | Kai Blin <kai@samba.org> | 2011-11-22 11:26:04 +0100 |
---|---|---|
committer | Kai Blin <kai@samba.org> | 2011-11-22 14:29:07 +0100 |
commit | 81b4db74a704fbc57e7fed8b8a75fc6de18a4e8d (patch) | |
tree | 3ada1bb9b3e4317f7d3dda9ea7e5364b843f42f5 /lib/addns | |
parent | b16f539e0eb014591a3cf8f5e9a330999e53d96a (diff) | |
download | samba-81b4db74a704fbc57e7fed8b8a75fc6de18a4e8d.tar.gz samba-81b4db74a704fbc57e7fed8b8a75fc6de18a4e8d.tar.bz2 samba-81b4db74a704fbc57e7fed8b8a75fc6de18a4e8d.zip |
s3 libaddns: Prevent a crash when dns_create_update fails
When dns_create_update() fails, it does not initialize *req, and then TALLOC_FREE(req) in the
error handling crashes if we're lucky.
Instead of going into the generic error handling, treat the failure in dns_create_update() like
dns_create_update_request() and just pass on the error.
Thanks to Harry Mason for reporting this issue.
Autobuild-User: Kai Blin <kai@samba.org>
Autobuild-Date: Tue Nov 22 14:29:07 CET 2011 on sn-devel-104
Diffstat (limited to 'lib/addns')
-rw-r--r-- | lib/addns/dnsrecord.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/addns/dnsrecord.c b/lib/addns/dnsrecord.c index 045fd465da..de70bca214 100644 --- a/lib/addns/dnsrecord.c +++ b/lib/addns/dnsrecord.c @@ -377,7 +377,7 @@ DNS_ERROR dns_create_probe(TALLOC_CTX *mem_ctx, const char *zone, uint16 i; err = dns_create_update(mem_ctx, zone, &req); - if (!ERR_DNS_IS_OK(err)) goto error; + if (!ERR_DNS_IS_OK(err)) return err; err = dns_create_name_not_in_use_record(req, host, QTYPE_CNAME, &rec); if (!ERR_DNS_IS_OK(err)) goto error; |