diff options
author | Christian Poessinger <christian@poessinger.com> | 2019-09-04 21:50:04 +0200 |
---|---|---|
committer | Christian Poessinger <christian@poessinger.com> | 2019-09-04 22:03:10 +0200 |
commit | 64d58eda4c1ebaa9d346d65d606d2a75694467ee (patch) | |
tree | 4f4c9b9720da401863c664a87e68ceda6a645377 /src/conf_mode/interface-loopback.py | |
parent | ff34756f534bfc0f09a5ab6db0d36e1bf43546a8 (diff) | |
download | vyos-1x-64d58eda4c1ebaa9d346d65d606d2a75694467ee.tar.gz vyos-1x-64d58eda4c1ebaa9d346d65d606d2a75694467ee.zip |
Python/configdict: add list_diff function to compare two lists
A list containing only unique elements not part of the other list is
returned. This is usefull to check e.g. which IP addresses need to be
removed from the OS.
Diffstat (limited to 'src/conf_mode/interface-loopback.py')
-rwxr-xr-x | src/conf_mode/interface-loopback.py | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/conf_mode/interface-loopback.py b/src/conf_mode/interface-loopback.py index be47324c1..e2df37655 100755 --- a/src/conf_mode/interface-loopback.py +++ b/src/conf_mode/interface-loopback.py @@ -18,7 +18,9 @@ from os import environ from sys import exit from copy import deepcopy + from vyos.ifconfig import LoopbackIf +from vyos.configdict import list_diff from vyos.config import Config from vyos import ConfigError @@ -29,9 +31,6 @@ default_config_data = { 'description': '', } -def diff(first, second): - second = set(second) - return [item for item in first if item not in second] def get_config(): loopback = deepcopy(default_config_data) @@ -62,7 +61,7 @@ def get_config(): # address is no longer valid and needs to be removed from the interface eff_addr = conf.return_effective_values('address') act_addr = conf.return_values('address') - loopback['address_remove'] = diff(eff_addr, act_addr) + loopback['address_remove'] = list_diff(eff_addr, act_addr) return loopback |