Browse Source

* fix jail defaults & stats

master
Alex 'AdUser' Z 3 years ago
parent
commit
dce63b7ecd
  1. 27
      src/jail.c
  2. 6
      src/jail.h

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

6
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 */

Loading…
Cancel
Save