]> git.puffer.fish Git - mirror/frr.git/commitdiff
zebra: fix dump SR-TE information if available 16014/head
authorPhilippe Guibert <philippe.guibert@6wind.com>
Wed, 15 May 2024 13:36:04 +0000 (15:36 +0200)
committerPhilippe Guibert <philippe.guibert@6wind.com>
Wed, 15 May 2024 13:45:33 +0000 (15:45 +0200)
The SR-TE color of nexthop should be displayed in all situations.

Fixes: 553c8048460a ("zebra: fix JSON fields for 'show ip/ipv6 nht'")
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
lib/nexthop.c

index 533641222bc45d1fde9fb387add81f9b31b91a2a..26c338256f6e9f52dee0845f70baa4226fcbdc84 100644 (file)
@@ -1371,7 +1371,6 @@ void nexthop_vty_helper(struct vty *vty, const struct nexthop *nexthop,
        char seg_buf[SRV6_SEG_STRLEN];
        struct seg6_segs segs;
        uint8_t i;
-       bool src_p = false;
 
        switch (nexthop->type) {
        case NEXTHOP_TYPE_IPV4:
@@ -1433,19 +1432,10 @@ void nexthop_vty_helper(struct vty *vty, const struct nexthop *nexthop,
        switch (nexthop->type) {
        case NEXTHOP_TYPE_IPV4:
        case NEXTHOP_TYPE_IPV4_IFINDEX:
-               if (nexthop->rmap_src.ipv4.s_addr) {
+               if (nexthop->rmap_src.ipv4.s_addr)
                        vty_out(vty, ", rmapsrc %pI4", &nexthop->rmap_src.ipv4);
-                       src_p = true;
-               } else if (nexthop->src.ipv4.s_addr) {
+               else if (nexthop->src.ipv4.s_addr)
                        vty_out(vty, ", src %pI4", &nexthop->src.ipv4);
-                       src_p = true;
-               }
-               if (src_p) {
-                       /* SR-TE information */
-                       if (nexthop->srte_color)
-                               vty_out(vty, ", SR-TE color %u",
-                                       nexthop->srte_color);
-               }
                break;
        case NEXTHOP_TYPE_IPV6:
        case NEXTHOP_TYPE_IPV6_IFINDEX:
@@ -1462,6 +1452,10 @@ void nexthop_vty_helper(struct vty *vty, const struct nexthop *nexthop,
                break;
        }
 
+       /* SR-TE information */
+       if (nexthop->srte_color)
+               vty_out(vty, ", SR-TE color %u", nexthop->srte_color);
+
        /* Label information */
        if (nexthop->nh_label && nexthop->nh_label->num_labels) {
                vty_out(vty, ", label %s",