mirror of
https://dev.iopsys.eu/feed/iopsys.git
synced 2025-12-10 07:44:50 +01:00
icwmp: Reduce I/O on filesystem
This commit is contained in:
parent
25a861a55f
commit
146bc95709
7 changed files with 70 additions and 8 deletions
|
|
@ -9,7 +9,7 @@ PKG_VERSION:=6.1.7
|
|||
PKG_FIXUP:=autoreconf
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/bbf.git
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=683032db93a621911f3608adee04b03a4aedda7a
|
||||
PKG_SOURCE_VERSION:=2ea9a2e311148c9721718058e2ca5d63d882c08f
|
||||
PKG_RELEASE=$(PKG_SOURCE_VERSION)
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ PKG_VERSION:=8.2.6-2021-11-03
|
|||
PKG_FIXUP:=autoreconf
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/icwmp.git
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=61a71148daee9dfcdd5d94235c1acd0b57d2b8f1
|
||||
PKG_SOURCE_VERSION:=0aa8c57c419e05a6f7ac591339d886341166c7d6
|
||||
PKG_RELEASE=$(PKG_SOURCE_VERSION)
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
|
|
|
|||
|
|
@ -5,7 +5,6 @@ config acs 'acs'
|
|||
option periodic_inform_enable 'true'
|
||||
option periodic_inform_interval '1800'
|
||||
option periodic_inform_time '0001-01-01T00:00:00Z'
|
||||
option ParameterKey ''
|
||||
option dhcp_discovery 'enable'
|
||||
# compression possible configs: GZIP, Deflate, Disabled
|
||||
option compression 'Disabled'
|
||||
|
|
|
|||
|
|
@ -64,6 +64,24 @@ handle_icwmp_restart() {
|
|||
network_get_device curdev $INTERFACE
|
||||
[ -n "$curdev" ] && echo $curdev > $devfile || rm -f $devfile
|
||||
|
||||
if [ ! -f /var/state/cwmp ]
|
||||
then
|
||||
if [ -f /etc/icwmpd/cwmp ]
|
||||
then
|
||||
uci -c /etc/icwmpd delete cwmp.acs
|
||||
uci -c /etc/icwmpd commit cwmp
|
||||
cp /etc/icwmpd/cwmp /var/state/cwmp
|
||||
else
|
||||
touch /var/state/cwmp
|
||||
fi
|
||||
fi
|
||||
|
||||
uci -q -c /var/state/ get cwmp.cpe
|
||||
if [ "$?" -ne 0 ]; then
|
||||
unnamedcpe=`uci -q -c /var/state/ add cwmp cpe`
|
||||
uci -c /var/state/ -q rename cwmp.$unnamedcpe='cpe'
|
||||
fi
|
||||
|
||||
local vendorspecinf=`ubus call network.interface.${defwan} status | jsonfilter -e "@.data.vendorspecinf"`
|
||||
[ -n "$vendorspecinf" ] && {
|
||||
local url=""
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ include /lib/network
|
|||
. /usr/share/libubox/jshn.sh
|
||||
|
||||
START=99
|
||||
STOP=10
|
||||
STOP=2
|
||||
|
||||
USE_PROCD=1
|
||||
PROG="/usr/sbin/icwmpd"
|
||||
|
|
@ -158,6 +158,45 @@ service_running() {
|
|||
ubus wait_for usp.raw
|
||||
}
|
||||
|
||||
copy_cwmp_etc_files_to_varstate() {
|
||||
if [ ! -f /var/state/cwmp ]
|
||||
then
|
||||
if [ -f /etc/icwmpd/cwmp ]
|
||||
then
|
||||
uci -c /etc/icwmpd delete cwmp.acs
|
||||
uci -c /etc/icwmpd commit cwmp
|
||||
cp /etc/icwmpd/cwmp /var/state/cwmp
|
||||
else
|
||||
touch /var/state/cwmp
|
||||
fi
|
||||
fi
|
||||
|
||||
mkdir -p /var/state/icwmpd
|
||||
if [ -f /etc/icwmpd/.icwmpd_backup_session.xml ]
|
||||
then
|
||||
mv /etc/icwmpd/.icwmpd_backup_session.xml /var/state/icwmpd 2>/dev/null
|
||||
fi
|
||||
if [ -f /etc/icwmpd/.dm_enabled_notify.xml ]
|
||||
then
|
||||
mv /etc/icwmpd/.dm_enabled_notify /var/state/icwmpd 2>/dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
copy_cwmp_varstate_files_to_etc() {
|
||||
if [ -f /var/state/cwmp ]
|
||||
then
|
||||
cp /var/state/cwmp /etc/icwmpd 2>/dev/null
|
||||
fi
|
||||
if [ -f /var/state/icwmpd/.icwmpd_backup_session.xml ]
|
||||
then
|
||||
cp /var/state/icwmpd/.icwmpd_backup_session.xml /etc/icwmpd 2>/dev/null
|
||||
fi
|
||||
if [ -f /var/state/icwmpd/.dm_enabled_notify.xml ]
|
||||
then
|
||||
cp /var/state/icwmpd/.dm_enabled_notify /etc/icwmpd 2>/dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
start_service() {
|
||||
if [ ! -f /tmp/.icwmpd_boot ]; then
|
||||
touch /etc/icwmpd/.icwmpd_boot
|
||||
|
|
@ -171,12 +210,13 @@ start_service() {
|
|||
|
||||
log "Waiting for usp.raw to be started"
|
||||
ubus wait_for usp.raw
|
||||
|
||||
|
||||
config_load cwmp
|
||||
set_wan_interface
|
||||
wait_for_option43 20
|
||||
get_acs_url
|
||||
|
||||
|
||||
copy_cwmp_etc_files_to_varstate
|
||||
procd_open_instance icwmp
|
||||
procd_set_param command "$PROG"
|
||||
if [ "$1" = "GetRPCMethods" ];then
|
||||
|
|
@ -192,6 +232,11 @@ start_service() {
|
|||
fi
|
||||
}
|
||||
|
||||
stop_service()
|
||||
{
|
||||
copy_cwmp_varstate_files_to_etc
|
||||
}
|
||||
|
||||
reload_service() {
|
||||
stop
|
||||
start
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
/etc/icwmpd/.icwmpd_backup_session.xml
|
||||
/var/state/icwmpd/.icwmpd_backup_session.xml
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ PKG_VERSION:=2.1.35
|
|||
LOCAL_DEV:=0
|
||||
ifneq ($(LOCAL_DEV),1)
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_VERSION:=fc8f0d9e051333fd811f5a6b7a7a6843063851e7
|
||||
PKG_SOURCE_VERSION:=2e4aa73a02a78a2523fc53de5442a24917416017
|
||||
PKG_SOURCE_URL:=https://dev.iopsys.eu/iopsys/uspd.git
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
||||
PKG_MIRROR_HASH:=skip
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue