banip: update 0.3.6

* more startup tweaks
* re-use f_log function in helper scripts
* small fixes / polish up for forthcoming 19.07 release

Signed-off-by: Dirk Brenken <dev@brenken.org>
This commit is contained in:
Dirk Brenken 2019-11-06 20:45:20 +01:00
parent fcea2f75c3
commit 72fba3a17b
No known key found for this signature in database
GPG Key ID: 9D71CD547BFAE684
4 changed files with 38 additions and 38 deletions

View File

@ -6,7 +6,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=banip
PKG_VERSION:=0.3.5
PKG_VERSION:=0.3.6
PKG_RELEASE:=1
PKG_LICENSE:=GPL-3.0-or-later
PKG_MAINTAINER:=Dirk Brenken <dev@brenken.org>

View File

@ -12,14 +12,15 @@ ban_init="/etc/init.d/banip"
ban_script="/usr/bin/banip.sh"
ban_pidfile="/var/run/banip.pid"
if [ -s "${ban_pidfile}" ] && [ "${action}" != "help" ] && [ "${action}" != "status" ]
if [ -s "${ban_pidfile}" ] && \
[ "${action}" != "help" ] && [ "${action}" != "status" ] && [ "${action}" != "boot" ]
then
exit 1
fi
boot()
{
ban_boot="1"
[ -s "${ban_pidfile}" ] && > "${ban_pidfile}"
rc_procd start_service
}
@ -27,15 +28,14 @@ start_service()
{
if [ "$("${ban_init}" enabled; printf "%u" ${?})" -eq 0 ]
then
if [ "${ban_boot}" = "1" ]
if [ "${action}" = "boot" ]
then
return 0
fi
local nice="$(uci_get banip extra ban_nice "0")"
procd_open_instance "banip"
procd_set_param command "${ban_script}" "${@}"
procd_set_param pidfile "${ban_pidfile}"
procd_set_param nice "${nice}"
procd_set_param nice "$(uci_get banip extra ban_nice "0")"
procd_set_param stdout 1
procd_set_param stderr 1
procd_close_instance

View File

@ -13,19 +13,23 @@ ban_sshdaemon="${2}"
ban_logger="$(command -v logger)"
ban_logread="$(command -v logread)"
f_log()
{
local class="${1}" log_msg="${2}"
if [ -x "${ban_logger}" ]
then
"${ban_logger}" -p "${class}" -t "banIP-${ban_ver}[${$}]" "${log_msg}"
else
printf "%s %s %s\\n" "${class}" "banIP-${ban_ver}[${$}]" "${log_msg}"
fi
}
if [ -x "${ban_logread}" ]
then
f_log "info" "log/banIP service started"
"${ban_logread}" -f -e "${ban_sshdaemon}\|luci: failed login" | \
{ grep -qE "Exit before auth|luci: failed login|[0-9]+ \[preauth\]$"; [ $? -eq 0 ] && /etc/init.d/banip refresh; }
class="info"
log_msg="log/banIP service started"
else
class="err"
log_msg="can't start log/banIP service"
fi
if [ -x "${ban_logger}" ]
then
"${ban_logger}" -p "${class}" -t "banIP-${ban_ver}[${$}]" "${log_msg}"
else
printf "%s %s %s\\n" "${class}" "banIP-${ban_ver}[${$}]" "${log_msg}"
f_log "err" "can't start log/banIP service"
fi

View File

@ -13,7 +13,7 @@
#
LC_ALL=C
PATH="/usr/sbin:/usr/bin:/sbin:/bin"
ban_ver="0.3.5"
ban_ver="0.3.6"
ban_basever=""
ban_enabled=0
ban_automatic="1"
@ -221,21 +221,24 @@ f_envcheck()
cnt=$((cnt+1))
sleep 1
done
utils="aria2c curl wget uclient-fetch"
for util in ${utils}
do
if { [ "${util}" = "uclient-fetch" ] && [ -n "$(printf "%s\\n" "${packages}" | grep "^libustream-")" ]; } || \
{ [ "${util}" = "wget" ] && [ -n "$(printf "%s\\n" "${packages}" | grep "^wget -")" ]; } || \
{ [ "${util}" != "uclient-fetch" ] && [ "${util}" != "wget" ]; }
then
ban_fetchutil="$(command -v "${util}")"
if [ -x "${ban_fetchutil}" ]
if [ -n "${packages}" ]
then
utils="aria2c curl wget uclient-fetch"
for util in ${utils}
do
if { [ "${util}" = "uclient-fetch" ] && [ -n "$(printf "%s\\n" "${packages}" | grep "^libustream-")" ]; } || \
{ [ "${util}" = "wget" ] && [ -n "$(printf "%s\\n" "${packages}" | grep "^wget -")" ]; } || \
{ [ "${util}" != "uclient-fetch" ] && [ "${util}" != "wget" ]; }
then
break
ban_fetchutil="$(command -v "${util}")"
if [ -x "${ban_fetchutil}" ]
then
break
fi
fi
fi
unset ban_fetchutil util
done
unset ban_fetchutil util
done
fi
else
util="${ban_fetchutil}"
ban_fetchutil="$(command -v "${util}")"
@ -296,7 +299,7 @@ f_temp()
f_log "err" "the temp directory '/tmp' does not exist or has not been mounted yet, please create the directory or raise the 'ban_triggerdelay' to defer the banIP start"
fi
if [ ! -s "${ban_pidfile}" ]
if [ ! -f "${ban_pidfile}" ] || [ ! -s "${ban_pidfile}" ]
then
printf "%s" "${$}" > "${ban_pidfile}"
fi
@ -582,13 +585,6 @@ f_log()
f_ipset destroy
f_rmbackup
f_rmtemp
log_msg="Please also check 'https://github.com/openwrt/packages/blob/master/net/banip/files/README.md'"
if [ -x "${ban_logger}" ]
then
"${ban_logger}" -p "${class}" -t "banIP-${ban_ver}[${$}]" "${log_msg}"
else
printf "%s %s %s\\n" "${class}" "banIP-${ban_ver}[${$}]" "${log_msg}"
fi
exit 1
fi
fi