luci-app-rtbwmon: clean on uninstall

This commit is contained in:
jjm2473 2023-03-02 18:38:35 +08:00
parent ff27478d55
commit 9df81bdd53
2 changed files with 27 additions and 8 deletions

View File

@ -2,7 +2,7 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_VERSION:=1.0.0-1 PKG_VERSION:=1.0.1-1
PKG_RELEASE:= PKG_RELEASE:=
PKG_MAINTAINER:=jjm2473 <jjm2473@gmail.com> PKG_MAINTAINER:=jjm2473 <jjm2473@gmail.com>
@ -10,6 +10,14 @@ LUCI_TITLE:=LuCI realtime client bandwidth monitor
LUCI_PKGARCH:=all LUCI_PKGARCH:=all
LUCI_DEPENDS:=+iptables LUCI_DEPENDS:=+iptables
define Package/luci-app-rtbwmon/prerm
#!/bin/sh
if [ -z "$${IPKG_INSTROOT}" ]; then
/usr/libexec/rtbwmon.sh prerm
fi
exit 0
endef
include $(TOPDIR)/feeds/luci/luci.mk include $(TOPDIR)/feeds/luci/luci.mk
# call BuildPackage - OpenWrt buildroot signature # call BuildPackage - OpenWrt buildroot signature

View File

@ -123,16 +123,13 @@ update() {
exec 1000>/var/run/rtbwmon.lock exec 1000>/var/run/rtbwmon.lock
flock -n 1000 2>/dev/null || { flock -n 1000 2>/dev/null || {
flock 1000 2>/dev/null flock 1000 2>/dev/null
[ -f /var/run/rtbwmon.csv ] && { [ -f /var/run/rtbwmon.csv ] && cat /var/run/rtbwmon.csv
cat /var/run/rtbwmon.csv flock -u 1000 2>/dev/null
flock -u 1000 2>/dev/null return 1
return 1
}
} }
if [ -z "$WAN_INTERFACE" ]; then if [ -z "$WAN_INTERFACE" ]; then
do_clean do_clean
> /var/run/rtbwmon.csv
else else
do_update "$WAN_INTERFACE" 2>/dev/null do_update "$WAN_INTERFACE" 2>/dev/null
cat /var/run/rtbwmon.csv cat /var/run/rtbwmon.csv
@ -162,7 +159,7 @@ run_gc() {
break break
fi fi
done done
clean [ -f /var/run/rtbwmon.csv ] && clean
flock -u 1001 flock -u 1001
return 0 return 0
} }
@ -173,6 +170,17 @@ show_ifaces() {
ip addr show scope global up | grep '^ \+inet ' | sed -n -e 's/^.* \([^ ]\+\)$/\1/p' | grep -Fv "$WAN_INTERFACE" | sort -u ip addr show scope global up | grep '^ \+inet ' | sed -n -e 's/^.* \([^ ]\+\)$/\1/p' | grep -Fv "$WAN_INTERFACE" | sort -u
} }
prerm() {
# avoid invoke
chmod 644 /usr/libexec/rtbwmon.sh
exec 1000>/var/run/rtbwmon.lock
flock 1000
sleep 1 </dev/null >/dev/null 2>&1 1000>/dev/null
do_clean
flock -u 1000
}
case $1 in case $1 in
"clean") "clean")
clean clean
@ -186,6 +194,9 @@ case $1 in
"gc") "gc")
run_gc run_gc
;; ;;
"prerm")
prerm
;;
*) *)
echo \ echo \
"Usage: $0 {update|clean|ifaces} "Usage: $0 {update|clean|ifaces}