diff options
Diffstat (limited to 'src/lib/ares_data.c')
-rw-r--r-- | src/lib/ares_data.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/lib/ares_data.c b/src/lib/ares_data.c index aa925b8..69dff06 100644 --- a/src/lib/ares_data.c +++ b/src/lib/ares_data.c @@ -77,6 +77,14 @@ void ares_free_data(void *dataptr) ares_free(ptr->data.srv_reply.host); break; + case ARES_DATATYPE_URI_REPLY: + + if (ptr->data.uri_reply.next) + next_data = ptr->data.uri_reply.next; + if (ptr->data.uri_reply.uri) + ares_free(ptr->data.uri_reply.uri); + break; + case ARES_DATATYPE_TXT_REPLY: case ARES_DATATYPE_TXT_EXT: @@ -174,6 +182,14 @@ void *ares_malloc_data(ares_datatype type) ptr->data.srv_reply.port = 0; break; + case ARES_DATATYPE_URI_REPLY: + ptr->data.uri_reply.next = NULL; + ptr->data.uri_reply.priority = 0; + ptr->data.uri_reply.weight = 0; + ptr->data.uri_reply.uri = NULL; + ptr->data.uri_reply.ttl = 0; + break; + case ARES_DATATYPE_TXT_EXT: ptr->data.txt_ext.record_start = 0; /* FALLTHROUGH */ |