From dce63b7ecdc9a47f973200d405cfc9cf9ff3d235 Mon Sep 17 00:00:00 2001 From: Alex 'AdUser' Z Date: Mon, 25 Jan 2021 14:21:22 +1000 Subject: [PATCH] * fix jail defaults & stats --- src/jail.c | 27 ++++++++++++--------------- src/jail.h | 6 +++--- 2 files changed, 15 insertions(+), 18 deletions(-) diff --git a/src/jail.c b/src/jail.c index 48ac4ee..64710b6 100644 --- a/src/jail.c +++ b/src/jail.c @@ -25,9 +25,10 @@ f2b_jail_t *jails = NULL; static f2b_jail_t defaults = { - .bantime = DEFAULT_BANTIME, - .findtime = DEFAULT_FINDTIME, - .maxretry = DEFAULT_MAXRETRY, + .bantime = DEFAULT_BANTIME, + .findtime = DEFAULT_FINDTIME, + .expiretime = DEFAULT_EXPIRETIME, + .maxretry = DEFAULT_MAXRETRY, }; void @@ -515,19 +516,15 @@ void f2b_jail_cmd_status(char *res, size_t ressize, f2b_jail_t *jail) { const char *fmt = "name: %s\n" + "maxretry: %d\n" "flags:\n" " enabled: %s\n" " state: %s\n" " filter: %s\n" - "maxretry: %d\n" "times:\n" - " bantime: %d (+%d%%)\n" - " findtime: %d (+%d%%)\n" - " expiretime: %d (+%d%%)\n" - "extend:\n" - " bantime: %.1f\n" - " findtime: %.1f\n" - " expiretime: %d\n" + " bantime: %.1f hrs (+%d%%)\n" + " findtime: %.1f min (+%d%%)\n" + " expiretime: %.1f min (+%d%%)\n" "stats:\n" " hosts: %d\n" " matches: %d\n" @@ -537,13 +534,13 @@ f2b_jail_cmd_status(char *res, size_t ressize, f2b_jail_t *jail) { assert(jail != NULL); snprintf(res, ressize, fmt, jail->name, + jail->maxretry, jail->flags & JAIL_ENABLED ? "yes" : "no", jail->flags & JAIL_HAS_STATE ? "yes" : "no", jail->flags & JAIL_HAS_FILTER ? "yes" : "no", - jail->maxretry, - jail->bantime, (int) (jail->bantime_extend - 1.0) * 100, - jail->findtime, (int) (jail->findtime_extend - 1.0) * 100, - jail->expiretime, (int) (jail->expiretime_extend - 1.0) * 100, + jail->bantime / 3600, (int) jail->bantime_extend * 100, + jail->findtime / 60, (int) jail->findtime_extend * 100, + jail->expiretime / 60, (int) jail->expiretime_extend * 100, jail->stats.hosts, jail->stats.matches, jail->stats.bans); diff --git a/src/jail.h b/src/jail.h index 366f612..ee2dc65 100644 --- a/src/jail.h +++ b/src/jail.h @@ -28,9 +28,9 @@ typedef struct f2b_jail_t { time_t bantime; /**< option: host ban time on excess activity (seconds) */ time_t expiretime; /**< option: forget about host after this time with no activity (seconds, for banned hosts - after it's release, for not banned - after latest match) */ /** time period length modifiers for already banned hosts */ - float findtime_extend; /**< findtime modifier for already banned hosts in past (float) */ - float bantime_extend; /**< bantime modifier for already banned hosts in past (float) */ - float expiretime_extend; /**< expiretime modifier for already banned hosts in past (float) */ + float findtime_extend; /**< (float, 0.0 - 1.0) */ + float bantime_extend; /**< (float, 0.0 - 1.0) */ + float expiretime_extend; /**< (float, 0.0 - 1.0) */ /* jail stats */ struct { unsigned int hosts; /**< number of tracked hosts */