- switch (type) {
- case DHCPV6_MSG_REQUEST:
- case DHCPV6_MSG_RENEW:
- case DHCPV6_MSG_RELEASE:
- case DHCPV6_MSG_DECLINE:
- if (!IN6_IS_ADDR_UNSPECIFIED(&server_addr) &&
- odhcp6c_addr_in_scope(&server_addr)) {
- srv.sin6_addr = server_addr;
- if (!IN6_IS_ADDR_LINKLOCAL(&server_addr))
- srv.sin6_scope_id = 0;
- }
- break;
- default:
- break;
- }
-
- if (sendmsg(sock, &msg, 0) < 0) {
- char in6_str[INET6_ADDRSTRLEN];
-
- syslog(LOG_ERR, "Failed to send DHCPV6 message to %s (%s)",
- inet_ntop(AF_INET6, (const void *)&srv.sin6_addr,
- in6_str, sizeof(in6_str)), strerror(errno));
- }