Make dname_equal reusable

+ some symbol renames
This commit is contained in:
Willem Toorop 2015-06-16 16:11:51 +02:00
parent 4445a5f9cc
commit 39639a86c4
4 changed files with 18 additions and 29 deletions

View File

@ -184,10 +184,10 @@ getdns_general_ns(getdns_context *context, getdns_eventloop *loop,
if (!context || !name || (!callbackfn && !internal_cb))
return GETDNS_RETURN_INVALID_PARAMETER;
if ((r = validate_dname(name)))
if ((r = priv_getdns_validate_dname(name)))
return r;
if (extensions && (r = validate_extensions(extensions)))
if (extensions && (r = priv_getdns_validate_extensions(extensions)))
return r;
/* Set up the context assuming we won't use the specified namespaces.

View File

@ -265,21 +265,6 @@ create_starttls_request(getdns_dns_req *dnsreq, getdns_upstream *upstream,
return 1;
}
static int
dname_equal(uint8_t *s1, uint8_t *s2)
{
uint8_t i;
for (;;) {
if (*s1 != *s2)
return 0;
else if (!*s1)
return 1;
for (i = *s1++, s2++; i > 0; i--, s1++, s2++)
if ((*s1 & 0xDF) != (*s2 & 0xDF))
return 0;
}
}
static int
is_starttls_response(getdns_network_req *netreq)
{
@ -315,7 +300,7 @@ is_starttls_response(getdns_network_req *netreq)
owner_name = priv_getdns_owner_if_or_as_decompressed(
rr_iter, owner_name_space, &owner_name_len);
if (!dname_equal(starttls_name, owner_name))
if (!priv_getdns_dname_equal(starttls_name, owner_name))
continue;
if (!(rdf_iter = priv_getdns_rdf_iter_init(
@ -324,7 +309,7 @@ is_starttls_response(getdns_network_req *netreq)
/* re-use the starttls_name for the response dname*/
starttls_name = priv_getdns_rdf_if_or_as_decompressed(
rdf_iter,starttls_name_space,&starttls_name_len);
if (dname_equal(starttls_name, owner_name))
if (priv_getdns_dname_equal(starttls_name, owner_name))
return 1;
else
return 0;

View File

@ -423,8 +423,8 @@ error:
return NULL;
}
static int
dname_equal(uint8_t *s1, uint8_t *s2)
int
priv_getdns_dname_equal(uint8_t *s1, uint8_t *s2)
{
uint8_t i;
for (;;) {
@ -581,7 +581,7 @@ priv_getdns_create_reply_dict(getdns_context *context, getdns_network_req *req,
owner_name = priv_getdns_owner_if_or_as_decompressed(
rr_iter, owner_name_space, &owner_name_len);
if (!dname_equal(canonical_name, owner_name))
if (!priv_getdns_dname_equal(canonical_name, owner_name))
continue;
if (!(rdf_iter = priv_getdns_rdf_iter_init(
@ -654,7 +654,7 @@ priv_getdns_create_reply_dict(getdns_context *context, getdns_network_req *req,
owner_name = priv_getdns_owner_if_or_as_decompressed(
rr_iter, owner_name_space, &owner_name_len);
if (!dname_equal(canonical_name, owner_name))
if (!priv_getdns_dname_equal(canonical_name, owner_name))
continue;
if (!(rdf_iter = priv_getdns_rdf_iter_init(
@ -831,7 +831,7 @@ extformatcmp(const void *a, const void *b)
/*---------------------------------------- validate_extensions */
getdns_return_t
validate_extensions(struct getdns_dict * extensions)
priv_getdns_validate_extensions(struct getdns_dict * extensions)
{
struct getdns_dict_item *item;
getdns_extension_format *extformat;
@ -853,7 +853,7 @@ validate_extensions(struct getdns_dict * extensions)
return GETDNS_RETURN_EXTENSION_MISFORMAT;
}
return GETDNS_RETURN_GOOD;
} /* validate_extensions */
} /* priv_getdns_validate_extensions */
getdns_return_t
getdns_apply_network_result(getdns_network_req* netreq,
@ -918,7 +918,7 @@ getdns_apply_network_result(getdns_network_req* netreq,
getdns_return_t
validate_dname(const char* dname) {
priv_getdns_validate_dname(const char* dname) {
int len;
int label_len;
const char* s;
@ -981,7 +981,7 @@ validate_dname(const char* dname) {
return GETDNS_RETURN_BAD_DOMAIN_NAME;
}
return GETDNS_RETURN_GOOD;
} /* validate_dname */
} /* priv_getdns_validate_dname */
/* util-internal.c */

View File

@ -130,7 +130,11 @@ struct getdns_dict *create_getdns_response(struct getdns_dns_req *completed_requ
getdns_dict *priv_getdns_create_reply_dict(getdns_context *context,
getdns_network_req *req, getdns_list *just_addrs, int *rrsigs_in_answer);
getdns_return_t validate_dname(const char* dname);
getdns_return_t priv_getdns_validate_dname(const char* dname);
int priv_getdns_dname_equal(uint8_t *s1, uint8_t *s2);
/**
* detect unrecognized extension strings or invalid extension formats
@ -140,7 +144,7 @@ getdns_return_t validate_dname(const char* dname);
* @return GETDNS_RETURN_NO_SUCH_EXTENSION A name in the extensions dict is not a valid extension.
* @return GETDNS_RETURN_EXTENSION_MISFORMAT One or more of the extensions has a bad format.
*/
getdns_return_t validate_extensions(struct getdns_dict * extensions);
getdns_return_t priv_getdns_validate_extensions(struct getdns_dict * extensions);
#define DEBUG_ON(...) do { \
struct timeval tv; \