From c23c5b426e075a046a57cb06b749ab2088639656 Mon Sep 17 00:00:00 2001 From: Daniel-Constantin Mierla Date: Sun, 30 Jul 2017 18:33:55 +0200 Subject: [PATCH] ctl: safety check for closing fd (cherry picked from commit 24c4f357ecc83ded4c8890ed4440a0252191b0a9) --- src/modules/ctl/ctl.c | 2 +- src/modules/ctl/ctrl_socks.c | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/modules/ctl/ctl.c b/src/modules/ctl/ctl.c index 2126a00ac76..6f627dcb641 100644 --- a/src/modules/ctl/ctl.c +++ b/src/modules/ctl/ctl.c @@ -376,7 +376,7 @@ static void mod_destroy(void) switch(cs->transport){ case UNIXS_SOCK: case UNIXD_SOCK: - close(cs->fd); + if(cs->fd>=0) close(cs->fd); cs->fd=-1; if (cs->write_fd!=-1){ close(cs->write_fd); diff --git a/src/modules/ctl/ctrl_socks.c b/src/modules/ctl/ctrl_socks.c index 1538346206c..9e800a907b4 100644 --- a/src/modules/ctl/ctrl_socks.c +++ b/src/modules/ctl/ctrl_socks.c @@ -133,7 +133,6 @@ struct id_list* parse_listen_id(char* l, int len, enum socket_protos def) end: /* fix all the stuff */ - if (name==0) goto error; if (proto==UNKNOWN_SOCK){ /* try to guess */ if (port_str){