if (setsockopt(fd, IPPROTO_IP, IP_ADD_MEMBERSHIP, &mreq, sizeof(mreq)) < 0) {
fprintf(stderr, "failed to join multicast group: %m\n");
close(fd);
- fd = -1;
+ iface->fd.fd = -1;
return -1;
}
if (setsockopt(fd, IPPROTO_IPV6, IPV6_ADD_MEMBERSHIP, &mreq, sizeof(mreq)) < 0) {
fprintf(stderr, "failed to join multicast group: %m\n");
close(fd);
- fd = -1;
+ iface->fd.fd = -1;
return -1;
}