From 8416ec7ea096ebca28a95853a756f3d7dc4a9339 Mon Sep 17 00:00:00 2001 From: Alex 'AdUser' Z Date: Wed, 21 Sep 2016 11:34:04 +1000 Subject: [PATCH] * f2b_cmsg_process() : use default reply --- src/daemon.c | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/src/daemon.c b/src/daemon.c index bb0845e..7fb9ab2 100644 --- a/src/daemon.c +++ b/src/daemon.c @@ -110,17 +110,15 @@ f2b_cmsg_process(const f2b_cmsg_t *msg, char *res, size_t ressize) { } } + strlcpy(res, "ok", ressize); /* default reply */ if (msg->type == CMD_PING) { - strlcpy(res, "ok", ressize); + /* nothing to do */ } else if (msg->type == CMD_RELOAD) { state = reconfig; - strlcpy(res, "ok", ressize); } else if (msg->type == CMD_ROTATE) { state = logrotate; - strlcpy(res, "ok", ressize); } else if (msg->type == CMD_SHUTDOWN) { state = stop; - strlcpy(res, "ok", ressize); } else if (msg->type == CMD_STATUS) { snprintf(line, sizeof(line), "pid: %u\npidfile: %s\ncsocket: %s\njails:\n", getpid(), opts.pidfile_path, opts.csocket_path); @@ -151,22 +149,17 @@ f2b_cmsg_process(const f2b_cmsg_t *msg, char *res, size_t ressize) { jail->ipaddrs = f2b_addrlist_append(jail->ipaddrs, addr); } f2b_jail_ban(jail, addr); - strlcpy(res, "ok", ressize); } else if (msg->type == CMD_JAIL_IP_RELEASE) { - if ((addr = f2b_addrlist_lookup(jail->ipaddrs, args[1])) != NULL) { - f2b_jail_unban(jail, addr); - } else { + if ((addr = f2b_addrlist_lookup(jail->ipaddrs, args[1])) == NULL) { snprintf(res, ressize, "can't find ip '%s' in jail '%s'\n", args[1], args[0]); + return; } - strlcpy(res, "ok", ressize); + f2b_jail_unban(jail, addr); } else if (msg->type == CMD_JAIL_FILTER_STATS) { f2b_filter_stats(jail->filter, res, ressize); } else if (msg->type == CMD_JAIL_FILTER_RELOAD) { - if (f2b_filter_reload(jail->filter)) { - strlcpy(res, "ok", ressize); - } else { + if (f2b_filter_reload(jail->filter) == false) strlcpy(res, f2b_filter_error(jail->filter), ressize); - } } else { strlcpy(res, "error: unsupported command type", ressize); }