diff options
author | Lulu Cathrinus Grimalkin <me@erkin.party> | 2021-12-16 17:32:24 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-16 17:32:24 +0300 |
commit | 9737a55f6dde490e7fdf1c9d5c5733e48c94d141 (patch) | |
tree | d2c24363d921490bcef5cb3efb70ae794fbe22a5 /python/vyos/util.py | |
parent | 95b91627a6065b720365c9ae7d124d85fc8e493d (diff) | |
parent | 55f8ede2d09a9ad095f9ec5c2a729f8c5fb6aafa (diff) | |
download | vyos-1x-9737a55f6dde490e7fdf1c9d5c5733e48c94d141.tar.gz vyos-1x-9737a55f6dde490e7fdf1c9d5c5733e48c94d141.zip |
Merge branch 'vyos:current' into current
Diffstat (limited to 'python/vyos/util.py')
-rw-r--r-- | python/vyos/util.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/python/vyos/util.py b/python/vyos/util.py index d8e83ab8d..954c6670d 100644 --- a/python/vyos/util.py +++ b/python/vyos/util.py @@ -794,6 +794,24 @@ def get_interface_address(interface): tmp = loads(cmd(f'ip -d -j addr show {interface}'))[0] return tmp +def get_interface_namespace(iface): + """ + Returns wich netns the interface belongs to + """ + from json import loads + # Check if netns exist + tmp = loads(cmd(f'ip --json netns ls')) + if len(tmp) == 0: + return None + + for ns in tmp: + namespace = f'{ns["name"]}' + # Search interface in each netns + data = loads(cmd(f'ip netns exec {namespace} ip -j link show')) + for compare in data: + if iface == compare["ifname"]: + return namespace + def get_all_vrfs(): """ Return a dictionary of all system wide known VRF instances """ from json import loads @@ -961,3 +979,12 @@ def is_wwan_connected(interface): # return True/False if interface is in connected state return dict_search('modem.generic.state', tmp) == 'connected' + +def boot_configuration_complete() -> bool: + """ Check if the boot config loader has completed + """ + from vyos.defaults import config_status + + if os.path.isfile(config_status): + return True + return False |