ipstrtoaddr
if(!ipstrtoaddr(addrstr, UNBOUND_DNS_PORT, &pif->addr, &pif->addrlen) &&
if(!ipstrtoaddr(buf, UNBOUND_DNS_PORT, &addr, &addrlen)) {
return ipstrtoaddr(buf, port, addr, addrlen);
return ipstrtoaddr(str, port, addr, addrlen);
if(!ipstrtoaddr(s?s:str, port, addr, addrlen)) {
return ipstrtoaddr(buf, port, addr, addrlen);
return ipstrtoaddr(buf, port, addr, addrlen);
return ipstrtoaddr(str, port, addr, addrlen);
int ipstrtoaddr(const char* ip, int port, struct sockaddr_storage* addr,
if(!ipstrtoaddr(arg, UNBOUND_DNS_PORT, &addr, &len)) {
if(!ipstrtoaddr(addrstr, UNBOUND_DNS_PORT, &pif->addr, &pif->addrlen) &&
if(!ipstrtoaddr(cfg->out_ifs[i], UNBOUND_DNS_PORT, &a, &alen) &&
if(!ipstrtoaddr(svr, cfg->control_port, &addr, &addrlen))
if(!ipstrtoaddr(bind_str, bindport, &bind_addr, &bind_len)) {
if(!ipstrtoaddr(svr, port, &addr, &addrlen)) {
if(!ipstrtoaddr(svr, port, &data->dest_addr, &data->dest_addr_len)) {
unit_assert(ipstrtoaddr("127.0.0.1", 53, &one, &onelen));
unit_assert(ipstrtoaddr("127.0.0.0", 53, &a, &alen));
unit_assert(ipstrtoaddr("127.255.255.255", 53, &b, &blen));
unit_assert(ipstrtoaddr("192.168.121.5", 53, &a, &alen));
unit_assert(ipstrtoaddr("2001:3578:ffeb::99", 53, &b, &blen));
unit_assert(ipstrtoaddr("12.13.14.15", 53, &a, &l));
unit_assert(ipstrtoaddr("fe80::217:31ff:fe91:df", 53, &a, &l));
unit_assert(ipstrtoaddr("ffff::217:31ff:fe91:df", 53, &a, &l));
unit_assert(ipstrtoaddr("::ffff:31ff:fe91:df", 53, &a, &l));
unit_assert(ipstrtoaddr("::fffe:fe91:df", 53, &a, &l));
unit_assert(ipstrtoaddr("::ffff:127.0.0.1", 53, &a, &l));
unit_assert(ipstrtoaddr("::ffff:127.0.0.2", 53, &a, &l));
unit_assert(ipstrtoaddr("::ffff:192.168.0.2", 53, &a, &l));
unit_assert(ipstrtoaddr("2::ffff:192.168.0.2", 53, &a, &l));
unit_assert(ipstrtoaddr("0.0.0.0", 53, &a, &l));
unit_assert(ipstrtoaddr("0.0.0.0", 10053, &a, &l));
unit_assert(ipstrtoaddr("0.0.0.0", 0, &a, &l));
unit_assert(ipstrtoaddr("::0", 0, &a, &l));
unit_assert(ipstrtoaddr("::0", 53, &a, &l));
unit_assert(ipstrtoaddr("::1", 53, &a, &l));
unit_assert(ipstrtoaddr("2001:1667::1", 0, &a, &l));
unit_assert(ipstrtoaddr("2001::0", 0, &a, &l));
unit_assert(ipstrtoaddr("10.0.0.0", 0, &a, &l));
unit_assert(ipstrtoaddr("0.0.0.10", 0, &a, &l));
unit_assert(ipstrtoaddr("192.0.2.1", 0, &a, &l));
if(!ipstrtoaddr(buf, UNBOUND_DNS_PORT, &addr, &addrlen)) {
return ipstrtoaddr(buf, port, addr, addrlen);
return ipstrtoaddr(str, port, addr, addrlen);
if(!ipstrtoaddr(s?s:str, port, addr, addrlen)) {
return ipstrtoaddr(buf, port, addr, addrlen);
return ipstrtoaddr(buf, port, addr, addrlen);
return ipstrtoaddr(str, port, addr, addrlen);
int ipstrtoaddr(const char* ip, int port, struct sockaddr_storage* addr,