mirror of https://github.com/getdnsapi/getdns.git
Fix read of uninitialized memory
Not a dangerous one though, but still...
This commit is contained in:
parent
e8030b34d2
commit
d4849dc0ba
|
@ -499,13 +499,17 @@ getdns_indent(size_t indent)
|
||||||
} /* getdns_indent */
|
} /* getdns_indent */
|
||||||
|
|
||||||
static int
|
static int
|
||||||
priv_getdns_bindata_is_dname(struct getdns_bindata *bindata)
|
priv_getdns_bindata_is_dname(getdns_bindata *bindata)
|
||||||
{
|
{
|
||||||
size_t i = 0, n_labels = 0;
|
size_t i = 0, n_labels = 0;
|
||||||
while (i < bindata->size) {
|
|
||||||
|
while (i < bindata->size && bindata->data[i]) {
|
||||||
i += ((size_t)bindata->data[i]) + 1;
|
i += ((size_t)bindata->data[i]) + 1;
|
||||||
n_labels++;
|
n_labels++;
|
||||||
}
|
}
|
||||||
|
if (i < bindata->size && !bindata->data[i])
|
||||||
|
i++;
|
||||||
|
|
||||||
return i == bindata->size && n_labels > 1 &&
|
return i == bindata->size && n_labels > 1 &&
|
||||||
bindata->data[bindata->size - 1] == 0;
|
bindata->data[bindata->size - 1] == 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -513,7 +513,8 @@ priv_getdns_create_reply_dict(getdns_context *context, getdns_network_req *req,
|
||||||
uint8_t canonical_name_space[256],
|
uint8_t canonical_name_space[256],
|
||||||
*canonical_name = canonical_name_space;
|
*canonical_name = canonical_name_space;
|
||||||
uint8_t owner_name_space[256], *owner_name;
|
uint8_t owner_name_space[256], *owner_name;
|
||||||
size_t canonical_name_len = 256, owner_name_len;
|
size_t canonical_name_len = sizeof(canonical_name_space),
|
||||||
|
owner_name_len = sizeof(owner_name_space);
|
||||||
int new_canonical = 0;
|
int new_canonical = 0;
|
||||||
uint16_t rr_type;
|
uint16_t rr_type;
|
||||||
getdns_dict *header = NULL;
|
getdns_dict *header = NULL;
|
||||||
|
@ -546,6 +547,7 @@ priv_getdns_create_reply_dict(getdns_context *context, getdns_network_req *req,
|
||||||
goto error;
|
goto error;
|
||||||
|
|
||||||
canonical_name = req->owner->name;
|
canonical_name = req->owner->name;
|
||||||
|
canonical_name_len = req->owner->name_len;
|
||||||
|
|
||||||
for ( rr_iter = priv_getdns_rr_iter_init(&rr_iter_storage
|
for ( rr_iter = priv_getdns_rr_iter_init(&rr_iter_storage
|
||||||
, req->response
|
, req->response
|
||||||
|
|
Loading…
Reference in New Issue