Skip to content
Snippets Groups Projects

Draft: Implement initial functionality

Closed Martin Matějek requested to merge dev into master
Files
2
@@ -12,7 +12,7 @@ import turrishw
from foris_controller.exceptions import BackendCommandFailed
from foris_controller_backends.cmdline import BaseCmdLine
from foris_controller_backends.maintain import MaintainCommands
from foris_controller_backends.networks import NetworksUci
from foris_controller_backends.networks import NetworksWanUci
from foris_controller_backends.uci import (
UciBackend,
get_option_named,
@@ -101,7 +101,7 @@ class WWanUci:
else:
extra_auth = {"auth_type": "none"}
enabled = NetworksUci.is_designated_as_wan(if_name)
enabled = NetworksWanUci.is_designated_as_wan(if_name)
return {
"id": dev_no,
@@ -164,12 +164,18 @@ class WWanUci:
backend.set_option("network", wdev_name, "password", password)
# switch uplink to wireless wan
NetworksUci.set_wan_firewall_zone_interfaces(backend, (wdev_name,))
NetworksWanUci.set_wan_firewall_zone_interfaces(backend, (wdev_name,))
MaintainCommands().restart_network()
return True
@staticmethod
def disable_wwan(id: int):
with UciBackend() as backend:
# reset to default wan
NetworksWanUci.set_wan_firewall_zone_interfaces(backend)
@staticmethod
def _get_id_from_dev_name(dev_name: str) -> typing.Optional[int]:
"""Extract device id (number) from its name.
@@ -222,7 +228,7 @@ class WWanCmd(BaseCmdLine):
if not pin_status:
return "failure" # no SIM detected
if pin_status != "verified":
if pin_status not in {"verified","disabled"}:
return "failure" # SIM is not active or bad pin?
return "ok"