summaryrefslogtreecommitdiff
path: root/pr/tests/servr_ku.c
diff options
context:
space:
mode:
authorwtc%netscape.com <devnull@localhost>1999-10-26 01:58:10 +0000
committerwtc%netscape.com <devnull@localhost>1999-10-26 01:58:10 +0000
commit31d015914bdd3a4a82736576bc3d17feca17bc28 (patch)
treeb03b8f97e0961697672c12a74cc4215847d1606d /pr/tests/servr_ku.c
parentce44957c957676c2f316671fd480a981f8bd47d1 (diff)
downloadnspr-hg-31d015914bdd3a4a82736576bc3d17feca17bc28.tar.gz
Bugzilla bug #17184: PR_Bind should not set the SO_REUSEADDR socket
option. The HAVE_SOCKET_REUSEADDR macro is now obsolete. Tests that depended on the old PR_Bind behavior needs to call PR_SetSocketOption before PR_Bind. Modified files: _beos.h, _os2.h, _unixos.h, _win16.h, _win95.h, _winnt.h, prsocket.c, ptio.c, accept.c, acceptread.c, sel_spd.c, servr_kk.c, servr_ku.c, servr_uk.c, and servr_uu.c.
Diffstat (limited to 'pr/tests/servr_ku.c')
-rw-r--r--pr/tests/servr_ku.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/pr/tests/servr_ku.c b/pr/tests/servr_ku.c
index 9121dc42..53a117fa 100644
--- a/pr/tests/servr_ku.c
+++ b/pr/tests/servr_ku.c
@@ -222,6 +222,7 @@ PRFileDesc *
ServerSetup(void)
{
PRFileDesc *listenSocket;
+ PRSocketOptionData sockOpt;
PRNetAddr serverAddr;
PRThread *WorkerThread;
@@ -231,6 +232,16 @@ ServerSetup(void)
return NULL;
}
+ sockOpt.option = PR_SockOpt_Reuseaddr;
+ sockOpt.value.reuse_addr = PR_TRUE;
+ if ( PR_SetSocketOption(listenSocket, &sockOpt) == PR_FAILURE) {
+ if (debug_mode) printf("\tServer error setting socket option: OS error %d\n",
+ PR_GetOSError());
+ else failed_already=1;
+ PR_Close(listenSocket);
+ return NULL;
+ }
+
memset(&serverAddr, 0, sizeof(PRNetAddr));
serverAddr.inet.family = PR_AF_INET;
serverAddr.inet.port = PR_htons(PORT);