From 97e104a5e517cee32fddd35747a349a5ec5f3390 Mon Sep 17 00:00:00 2001 From: "Ycarus (Yannick Chabanois)" Date: Thu, 22 Apr 2021 20:20:28 +0200 Subject: [PATCH] Add an option to disable ModemManager --- .../luasrc/controller/openmptcprouter.lua | 4 +++ .../luasrc/view/openmptcprouter/settings.htm | 10 ++++++ .../po/templates/openmptcprouter.pot | 35 +++++++++++-------- .../root/etc/init.d/openmptcprouter | 2 +- modemmanager/files/modemmanager.common | 3 +- .../share/omr/post-tracking.d/post-tracking | 2 +- 6 files changed, 38 insertions(+), 18 deletions(-) diff --git a/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua b/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua index bc891a65a..a033260f0 100644 --- a/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua +++ b/luci-app-openmptcprouter/luasrc/controller/openmptcprouter.lua @@ -1010,6 +1010,10 @@ function settings_add() local tracebox = luci.http.formvalue("disabletracebox") or "1" ucic:set("openmptcprouter","settings","tracebox",tracebox) + -- Enable/disable ModemManager + local modemamanger = luci.http.formvalue("disablemodemmanager") or "1" + ucic:set("openmptcprouter","settings","modemmanager",modemmanager) + -- Enable/disable server ping local disableserverping = luci.http.formvalue("disableserverping") or "0" ucic:set("openmptcprouter","settings","disableserverping",disableserverping) diff --git a/luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm b/luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm index 5637f7899..f78cd0f4b 100644 --- a/luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm +++ b/luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm @@ -300,6 +300,16 @@ +
+ +
+ checked<% end %>> +
+
+ <%:Disable ModemManager%> +
+
+
diff --git a/luci-app-openmptcprouter/po/templates/openmptcprouter.pot b/luci-app-openmptcprouter/po/templates/openmptcprouter.pot index 585f7876f..dc5f04605 100644 --- a/luci-app-openmptcprouter/po/templates/openmptcprouter.pot +++ b/luci-app-openmptcprouter/po/templates/openmptcprouter.pot @@ -74,7 +74,7 @@ msgstr "" msgid "Backup on server" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:320 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:330 msgid "Balancing" msgstr "" @@ -168,7 +168,7 @@ msgstr "" msgid "DNS issue: can\\'t resolve hostname" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:304 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:314 msgid "Debug" msgstr "" @@ -195,6 +195,11 @@ msgstr "" msgid "Disable HTTP test on Server API in status page" msgstr "" +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:304 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:309 +msgid "Disable ModemManager" +msgstr "" + #: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:203 msgid "Disable TCP Fast Open" msgstr "" @@ -270,11 +275,11 @@ msgstr "" msgid "Download speed (Kb/s)" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:318 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:328 msgid "Dynamic change" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:339 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:349 msgid "Enable Bridge Acceleration" msgstr "" @@ -282,7 +287,7 @@ msgstr "" msgid "Enable DNS64" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:333 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:343 msgid "Enable Fast Patch offloading for connections" msgstr "" @@ -303,7 +308,7 @@ msgstr "" msgid "Enable TCP Low Latency" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:309 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:319 msgid "Enable debug logs" msgstr "" @@ -536,15 +541,15 @@ msgstr "" msgid "Master" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:314 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:324 msgid "Master interface selection" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:358 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:368 msgid "Maximum scaling CPU frequency" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:352 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:362 msgid "Minimum scaling CPU frequency" msgstr "" @@ -642,7 +647,7 @@ msgstr "" msgid "No available backup on server." msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:319 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:329 msgid "No change" msgstr "" @@ -699,7 +704,7 @@ msgstr "" msgid "Obfuscating will be enabled on both side" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:317 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:327 msgid "On wizard change" msgstr "" @@ -801,7 +806,7 @@ msgstr "" msgid "QMI" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:330 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:340 msgid "Qualcomm Shortcut FE driver" msgstr "" @@ -821,7 +826,7 @@ msgstr "" msgid "Retrieve settings from server" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:384 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:394 #: luci-app-openmptcprouter/luasrc/view/openmptcprouter/wizard.htm:993 msgid "Save & Apply" msgstr "" @@ -834,7 +839,7 @@ msgstr "" msgid "Save vnstats stats" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:364 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:374 msgid "Scaling governor" msgstr "" @@ -960,7 +965,7 @@ msgstr "" msgid "Status" msgstr "" -#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:349 +#: luci-app-openmptcprouter/luasrc/view/openmptcprouter/settings.htm:359 msgid "Systems settings" msgstr "" diff --git a/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter b/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter index f5db32ac9..01d331b65 100755 --- a/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter +++ b/luci-app-openmptcprouter/root/etc/init.d/openmptcprouter @@ -181,7 +181,7 @@ 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 + if [ "$(pgrep ModemManager)" = "" ] && [ -f /etc/init.d/modemmanager ] && [ -n "$(uci -q show network | grep modemmanager)" ] && [ "$(uci -q openmptcprouter.settings.modemanager)" != "0" ]; then _log "Can't find ModemManager, start it..." /etc/init.d/modemmanager restart fi diff --git a/modemmanager/files/modemmanager.common b/modemmanager/files/modemmanager.common index 624ca1f8d..8de8f2946 100644 --- a/modemmanager/files/modemmanager.common +++ b/modemmanager/files/modemmanager.common @@ -6,6 +6,7 @@ # If there is no interface that use modemmanager, exit #[ -z "$(uci -q show network | grep modemmanager)" ] && exit +[ "$(uci -q get openmptcprouter.settings.modemmanager)" = "0" ] && exit . /lib/functions.sh . /lib/netifd/netifd-proto.sh @@ -23,7 +24,7 @@ MODEMMANAGER_EVENTS_CACHE="${MODEMMANAGER_RUNDIR}/events.cache" # Common logging mm_log() { - [ -n "$(uci -q show network | grep modemmanager)" ] && logger -t "ModemManager" "hotplug: $*" + 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 ec4512260..6f92acf93 100755 --- a/mptcp/files/usr/share/omr/post-tracking.d/post-tracking +++ b/mptcp/files/usr/share/omr/post-tracking.d/post-tracking @@ -1313,7 +1313,7 @@ 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 +if [ "$(pgrep ModemManager)" = "" ] && [ -f /etc/init.d/modemmanager ] && [ -n "$(uci -q show network | grep modemmanager)" ] && [ "$(uci -q get openmptcprouter.settings.modemmanager)" != "0" ]; then _log "Can't find ModemManager, restart it..." /etc/init.d/modemmanager restart sleep 5