Я получаю ошибку сегментации при вызове функции bind()
в c.
Когда код попадает в эту строку, я получаю ошибку сегментации, и я не понимаю, почему. Чего я хочу добиться, так это связать сокет с портом 546
для прослушивания сообщений DHCPv6.
struct sockaddr_in6 sockaddrIn6;
memset(&sockaddrIn6, 0, sizeof(sockaddrIn6));
sockaddrIn6.sin6_scope_id=if_nametoindex("enp0s8");
sockaddrIn6.sin6_family = AF_INET6;
sockaddrIn6.sin6_port = htons(546);
sockaddrIn6.sin6_addr = in6addr_any;
if (bind(return_sock, (struct sockaddr *)&sockaddrIn6, sizeof(sockaddrIn6)) < 0) {
perror("Error in bind(): ");
exit(-1);
}