#!/bin/bash

set -e
set -o pipefail
set -u

type -p fail2ban-client > /dev/null || exit 1
type -p awk > /dev/null || (echo This script needs awk to work. ; exit 1)
type -p jq > /dev/null || (echo This script needs jq to work. ; exit 1)
type -p sqlite3 > /dev/null || (echo This script needs sqlite3 to work. ; exit 1)

DBPURGEAGE=$(fail2ban-client -d | awk /set.*dbpurgeage/ | sed "s/'/\"/g"| jq -r .[2])
DBFILE=$(fail2ban-client -d | awk /set.*dbfile/ | sed "s/'/\"/g" | jq -r .[2])

#echo DB is $DBFILE
#echo Purge age is $DBPURGEAGE

[ ! -z "$DBPURGEAGE" ]
[ -e "$DBFILE" ]

sqlite3 "$DBFILE"  "DELETE FROM bans where timeofban < strftime('%s','now','-$DBPURGEAGE seconds')"
