summaryrefslogtreecommitdiff
path: root/smoketest/scripts/cli/test_service_https.py
diff options
context:
space:
mode:
authorciaens <commits@ciaens.com>2026-10-19 14:04:07 +0200
committerChristian Breunig <christian@breunig.cc>2026-11-05 23:21:40 +0100
commit99271db4a3d75241fe8ccedef0877d7d07e3b96f (patch)
treefba379fc82fdff046fe6390729c5413eb1497d5b /smoketest/scripts/cli/test_service_https.py
parentfc6fa8c6683988d09ed4f53ec69cc7a96ed03a41 (diff)
downloadvyos-1x-99271db4a3d75241fe8ccedef0877d7d07e3b96f.tar.gz
vyos-1x-99271db4a3d75241fe8ccedef0877d7d07e3b96f.zip
interfaces: T6393: accept mirror and redirect targets defined on the CLI
Interface types are committed in priority order (ethernet 318, bridge 319, bonding 320, ... tunnel 380). verify_mirror_redirect() required the mirror and redirect target to exist in the Kernel, so "interfaces ethernet eth1 mirror ingress tun0" (or "redirect tun0") could never commit on the first pass at boot, or when both interfaces are created in the same commit: VYOS_TAGNODE_VALUE=eth1 .../interfaces_ethernet.py Requested mirror interface "tun0" does not exist! Sending reply: ERROR_COMMIT with output VYOS_TAGNODE_VALUE=tun0 .../interfaces_tunnel.py Sending reply: SUCCESS with output The whole ethernet node was rolled back, taking its addresses and everything on top of them down with it. The tc filter itself is installed by the target's commit since the previous commit, only verify() blocks. Also accept a target which is defined on the CLI, at its interface name position of the interfaces tree that Config.get_config_dict() attaches to its dictionaries. A target that is neither configured nor existing still fails the commit with the same error message as before. VLAN sub-interface targets are only accepted from the Kernel, as nothing would install their filter later on. VLAN sub-interfaces as sources get the interfaces tree attached to their own dictionaries in get_interface_dict(). A target placed in a network namespace is out of reach for tc(8) and is rejected with its own message, also while its device still sits in the default namespace. A target whose device is created asynchronously by a daemon (OpenVPN) now also passes verify at boot; if its device is not up yet when that interface applies, the filter is installed on the next commit of either side instead of the source interface being rolled back. src/tests/test_configverify.py was removed together with its last test case (T8859) and is re-added with tests for the target verification.
Diffstat (limited to 'smoketest/scripts/cli/test_service_https.py')
0 files changed, 0 insertions, 0 deletions