2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-22 10:10:06 +00:00

simplify dns_name_fromtext() interface

previously, dns_name_fromtext() took both a target name and an
optional target buffer parameter, which could override the name's
dedicated buffer. this interface is unnecessarily complex.

we now have two functions, dns_name_fromtext() to convert text
into a dns_name that has a dedicated buffer, and dns_name_wirefromtext()
to convert text into uncompressed DNS wire format and append it to a
target buffer.

in cases where it really is necessary to have both, we can use
dns_name_fromtext() to load the dns_name, then dns_name_towire()
to append the wire format to the target buffer.
This commit is contained in:
Evan Hunt 2025-02-22 00:11:38 -08:00
parent cf098cf10d
commit afb424c9b6
89 changed files with 283 additions and 279 deletions

View File

@ -655,7 +655,7 @@ load_zone(isc_mem_t *mctx, const char *zonename, const char *filename,
isc_buffer_constinit(&buffer, zonename, strlen(zonename)); isc_buffer_constinit(&buffer, zonename, strlen(zonename));
isc_buffer_add(&buffer, strlen(zonename)); isc_buffer_add(&buffer, strlen(zonename));
origin = dns_fixedname_initname(&fixorigin); origin = dns_fixedname_initname(&fixorigin);
CHECK(dns_name_fromtext(origin, &buffer, dns_rootname, 0, NULL)); CHECK(dns_name_fromtext(origin, &buffer, dns_rootname, 0));
dns_zone_setorigin(zone, origin); dns_zone_setorigin(zone, origin);
dns_zone_setdbtype(zone, 1, (const char *const *)dbtype); dns_zone_setdbtype(zone, 1, (const char *const *)dbtype);
if (strcmp(filename, "-") == 0) { if (strcmp(filename, "-") == 0) {

View File

@ -597,7 +597,7 @@ convert_name(dns_fixedname_t *fn, dns_name_t **name, const char *text) {
isc_buffer_add(&b, len); isc_buffer_add(&b, len);
n = dns_fixedname_initname(fn); n = dns_fixedname_initname(fn);
result = dns_name_fromtext(n, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(n, &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
delv_log(ISC_LOG_ERROR, "failed to convert name %s: %s", text, delv_log(ISC_LOG_ERROR, "failed to convert name %s: %s", text,
isc_result_totext(result)); isc_result_totext(result));

View File

@ -882,7 +882,7 @@ setup_text_key(void) {
goto failure; goto failure;
} }
result = dns_name_fromtext(keyname, namebuf, dns_rootname, 0, NULL); result = dns_name_fromtext(keyname, namebuf, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
goto failure; goto failure;
} }
@ -2252,8 +2252,7 @@ setup_lookup(dig_lookup_t *lookup) {
len = (unsigned int)strlen(origin); len = (unsigned int)strlen(origin);
isc_buffer_init(&b, origin, len); isc_buffer_init(&b, origin, len);
isc_buffer_add(&b, len); isc_buffer_add(&b, len);
result = dns_name_fromtext(lookup->oname, &b, dns_rootname, 0, result = dns_name_fromtext(lookup->oname, &b, dns_rootname, 0);
NULL);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
dns_message_puttempname(lookup->sendmsg, &lookup->name); dns_message_puttempname(lookup->sendmsg, &lookup->name);
dns_message_puttempname(lookup->sendmsg, dns_message_puttempname(lookup->sendmsg,
@ -2271,7 +2270,7 @@ setup_lookup(dig_lookup_t *lookup) {
len = (unsigned int)strlen(textname); len = (unsigned int)strlen(textname);
isc_buffer_init(&b, textname, len); isc_buffer_init(&b, textname, len);
isc_buffer_add(&b, len); isc_buffer_add(&b, len);
result = dns_name_fromtext(name, &b, NULL, 0, NULL); result = dns_name_fromtext(name, &b, NULL, 0);
if (result == ISC_R_SUCCESS) { if (result == ISC_R_SUCCESS) {
if (!dns_name_isabsolute(name)) { if (!dns_name_isabsolute(name)) {
result = dns_name_concatenate( result = dns_name_concatenate(
@ -2304,7 +2303,7 @@ setup_lookup(dig_lookup_t *lookup) {
isc_buffer_init(&b, textname, len); isc_buffer_init(&b, textname, len);
isc_buffer_add(&b, len); isc_buffer_add(&b, len);
result = dns_name_fromtext(lookup->name, &b, result = dns_name_fromtext(lookup->name, &b,
dns_rootname, 0, NULL); dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
dns_message_puttempname(lookup->sendmsg, dns_message_puttempname(lookup->sendmsg,
&lookup->name); &lookup->name);

View File

@ -178,7 +178,7 @@ initname(char *setname) {
isc_buffer_init(&buf, setname, strlen(setname)); isc_buffer_init(&buf, setname, strlen(setname));
isc_buffer_add(&buf, strlen(setname)); isc_buffer_add(&buf, strlen(setname));
result = dns_name_fromtext(name, &buf, dns_rootname, 0, NULL); result = dns_name_fromtext(name, &buf, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
fatal("could not initialize name %s", setname); fatal("could not initialize name %s", setname);
} }

View File

@ -67,7 +67,7 @@ initname(char *setname) {
isc_buffer_init(&buf, setname, strlen(setname)); isc_buffer_init(&buf, setname, strlen(setname));
isc_buffer_add(&buf, strlen(setname)); isc_buffer_add(&buf, strlen(setname));
result = dns_name_fromtext(name, &buf, dns_rootname, 0, NULL); result = dns_name_fromtext(name, &buf, dns_rootname, 0);
return result; return result;
} }

View File

@ -69,7 +69,7 @@ initname(char *setname) {
isc_buffer_init(&buf, setname, strlen(setname)); isc_buffer_init(&buf, setname, strlen(setname));
isc_buffer_add(&buf, strlen(setname)); isc_buffer_add(&buf, strlen(setname));
result = dns_name_fromtext(name, &buf, dns_rootname, 0, NULL); result = dns_name_fromtext(name, &buf, dns_rootname, 0);
return result; return result;
} }

View File

@ -367,7 +367,7 @@ main(int argc, char **argv) {
isc_buffer_init(&buf, argv[isc_commandline_index], isc_buffer_init(&buf, argv[isc_commandline_index],
strlen(argv[isc_commandline_index])); strlen(argv[isc_commandline_index]));
isc_buffer_add(&buf, strlen(argv[isc_commandline_index])); isc_buffer_add(&buf, strlen(argv[isc_commandline_index]));
ret = dns_name_fromtext(name, &buf, dns_rootname, 0, NULL); ret = dns_name_fromtext(name, &buf, dns_rootname, 0);
if (ret != ISC_R_SUCCESS) { if (ret != ISC_R_SUCCESS) {
fatal("invalid key name %s: %s", fatal("invalid key name %s: %s",
argv[isc_commandline_index], argv[isc_commandline_index],

View File

@ -277,7 +277,7 @@ keygen(keygen_ctx_t *ctx, isc_mem_t *mctx, int argc, char **argv) {
isc_buffer_init(&buf, argv[isc_commandline_index], isc_buffer_init(&buf, argv[isc_commandline_index],
strlen(argv[isc_commandline_index])); strlen(argv[isc_commandline_index]));
isc_buffer_add(&buf, strlen(argv[isc_commandline_index])); isc_buffer_add(&buf, strlen(argv[isc_commandline_index]));
ret = dns_name_fromtext(name, &buf, dns_rootname, 0, NULL); ret = dns_name_fromtext(name, &buf, dns_rootname, 0);
if (ret != ISC_R_SUCCESS) { if (ret != ISC_R_SUCCESS) {
fatal("invalid key name %s: %s", fatal("invalid key name %s: %s",
argv[isc_commandline_index], argv[isc_commandline_index],

View File

@ -1008,7 +1008,7 @@ parse_dnskey(isc_lex_t *lex, char *owner, isc_buffer_t *buf, dns_ttl_t *ttl) {
dname = dns_fixedname_initname(&dfname); dname = dns_fixedname_initname(&dfname);
isc_buffer_init(&b, owner, strlen(owner)); isc_buffer_init(&b, owner, strlen(owner));
isc_buffer_add(&b, strlen(owner)); isc_buffer_add(&b, strlen(owner));
ret = dns_name_fromtext(dname, &b, dns_rootname, 0, NULL); ret = dns_name_fromtext(dname, &b, dns_rootname, 0);
if (ret != ISC_R_SUCCESS) { if (ret != ISC_R_SUCCESS) {
return ret; return ret;
} }
@ -1455,7 +1455,7 @@ main(int argc, char *argv[]) {
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
isc_buffer_init(&buf, argv[1], strlen(argv[1])); isc_buffer_init(&buf, argv[1], strlen(argv[1]));
isc_buffer_add(&buf, strlen(argv[1])); isc_buffer_add(&buf, strlen(argv[1]));
ret = dns_name_fromtext(name, &buf, dns_rootname, 0, NULL); ret = dns_name_fromtext(name, &buf, dns_rootname, 0);
if (ret != ISC_R_SUCCESS) { if (ret != ISC_R_SUCCESS) {
fatal("invalid zone name %s: %s", argv[1], fatal("invalid zone name %s: %s", argv[1],
isc_result_totext(ret)); isc_result_totext(ret));

View File

@ -2579,7 +2579,7 @@ loadzone(char *file, char *origin, dns_rdataclass_t rdclass, dns_db_t **db) {
isc_buffer_add(&b, len); isc_buffer_add(&b, len);
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
result = dns_name_fromtext(name, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(name, &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
fatal("failed converting name '%s' to dns format: %s", origin, fatal("failed converting name '%s' to dns format: %s", origin,
isc_result_totext(result)); isc_result_totext(result));

View File

@ -105,7 +105,7 @@ loadzone(char *file, char *origin, dns_rdataclass_t rdclass, dns_db_t **db) {
isc_buffer_add(&b, len); isc_buffer_add(&b, len);
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
result = dns_name_fromtext(name, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(name, &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
fatal("failed converting name '%s' to dns format: %s", origin, fatal("failed converting name '%s' to dns format: %s", origin,
isc_result_totext(result)); isc_result_totext(result));

View File

@ -558,7 +558,7 @@ named_config_getname(isc_mem_t *mctx, const cfg_obj_t *obj,
isc_buffer_add(&b, strlen(objstr)); isc_buffer_add(&b, strlen(objstr));
dns_fixedname_init(&fname); dns_fixedname_init(&fname);
result = dns_name_fromtext(dns_fixedname_name(&fname), &b, dns_rootname, result = dns_name_fromtext(dns_fixedname_name(&fname), &b, dns_rootname,
0, NULL); 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
isc_mem_put(mctx, *namep, sizeof(**namep)); isc_mem_put(mctx, *namep, sizeof(**namep));
*namep = NULL; *namep = NULL;

View File

@ -664,7 +664,7 @@ configure_view_nametable(const cfg_obj_t *vconfig, const cfg_obj_t *config,
str = cfg_obj_asstring(nameobj); str = cfg_obj_asstring(nameobj);
isc_buffer_constinit(&b, str, strlen(str)); isc_buffer_constinit(&b, str, strlen(str));
isc_buffer_add(&b, strlen(str)); isc_buffer_add(&b, strlen(str));
CHECK(dns_name_fromtext(name, &b, dns_rootname, 0, NULL)); CHECK(dns_name_fromtext(name, &b, dns_rootname, 0));
result = dns_nametree_add(*ntp, name, true); result = dns_nametree_add(*ntp, name, true);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
cfg_obj_log(nameobj, ISC_LOG_ERROR, cfg_obj_log(nameobj, ISC_LOG_ERROR,
@ -724,7 +724,7 @@ ta_fromconfig(const cfg_obj_t *key, bool *initialp, const char **namestrp,
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
isc_buffer_constinit(&namebuf, namestr, strlen(namestr)); isc_buffer_constinit(&namebuf, namestr, strlen(namestr));
isc_buffer_add(&namebuf, strlen(namestr)); isc_buffer_add(&namebuf, strlen(namestr));
CHECK(dns_name_fromtext(name, &namebuf, dns_rootname, 0, NULL)); CHECK(dns_name_fromtext(name, &namebuf, dns_rootname, 0));
if (*initialp) { if (*initialp) {
atstr = cfg_obj_asstring(cfg_tuple_get(key, "anchortype")); atstr = cfg_obj_asstring(cfg_tuple_get(key, "anchortype"));
@ -913,7 +913,7 @@ process_key(const cfg_obj_t *key, dns_keytable_t *secroots,
isc_buffer_constinit(&b, namestr, strlen(namestr)); isc_buffer_constinit(&b, namestr, strlen(namestr));
isc_buffer_add(&b, strlen(namestr)); isc_buffer_add(&b, strlen(namestr));
keyname = dns_fixedname_initname(&fkeyname); keyname = dns_fixedname_initname(&fkeyname);
result = dns_name_fromtext(keyname, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(keyname, &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
return result; return result;
} }
@ -1306,7 +1306,7 @@ configure_order(dns_order_t *order, const cfg_obj_t *ent) {
isc_buffer_add(&b, strlen(str)); isc_buffer_add(&b, strlen(str));
dns_fixedname_init(&fixed); dns_fixedname_init(&fixed);
result = dns_name_fromtext(dns_fixedname_name(&fixed), &b, dns_rootname, result = dns_name_fromtext(dns_fixedname_name(&fixed), &b, dns_rootname,
0, NULL); 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
return result; return result;
} }
@ -1591,7 +1591,7 @@ disable_algorithms(const cfg_obj_t *disabled, dns_resolver_t *resolver) {
str = cfg_obj_asstring(cfg_tuple_get(disabled, "name")); str = cfg_obj_asstring(cfg_tuple_get(disabled, "name"));
isc_buffer_constinit(&b, str, strlen(str)); isc_buffer_constinit(&b, str, strlen(str));
isc_buffer_add(&b, strlen(str)); isc_buffer_add(&b, strlen(str));
CHECK(dns_name_fromtext(name, &b, dns_rootname, 0, NULL)); CHECK(dns_name_fromtext(name, &b, dns_rootname, 0));
algorithms = cfg_tuple_get(disabled, "algorithms"); algorithms = cfg_tuple_get(disabled, "algorithms");
for (element = cfg_list_first(algorithms); element != NULL; for (element = cfg_list_first(algorithms); element != NULL;
@ -1634,7 +1634,7 @@ disable_ds_digests(const cfg_obj_t *disabled, dns_resolver_t *resolver) {
str = cfg_obj_asstring(cfg_tuple_get(disabled, "name")); str = cfg_obj_asstring(cfg_tuple_get(disabled, "name"));
isc_buffer_constinit(&b, str, strlen(str)); isc_buffer_constinit(&b, str, strlen(str));
isc_buffer_add(&b, strlen(str)); isc_buffer_add(&b, strlen(str));
CHECK(dns_name_fromtext(name, &b, dns_rootname, 0, NULL)); CHECK(dns_name_fromtext(name, &b, dns_rootname, 0));
digests = cfg_tuple_get(disabled, "digests"); digests = cfg_tuple_get(disabled, "digests");
for (element = cfg_list_first(digests); element != NULL; for (element = cfg_list_first(digests); element != NULL;
@ -1678,7 +1678,7 @@ on_disable_list(const cfg_obj_t *disablelist, dns_name_t *zonename) {
str = cfg_obj_asstring(value); str = cfg_obj_asstring(value);
isc_buffer_constinit(&b, str, strlen(str)); isc_buffer_constinit(&b, str, strlen(str));
isc_buffer_add(&b, strlen(str)); isc_buffer_add(&b, strlen(str));
result = dns_name_fromtext(name, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(name, &b, dns_rootname, 0);
RUNTIME_CHECK(result == ISC_R_SUCCESS); RUNTIME_CHECK(result == ISC_R_SUCCESS);
if (dns_name_equal(name, zonename)) { if (dns_name_equal(name, zonename)) {
return true; return true;
@ -1861,7 +1861,7 @@ dns64_reverse(dns_view_t *view, isc_mem_t *mctx, isc_netaddr_t *na,
name = dns_fixedname_initname(&fixed); name = dns_fixedname_initname(&fixed);
isc_buffer_constinit(&b, reverse, strlen(reverse)); isc_buffer_constinit(&b, reverse, strlen(reverse));
isc_buffer_add(&b, strlen(reverse)); isc_buffer_add(&b, strlen(reverse));
CHECK(dns_name_fromtext(name, &b, dns_rootname, 0, NULL)); CHECK(dns_name_fromtext(name, &b, dns_rootname, 0));
dns_zone_create(&zone, mctx, 0); dns_zone_create(&zone, mctx, 0);
dns_zone_setorigin(zone, name); dns_zone_setorigin(zone, name);
dns_zone_setview(zone, view); dns_zone_setview(zone, view);
@ -5876,8 +5876,8 @@ configure_alternates(const cfg_obj_t *config, dns_view_t *view,
isc_buffer_constinit(&buffer, str, strlen(str)); isc_buffer_constinit(&buffer, str, strlen(str));
isc_buffer_add(&buffer, strlen(str)); isc_buffer_add(&buffer, strlen(str));
name = dns_fixedname_initname(&fixed); name = dns_fixedname_initname(&fixed);
CHECK(dns_name_fromtext(name, &buffer, dns_rootname, 0, CHECK(dns_name_fromtext(name, &buffer, dns_rootname,
NULL)); 0));
portobj = cfg_tuple_get(alternate, "port"); portobj = cfg_tuple_get(alternate, "port");
if (cfg_obj_isuint32(portobj)) { if (cfg_obj_isuint32(portobj)) {
@ -6232,7 +6232,7 @@ configure_zone(const cfg_obj_t *config, const cfg_obj_t *zconfig,
isc_buffer_add(&buffer, strlen(zname)); isc_buffer_add(&buffer, strlen(zname));
dns_fixedname_init(&fixorigin); dns_fixedname_init(&fixorigin);
CHECK(dns_name_fromtext(dns_fixedname_name(&fixorigin), &buffer, CHECK(dns_name_fromtext(dns_fixedname_name(&fixorigin), &buffer,
dns_rootname, 0, NULL)); dns_rootname, 0));
origin = dns_fixedname_name(&fixorigin); origin = dns_fixedname_name(&fixorigin);
CHECK(named_config_getclass(cfg_tuple_get(zconfig, "class"), CHECK(named_config_getclass(cfg_tuple_get(zconfig, "class"),
@ -7243,7 +7243,7 @@ configure_session_key(const cfg_obj_t **maps, named_server_t *server,
isc_buffer_constinit(&buffer, keynamestr, strlen(keynamestr)); isc_buffer_constinit(&buffer, keynamestr, strlen(keynamestr));
isc_buffer_add(&buffer, strlen(keynamestr)); isc_buffer_add(&buffer, strlen(keynamestr));
keyname = dns_fixedname_initname(&fname); keyname = dns_fixedname_initname(&fname);
result = dns_name_fromtext(keyname, &buffer, dns_rootname, 0, NULL); result = dns_name_fromtext(keyname, &buffer, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
return result; return result;
} }
@ -7801,8 +7801,7 @@ get_newzone_config(dns_view_t *view, const char *zonename,
isc_buffer_constinit(&b, zonename, strlen(zonename)); isc_buffer_constinit(&b, zonename, strlen(zonename));
isc_buffer_add(&b, strlen(zonename)); isc_buffer_add(&b, strlen(zonename));
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
CHECK(dns_name_fromtext(name, &b, dns_rootname, DNS_NAME_DOWNCASE, CHECK(dns_name_fromtext(name, &b, dns_rootname, DNS_NAME_DOWNCASE));
NULL));
dns_name_format(name, zname, sizeof(zname)); dns_name_format(name, zname, sizeof(zname));
key.mv_data = zname; key.mv_data = zname;
@ -11833,7 +11832,7 @@ named_server_flushnode(named_server_t *server, isc_lex_t *lex, bool tree) {
isc_buffer_constinit(&b, target, strlen(target)); isc_buffer_constinit(&b, target, strlen(target));
isc_buffer_add(&b, strlen(target)); isc_buffer_add(&b, strlen(target));
name = dns_fixedname_initname(&fixed); name = dns_fixedname_initname(&fixed);
result = dns_name_fromtext(name, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(name, &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
return result; return result;
} }
@ -12943,7 +12942,7 @@ load_nzf(dns_view_t *view, ns_cfgctx_t *nzcfg) {
isc_buffer_add(&b, strlen(origin)); isc_buffer_add(&b, strlen(origin));
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
CHECK(dns_name_fromtext(name, &b, dns_rootname, CHECK(dns_name_fromtext(name, &b, dns_rootname,
DNS_NAME_DOWNCASE, NULL)); DNS_NAME_DOWNCASE));
dns_name_format(name, zname, sizeof(zname)); dns_name_format(name, zname, sizeof(zname));
key.mv_data = zname; key.mv_data = zname;
@ -13652,7 +13651,7 @@ named_server_changezone(named_server_t *server, char *command,
isc_buffer_add(&buf, strlen(zonename)); isc_buffer_add(&buf, strlen(zonename));
dnsname = dns_fixedname_initname(&fname); dnsname = dns_fixedname_initname(&fname);
CHECK(dns_name_fromtext(dnsname, &buf, dns_rootname, 0, NULL)); CHECK(dns_name_fromtext(dnsname, &buf, dns_rootname, 0));
if (redirect) { if (redirect) {
if (!dns_name_equal(dnsname, dns_rootname)) { if (!dns_name_equal(dnsname, dns_rootname)) {
@ -15218,7 +15217,7 @@ named_server_nta(named_server_t *server, isc_lex_t *lex, bool readonly,
isc_buffer_t b; isc_buffer_t b;
isc_buffer_init(&b, namebuf, strlen(namebuf)); isc_buffer_init(&b, namebuf, strlen(namebuf));
isc_buffer_add(&b, strlen(namebuf)); isc_buffer_add(&b, strlen(namebuf));
CHECK(dns_name_fromtext(fname, &b, dns_rootname, 0, NULL)); CHECK(dns_name_fromtext(fname, &b, dns_rootname, 0));
ntaname = fname; ntaname = fname;
} }

View File

@ -62,7 +62,7 @@ named_tkeyctx_fromconfig(const cfg_obj_t *options, isc_mem_t *mctx,
isc_buffer_constinit(&b, s, strlen(s)); isc_buffer_constinit(&b, s, strlen(s));
isc_buffer_add(&b, strlen(s)); isc_buffer_add(&b, strlen(s));
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
RETERR(dns_name_fromtext(name, &b, dns_rootname, 0, NULL)); RETERR(dns_name_fromtext(name, &b, dns_rootname, 0));
tctx->domain = isc_mem_get(mctx, sizeof(dns_name_t)); tctx->domain = isc_mem_get(mctx, sizeof(dns_name_t));
dns_name_init(tctx->domain); dns_name_init(tctx->domain);
dns_name_dup(name, mctx, tctx->domain); dns_name_dup(name, mctx, tctx->domain);
@ -76,7 +76,7 @@ named_tkeyctx_fromconfig(const cfg_obj_t *options, isc_mem_t *mctx,
isc_buffer_constinit(&b, s, strlen(s)); isc_buffer_constinit(&b, s, strlen(s));
isc_buffer_add(&b, strlen(s)); isc_buffer_add(&b, strlen(s));
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
RETERR(dns_name_fromtext(name, &b, dns_rootname, 0, NULL)); RETERR(dns_name_fromtext(name, &b, dns_rootname, 0));
RETERR(dst_gssapi_acquirecred(name, false, &tctx->gsscred)); RETERR(dst_gssapi_acquirecred(name, false, &tctx->gsscred));
} }

View File

@ -34,7 +34,7 @@
isc_buffer_constinit(&namesrc, id, strlen(id)); \ isc_buffer_constinit(&namesrc, id, strlen(id)); \
isc_buffer_add(&namesrc, strlen(id)); \ isc_buffer_add(&namesrc, strlen(id)); \
result = (dns_name_fromtext(name, &namesrc, dns_rootname, \ result = (dns_name_fromtext(name, &namesrc, dns_rootname, \
DNS_NAME_DOWNCASE, NULL)); \ DNS_NAME_DOWNCASE)); \
if (result != ISC_R_SUCCESS) { \ if (result != ISC_R_SUCCESS) { \
goto failure; \ goto failure; \
} }

View File

@ -71,7 +71,7 @@ add_initial_keys(const cfg_obj_t *list, dns_tsigkeyring_t *ring,
isc_buffer_constinit(&keynamesrc, keyid, strlen(keyid)); isc_buffer_constinit(&keynamesrc, keyid, strlen(keyid));
isc_buffer_add(&keynamesrc, strlen(keyid)); isc_buffer_add(&keynamesrc, strlen(keyid));
ret = dns_name_fromtext(keyname, &keynamesrc, dns_rootname, ret = dns_name_fromtext(keyname, &keynamesrc, dns_rootname,
DNS_NAME_DOWNCASE, NULL); DNS_NAME_DOWNCASE);
if (ret != ISC_R_SUCCESS) { if (ret != ISC_R_SUCCESS) {
goto failure; goto failure;
} }

View File

@ -253,7 +253,7 @@ configure_zone_ssutable(const cfg_obj_t *zconfig, dns_zone_t *zone,
isc_buffer_constinit(&b, str, strlen(str)); isc_buffer_constinit(&b, str, strlen(str));
isc_buffer_add(&b, strlen(str)); isc_buffer_add(&b, strlen(str));
result = dns_name_fromtext(dns_fixedname_name(&fident), &b, result = dns_name_fromtext(dns_fixedname_name(&fident), &b,
dns_rootname, 0, NULL); dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
cfg_obj_log(identity, ISC_LOG_ERROR, cfg_obj_log(identity, ISC_LOG_ERROR,
"'%s' is not a valid name", str); "'%s' is not a valid name", str);
@ -283,7 +283,7 @@ configure_zone_ssutable(const cfg_obj_t *zconfig, dns_zone_t *zone,
isc_buffer_constinit(&b, str, strlen(str)); isc_buffer_constinit(&b, str, strlen(str));
isc_buffer_add(&b, strlen(str)); isc_buffer_add(&b, strlen(str));
result = dns_name_fromtext(dns_fixedname_name(&fname), result = dns_name_fromtext(dns_fixedname_name(&fname),
&b, dns_rootname, 0, NULL); &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
cfg_obj_log(identity, ISC_LOG_ERROR, cfg_obj_log(identity, ISC_LOG_ERROR,
"'%s' is not a valid name", str); "'%s' is not a valid name", str);
@ -518,7 +518,7 @@ configure_staticstub_servernames(const cfg_obj_t *zconfig, dns_zone_t *zone,
isc_buffer_constinit(&b, str, strlen(str)); isc_buffer_constinit(&b, str, strlen(str));
isc_buffer_add(&b, strlen(str)); isc_buffer_add(&b, strlen(str));
result = dns_name_fromtext(nsname, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(nsname, &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
cfg_obj_log(zconfig, ISC_LOG_ERROR, cfg_obj_log(zconfig, ISC_LOG_ERROR,
"server-name '%s' is not a valid " "server-name '%s' is not a valid "

View File

@ -523,8 +523,7 @@ setup_keystr(void) {
isc_buffer_add(&keynamesrc, (unsigned int)(n - name)); isc_buffer_add(&keynamesrc, (unsigned int)(n - name));
debug("namefromtext"); debug("namefromtext");
result = dns_name_fromtext(mykeyname, &keynamesrc, dns_rootname, 0, result = dns_name_fromtext(mykeyname, &keynamesrc, dns_rootname, 0);
NULL);
check_result(result, "dns_name_fromtext"); check_result(result, "dns_name_fromtext");
secretlen = strlen(secretstr) * 3 / 4; secretlen = strlen(secretstr) * 3 / 4;
@ -793,7 +792,7 @@ create_name(const char *str, dns_name_t *name) {
isc_buffer_add(&namesrc, strlen(str)); isc_buffer_add(&namesrc, strlen(str));
return dns_name_fromtext(name, &namesrc, dns_rootname, return dns_name_fromtext(name, &namesrc, dns_rootname,
DNS_NAME_DOWNCASE, NULL); DNS_NAME_DOWNCASE);
} }
static void static void
@ -1305,7 +1304,7 @@ parse_name(char **cmdlinep, dns_message_t *msg, dns_name_t **namep) {
dns_message_gettempname(msg, namep); dns_message_gettempname(msg, namep);
isc_buffer_init(&source, word, strlen(word)); isc_buffer_init(&source, word, strlen(word));
isc_buffer_add(&source, strlen(word)); isc_buffer_add(&source, strlen(word));
result = dns_name_fromtext(*namep, &source, dns_rootname, 0, NULL); result = dns_name_fromtext(*namep, &source, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
error("invalid owner name: %s", isc_result_totext(result)); error("invalid owner name: %s", isc_result_totext(result));
isc_buffer_invalidate(&source); isc_buffer_invalidate(&source);
@ -1731,7 +1730,7 @@ evaluate_key(char *cmdline) {
isc_buffer_init(&b, namestr, strlen(namestr)); isc_buffer_init(&b, namestr, strlen(namestr));
isc_buffer_add(&b, strlen(namestr)); isc_buffer_add(&b, strlen(namestr));
result = dns_name_fromtext(mykeyname, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(mykeyname, &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
fprintf(stderr, "could not parse key name\n"); fprintf(stderr, "could not parse key name\n");
return STATUS_SYNTAX; return STATUS_SYNTAX;
@ -1785,7 +1784,7 @@ evaluate_zone(char *cmdline) {
userzone = dns_fixedname_initname(&fuserzone); userzone = dns_fixedname_initname(&fuserzone);
isc_buffer_init(&b, word, strlen(word)); isc_buffer_init(&b, word, strlen(word));
isc_buffer_add(&b, strlen(word)); isc_buffer_add(&b, strlen(word));
result = dns_name_fromtext(userzone, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(userzone, &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
userzone = NULL; /* Lest it point to an invalid name */ userzone = NULL; /* Lest it point to an invalid name */
fprintf(stderr, "could not parse zone name\n"); fprintf(stderr, "could not parse zone name\n");
@ -3119,7 +3118,7 @@ start_gssrequest(dns_name_t *primary) {
RUNTIME_CHECK(result < sizeof(servicename)); RUNTIME_CHECK(result < sizeof(servicename));
isc_buffer_init(&buf, servicename, strlen(servicename)); isc_buffer_init(&buf, servicename, strlen(servicename));
isc_buffer_add(&buf, strlen(servicename)); isc_buffer_add(&buf, strlen(servicename));
result = dns_name_fromtext(servname, &buf, dns_rootname, 0, NULL); result = dns_name_fromtext(servname, &buf, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
fatal("dns_name_fromtext(servname) failed: %s", fatal("dns_name_fromtext(servname) failed: %s",
isc_result_totext(result)); isc_result_totext(result));
@ -3136,7 +3135,7 @@ start_gssrequest(dns_name_t *primary) {
isc_buffer_init(&buf, mykeystr, strlen(mykeystr)); isc_buffer_init(&buf, mykeystr, strlen(mykeystr));
isc_buffer_add(&buf, strlen(mykeystr)); isc_buffer_add(&buf, strlen(mykeystr));
result = dns_name_fromtext(keyname, &buf, dns_rootname, 0, NULL); result = dns_name_fromtext(keyname, &buf, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
fatal("dns_name_fromtext(keyname) failed: %s", fatal("dns_name_fromtext(keyname) failed: %s",
isc_result_totext(result)); isc_result_totext(result));
@ -3295,7 +3294,7 @@ recvgss(void *arg) {
servname = dns_fixedname_initname(&fname); servname = dns_fixedname_initname(&fname);
isc_buffer_init(&buf, servicename, strlen(servicename)); isc_buffer_init(&buf, servicename, strlen(servicename));
isc_buffer_add(&buf, strlen(servicename)); isc_buffer_add(&buf, strlen(servicename));
result = dns_name_fromtext(servname, &buf, dns_rootname, 0, NULL); result = dns_name_fromtext(servname, &buf, dns_rootname, 0);
check_result(result, "dns_name_fromtext"); check_result(result, "dns_name_fromtext");
result = dns_tkey_gssnegotiate(tsigquery, rcvmsg, servname, &context, result = dns_tkey_gssnegotiate(tsigquery, rcvmsg, servname, &context,

View File

@ -141,7 +141,7 @@ sendquery(void) {
isc_buffer_init(&buf, host, strlen(host)); isc_buffer_init(&buf, host, strlen(host));
isc_buffer_add(&buf, strlen(host)); isc_buffer_add(&buf, strlen(host));
result = dns_name_fromtext(dns_fixedname_name(&queryname), &buf, result = dns_name_fromtext(dns_fixedname_name(&queryname), &buf,
dns_rootname, 0, NULL); dns_rootname, 0);
CHECK("dns_name_fromtext", result); CHECK("dns_name_fromtext", result);
dns_message_create(mctx, NULL, NULL, DNS_MESSAGE_INTENTRENDER, dns_message_create(mctx, NULL, NULL, DNS_MESSAGE_INTENTRENDER,

View File

@ -592,7 +592,7 @@ sendquery(struct query *query) {
isc_buffer_init(&buf, query->textname, strlen(query->textname)); isc_buffer_init(&buf, query->textname, strlen(query->textname));
isc_buffer_add(&buf, strlen(query->textname)); isc_buffer_add(&buf, strlen(query->textname));
result = dns_name_fromtext(dns_fixedname_name(&queryname), &buf, result = dns_name_fromtext(dns_fixedname_name(&queryname), &buf,
dns_rootname, 0, NULL); dns_rootname, 0);
CHECK("dns_name_fromtext", result); CHECK("dns_name_fromtext", result);
dns_message_create(mctx, NULL, NULL, DNS_MESSAGE_INTENTRENDER, dns_message_create(mctx, NULL, NULL, DNS_MESSAGE_INTENTRENDER,

View File

@ -122,7 +122,7 @@ nsec3hash(nsec3printer *nsec3print, const char *algostr, const char *flagstr,
name = dns_fixedname_initname(&fixed); name = dns_fixedname_initname(&fixed);
isc_buffer_constinit(&buffer, domain, strlen(domain)); isc_buffer_constinit(&buffer, domain, strlen(domain));
isc_buffer_add(&buffer, strlen(domain)); isc_buffer_add(&buffer, strlen(domain));
result = dns_name_fromtext(name, &buffer, dns_rootname, 0, NULL); result = dns_name_fromtext(name, &buffer, dns_rootname, 0);
check_result(result, "dns_name_fromtext() failed"); check_result(result, "dns_name_fromtext() failed");
dns_name_downcase(name, name); dns_name_downcase(name, name);

View File

@ -42,7 +42,7 @@ LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
isc_buffer_setactive(&buf, size); isc_buffer_setactive(&buf, size);
result = dns_name_fromtext(dns_fixedname_name(&origin), &buf, result = dns_name_fromtext(dns_fixedname_name(&origin), &buf,
dns_rootname, 0, NULL); dns_rootname, 0);
if (debug) { if (debug) {
fprintf(stderr, "dns_name_fromtext: %s\n", fprintf(stderr, "dns_name_fromtext: %s\n",
isc_result_totext(result)); isc_result_totext(result));

View File

@ -80,5 +80,5 @@ dns_byaddr_createptrname(const isc_netaddr_t *address, dns_name_t *name) {
len = (unsigned int)strlen(textname); len = (unsigned int)strlen(textname);
isc_buffer_init(&buffer, textname, len); isc_buffer_init(&buffer, textname, len);
isc_buffer_add(&buffer, len); isc_buffer_add(&buffer, len);
return dns_name_fromtext(name, &buffer, dns_rootname, 0, NULL); return dns_name_fromtext(name, &buffer, dns_rootname, 0);
} }

View File

@ -410,7 +410,7 @@ dns_dlz_writeablezone(dns_view_t *view, dns_dlzdb_t *dlzdb,
isc_buffer_add(&buffer, strlen(zone_name)); isc_buffer_add(&buffer, strlen(zone_name));
dns_fixedname_init(&fixorigin); dns_fixedname_init(&fixorigin);
result = dns_name_fromtext(dns_fixedname_name(&fixorigin), &buffer, result = dns_name_fromtext(dns_fixedname_name(&fixorigin), &buffer,
dns_rootname, 0, NULL); dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
goto cleanup; goto cleanup;
} }

View File

@ -1618,8 +1618,7 @@ dst_key_read_public(const char *filename, int type, isc_mem_t *mctx,
dns_fixedname_init(&name); dns_fixedname_init(&name);
isc_buffer_init(&b, DST_AS_STR(token), strlen(DST_AS_STR(token))); isc_buffer_init(&b, DST_AS_STR(token), strlen(DST_AS_STR(token)));
isc_buffer_add(&b, strlen(DST_AS_STR(token))); isc_buffer_add(&b, strlen(DST_AS_STR(token)));
ret = dns_name_fromtext(dns_fixedname_name(&name), &b, dns_rootname, 0, ret = dns_name_fromtext(dns_fixedname_name(&name), &b, dns_rootname, 0);
NULL);
if (ret != ISC_R_SUCCESS) { if (ret != ISC_R_SUCCESS) {
goto cleanup; goto cleanup;
} }

View File

@ -783,8 +783,7 @@ dst_gssapi_acceptctx(dns_gss_cred_id_t cred, const char *gssapi_keytab,
isc_buffer_init(&namebuf, r.base, r.length); isc_buffer_init(&namebuf, r.base, r.length);
isc_buffer_add(&namebuf, r.length); isc_buffer_add(&namebuf, r.length);
RETERR(dns_name_fromtext(principal, &namebuf, dns_rootname, 0, RETERR(dns_name_fromtext(principal, &namebuf, dns_rootname, 0));
NULL));
if (gnamebuf.length != 0U) { if (gnamebuf.length != 0U) {
gret = gss_release_buffer(&minor, &gnamebuf); gret = gss_release_buffer(&minor, &gnamebuf);

View File

@ -799,10 +799,48 @@ dns_name_towire(const dns_name_t *name, dns_compress_t *cctx,
isc_result_t isc_result_t
dns_name_fromtext(dns_name_t *name, isc_buffer_t *source, dns_name_fromtext(dns_name_t *name, isc_buffer_t *source,
const dns_name_t *origin, unsigned int options, const dns_name_t *origin, unsigned int options);
isc_buffer_t *target);
/*%< /*%<
* Convert the textual representation of a DNS name at source * Convert the textual representation of a DNS name in 'source'
* and store it in 'name'.
*
* Notes:
* \li Relative domain names will have 'origin' appended to them
* unless 'origin' is NULL, in which case relative domain names
* will remain relative.
*
* \li If DNS_NAME_DOWNCASE is set in 'options', any uppercase letters
* in 'source' will be downcased when they are copied into 'target'.
*
* Requires:
*
* \li 'name' is a valid name with a dedicated buffer.
*
* \li 'source' is a valid buffer.
*
* Ensures:
*
* If result is success:
* \li Uppercase letters are downcased in the copy iff
* DNS_NAME_DOWNCASE is set in 'options'.
*
* \li The current location in source is advanced.
*
* Result:
*\li #ISC_R_SUCCESS
*\li #DNS_R_EMPTYLABEL
*\li #DNS_R_LABELTOOLONG
*\li #DNS_R_BADESCAPE
*\li #DNS_R_BADDOTTEDQUAD
*\li #ISC_R_NOSPACE
*\li #ISC_R_UNEXPECTEDEND
*/
isc_result_t
dns_name_wirefromtext(isc_buffer_t *source, const dns_name_t *origin,
unsigned int options, isc_buffer_t *target);
/*%<
* Convert the textual representation of a DNS name in 'source'
* into uncompressed wire form stored in target. * into uncompressed wire form stored in target.
* *
* Notes: * Notes:
@ -815,18 +853,13 @@ dns_name_fromtext(dns_name_t *name, isc_buffer_t *source,
* *
* Requires: * Requires:
* *
* \li 'name' is a valid name.
*
* \li 'source' is a valid buffer. * \li 'source' is a valid buffer.
* *
* \li 'target' is a valid buffer or 'target' is NULL and 'name' has * \li 'target' is a valid buffer.
* a dedicated buffer.
* *
* Ensures: * Ensures:
* *
* If result is success: * If result is success:
* \li If 'target' is not NULL, 'name' is attached to it.
*
* \li Uppercase letters are downcased in the copy iff * \li Uppercase letters are downcased in the copy iff
* DNS_NAME_DOWNCASE is set in 'options'. * DNS_NAME_DOWNCASE is set in 'options'.
* *

View File

@ -835,8 +835,7 @@ generate(dns_loadctx_t *lctx, char *range, char *lhs, char *gtype, char *rhs,
isc_buffer_init(&buffer, lhsbuf, strlen(lhsbuf)); isc_buffer_init(&buffer, lhsbuf, strlen(lhsbuf));
isc_buffer_add(&buffer, strlen(lhsbuf)); isc_buffer_add(&buffer, strlen(lhsbuf));
isc_buffer_setactive(&buffer, strlen(lhsbuf)); isc_buffer_setactive(&buffer, strlen(lhsbuf));
result = dns_name_fromtext(owner, &buffer, ictx->origin, 0, result = dns_name_fromtext(owner, &buffer, ictx->origin, 0);
NULL);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
goto error_cleanup; goto error_cleanup;
} }
@ -1388,7 +1387,7 @@ load_text(dns_loadctx_t *lctx) {
isc_buffer_setactive(&buffer, isc_buffer_setactive(&buffer,
token.value.as_region.length); token.value.as_region.length);
result = dns_name_fromtext(new_name, &buffer, result = dns_name_fromtext(new_name, &buffer,
ictx->origin, 0, NULL); ictx->origin, 0);
if (MANYERRS(lctx, result)) { if (MANYERRS(lctx, result)) {
SETRESULT(lctx, result); SETRESULT(lctx, result);
LOGIT(result); LOGIT(result);

View File

@ -706,12 +706,11 @@ dns_name_fromregion(dns_name_t *name, const isc_region_t *r) {
} }
} }
isc_result_t static isc_result_t
dns_name_fromtext(dns_name_t *name, isc_buffer_t *source, convert_text(isc_buffer_t *source, const dns_name_t *origin,
const dns_name_t *origin, unsigned int options, unsigned int options, dns_name_t *name, isc_buffer_t *target) {
isc_buffer_t *target) { unsigned char *ndata = NULL, *label = NULL;
unsigned char *ndata, *label = NULL; char *tdata = NULL;
char *tdata;
char c; char c;
ft_state state; ft_state state;
unsigned int value = 0, count = 0; unsigned int value = 0, count = 0;
@ -720,20 +719,9 @@ dns_name_fromtext(dns_name_t *name, isc_buffer_t *source,
bool done; bool done;
bool downcase; bool downcase;
/*
* Convert the textual representation of a DNS name at source
* into uncompressed wire form stored in target.
*
* Notes:
* Relative domain names will have 'origin' appended to them
* unless 'origin' is NULL, in which case relative domain names
* will remain relative.
*/
REQUIRE(DNS_NAME_VALID(name)); REQUIRE(DNS_NAME_VALID(name));
REQUIRE(ISC_BUFFER_VALID(source)); REQUIRE(ISC_BUFFER_VALID(source));
REQUIRE((target != NULL && ISC_BUFFER_VALID(target)) || REQUIRE(ISC_BUFFER_VALID(target));
(target == NULL && ISC_BUFFER_VALID(name->buffer)));
downcase = ((options & DNS_NAME_DOWNCASE) != 0); downcase = ((options & DNS_NAME_DOWNCASE) != 0);
@ -951,6 +939,27 @@ dns_name_fromtext(dns_name_t *name, isc_buffer_t *source,
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }
isc_result_t
dns_name_wirefromtext(isc_buffer_t *source, const dns_name_t *origin,
unsigned int options, isc_buffer_t *target) {
dns_name_t name;
REQUIRE(ISC_BUFFER_VALID(target));
dns_name_init(&name);
return convert_text(source, origin, options, &name, target);
}
isc_result_t
dns_name_fromtext(dns_name_t *name, isc_buffer_t *source,
const dns_name_t *origin, unsigned int options) {
REQUIRE(DNS_NAME_VALID(name));
REQUIRE(ISC_BUFFER_VALID(name->buffer));
isc_buffer_clear(name->buffer);
return convert_text(source, origin, options, name, name->buffer);
}
isc_result_t isc_result_t
dns_name_totext(const dns_name_t *name, unsigned int options, dns_name_totext(const dns_name_t *name, unsigned int options,
isc_buffer_t *target) { isc_buffer_t *target) {
@ -1787,7 +1796,7 @@ dns_name_fromstring(dns_name_t *target, const char *src,
name = dns_fixedname_initname(&fn); name = dns_fixedname_initname(&fn);
} }
result = dns_name_fromtext(name, &buf, origin, options, NULL); result = dns_name_fromtext(name, &buf, origin, options);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
return result; return result;
} }

View File

@ -282,7 +282,7 @@ dns_nsec3_hashname(dns_fixedname_t *result,
/* convert the hex to a domain name */ /* convert the hex to a domain name */
dns_fixedname_init(result); dns_fixedname_init(result);
return dns_name_fromtext(dns_fixedname_name(result), &namebuffer, return dns_name_fromtext(dns_fixedname_name(result), &namebuffer,
origin, 0, NULL); origin, 0);
} }
unsigned int unsigned int

View File

@ -506,7 +506,7 @@ dns_peer_setkeybycharp(dns_peer_t *peer, const char *keyval) {
isc_buffer_constinit(&b, keyval, strlen(keyval)); isc_buffer_constinit(&b, keyval, strlen(keyval));
isc_buffer_add(&b, strlen(keyval)); isc_buffer_add(&b, strlen(keyval));
result = dns_name_fromtext(dns_fixedname_name(&fname), &b, dns_rootname, result = dns_name_fromtext(dns_fixedname_name(&fname), &b, dns_rootname,
0, NULL); 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
return result; return result;
} }

View File

@ -20,7 +20,6 @@
static isc_result_t static isc_result_t
fromtext_any_tsig(ARGS_FROMTEXT) { fromtext_any_tsig(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
uint64_t sigtime; uint64_t sigtime;
isc_buffer_t buffer; isc_buffer_t buffer;
dns_rcode_t rcode; dns_rcode_t rcode;
@ -39,12 +38,11 @@ fromtext_any_tsig(ARGS_FROMTEXT) {
*/ */
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
/* /*
* Time Signed: 48 bits. * Time Signed: 48 bits.

View File

@ -24,7 +24,8 @@
static isc_result_t static isc_result_t
fromtext_ch_a(ARGS_FROMTEXT) { fromtext_ch_a(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name; dns_fixedname_t fn;
dns_name_t *name = dns_fixedname_initname(&fn);
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_a); REQUIRE(type == dns_rdatatype_a);
@ -37,22 +38,22 @@ fromtext_ch_a(ARGS_FROMTEXT) {
false)); false));
/* get domain name */ /* get domain name */
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_fromtext(name, &buffer, origin, options));
RETTOK(dns_name_towire(name, NULL, target));
if ((options & DNS_RDATA_CHECKNAMES) != 0 && if ((options & DNS_RDATA_CHECKNAMES) != 0 &&
(options & DNS_RDATA_CHECKREVERSE) != 0) (options & DNS_RDATA_CHECKREVERSE) != 0)
{ {
bool ok; bool ok;
ok = dns_name_ishostname(&name, false); ok = dns_name_ishostname(name, false);
if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) { if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) {
RETTOK(DNS_R_BADNAME); RETTOK(DNS_R_BADNAME);
} }
if (!ok && callbacks != NULL) { if (!ok && callbacks != NULL) {
warn_badname(&name, lexer, callbacks); warn_badname(name, lexer, callbacks);
} }
} }

View File

@ -22,7 +22,8 @@ static isc_result_t
fromtext_afsdb(ARGS_FROMTEXT) { fromtext_afsdb(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
isc_buffer_t buffer; isc_buffer_t buffer;
dns_name_t name; dns_fixedname_t fn;
dns_name_t *name = dns_fixedname_initname(&fn);
bool ok; bool ok;
REQUIRE(type == dns_rdatatype_afsdb); REQUIRE(type == dns_rdatatype_afsdb);
@ -46,21 +47,21 @@ fromtext_afsdb(ARGS_FROMTEXT) {
*/ */
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_fromtext(name, &buffer, origin, options));
RETTOK(dns_name_towire(name, NULL, target));
ok = true; ok = true;
if ((options & DNS_RDATA_CHECKNAMES) != 0) { if ((options & DNS_RDATA_CHECKNAMES) != 0) {
ok = dns_name_ishostname(&name, false); ok = dns_name_ishostname(name, false);
} }
if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) { if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) {
RETTOK(DNS_R_BADNAME); RETTOK(DNS_R_BADNAME);
} }
if (!ok && callbacks != NULL) { if (!ok && callbacks != NULL) {
warn_badname(&name, lexer, callbacks); warn_badname(name, lexer, callbacks);
} }
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -23,7 +23,6 @@
static isc_result_t static isc_result_t
fromtext_amtrelay(ARGS_FROMTEXT) { fromtext_amtrelay(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
unsigned int discovery; unsigned int discovery;
unsigned int gateway; unsigned int gateway;
@ -108,13 +107,11 @@ fromtext_amtrelay(ARGS_FROMTEXT) {
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
case 3: case 3:
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
return dns_name_fromtext(&name, &buffer, origin, options, return dns_name_wirefromtext(&buffer, origin, options, target);
target);
default: default:
UNREACHABLE(); UNREACHABLE();
} }

View File

@ -20,7 +20,6 @@
static isc_result_t static isc_result_t
fromtext_cname(ARGS_FROMTEXT) { fromtext_cname(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_cname); REQUIRE(type == dns_rdatatype_cname);
@ -32,12 +31,11 @@ fromtext_cname(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -21,7 +21,6 @@
static isc_result_t static isc_result_t
fromtext_dname(ARGS_FROMTEXT) { fromtext_dname(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_dname); REQUIRE(type == dns_rdatatype_dname);
@ -33,12 +32,11 @@ fromtext_dname(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -20,7 +20,6 @@
static isc_result_t static isc_result_t
fromtext_hip(ARGS_FROMTEXT) { fromtext_hip(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
isc_buffer_t hit_len; isc_buffer_t hit_len;
isc_buffer_t key_len; isc_buffer_t key_len;
@ -96,7 +95,6 @@ fromtext_hip(ARGS_FROMTEXT) {
/* /*
* Rendezvous Servers. * Rendezvous Servers.
*/ */
dns_name_init(&name);
do { do {
RETERR(isc_lex_getmastertoken(lexer, &token, RETERR(isc_lex_getmastertoken(lexer, &token,
isc_tokentype_string, true)); isc_tokentype_string, true));
@ -104,8 +102,7 @@ fromtext_hip(ARGS_FROMTEXT) {
break; break;
} }
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
target));
} while (1); } while (1);
/* /*

View File

@ -23,7 +23,6 @@
static isc_result_t static isc_result_t
fromtext_ipseckey(ARGS_FROMTEXT) { fromtext_ipseckey(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
unsigned int gateway; unsigned int gateway;
struct in_addr addr; struct in_addr addr;
@ -105,13 +104,11 @@ fromtext_ipseckey(ARGS_FROMTEXT) {
break; break;
case 3: case 3:
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
target));
break; break;
} }

View File

@ -23,7 +23,6 @@
static isc_result_t static isc_result_t
fromtext_lp(ARGS_FROMTEXT) { fromtext_lp(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_lp); REQUIRE(type == dns_rdatatype_lp);
@ -42,12 +41,11 @@ fromtext_lp(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
return dns_name_fromtext(&name, &buffer, origin, options, target); return dns_name_wirefromtext(&buffer, origin, options, target);
} }
static isc_result_t static isc_result_t

View File

@ -19,7 +19,6 @@
static isc_result_t static isc_result_t
fromtext_mb(ARGS_FROMTEXT) { fromtext_mb(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_mb); REQUIRE(type == dns_rdatatype_mb);
@ -31,12 +30,11 @@ fromtext_mb(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -19,7 +19,6 @@
static isc_result_t static isc_result_t
fromtext_md(ARGS_FROMTEXT) { fromtext_md(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_md); REQUIRE(type == dns_rdatatype_md);
@ -31,12 +30,11 @@ fromtext_md(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -19,7 +19,6 @@
static isc_result_t static isc_result_t
fromtext_mf(ARGS_FROMTEXT) { fromtext_mf(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_mf); REQUIRE(type == dns_rdatatype_mf);
@ -31,12 +30,11 @@ fromtext_mf(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -19,7 +19,6 @@
static isc_result_t static isc_result_t
fromtext_mg(ARGS_FROMTEXT) { fromtext_mg(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_mg); REQUIRE(type == dns_rdatatype_mg);
@ -31,12 +30,11 @@ fromtext_mg(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -19,7 +19,8 @@
static isc_result_t static isc_result_t
fromtext_minfo(ARGS_FROMTEXT) { fromtext_minfo(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name; dns_fixedname_t fn;
dns_name_t *name = dns_fixedname_initname(&fn);
isc_buffer_t buffer; isc_buffer_t buffer;
int i; int i;
bool ok; bool ok;
@ -37,19 +38,18 @@ fromtext_minfo(ARGS_FROMTEXT) {
for (i = 0; i < 2; i++) { for (i = 0; i < 2; i++) {
RETERR(isc_lex_getmastertoken(lexer, &token, RETERR(isc_lex_getmastertoken(lexer, &token,
isc_tokentype_string, false)); isc_tokentype_string, false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, RETTOK(dns_name_fromtext(name, &buffer, origin, options));
target)); RETTOK(dns_name_towire(name, NULL, target));
ok = true; ok = true;
if ((options & DNS_RDATA_CHECKNAMES) != 0) { if ((options & DNS_RDATA_CHECKNAMES) != 0) {
ok = dns_name_ismailbox(&name); ok = dns_name_ismailbox(name);
} }
if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) { if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) {
RETTOK(DNS_R_BADNAME); RETTOK(DNS_R_BADNAME);
} }
if (!ok && callbacks != NULL) { if (!ok && callbacks != NULL) {
warn_badname(&name, lexer, callbacks); warn_badname(name, lexer, callbacks);
} }
} }
return ISC_R_SUCCESS; return ISC_R_SUCCESS;

View File

@ -19,7 +19,6 @@
static isc_result_t static isc_result_t
fromtext_mr(ARGS_FROMTEXT) { fromtext_mr(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_mr); REQUIRE(type == dns_rdatatype_mr);
@ -31,12 +30,11 @@ fromtext_mr(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -47,7 +47,8 @@ check_mx(isc_token_t *token) {
static isc_result_t static isc_result_t
fromtext_mx(ARGS_FROMTEXT) { fromtext_mx(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name; dns_fixedname_t fn;
dns_name_t *name = dns_fixedname_initname(&fn);
isc_buffer_t buffer; isc_buffer_t buffer;
bool ok; bool ok;
@ -77,21 +78,21 @@ fromtext_mx(ARGS_FROMTEXT) {
warn_badmx(&token, lexer, callbacks); warn_badmx(&token, lexer, callbacks);
} }
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_fromtext(name, &buffer, origin, options));
RETTOK(dns_name_towire(name, NULL, target));
ok = true; ok = true;
if ((options & DNS_RDATA_CHECKNAMES) != 0) { if ((options & DNS_RDATA_CHECKNAMES) != 0) {
ok = dns_name_ishostname(&name, false); ok = dns_name_ishostname(name, false);
} }
if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) { if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) {
RETTOK(DNS_R_BADNAME); RETTOK(DNS_R_BADNAME);
} }
if (!ok && callbacks != NULL) { if (!ok && callbacks != NULL) {
warn_badname(&name, lexer, callbacks); warn_badname(name, lexer, callbacks);
} }
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -172,7 +172,6 @@ txt_valid_regex(const unsigned char *txt) {
static isc_result_t static isc_result_t
fromtext_naptr(ARGS_FROMTEXT) { fromtext_naptr(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
unsigned char *regex; unsigned char *regex;
@ -230,12 +229,11 @@ fromtext_naptr(ARGS_FROMTEXT) {
*/ */
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -19,7 +19,8 @@
static isc_result_t static isc_result_t
fromtext_ns(ARGS_FROMTEXT) { fromtext_ns(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name; dns_fixedname_t fn;
dns_name_t *name = dns_fixedname_initname(&fn);
isc_buffer_t buffer; isc_buffer_t buffer;
bool ok; bool ok;
@ -32,21 +33,21 @@ fromtext_ns(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_fromtext(name, &buffer, origin, options));
RETTOK(dns_name_towire(name, NULL, target));
ok = true; ok = true;
if ((options & DNS_RDATA_CHECKNAMES) != 0) { if ((options & DNS_RDATA_CHECKNAMES) != 0) {
ok = dns_name_ishostname(&name, false); ok = dns_name_ishostname(name, false);
} }
if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) { if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) {
RETTOK(DNS_R_BADNAME); RETTOK(DNS_R_BADNAME);
} }
if (!ok && callbacks != NULL) { if (!ok && callbacks != NULL) {
warn_badname(&name, lexer, callbacks); warn_badname(name, lexer, callbacks);
} }
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -27,7 +27,6 @@
static isc_result_t static isc_result_t
fromtext_nsec(ARGS_FROMTEXT) { fromtext_nsec(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_nsec); REQUIRE(type == dns_rdatatype_nsec);
@ -41,12 +40,11 @@ fromtext_nsec(ARGS_FROMTEXT) {
*/ */
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
return typemap_fromtext(lexer, target, false); return typemap_fromtext(lexer, target, false);
} }

View File

@ -25,7 +25,6 @@
static isc_result_t static isc_result_t
fromtext_nxt(ARGS_FROMTEXT) { fromtext_nxt(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
char *e; char *e;
unsigned char bm[8 * 1024]; /* 64k bits */ unsigned char bm[8 * 1024]; /* 64k bits */
@ -45,12 +44,11 @@ fromtext_nxt(ARGS_FROMTEXT) {
*/ */
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
memset(bm, 0, sizeof(bm)); memset(bm, 0, sizeof(bm));
do { do {

View File

@ -19,8 +19,9 @@
static isc_result_t static isc_result_t
fromtext_ptr(ARGS_FROMTEXT) { fromtext_ptr(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
dns_fixedname_t fn;
dns_name_t *name = dns_fixedname_initname(&fn);
REQUIRE(type == dns_rdatatype_ptr); REQUIRE(type == dns_rdatatype_ptr);
@ -31,23 +32,25 @@ fromtext_ptr(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target));
RETTOK(dns_name_fromtext(name, &buffer, origin, options));
RETTOK(dns_name_towire(name, NULL, target));
if (rdclass == dns_rdataclass_in && if (rdclass == dns_rdataclass_in &&
(options & DNS_RDATA_CHECKNAMES) != 0 && (options & DNS_RDATA_CHECKNAMES) != 0 &&
(options & DNS_RDATA_CHECKREVERSE) != 0) (options & DNS_RDATA_CHECKREVERSE) != 0)
{ {
bool ok; bool ok;
ok = dns_name_ishostname(&name, false); ok = dns_name_ishostname(name, false);
if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) { if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) {
RETTOK(DNS_R_BADNAME); RETTOK(DNS_R_BADNAME);
} }
if (!ok && callbacks != NULL) { if (!ok && callbacks != NULL) {
warn_badname(&name, lexer, callbacks); warn_badname(name, lexer, callbacks);
} }
} }
return ISC_R_SUCCESS; return ISC_R_SUCCESS;

View File

@ -21,7 +21,6 @@
static isc_result_t static isc_result_t
fromtext_rp(ARGS_FROMTEXT) { fromtext_rp(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
int i; int i;
bool ok; bool ok;
@ -37,21 +36,25 @@ fromtext_rp(ARGS_FROMTEXT) {
} }
for (i = 0; i < 2; i++) { for (i = 0; i < 2; i++) {
dns_fixedname_t fn;
dns_name_t *name = dns_fixedname_initname(&fn);
RETERR(isc_lex_getmastertoken(lexer, &token, RETERR(isc_lex_getmastertoken(lexer, &token,
isc_tokentype_string, false)); isc_tokentype_string, false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
RETTOK(dns_name_fromtext(&name, &buffer, origin, options,
target)); RETTOK(dns_name_fromtext(name, &buffer, origin, options));
RETTOK(dns_name_towire(name, NULL, target));
ok = true; ok = true;
if ((options & DNS_RDATA_CHECKNAMES) != 0 && i == 0) { if ((options & DNS_RDATA_CHECKNAMES) != 0 && i == 0) {
ok = dns_name_ismailbox(&name); ok = dns_name_ismailbox(name);
} }
if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) { if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) {
RETTOK(DNS_R_BADNAME); RETTOK(DNS_R_BADNAME);
} }
if (!ok && callbacks != NULL) { if (!ok && callbacks != NULL) {
warn_badname(&name, lexer, callbacks); warn_badname(name, lexer, callbacks);
} }
} }
return ISC_R_SUCCESS; return ISC_R_SUCCESS;

View File

@ -28,7 +28,6 @@ fromtext_rrsig(ARGS_FROMTEXT) {
dns_rdatatype_t covered; dns_rdatatype_t covered;
char *e; char *e;
isc_result_t result; isc_result_t result;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
uint32_t time_signed, time_expire; uint32_t time_signed, time_expire;
unsigned int used; unsigned int used;
@ -145,12 +144,11 @@ fromtext_rrsig(ARGS_FROMTEXT) {
*/ */
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
/* /*
* Sig. * Sig.

View File

@ -21,8 +21,9 @@
static isc_result_t static isc_result_t
fromtext_rt(ARGS_FROMTEXT) { fromtext_rt(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
dns_fixedname_t fn;
dns_name_t *name = dns_fixedname_initname(&fn);
bool ok; bool ok;
REQUIRE(type == dns_rdatatype_rt); REQUIRE(type == dns_rdatatype_rt);
@ -41,21 +42,23 @@ fromtext_rt(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target));
RETTOK(dns_name_fromtext(name, &buffer, origin, options));
RETTOK(dns_name_towire(name, NULL, target));
ok = true; ok = true;
if ((options & DNS_RDATA_CHECKNAMES) != 0) { if ((options & DNS_RDATA_CHECKNAMES) != 0) {
ok = dns_name_ishostname(&name, false); ok = dns_name_ishostname(name, false);
} }
if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) { if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) {
RETTOK(DNS_R_BADNAME); RETTOK(DNS_R_BADNAME);
} }
if (!ok && callbacks != NULL) { if (!ok && callbacks != NULL) {
warn_badname(&name, lexer, callbacks); warn_badname(name, lexer, callbacks);
} }
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -26,7 +26,6 @@ fromtext_sig(ARGS_FROMTEXT) {
dns_rdatatype_t covered; dns_rdatatype_t covered;
char *e; char *e;
isc_result_t result; isc_result_t result;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
uint32_t time_signed, time_expire; uint32_t time_signed, time_expire;
unsigned int used; unsigned int used;
@ -109,12 +108,11 @@ fromtext_sig(ARGS_FROMTEXT) {
*/ */
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
/* /*
* Sig. * Sig.

View File

@ -19,7 +19,6 @@
static isc_result_t static isc_result_t
fromtext_soa(ARGS_FROMTEXT) { fromtext_soa(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
int i; int i;
uint32_t n; uint32_t n;
@ -36,21 +35,23 @@ fromtext_soa(ARGS_FROMTEXT) {
} }
for (i = 0; i < 2; i++) { for (i = 0; i < 2; i++) {
dns_fixedname_t fn;
dns_name_t *name = dns_fixedname_initname(&fn);
RETERR(isc_lex_getmastertoken(lexer, &token, RETERR(isc_lex_getmastertoken(lexer, &token,
isc_tokentype_string, false)); isc_tokentype_string, false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, RETTOK(dns_name_fromtext(name, &buffer, origin, options));
target)); RETTOK(dns_name_towire(name, NULL, target));
ok = true; ok = true;
if ((options & DNS_RDATA_CHECKNAMES) != 0) { if ((options & DNS_RDATA_CHECKNAMES) != 0) {
switch (i) { switch (i) {
case 0: case 0:
ok = dns_name_ishostname(&name, false); ok = dns_name_ishostname(name, false);
break; break;
case 1: case 1:
ok = dns_name_ismailbox(&name); ok = dns_name_ismailbox(name);
break; break;
} }
} }
@ -58,7 +59,7 @@ fromtext_soa(ARGS_FROMTEXT) {
RETTOK(DNS_R_BADNAME); RETTOK(DNS_R_BADNAME);
} }
if (!ok && callbacks != NULL) { if (!ok && callbacks != NULL) {
warn_badname(&name, lexer, callbacks); warn_badname(name, lexer, callbacks);
} }
} }

View File

@ -19,7 +19,6 @@
static isc_result_t static isc_result_t
fromtext_talink(ARGS_FROMTEXT) { fromtext_talink(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
int i; int i;
@ -37,10 +36,8 @@ fromtext_talink(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, RETERR(isc_lex_getmastertoken(lexer, &token,
isc_tokentype_string, false)); isc_tokentype_string, false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
target));
} }
return ISC_R_SUCCESS; return ISC_R_SUCCESS;

View File

@ -22,7 +22,6 @@ static isc_result_t
fromtext_tkey(ARGS_FROMTEXT) { fromtext_tkey(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_rcode_t rcode; dns_rcode_t rcode;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
long i; long i;
char *e; char *e;
@ -38,12 +37,11 @@ fromtext_tkey(ARGS_FROMTEXT) {
*/ */
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
/* /*
* Inception. * Inception.

View File

@ -27,8 +27,9 @@ fromtext_in_a6(ARGS_FROMTEXT) {
unsigned char prefixlen; unsigned char prefixlen;
unsigned char octets; unsigned char octets;
unsigned char mask; unsigned char mask;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
dns_fixedname_t fn;
dns_name_t *name = dns_fixedname_initname(&fn);
bool ok; bool ok;
REQUIRE(type == dns_rdatatype_a6); REQUIRE(type == dns_rdatatype_a6);
@ -77,21 +78,23 @@ fromtext_in_a6(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target));
RETTOK(dns_name_fromtext(name, &buffer, origin, options));
RETTOK(dns_name_towire(name, NULL, target));
ok = true; ok = true;
if ((options & DNS_RDATA_CHECKNAMES) != 0) { if ((options & DNS_RDATA_CHECKNAMES) != 0) {
ok = dns_name_ishostname(&name, false); ok = dns_name_ishostname(name, false);
} }
if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) { if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) {
RETTOK(DNS_R_BADNAME); RETTOK(DNS_R_BADNAME);
} }
if (!ok && callbacks != NULL) { if (!ok && callbacks != NULL) {
warn_badname(&name, lexer, callbacks); warn_badname(name, lexer, callbacks);
} }
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -21,7 +21,6 @@
static isc_result_t static isc_result_t
fromtext_in_kx(ARGS_FROMTEXT) { fromtext_in_kx(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_kx); REQUIRE(type == dns_rdatatype_kx);
@ -40,12 +39,11 @@ fromtext_in_kx(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -21,7 +21,6 @@
static isc_result_t static isc_result_t
fromtext_in_nsap_ptr(ARGS_FROMTEXT) { fromtext_in_nsap_ptr(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_nsap_ptr); REQUIRE(type == dns_rdatatype_nsap_ptr);
@ -34,12 +33,11 @@ fromtext_in_nsap_ptr(ARGS_FROMTEXT) {
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -21,7 +21,6 @@
static isc_result_t static isc_result_t
fromtext_in_px(ARGS_FROMTEXT) { fromtext_in_px(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
REQUIRE(type == dns_rdatatype_px); REQUIRE(type == dns_rdatatype_px);
@ -50,18 +49,16 @@ fromtext_in_px(ARGS_FROMTEXT) {
*/ */
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
/* /*
* MAPX400. * MAPX400.
*/ */
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_wirefromtext(&buffer, origin, options, target));
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -21,8 +21,9 @@
static isc_result_t static isc_result_t
fromtext_in_srv(ARGS_FROMTEXT) { fromtext_in_srv(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
dns_fixedname_t fn;
dns_name_t *name = dns_fixedname_initname(&fn);
bool ok; bool ok;
REQUIRE(type == dns_rdatatype_srv); REQUIRE(type == dns_rdatatype_srv);
@ -67,22 +68,24 @@ fromtext_in_srv(ARGS_FROMTEXT) {
*/ */
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_string,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target)); RETTOK(dns_name_fromtext(name, &buffer, origin, options));
RETTOK(dns_name_towire(name, NULL, target));
ok = true; ok = true;
if ((options & DNS_RDATA_CHECKNAMES) != 0) { if ((options & DNS_RDATA_CHECKNAMES) != 0) {
ok = dns_name_ishostname(&name, false); ok = dns_name_ishostname(name, false);
} }
if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) { if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) {
RETTOK(DNS_R_BADNAME); RETTOK(DNS_R_BADNAME);
} }
if (!ok && callbacks != NULL) { if (!ok && callbacks != NULL) {
warn_badname(&name, lexer, callbacks); warn_badname(name, lexer, callbacks);
} }
return ISC_R_SUCCESS; return ISC_R_SUCCESS;
} }

View File

@ -552,11 +552,12 @@ svcsortkeys(isc_buffer_t *target, unsigned int used) {
static isc_result_t static isc_result_t
generic_fromtext_in_svcb(ARGS_FROMTEXT) { generic_fromtext_in_svcb(ARGS_FROMTEXT) {
isc_token_t token; isc_token_t token;
dns_name_t name;
isc_buffer_t buffer; isc_buffer_t buffer;
bool alias; bool alias;
bool ok = true; bool ok = true;
unsigned int used; unsigned int used;
dns_fixedname_t fn;
dns_name_t *name = dns_fixedname_initname(&fn);
UNUSED(type); UNUSED(type);
UNUSED(rdclass); UNUSED(rdclass);
@ -579,20 +580,22 @@ generic_fromtext_in_svcb(ARGS_FROMTEXT) {
*/ */
RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_qstring, RETERR(isc_lex_getmastertoken(lexer, &token, isc_tokentype_qstring,
false)); false));
dns_name_init(&name);
buffer_fromregion(&buffer, &token.value.as_region); buffer_fromregion(&buffer, &token.value.as_region);
if (origin == NULL) { if (origin == NULL) {
origin = dns_rootname; origin = dns_rootname;
} }
RETTOK(dns_name_fromtext(&name, &buffer, origin, options, target));
RETTOK(dns_name_fromtext(name, &buffer, origin, options));
RETTOK(dns_name_towire(name, NULL, target));
if (!alias && (options & DNS_RDATA_CHECKNAMES) != 0) { if (!alias && (options & DNS_RDATA_CHECKNAMES) != 0) {
ok = dns_name_ishostname(&name, false); ok = dns_name_ishostname(name, false);
} }
if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) { if (!ok && (options & DNS_RDATA_CHECKNAMESFAIL) != 0) {
RETTOK(DNS_R_BADNAME); RETTOK(DNS_R_BADNAME);
} }
if (!ok && callbacks != NULL) { if (!ok && callbacks != NULL) {
warn_badname(&name, lexer, callbacks); warn_badname(name, lexer, callbacks);
} }
/* /*

View File

@ -818,7 +818,7 @@ ip2name(const dns_rpz_cidr_key_t *tgt_ip, dns_rpz_prefix_t tgt_prefix,
isc_buffer_init(&buffer, str, sizeof(str)); isc_buffer_init(&buffer, str, sizeof(str));
isc_buffer_add(&buffer, len); isc_buffer_add(&buffer, len);
result = dns_name_fromtext(ip_name, &buffer, base_name, 0, NULL); result = dns_name_fromtext(ip_name, &buffer, base_name, 0);
return result; return result;
} }

View File

@ -1798,7 +1798,7 @@ dns_sdlz_putnamedrr(dns_sdlzallnodes_t *allnodes, const char *name,
isc_buffer_constinit(&b, name, strlen(name)); isc_buffer_constinit(&b, name, strlen(name));
isc_buffer_add(&b, strlen(name)); isc_buffer_add(&b, strlen(name));
result = dns_name_fromtext(newname, &b, origin, 0, NULL); result = dns_name_fromtext(newname, &b, origin, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
return result; return result;
} }

View File

@ -72,7 +72,7 @@ parse_rr(isc_lex_t *lex, isc_mem_t *mctx, char *owner, dns_name_t *origin,
dname = dns_fixedname_initname(&dfname); dname = dns_fixedname_initname(&dfname);
isc_buffer_init(&b, owner, strlen(owner)); isc_buffer_init(&b, owner, strlen(owner));
isc_buffer_add(&b, strlen(owner)); isc_buffer_add(&b, strlen(owner));
ret = dns_name_fromtext(dname, &b, dns_rootname, 0, NULL); ret = dns_name_fromtext(dname, &b, dns_rootname, 0);
if (ret != ISC_R_SUCCESS) { if (ret != ISC_R_SUCCESS) {
return ret; return ret;
} }

View File

@ -278,7 +278,7 @@ reverse_from_address(dns_name_t *tcpself, const isc_netaddr_t *tcpaddr) {
} }
isc_buffer_init(&b, buf, strlen(buf)); isc_buffer_init(&b, buf, strlen(buf));
isc_buffer_add(&b, strlen(buf)); isc_buffer_add(&b, strlen(buf));
result = dns_name_fromtext(tcpself, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(tcpself, &b, dns_rootname, 0);
RUNTIME_CHECK(result == ISC_R_SUCCESS); RUNTIME_CHECK(result == ISC_R_SUCCESS);
} }
@ -318,7 +318,7 @@ stf_from_address(dns_name_t *stfself, const isc_netaddr_t *tcpaddr) {
} }
isc_buffer_init(&b, buf, strlen(buf)); isc_buffer_init(&b, buf, strlen(buf));
isc_buffer_add(&b, strlen(buf)); isc_buffer_add(&b, strlen(buf));
result = dns_name_fromtext(stfself, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(stfself, &b, dns_rootname, 0);
RUNTIME_CHECK(result == ISC_R_SUCCESS); RUNTIME_CHECK(result == ISC_R_SUCCESS);
} }

View File

@ -473,7 +473,7 @@ dns_tkey_processquery(dns_message_t *msg, dns_tkeyctx_t *tctx,
isc_nonce_buf(randomdata, sizeof(randomdata)); isc_nonce_buf(randomdata, sizeof(randomdata));
isc_buffer_init(&b, randomtext, sizeof(randomtext)); isc_buffer_init(&b, randomtext, sizeof(randomtext));
RETERR(isc_hex_totext(&r, 2, "", &b)); RETERR(isc_hex_totext(&r, 2, "", &b));
RETERR(dns_name_fromtext(keyname, &b, NULL, 0, NULL)); RETERR(dns_name_fromtext(keyname, &b, NULL, 0));
} }
RETERR(dns_name_concatenate(keyname, dns_rootname, keyname)); RETERR(dns_name_concatenate(keyname, dns_rootname, keyname));

View File

@ -372,7 +372,7 @@ restore_key(dns_tsigkeyring_t *ring, isc_stdtime_t now, FILE *fp) {
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
isc_buffer_init(&b, namestr, strlen(namestr)); isc_buffer_init(&b, namestr, strlen(namestr));
isc_buffer_add(&b, strlen(namestr)); isc_buffer_add(&b, strlen(namestr));
result = dns_name_fromtext(name, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(name, &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
return result; return result;
} }
@ -380,7 +380,7 @@ restore_key(dns_tsigkeyring_t *ring, isc_stdtime_t now, FILE *fp) {
creator = dns_fixedname_initname(&fcreator); creator = dns_fixedname_initname(&fcreator);
isc_buffer_init(&b, creatorstr, strlen(creatorstr)); isc_buffer_init(&b, creatorstr, strlen(creatorstr));
isc_buffer_add(&b, strlen(creatorstr)); isc_buffer_add(&b, strlen(creatorstr));
result = dns_name_fromtext(creator, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(creator, &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
return result; return result;
} }
@ -388,7 +388,7 @@ restore_key(dns_tsigkeyring_t *ring, isc_stdtime_t now, FILE *fp) {
algorithm = dns_fixedname_initname(&falgorithm); algorithm = dns_fixedname_initname(&falgorithm);
isc_buffer_init(&b, algorithmstr, strlen(algorithmstr)); isc_buffer_init(&b, algorithmstr, strlen(algorithmstr));
isc_buffer_add(&b, strlen(algorithmstr)); isc_buffer_add(&b, strlen(algorithmstr));
result = dns_name_fromtext(algorithm, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(algorithm, &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
return result; return result;
} }

View File

@ -2071,8 +2071,7 @@ dns_view_loadnta(dns_view_t *view) {
isc_buffer_init(&b, name, (unsigned int)len); isc_buffer_init(&b, name, (unsigned int)len);
isc_buffer_add(&b, (unsigned int)len); isc_buffer_add(&b, (unsigned int)len);
CHECK(dns_name_fromtext(fname, &b, dns_rootname, 0, CHECK(dns_name_fromtext(fname, &b, dns_rootname, 0));
NULL));
ntaname = fname; ntaname = fname;
} }

View File

@ -181,7 +181,7 @@ convert_keyname(const cfg_obj_t *keyobj, isc_mem_t *mctx, dns_name_t *dnsname) {
isc_buffer_add(&buf, keylen); isc_buffer_add(&buf, keylen);
dns_fixedname_init(&fixname); dns_fixedname_init(&fixname);
result = dns_name_fromtext(dns_fixedname_name(&fixname), &buf, result = dns_name_fromtext(dns_fixedname_name(&fixname), &buf,
dns_rootname, 0, NULL); dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
cfg_obj_log(keyobj, ISC_LOG_WARNING, cfg_obj_log(keyobj, ISC_LOG_WARNING,
"key name '%s' is not a valid domain name", "key name '%s' is not a valid domain name",

View File

@ -136,7 +136,7 @@ check_orderent(const cfg_obj_t *ent) {
isc_buffer_constinit(&b, str, strlen(str)); isc_buffer_constinit(&b, str, strlen(str));
isc_buffer_add(&b, strlen(str)); isc_buffer_add(&b, strlen(str));
tresult = dns_name_fromtext(dns_fixedname_name(&fixed), &b, tresult = dns_name_fromtext(dns_fixedname_name(&fixed), &b,
dns_rootname, 0, NULL); dns_rootname, 0);
if (tresult != ISC_R_SUCCESS) { if (tresult != ISC_R_SUCCESS) {
cfg_obj_log(obj, ISC_LOG_ERROR, cfg_obj_log(obj, ISC_LOG_ERROR,
"rrset-order: invalid name '%s'", str); "rrset-order: invalid name '%s'", str);
@ -243,8 +243,7 @@ check_dual_stack(const cfg_obj_t *options) {
isc_buffer_constinit(&buffer, str, strlen(str)); isc_buffer_constinit(&buffer, str, strlen(str));
isc_buffer_add(&buffer, strlen(str)); isc_buffer_add(&buffer, strlen(str));
name = dns_fixedname_initname(&fixed); name = dns_fixedname_initname(&fixed);
tresult = dns_name_fromtext(name, &buffer, dns_rootname, 0, tresult = dns_name_fromtext(name, &buffer, dns_rootname, 0);
NULL);
if (tresult != ISC_R_SUCCESS) { if (tresult != ISC_R_SUCCESS) {
cfg_obj_log(obj, ISC_LOG_ERROR, "bad name '%s'", str); cfg_obj_log(obj, ISC_LOG_ERROR, "bad name '%s'", str);
if (result == ISC_R_SUCCESS) { if (result == ISC_R_SUCCESS) {
@ -365,7 +364,7 @@ disabled_algorithms(const cfg_obj_t *disabled) {
str = cfg_obj_asstring(obj); str = cfg_obj_asstring(obj);
isc_buffer_constinit(&b, str, strlen(str)); isc_buffer_constinit(&b, str, strlen(str));
isc_buffer_add(&b, strlen(str)); isc_buffer_add(&b, strlen(str));
tresult = dns_name_fromtext(name, &b, dns_rootname, 0, NULL); tresult = dns_name_fromtext(name, &b, dns_rootname, 0);
if (tresult != ISC_R_SUCCESS) { if (tresult != ISC_R_SUCCESS) {
cfg_obj_log(obj, ISC_LOG_ERROR, "bad domain name '%s'", str); cfg_obj_log(obj, ISC_LOG_ERROR, "bad domain name '%s'", str);
result = tresult; result = tresult;
@ -408,7 +407,7 @@ disabled_ds_digests(const cfg_obj_t *disabled) {
str = cfg_obj_asstring(obj); str = cfg_obj_asstring(obj);
isc_buffer_constinit(&b, str, strlen(str)); isc_buffer_constinit(&b, str, strlen(str));
isc_buffer_add(&b, strlen(str)); isc_buffer_add(&b, strlen(str));
tresult = dns_name_fromtext(name, &b, dns_rootname, 0, NULL); tresult = dns_name_fromtext(name, &b, dns_rootname, 0);
if (tresult != ISC_R_SUCCESS) { if (tresult != ISC_R_SUCCESS) {
cfg_obj_log(obj, ISC_LOG_ERROR, "bad domain name '%s'", str); cfg_obj_log(obj, ISC_LOG_ERROR, "bad domain name '%s'", str);
result = tresult; result = tresult;
@ -3130,7 +3129,7 @@ check_zoneconf(const cfg_obj_t *zconfig, const cfg_obj_t *voptions,
isc_buffer_constinit(&b, znamestr, strlen(znamestr)); isc_buffer_constinit(&b, znamestr, strlen(znamestr));
isc_buffer_add(&b, strlen(znamestr)); isc_buffer_add(&b, strlen(znamestr));
tresult = dns_name_fromtext(dns_fixedname_name(&fixedname), &b, tresult = dns_name_fromtext(dns_fixedname_name(&fixedname), &b,
dns_rootname, DNS_NAME_DOWNCASE, NULL); dns_rootname, DNS_NAME_DOWNCASE);
if (tresult != ISC_R_SUCCESS) { if (tresult != ISC_R_SUCCESS) {
cfg_obj_log(zconfig, ISC_LOG_ERROR, cfg_obj_log(zconfig, ISC_LOG_ERROR,
"zone '%s': is not a valid name", znamestr); "zone '%s': is not a valid name", znamestr);
@ -3718,8 +3717,8 @@ check_zoneconf(const cfg_obj_t *zconfig, const cfg_obj_t *voptions,
isc_buffer_constinit(&b2, snamestr, strlen(snamestr)); isc_buffer_constinit(&b2, snamestr, strlen(snamestr));
isc_buffer_add(&b2, strlen(snamestr)); isc_buffer_add(&b2, strlen(snamestr));
sname = dns_fixedname_initname(&fixed_sname); sname = dns_fixedname_initname(&fixed_sname);
tresult = dns_name_fromtext(sname, &b2, dns_rootname, 0, tresult = dns_name_fromtext(sname, &b2, dns_rootname,
NULL); 0);
if (tresult != ISC_R_SUCCESS) { if (tresult != ISC_R_SUCCESS) {
cfg_obj_log(zconfig, ISC_LOG_ERROR, cfg_obj_log(zconfig, ISC_LOG_ERROR,
"server-name '%s' is not a valid " "server-name '%s' is not a valid "
@ -4153,7 +4152,7 @@ check_keylist(const cfg_obj_t *keys, isc_symtab_t *symtab, isc_mem_t *mctx) {
isc_buffer_constinit(&b, keyid, strlen(keyid)); isc_buffer_constinit(&b, keyid, strlen(keyid));
isc_buffer_add(&b, strlen(keyid)); isc_buffer_add(&b, strlen(keyid));
tresult = dns_name_fromtext(name, &b, dns_rootname, 0, NULL); tresult = dns_name_fromtext(name, &b, dns_rootname, 0);
if (tresult != ISC_R_SUCCESS) { if (tresult != ISC_R_SUCCESS) {
cfg_obj_log(key, ISC_LOG_ERROR, cfg_obj_log(key, ISC_LOG_ERROR,
"key '%s': bad key name", keyid); "key '%s': bad key name", keyid);
@ -4393,7 +4392,7 @@ check_servers(const cfg_obj_t *config, const cfg_obj_t *voptions,
isc_buffer_add(&b, strlen(keyval)); isc_buffer_add(&b, strlen(keyval));
keyname = dns_fixedname_initname(&fname); keyname = dns_fixedname_initname(&fname);
tresult = dns_name_fromtext(keyname, &b, dns_rootname, tresult = dns_name_fromtext(keyname, &b, dns_rootname,
0, NULL); 0);
if (tresult != ISC_R_SUCCESS) { if (tresult != ISC_R_SUCCESS) {
cfg_obj_log(keys, ISC_LOG_ERROR, cfg_obj_log(keys, ISC_LOG_ERROR,
"bad key name '%s'", keyval); "bad key name '%s'", keyval);
@ -4558,7 +4557,7 @@ check_trust_anchor(const cfg_obj_t *key, unsigned int *flagsp) {
keyname = dns_fixedname_initname(&fkeyname); keyname = dns_fixedname_initname(&fkeyname);
isc_buffer_constinit(&b, namestr, strlen(namestr)); isc_buffer_constinit(&b, namestr, strlen(namestr));
isc_buffer_add(&b, strlen(namestr)); isc_buffer_add(&b, strlen(namestr));
result = dns_name_fromtext(keyname, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(keyname, &b, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
cfg_obj_log(key, ISC_LOG_WARNING, "bad key name: %s\n", cfg_obj_log(key, ISC_LOG_WARNING, "bad key name: %s\n",
isc_result_totext(result)); isc_result_totext(result));

View File

@ -62,7 +62,7 @@ main(void) {
errx(1, "too many names"); errx(1, "too many names");
} }
dns_name_t *name = dns_fixedname_initname(&fixedname[count++]); dns_name_t *name = dns_fixedname_initname(&fixedname[count++]);
result = dns_name_fromtext(name, &buf, dns_rootname, 0, NULL); result = dns_name_fromtext(name, &buf, dns_rootname, 0);
CHECKRESULT(result, line); CHECKRESULT(result, line);
} }

View File

@ -471,8 +471,7 @@ main(int argc, char *argv[]) {
isc_buffer_t buffer; isc_buffer_t buffer;
isc_buffer_init(&buffer, domain, len); isc_buffer_init(&buffer, domain, len);
isc_buffer_add(&buffer, len); isc_buffer_add(&buffer, len);
result = dns_name_fromtext(name, &buffer, dns_rootname, 0, result = dns_name_fromtext(name, &buffer, dns_rootname, 0);
NULL);
FILE_CHECK(result == ISC_R_SUCCESS, isc_result_totext(result)); FILE_CHECK(result == ISC_R_SUCCESS, isc_result_totext(result));
wirebytes += name->length; wirebytes += name->length;

View File

@ -203,8 +203,7 @@ main(int argc, char *argv[]) {
isc_buffer_init(&buffer, domain, len); isc_buffer_init(&buffer, domain, len);
isc_buffer_add(&buffer, len); isc_buffer_add(&buffer, len);
result = dns_name_fromtext(name, &buffer, dns_rootname, 0, result = dns_name_fromtext(name, &buffer, dns_rootname, 0);
NULL);
if (result == ISC_R_SUCCESS) { if (result == ISC_R_SUCCESS) {
smallname_from_name(name, &pval, &ival); smallname_from_name(name, &pval, &ival);
result = dns_qp_insert(qp, pval, ival); result = dns_qp_insert(qp, pval, ival);

View File

@ -162,8 +162,7 @@ load_qp(dns_qp_t *qp, const char *filename) {
isc_buffer_init(&buffer, domain, len); isc_buffer_init(&buffer, domain, len);
isc_buffer_add(&buffer, len); isc_buffer_add(&buffer, len);
result = dns_name_fromtext(name, &buffer, dns_rootname, 0, result = dns_name_fromtext(name, &buffer, dns_rootname, 0);
NULL);
if (result == ISC_R_SUCCESS) { if (result == ISC_R_SUCCESS) {
smallname_from_name(name, &pval, &ival); smallname_from_name(name, &pval, &ival);
result = dns_qp_insert(qp, pval, ival); result = dns_qp_insert(qp, pval, ival);

View File

@ -42,7 +42,7 @@ make_name(const char *src, dns_name_t *name) {
isc_buffer_t b; isc_buffer_t b;
isc_buffer_constinit(&b, src, strlen(src)); isc_buffer_constinit(&b, src, strlen(src));
isc_buffer_add(&b, strlen(src)); isc_buffer_add(&b, strlen(src));
return dns_name_fromtext(name, &b, dns_rootname, 0, NULL); return dns_name_fromtext(name, &b, dns_rootname, 0);
} }
/* create: make sure we can create a dbiterator */ /* create: make sure we can create a dbiterator */

View File

@ -219,7 +219,7 @@ setup_test(void **state) {
isc_buffer_constinit(&namesrc, tls_name_str, strlen(tls_name_str)); isc_buffer_constinit(&namesrc, tls_name_str, strlen(tls_name_str));
isc_buffer_add(&namesrc, strlen(tls_name_str)); isc_buffer_add(&namesrc, strlen(tls_name_str));
if (dns_name_fromtext(tls_name, &namesrc, dns_rootname, if (dns_name_fromtext(tls_name, &namesrc, dns_rootname,
DNS_NAME_DOWNCASE, NULL) != ISC_R_SUCCESS) DNS_NAME_DOWNCASE) != ISC_R_SUCCESS)
{ {
return -1; return -1;
} }

View File

@ -180,7 +180,7 @@ ISC_LOOP_TEST_IMPL(dns_dt_send) {
zname = dns_fixedname_initname(&zfname); zname = dns_fixedname_initname(&zfname);
isc_buffer_constinit(&zb, "example.com.", 12); isc_buffer_constinit(&zb, "example.com.", 12);
isc_buffer_add(&zb, 12); isc_buffer_add(&zb, 12);
result = dns_name_fromtext(zname, &zb, NULL, 0, NULL); result = dns_name_fromtext(zname, &zb, NULL, 0);
assert_int_equal(result, ISC_R_SUCCESS); assert_int_equal(result, ISC_R_SUCCESS);
memset(&zr, 0, sizeof(zr)); memset(&zr, 0, sizeof(zr));

View File

@ -163,7 +163,7 @@ check_sig(const char *datapath, const char *sigpath, const char *keyname,
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
isc_buffer_constinit(&b, keyname, strlen(keyname)); isc_buffer_constinit(&b, keyname, strlen(keyname));
isc_buffer_add(&b, strlen(keyname)); isc_buffer_add(&b, strlen(keyname));
result = dns_name_fromtext(name, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(name, &b, dns_rootname, 0);
assert_int_equal(result, ISC_R_SUCCESS); assert_int_equal(result, ISC_R_SUCCESS);
result = dst_key_fromfile(name, id, alg, type, result = dst_key_fromfile(name, id, alg, type,
TESTS_DIR "/testdata/dst", mctx, &key); TESTS_DIR "/testdata/dst", mctx, &key);
@ -298,7 +298,7 @@ check_cmp(const char *key1_name, dns_keytag_t key1_id, const char *key2_name,
name1 = dns_fixedname_initname(&fname1); name1 = dns_fixedname_initname(&fname1);
isc_buffer_constinit(&b1, key1_name, strlen(key1_name)); isc_buffer_constinit(&b1, key1_name, strlen(key1_name));
isc_buffer_add(&b1, strlen(key1_name)); isc_buffer_add(&b1, strlen(key1_name));
result = dns_name_fromtext(name1, &b1, dns_rootname, 0, NULL); result = dns_name_fromtext(name1, &b1, dns_rootname, 0);
assert_int_equal(result, ISC_R_SUCCESS); assert_int_equal(result, ISC_R_SUCCESS);
result = dst_key_fromfile(name1, key1_id, alg, type, result = dst_key_fromfile(name1, key1_id, alg, type,
TESTS_DIR "/comparekeys", mctx, &key1); TESTS_DIR "/comparekeys", mctx, &key1);
@ -310,7 +310,7 @@ check_cmp(const char *key1_name, dns_keytag_t key1_id, const char *key2_name,
name2 = dns_fixedname_initname(&fname2); name2 = dns_fixedname_initname(&fname2);
isc_buffer_constinit(&b2, key2_name, strlen(key2_name)); isc_buffer_constinit(&b2, key2_name, strlen(key2_name));
isc_buffer_add(&b2, strlen(key2_name)); isc_buffer_add(&b2, strlen(key2_name));
result = dns_name_fromtext(name2, &b2, dns_rootname, 0, NULL); result = dns_name_fromtext(name2, &b2, dns_rootname, 0);
assert_int_equal(result, ISC_R_SUCCESS); assert_int_equal(result, ISC_R_SUCCESS);
result = dst_key_fromfile(name2, key2_id, alg, type, result = dst_key_fromfile(name2, key2_id, alg, type,
TESTS_DIR "/comparekeys", mctx, &key2); TESTS_DIR "/comparekeys", mctx, &key2);
@ -445,7 +445,7 @@ ISC_RUN_TEST_IMPL(ecdsa_determinism_test) {
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
isc_buffer_constinit(&keybuf, "example.", strlen("example.")); isc_buffer_constinit(&keybuf, "example.", strlen("example."));
isc_buffer_add(&keybuf, strlen("example.")); isc_buffer_add(&keybuf, strlen("example."));
result = dns_name_fromtext(name, &keybuf, dns_rootname, 0, NULL); result = dns_name_fromtext(name, &keybuf, dns_rootname, 0);
assert_int_equal(result, ISC_R_SUCCESS); assert_int_equal(result, ISC_R_SUCCESS);
result = dst_key_fromfile(name, 19786, DST_ALG_ECDSA256, result = dst_key_fromfile(name, 19786, DST_ALG_ECDSA256,
DST_TYPE_PUBLIC | DST_TYPE_PRIVATE, DST_TYPE_PUBLIC | DST_TYPE_PRIVATE,

View File

@ -97,8 +97,7 @@ str2name(const char *namestr) {
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
isc_buffer_init(&namebuf, UNCONST(namestr), strlen(namestr)); isc_buffer_init(&namebuf, UNCONST(namestr), strlen(namestr));
isc_buffer_add(&namebuf, strlen(namestr)); isc_buffer_add(&namebuf, strlen(namestr));
assert_int_equal( assert_int_equal(dns_name_fromtext(name, &namebuf, dns_rootname, 0),
dns_name_fromtext(name, &namebuf, dns_rootname, 0, NULL),
ISC_R_SUCCESS); ISC_R_SUCCESS);
return name; return name;

View File

@ -100,7 +100,7 @@ setup_master(void (*warn)(struct dns_rdatacallbacks *, const char *, ...),
isc_buffer_setactive(&source, len); isc_buffer_setactive(&source, len);
dns_master_initrawheader(&header); dns_master_initrawheader(&header);
result = dns_name_fromtext(dns_origin, &source, dns_rootname, 0, NULL); result = dns_name_fromtext(dns_origin, &source, dns_rootname, 0);
if (result != ISC_R_SUCCESS) { if (result != ISC_R_SUCCESS) {
return result; return result;
} }

View File

@ -640,7 +640,7 @@ ISC_RUN_TEST_IMPL(isabsolute) {
dns_name_init(&name); dns_name_init(&name);
isc_buffer_init(&nb, data, BUFSIZ); isc_buffer_init(&nb, data, BUFSIZ);
dns_name_setbuffer(&name, &nb); dns_name_setbuffer(&name, &nb);
result = dns_name_fromtext(&name, &b, NULL, 0, NULL); result = dns_name_fromtext(&name, &b, NULL, 0);
assert_int_equal(result, ISC_R_SUCCESS); assert_int_equal(result, ISC_R_SUCCESS);
assert_int_equal(dns_name_isabsolute(&name), assert_int_equal(dns_name_isabsolute(&name),

View File

@ -134,12 +134,12 @@ ownercase_test_one(const char *str1, const char *str2) {
isc_buffer_constinit(&b, str1, strlen(str1)); isc_buffer_constinit(&b, str1, strlen(str1));
isc_buffer_add(&b, strlen(str1)); isc_buffer_add(&b, strlen(str1));
result = dns_name_fromtext(name1, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(name1, &b, dns_rootname, 0);
assert_int_equal(result, ISC_R_SUCCESS); assert_int_equal(result, ISC_R_SUCCESS);
isc_buffer_constinit(&b, str2, strlen(str2)); isc_buffer_constinit(&b, str2, strlen(str2));
isc_buffer_add(&b, strlen(str2)); isc_buffer_add(&b, strlen(str2));
result = dns_name_fromtext(name2, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(name2, &b, dns_rootname, 0);
assert_int_equal(result, ISC_R_SUCCESS); assert_int_equal(result, ISC_R_SUCCESS);
/* Store the case from name1 */ /* Store the case from name1 */
@ -206,12 +206,12 @@ ISC_RUN_TEST_IMPL(setownercase) {
isc_buffer_constinit(&b, str1, strlen(str1)); isc_buffer_constinit(&b, str1, strlen(str1));
isc_buffer_add(&b, strlen(str1)); isc_buffer_add(&b, strlen(str1));
result = dns_name_fromtext(name1, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(name1, &b, dns_rootname, 0);
assert_int_equal(result, ISC_R_SUCCESS); assert_int_equal(result, ISC_R_SUCCESS);
isc_buffer_constinit(&b, str1, strlen(str1)); isc_buffer_constinit(&b, str1, strlen(str1));
isc_buffer_add(&b, strlen(str1)); isc_buffer_add(&b, strlen(str1));
result = dns_name_fromtext(name2, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(name2, &b, dns_rootname, 0);
assert_int_equal(result, ISC_R_SUCCESS); assert_int_equal(result, ISC_R_SUCCESS);
assert_false(CASESET(&header)); assert_false(CASESET(&header));

View File

@ -133,7 +133,7 @@ ISC_RUN_TEST_IMPL(isc_rsa_verify) {
name = dns_fixedname_initname(&fname); name = dns_fixedname_initname(&fname);
isc_buffer_constinit(&buf, "rsa.", 4); isc_buffer_constinit(&buf, "rsa.", 4);
isc_buffer_add(&buf, 4); isc_buffer_add(&buf, 4);
ret = dns_name_fromtext(name, &buf, NULL, 0, NULL); ret = dns_name_fromtext(name, &buf, NULL, 0);
assert_int_equal(ret, ISC_R_SUCCESS); assert_int_equal(ret, ISC_R_SUCCESS);
ret = dst_key_fromfile(name, 29238, DST_ALG_RSASHA256, DST_TYPE_PUBLIC, ret = dst_key_fromfile(name, 29238, DST_ALG_RSASHA256, DST_TYPE_PUBLIC,

View File

@ -448,7 +448,7 @@ ISC_RUN_TEST_IMPL(skr_read) {
dname = dns_fixedname_initname(&dfname); dname = dns_fixedname_initname(&dfname);
isc_buffer_init(&b, name, strlen(name)); isc_buffer_init(&b, name, strlen(name));
isc_buffer_add(&b, strlen(name)); isc_buffer_add(&b, strlen(name));
result = dns_name_fromtext(dname, &b, dns_rootname, 0, NULL); result = dns_name_fromtext(dname, &b, dns_rootname, 0);
assert_int_equal(result, ISC_R_SUCCESS); assert_int_equal(result, ISC_R_SUCCESS);
/* Get the KSK */ /* Get the KSK */

View File

@ -419,7 +419,7 @@ dns_test_namefromstring(const char *namestr, dns_fixedname_t *fname) {
isc_buffer_allocate(mctx, &b, length); isc_buffer_allocate(mctx, &b, length);
isc_buffer_putmem(b, (const unsigned char *)namestr, length); isc_buffer_putmem(b, (const unsigned char *)namestr, length);
result = dns_name_fromtext(name, b, NULL, 0, NULL); result = dns_name_fromtext(name, b, NULL, 0);
INSIST(result == ISC_R_SUCCESS); INSIST(result == ISC_R_SUCCESS);
isc_buffer_free(&b); isc_buffer_free(&b);