banip: update 0.3.6 10483/head
authorDirk Brenken <dev@brenken.org>
Wed, 6 Nov 2019 19:45:20 +0000 (20:45 +0100)
committerDirk Brenken <dev@brenken.org>
Wed, 6 Nov 2019 19:45:20 +0000 (20:45 +0100)
* 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>
net/banip/Makefile
net/banip/files/banip.init
net/banip/files/banip.service
net/banip/files/banip.sh

index d2a5559749ee86962415392ba4a4abf12517be4d..111213b6a8f53f2926d03e8ee71a571438df9a34 100644 (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>
index be60bec97078ac68776e60f1868da879585d9459..e9abfebadfeeeb9d1c2981f243cb581dc84bb3d5 100755 (executable)
@@ -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
index e4213b072d7dfbbd571f830507b638f2768ef26b..45d1a62fafef8aa38d613c31bd7636d120433296 100755 (executable)
@@ -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
index 87d79eac4be50945e646802c331a8482d22e0c25..d4d5638cafb78a3d35e396cea63b530201e96919 100755 (executable)
@@ -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