| 203 | } |
| 204 | |
| 205 | bool wireaddr_to_ipv6(const struct wireaddr *addr, struct sockaddr_in6 *s6) |
| 206 | { |
| 207 | if (addr->type != ADDR_TYPE_IPV6) |
| 208 | return false; |
| 209 | memset(s6, 0, sizeof(*s6)); |
| 210 | s6->sin6_family = AF_INET6; |
| 211 | s6->sin6_port = htons(addr->port); |
| 212 | assert(addr->addrlen == sizeof(s6->sin6_addr)); |
| 213 | memcpy(&s6->sin6_addr, addr->addr, sizeof(s6->sin6_addr)); |
| 214 | return true; |
| 215 | } |
| 216 | |
| 217 | bool wireaddr_is_wildcard(const struct wireaddr *addr) |
| 218 | { |
no outgoing calls
no test coverage detected