From 77d93a35c3508e8f06d3327a742fd5471849a1b2 Mon Sep 17 00:00:00 2001 From: Art Cancro Date: Mon, 11 Jul 2011 13:39:44 -0400 Subject: [PATCH] Removed a comment documenting the behavior of a bug which we have since fixed. --- webcit/serv_func.c | 2 -- webcit/tcp_sockets.c | 18 ++++++++++++------ 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/webcit/serv_func.c b/webcit/serv_func.c index 0c8924551..f4db52290 100644 --- a/webcit/serv_func.c +++ b/webcit/serv_func.c @@ -204,8 +204,6 @@ int GetConnected (void) return 1; } - /* 2010jun03: every now and then the connection to Citadel dies before this point. why? */ - /* * From what host is our user connecting? Go with * the host at the other end of the HTTP socket, diff --git a/webcit/tcp_sockets.c b/webcit/tcp_sockets.c index b6953755e..da483deab 100644 --- a/webcit/tcp_sockets.c +++ b/webcit/tcp_sockets.c @@ -52,7 +52,7 @@ int uds_connectsock(char *sockpath) s = socket(AF_UNIX, SOCK_STREAM, 0); if (s < 0) { - syslog(1, "Can't create socket[%s]: %s\n", sockpath, strerror(errno)); + syslog(1, "Can't create socket [%s]: %s\n", sockpath, strerror(errno)); return(-1); } @@ -185,6 +185,7 @@ int StrBuf_ServGetln(StrBuf *buf) syslog(1, "StrBuf_ServGetln(): Server connection broken: %s\n", (ErrStr)?ErrStr:""); wc_backtrace(); + if (WCC->serv_sock > 0) close(WCC->serv_sock); WCC->serv_sock = (-1); WCC->connected = 0; WCC->logged_in = 0; @@ -220,6 +221,7 @@ int StrBuf_ServGetBLOBBuffered(StrBuf *buf, long BlobSize) syslog(1, "StrBuf_ServGetBLOBBuffered(): Server connection broken: %s\n", (ErrStr)?ErrStr:""); wc_backtrace(); + if (WCC->serv_sock > 0) close(WCC->serv_sock); WCC->serv_sock = (-1); WCC->connected = 0; WCC->logged_in = 0; @@ -245,6 +247,7 @@ int StrBuf_ServGetBLOB(StrBuf *buf, long BlobSize) syslog(1, "StrBuf_ServGetBLOB(): Server connection broken: %s\n", (ErrStr)?ErrStr:""); wc_backtrace(); + if (WCC->serv_sock > 0) close(WCC->serv_sock); WCC->serv_sock = (-1); WCC->connected = 0; WCC->logged_in = 0; @@ -315,7 +318,7 @@ int serv_write(const char *buf, int nbytes) const char *ErrStr = strerror(errno); syslog(1, "serv_write(): Server connection broken: %s\n", (ErrStr)?ErrStr:""); - close(WCC->serv_sock); + if (WCC->serv_sock > 0) close(WCC->serv_sock); WCC->serv_sock = (-1); WCC->connected = 0; WCC->logged_in = 0; @@ -422,6 +425,7 @@ int serv_read_binary(StrBuf *Ret, size_t total_len, StrBuf *Buf) if (rc < 0) { syslog(1, "Server connection broken during download\n"); wc_backtrace(); + if (WCC->serv_sock > 0) close(WCC->serv_sock); WCC->serv_sock = (-1); WCC->connected = 0; WCC->logged_in = 0; @@ -577,11 +581,13 @@ int webcit_tcp_server(char *ip_addr, int port_number, int queue_len) if (b < 0) { syslog(1, "Can't bind: %s\n", strerror(errno)); + close(s); return (-WC_EXIT_BIND); } if (listen(s, queue_len) < 0) { syslog(1, "Can't listen: %s\n", strerror(errno)); + close(s); return (-WC_EXIT_BIND); } return (s); @@ -621,14 +627,14 @@ int webcit_uds_server(char *sockpath, int queue_len) } if (bind(s, (struct sockaddr *)&addr, sizeof(addr)) < 0) { - syslog(1, "webcit: Can't bind: %s\n", - strerror(errno)); + syslog(1, "webcit: Can't bind: %s\n", strerror(errno)); + close(s); return (-WC_EXIT_BIND); } if (listen(s, actual_queue_len) < 0) { - syslog(1, "webcit: Can't listen: %s\n", - strerror(errno)); + syslog(1, "webcit: Can't listen: %s\n", strerror(errno)); + close(s); return (-WC_EXIT_BIND); } -- 2.30.2