diff options
author | Johnny Willemsen <jwillemsen@remedy.nl> | 2014-10-27 07:56:26 +0000 |
---|---|---|
committer | Johnny Willemsen <jwillemsen@remedy.nl> | 2014-10-27 07:56:26 +0000 |
commit | 1905614fd898682bace1c9e6c83e81dbdd4dbc4d (patch) | |
tree | 670a60430c61cf582c985b54b6feca52ac2e948b | |
parent | 0cd70fe3f80cd2a9a368026cdb17d1d8d5a9d099 (diff) | |
download | ATCD-1905614fd898682bace1c9e6c83e81dbdd4dbc4d.tar.gz |
Mon Oct 27 07:57:57 UTC 2014 Johnny Willemsen <jwillemsen@remedy.nl>
* ace/OS_NS_sys_socket.inl:
Removed the ignore of SO_REUSEADDR on windows, this is needed
for ACE_SOCK_Dgram_Bcast to work, see bugzilla 4189. Also
removed
the Windows specific change of SO_REUSEPORT to SO_REUSEADDR,
this
are different flags that we should not merge at this level.
-rw-r--r-- | ACE/ChangeLog | 8 | ||||
-rw-r--r-- | ACE/ace/OS_NS_sys_socket.inl | 22 |
2 files changed, 8 insertions, 22 deletions
diff --git a/ACE/ChangeLog b/ACE/ChangeLog index 8c3e076a6f1..223dcc490bc 100644 --- a/ACE/ChangeLog +++ b/ACE/ChangeLog @@ -1,3 +1,11 @@ +Mon Oct 27 07:57:57 UTC 2014 Johnny Willemsen <jwillemsen@remedy.nl> + + * ace/OS_NS_sys_socket.inl: + Removed the ignore of SO_REUSEADDR on windows, this is needed + for ACE_SOCK_Dgram_Bcast to work, see bugzilla 4189. Also removed + the Windows specific change of SO_REUSEPORT to SO_REUSEADDR, this + are different flags that we should not merge at this level. + Fri Oct 24 18:41:42 UTC 2014 Johnny Willemsen <jwillemsen@remedy.nl> * tests/Bug_4189_Regression_Test.cpp: diff --git a/ACE/ace/OS_NS_sys_socket.inl b/ACE/ace/OS_NS_sys_socket.inl index 75a6a5c1281..0465aa38792 100644 --- a/ACE/ace/OS_NS_sys_socket.inl +++ b/ACE/ace/OS_NS_sys_socket.inl @@ -1,5 +1,4 @@ // -*- C++ -*- -// // $Id$ #include "ace/OS_NS_errno.h" @@ -870,27 +869,6 @@ ACE_OS::setsockopt (ACE_HANDLE handle, ACE_UNUSED_ARG (optlen); ACE_NOTSUP_RETURN (-1); #else -#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0) && defined(SO_REUSEPORT) - // To work around an inconsistency with Microsofts implementation of - // sockets, we will check for SO_REUSEADDR, and ignore it. Winsock - // always behaves as if SO_REUSEADDR=1. Some implementations have - // the same behaviour as Winsock, but use a new name for - // it. SO_REUSEPORT. If you want the normal behaviour for - // SO_REUSEADDR=0, then NT 4 sp4 and later supports - // SO_EXCLUSIVEADDRUSE. This also requires using an updated Platform - // SDK so it was decided to ignore the option for now. (Especially - // since Windows always sets SO_REUSEADDR=1, which we can mimic by doing - // nothing.) - if (level == SOL_SOCKET) { - if (optname == SO_REUSEADDR) { - return 0; // Not supported by Winsock - } - if (optname == SO_REUSEPORT) { - optname = SO_REUSEADDR; - } - } -#endif /*ACE_HAS_WINSOCK2*/ - int result; ACE_SOCKCALL (::setsockopt ((ACE_SOCKET) handle, level, |