Chromium Code Reviews| Index: net/udp/udp_socket_libevent.cc |
| diff --git a/net/udp/udp_socket_libevent.cc b/net/udp/udp_socket_libevent.cc |
| index beb1dcaf87d896064cf6f4ce8220442b94f31a18..9a44945622975cd0925c19b4bc5c8fe2547cf72e 100644 |
| --- a/net/udp/udp_socket_libevent.cc |
| +++ b/net/udp/udp_socket_libevent.cc |
| @@ -465,16 +465,20 @@ int UDPSocketLibevent::SetSocketOptions() { |
| sizeof(true_value)); |
| if (rv < 0) |
| return MapSystemError(errno); |
| -#if defined(SO_REUSEPORT) |
| + } |
| + if (socket_options_ & SOCKET_OPTION_BROADCAST) { |
| + int rv; |
| +#if defined(OS_MACOSX) |
| + // SO_REUSEPORT on OSX permits multiple instances of a program to |
|
wtc
2012/09/18 14:40:32
Did you mean "multiple instances of the same progr
ygorshenin1
2012/09/18 14:54:22
I thought "multiple processes" will be better. Tha
|
| + // each receive UDP multicast or broadcast datagrams destined for |
| + // the bound port. |
| rv = setsockopt(socket_, SOL_SOCKET, SO_REUSEPORT, &true_value, |
| sizeof(true_value)); |
| if (rv < 0) |
| return MapSystemError(errno); |
| -#endif |
| - } |
| - if (socket_options_ & SOCKET_OPTION_BROADCAST) { |
| - int rv = setsockopt(socket_, SOL_SOCKET, SO_BROADCAST, &true_value, |
| - sizeof(true_value)); |
| +#endif // defined(OS_MACOSX) |
| + rv = setsockopt(socket_, SOL_SOCKET, SO_BROADCAST, &true_value, |
| + sizeof(true_value)); |
| if (rv < 0) |
| return MapSystemError(errno); |
| } |