DnsResolve
Description
DnsResolve dispatches by argument count. The 4-arg form additionally dispatches on the out parameter type: DnsAddrs * selects the vec form, SocketAddr * selects the single-addr form.
Usage example (Cross-references)
Usage examples (Cross-references)
- In
Dns.c:570:
// aligned with one literal.
if (ZstrLen(hostname) >= 256) {
LOG_ERROR("DnsResolve: hostname \"{}\" exceeds 255 bytes", hostname);
return false;
}- In
Dns.c:596:
// 2. Nameserver query path.
if (VecLen(&self->nameservers) == 0) {
LOG_ERROR("DnsResolve: no nameservers configured (read /etc/resolv.conf at init)");
break;
}- In
Dns.c:616:
if (!found) {
LOG_ERROR("DnsResolve: no A/AAAA records found for \"{}\"", hostname);
}
}- In
Dns.c:650:
}
if (colon_at >= spec_len) {
LOG_ERROR("DnsResolve: spec \"{}\" has no \":port\"", spec);
return false;
}- In
Dns.c:654:
}
if (colon_at >= 256) {
LOG_ERROR("DnsResolve: host portion of \"{}\" exceeds 255 bytes", spec);
return false;
}- In
Dns.c:664:
char c = spec[i];
if (c < '0' || c > '9') {
LOG_ERROR("DnsResolve: non-numeric port in \"{}\"", spec);
return false;
}- In
Dns.c:669:
u32 next = (u32)port * 10u + (u32)(c - '0');
if (next > 0xFFFFu) {
LOG_ERROR("DnsResolve: port in \"{}\" out of range", spec);
return false;
}- In
Dns.c:676:
// A bare "host:" with no digits after the colon is malformed.
if (colon_at + 1 == spec_len) {
LOG_ERROR("DnsResolve: empty port in \"{}\"", spec);
return false;
}- In
Resolve.c:39:
DnsAddrs addrs = VecInitT(addrs, alloc);
if (!DnsResolve(&r, hostname, 0, SOCKET_KIND_TCP, &addrs)) {
DnsResolverDeinit(&r);
return 1;- In
Beam.c:406:
SocketAddr listen_addr;
if (!DnsResolve(&resolver, listen_spec, SOCKET_KIND_TCP, &listen_addr)) {
LOG_ERROR("invalid --listen address: {}", listen_spec);
DnsResolverDeinit(&resolver);- In
Beam.c:413:
SocketAddr upstream_addr;
if (!DnsResolve(&resolver, upstream_spec, SOCKET_KIND_TCP, &upstream_addr)) {
LOG_ERROR("invalid --upstream address: {}", upstream_spec);
DnsResolverDeinit(&resolver);- In
SysDns.c:158:
DnsAddrs out = VecInitT(out, a);
bool got = DnsResolve(&r, "localhost", 8080, SOCKET_KIND_TCP, &out);
bool found_v4 = false;- In
SysDns.c:184:
DnsAddrs out = VecInitT(out, a);
bool got = DnsResolve(&r, "LocalHost", 0, SOCKET_KIND_TCP, &out);
VecDeinit(&out);- In
SysDns.c:201:
DnsAddrs out = VecInitT(out, a);
bool got = DnsResolve(&r, "localhost.", 0, SOCKET_KIND_TCP, &out);
VecDeinit(&out);- In
SysDns.c:218:
DnsAddrs out = VecInitT(out, a);
bool got = DnsResolve(&r, "203.0.113.7:9999", SOCKET_KIND_TCP, &out);
bool ok = got && VecLen(&out) == 1 && VecPtrAt(&out, 0)->family == SOCKET_FAMILY_INET;- In
SysDns.c:242:
DnsAddrs out = VecInitT(out, a);
bool got = DnsResolve(&r, "[::1]:443", SOCKET_KIND_TCP, &out);
bool ok = got && VecLen(&out) == 1 && VecPtrAt(&out, 0)->family == SOCKET_FAMILY_INET6;- In
SysDns.c:266:
DnsAddrs out = VecInitT(out, a);
bool got = DnsResolve(&r, "localhost:53", SOCKET_KIND_TCP, &out);
bool ok = got && VecLen(&out) > 0;- In
SysDns.c:295:
SocketAddr one;
bool got = DnsResolve(&r, "127.0.0.1:80", SOCKET_KIND_TCP, &one);
bool ok = got && one.family == SOCKET_FAMILY_INET;- In
SysDns.c:318:
DnsAddrs out = VecInitT(out, a);
bool got = DnsResolve(&r, "localhost", SOCKET_KIND_TCP, &out);
bool ok = !got && VecLen(&out) == 0;- In
SysDns.c:337:
DnsAddrs out = VecInitT(out, a);
bool got = DnsResolve(&r, "localhost:abc", SOCKET_KIND_TCP, &out);
bool ok = !got;
Last updated on