diff options
| author | Nataliia Solomko <natalirs1985@gmail.com> | 2025-11-05 13:20:42 +0200 |
|---|---|---|
| committer | Nataliia Solomko <natalirs1985@gmail.com> | 2025-11-12 13:48:44 +0200 |
| commit | ccf4972f8dd9ddf370fe6376480c1244a138c4bd (patch) | |
| tree | c572124fe48db464fb48c912e070c0f322f12908 /src/conf_mode/interfaces_macsec.py | |
| parent | 21d509d6c639f2a94c43c3af7f845ef0e544555f (diff) | |
| download | vyos-1x-ccf4972f8dd9ddf370fe6376480c1244a138c4bd.tar.gz vyos-1x-ccf4972f8dd9ddf370fe6376480c1244a138c4bd.zip | |
T7731: Static ARP entries are missing after an interface status change
Diffstat (limited to 'src/conf_mode/interfaces_macsec.py')
| -rwxr-xr-x | src/conf_mode/interfaces_macsec.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/conf_mode/interfaces_macsec.py b/src/conf_mode/interfaces_macsec.py index 683e12ec3..38823e7e6 100755 --- a/src/conf_mode/interfaces_macsec.py +++ b/src/conf_mode/interfaces_macsec.py @@ -19,6 +19,8 @@ import os from sys import exit from vyos.config import Config +from vyos.configdep import set_dependents +from vyos.configdep import call_dependents from vyos.configdict import get_interface_dict from vyos.configdict import is_node_changed from vyos.configdict import is_source_interface @@ -78,6 +80,10 @@ def get_config(config=None): tmp = is_source_interface(conf, macsec['source_interface'], ['macsec', 'pseudo-ethernet']) if tmp and tmp != ifname: macsec.update({'is_source_interface' : tmp}) + # Protocols static arp dependency + if 'static_arp' in macsec: + set_dependents('static_arp', conf) + return macsec @@ -193,6 +199,9 @@ def apply(macsec): if not is_systemd_service_running(systemd_service) or 'shutdown_required' in macsec: call(f'systemctl reload-or-restart {systemd_service}') + if 'static_arp' in macsec: + call_dependents() + return None |
