Set SO_BROADCAST socket option for UDP sockets.
This commit is contained in:
parent
6e32a2886f
commit
69817232ff
1 changed files with 7 additions and 0 deletions
|
@ -124,6 +124,13 @@ static int _socket_create(IP::Type &p_type, int type, int protocol) {
|
|||
WARN_PRINT("Unable to set/unset IPv4 address mapping over IPv6");
|
||||
}
|
||||
}
|
||||
if (protocol == IPPROTO_UDP && p_type != IP::TYPE_IPV6) {
|
||||
// Enable broadcasting for UDP sockets if it's not IPv6 only (IPv6 has no broadcast option).
|
||||
int broadcast = 1;
|
||||
if (setsockopt(sockfd, SOL_SOCKET, SO_BROADCAST, (char *)&broadcast, sizeof(broadcast)) != 0) {
|
||||
WARN_PRINT("Error when enabling broadcasting");
|
||||
}
|
||||
}
|
||||
|
||||
return sockfd;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue