r22589: Make TALLOC_ARRAY consistent across all uses.
[abartlet/samba.git/.git] / source3 / libaddns / dnsrecord.c
index 37a5886af70a86e25fe4653e761c2a8852e88c57..c649dbd7de4b1627e1db038cd46f5fc1624f3fc6 100644 (file)
@@ -234,9 +234,13 @@ DNS_ERROR dns_unmarshall_tkey_record(TALLOC_CTX *mem_ctx, struct dns_rrec *rec,
 
        if (!ERR_DNS_IS_OK(buf.error)) goto error;
 
-       if (!(tkey->key = TALLOC_ARRAY(tkey, uint8, tkey->key_length))) {
-               buf.error = ERROR_DNS_NO_MEMORY;
-               goto error;
+       if (tkey->key_length) {
+               if (!(tkey->key = TALLOC_ARRAY(tkey, uint8, tkey->key_length))) {
+                       buf.error = ERROR_DNS_NO_MEMORY;
+                       goto error;
+               }
+       } else {
+               tkey->key = NULL;
        }
 
        dns_unmarshall_buffer(&buf, tkey->key, tkey->key_length);