summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorme_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac>2013-07-31 18:37:39 +0000
committerme_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac>2013-07-31 18:37:39 +0000
commit4e81d7d84eabf6b2493065cef2d2235b6e523837 (patch)
treec45872ca61ce2ef72a4f483275d97aa86e1ef091
parent1acde15b8f9628e6a10308a9fc0004f7f6524b8f (diff)
downloadpica-pica-4e81d7d84eabf6b2493065cef2d2235b6e523837.tar.gz
pica-pica-4e81d7d84eabf6b2493065cef2d2235b6e523837.zip
set SO_REUSEADDR on listening socket
git-svn-id: svn://localhost/project_picapica/trunk@254 fb96df88-216d-11de-830c-f3023f12d8ac
-rwxr-xr-xPICA_node.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/PICA_node.c b/PICA_node.c
index 3d9aa39..aa0d7c5 100755
--- a/PICA_node.c
+++ b/PICA_node.c
@@ -1228,6 +1228,7 @@ int PICA_node_init()
{
struct sockaddr_in sd;
int ret;
+int flag;
SSL_load_error_strings();
SSL_library_init();
@@ -1244,6 +1245,12 @@ listen_comm_sck=socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if (listen_comm_sck == -1)
PICA_fatal("unable to get socket - %s", strerror(errno));
+flag = 1; //enable SO_REUSEADDR
+if (0 != setsockopt(listen_comm_sck, SOL_SOCKET, SO_REUSEADDR, &flag, sizeof(flag)))
+{
+ PICA_error("failed to set SO_REUSEADDR on socket: %s", strerror(errno));
+}
+
memset(&sd,0,sizeof(sd));
sd.sin_family=AF_INET;
@@ -2246,7 +2253,7 @@ while(nl)
if (ret<=0)
{
if (ret < 0)
- perror("n2n_read recv:");//debug
+ PICA_debug3("recv() failed in process_n2n_read(): %s", strerror(errno));
kill_ptr=nl;
}
else