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);
}
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;
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;
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;
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;
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;
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);
}
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);
}