Lines Matching refs:netaddr
1 /* $NetBSD: netaddr.c,v 1.1 2024/02/18 20:57:49 christos Exp $ */
24 #include <isc/netaddr.h>
132 isc_netaddr_totext(const isc_netaddr_t *netaddr, isc_buffer_t *target) {
140 REQUIRE(netaddr != NULL);
142 switch (netaddr->family) {
144 type = &netaddr->type.in;
147 type = &netaddr->type.in6;
151 alen = strlen(netaddr->type.un);
156 (const unsigned char *)(netaddr->type.un),
163 r = inet_ntop(netaddr->family, type, abuf, sizeof(abuf));
172 if (netaddr->family == AF_INET6 && netaddr->zone != 0) {
173 zlen = snprintf(zbuf, sizeof(zbuf), "%%%u", netaddr->zone);
305 isc_netaddr_fromin(isc_netaddr_t *netaddr, const struct in_addr *ina) {
306 memset(netaddr, 0, sizeof(*netaddr));
307 netaddr->family = AF_INET;
308 netaddr->type.in = *ina;
312 isc_netaddr_fromin6(isc_netaddr_t *netaddr, const struct in6_addr *ina6) {
313 memset(netaddr, 0, sizeof(*netaddr));
314 netaddr->family = AF_INET6;
315 netaddr->type.in6 = *ina6;
319 isc_netaddr_frompath(isc_netaddr_t *netaddr, const char *path) {
321 if (strlen(path) > sizeof(netaddr->type.un) - 1) {
325 memset(netaddr, 0, sizeof(*netaddr));
326 netaddr->family = AF_UNIX;
327 strlcpy(netaddr->type.un, path, sizeof(netaddr->type.un));
328 netaddr->zone = 0;
331 UNUSED(netaddr);
338 isc_netaddr_setzone(isc_netaddr_t *netaddr, uint32_t zone) {
340 REQUIRE(netaddr->family == AF_INET6);
342 netaddr->zone = zone;
346 isc_netaddr_getzone(const isc_netaddr_t *netaddr) {
347 return (netaddr->zone);
375 isc_netaddr_any(isc_netaddr_t *netaddr) {
376 memset(netaddr, 0, sizeof(*netaddr));
377 netaddr->family = AF_INET;
378 netaddr->type.in.s_addr = INADDR_ANY;
382 isc_netaddr_any6(isc_netaddr_t *netaddr) {
383 memset(netaddr, 0, sizeof(*netaddr));
384 netaddr->family = AF_INET6;
385 netaddr->type.in6 = in6addr_any;
389 isc_netaddr_unspec(isc_netaddr_t *netaddr) {
390 memset(netaddr, 0, sizeof(*netaddr));
391 netaddr->family = AF_UNSPEC;