38 while (iplen <= 240 && *x !=
'\0') {
45 if (*(x += i) ==
'\0')
break;
55 for (j = 0; j < data.
len; ++j)
56 if (data.
s[j] ==
'\n') {
59 while ((data.
s[i] ==
' ') || (data.
s[i] ==
'\t'))
68 sid[k] = 0; iplen += 16; k++;
69 }
else if (
ip6_ifscan(data.
s + i,ip + iplen,&ifname)) {
81 byte_copy(ip,16,
"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1");
89static unsigned int uses;
90static struct taia deadline;
103 if (init(ip,scopes) < 0)
return DNS_INT;
int dns_resolvconfip(char s[QUERY_MAXIPLEN], uint32 scope[QUERY_MAXNS])
unsigned int ip4_scan(const char *, char[4])
ip4_scan parse IPv4 address string and convert to IP address array
unsigned int ip6_ifscan(char *, char[16], stralloc *)
ip6_ifscan parse compactified IPv6 address string concatinated with the interface name: fe80::1eth0
uint32 socket_getifidx(const char *)
int taia_less(struct taia *, struct taia *)
void taia_add(struct taia *, struct taia *, struct taia *)
void taia_uint(struct taia *, unsigned int)
int taia_now(struct taia *)
int openreadclose(const char *, stralloc *, unsigned int)
void byte_copy(void *, unsigned int, const void *)
#define byte_equal(s, n, t)
void byte_zero(void *, unsigned int)
int stralloc_append(stralloc *sa, const char *in)