diff --git a/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter b/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter index 8429cd635..f5db32ac9 100755 --- a/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter +++ b/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter @@ -181,6 +181,10 @@ start_service() { EOF /etc/init.d/rpcd restart 2>&1 >/dev/null fi + if [ "$(pgrep ModemManager)" = "" ] && [ -f /etc/init.d/modemmanager ] && [ -n "$(uci -q show network | grep modemmanager)" ]; then + _log "Can't find ModemManager, start it..." + /etc/init.d/modemmanager restart + fi } stop_service() { diff --git a/modemmanager/files/modemmanager.common b/modemmanager/files/modemmanager.common index f91e94af2..624ca1f8d 100644 --- a/modemmanager/files/modemmanager.common +++ b/modemmanager/files/modemmanager.common @@ -5,7 +5,7 @@ ################################################################################ # If there is no interface that use modemmanager, exit -[ -z "$(uci -q show network | grep modemmanager)" ] && exit +#[ -z "$(uci -q show network | grep modemmanager)" ] && exit . /lib/functions.sh . /lib/netifd/netifd-proto.sh @@ -23,7 +23,7 @@ MODEMMANAGER_EVENTS_CACHE="${MODEMMANAGER_RUNDIR}/events.cache" # Common logging mm_log() { - logger -t "ModemManager" "hotplug: $*" + [ -n "$(uci -q show network | grep modemmanager)" ] && logger -t "ModemManager" "hotplug: $*" } ################################################################################ diff --git a/mptcp/files/usr/share/omr/post-tracking.d/post-tracking b/mptcp/files/usr/share/omr/post-tracking.d/post-tracking index 31f5e7ffe..9ed6df580 100755 --- a/mptcp/files/usr/share/omr/post-tracking.d/post-tracking +++ b/mptcp/files/usr/share/omr/post-tracking.d/post-tracking @@ -1313,6 +1313,12 @@ if [ "$(pgrep rpcd)" = "" ] && [ -f /etc/init.d/rpcd ]; then sleep 5 fi +if [ "$(pgrep ModemManager)" = "" ] && [ -f /etc/init.d/modemmanager ] && [ -n "$(uci -q show network | grep modemmanager)" ]; then + _log "Can't find ModemManager, restart it..." + /etc/init.d/modemmanager restart + sleep 5 +fi + if [ "$(uci -q get v2ray.main.enabled)" = "1" ] && [ -f /etc/init.d/v2ray ] && [ "$(pgrep -f omr-tracker-v2ray)" = "" ] && [ "$(pgrep -f '/etc/init.d/omr-tracker')" = "" ]; then _log "Can't find omr-tracker-v2ray, restart omr-tracker..." /etc/init.d/omr-tracker restart