62 lines
1.2 KiB
Bash
Executable File
62 lines
1.2 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
. /etc/bewan/scripts/globals
|
|
. /etc/bewan/lib/base
|
|
|
|
[ -z "${INFACTORY:-}" ] && . /etc/bewan/init.d/setparam
|
|
|
|
change_gvt_accessclass() {
|
|
local usb
|
|
local hpna
|
|
|
|
base_log "GVT Setting access class configuration" debug
|
|
|
|
> /tmp/gvt_accessclass.cli
|
|
|
|
local ACCESSCLASS; eval ACCESSCLASS=$(cat /nvram/gvt/accessclass 2>/dev/null)
|
|
[ -z "$ACCESSCLASS" ] && ACCESSCLASS='4'
|
|
|
|
case "$ACCESSCLASS" in
|
|
'4')
|
|
hpna=0
|
|
usb=1
|
|
;;
|
|
# Everything else
|
|
*)
|
|
hpna=1
|
|
usb=0
|
|
;;
|
|
esac
|
|
|
|
# This variable is set by the caller from factory.d
|
|
if [ -n "${INFACTORY:-}" ]; then
|
|
# When in factory, no need to look at Services_GvtConfig_TR069USB
|
|
cat >> /tmp/gvt_accessclass.cli <<EOF
|
|
cd _HPNA
|
|
sset Enable $hpna
|
|
cd _Services_GvtConfig
|
|
sset EnableUSB $usb
|
|
EOF
|
|
|
|
cli -q < /tmp/gvt_accessclass.cli
|
|
rm -f /tmp/gvt_accessclass.cli
|
|
|
|
else
|
|
# We are not in factory, so take a look at Services_GvtConfig_TR069USB if set
|
|
local tr069usb; eval tr069usb=\${Services_GvtConfig_TR069USB:-}
|
|
[ -n "$tr069usb" ] && usb=$tr069usb
|
|
cat >> /tmp/gvt_accessclass.cli <<EOF
|
|
cd _HPNA
|
|
set Enable $hpna
|
|
cd _Services_GvtConfig
|
|
set EnableUSB $usb
|
|
fcommit
|
|
EOF
|
|
|
|
(cli -s < /tmp/gvt_accessclass.cli; rm -f /tmp/gvt_accessclass.cli) &
|
|
|
|
fi
|
|
}
|
|
|
|
change_gvt_accessclass
|