Commit 1b9ae18a36 for frr

commit 1b9ae18a36c13ad4e602c79b73ca5c026bddd442
Author: Philippe Guibert <philippe.guibert@6wind.com>
Date:   Thu Oct 8 17:26:36 2026 +0200

    topotests: check srv6-only default after 'no segment-routing srv6'

    When the 'no segment-routing srv6' command is applied on a BGP instance,
    the 'segment-routing srv6' node is still displayed in the running
    configuration of that instance, with the 'no srv6-only' command, whereas
    srv6-only was never unconfigured.

    Add a test in bgp_srv6l3vpn_sid that checks that 'no srv6-only' is not
    displayed after 'no segment-routing srv6' has been applied on the
    default and vrf20 BGP instances of r1. This test is expected to fail
    with the current code.

    Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>

diff --git a/tests/topotests/bgp_srv6l3vpn_sid/test_bgp_srv6l3vpn_sid.py b/tests/topotests/bgp_srv6l3vpn_sid/test_bgp_srv6l3vpn_sid.py
index 7eaa5dc1f0..8c08f650f5 100755
--- a/tests/topotests/bgp_srv6l3vpn_sid/test_bgp_srv6l3vpn_sid.py
+++ b/tests/topotests/bgp_srv6l3vpn_sid/test_bgp_srv6l3vpn_sid.py
@@ -504,6 +504,23 @@ def test_sid_suppress_locator_vrf_default():
     check_rib("r1", "show bgp ipv6 vpn json", "r1/vpnv6_rib_unselected.json")


+def test_sid_suppress_srv6_keeps_srv6_only_default():
+    """
+    Test that 'no segment-routing srv6' does not leave 'no srv6-only'
+    in the BGP instances of R1
+    """
+    output = (
+        get_topogen().gears["r1"].vtysh_cmd("show running-config bgpd", raises=True)
+    )
+    for instance in ("router bgp 1\n", "router bgp 1 vrf vrf20\n"):
+        assert instance in output, "'{}' not found in r1 configuration:\n{}".format(
+            instance.strip(), output
+        )
+    assert (
+        "no srv6-only" not in output
+    ), "'no srv6-only' found in r1 configuration:\n{}".format(output)
+
+
 def test_sid_add_locator_vrf_10():
     """
     Test that IPv6 vpn prefixes for VRF10 can be advertised to R2 with SRv6 SID