]> git.proxmox.com Git - mirror_iproute2.git/commitdiff
m_mpls: test the 'mac_push' action after 'modify'
authorGuillaume Nault <gnault@redhat.com>
Thu, 22 Oct 2020 09:11:44 +0000 (11:11 +0200)
committerDavid Ahern <dsahern@gmail.com>
Sun, 25 Oct 2020 21:07:13 +0000 (15:07 -0600)
Commit 02a261b5ba1c ("m_mpls: add mac_push action") added a matches()
test for the "mac_push" string before the test for "modify".
This changes the previous behaviour as 'action m' used to match
"modify" while it now matches "mac_push".

Revert to the original behaviour by moving the "mac_push" test after
"modify".

Fixes: 02a261b5ba1c ("m_mpls: add mac_push action")
Signed-off-by: Guillaume Nault <gnault@redhat.com>
Signed-off-by: David Ahern <dsahern@gmail.com>
tc/m_mpls.c

index cb8019b1d2783e48bbaaf392203a1bcd767c5487..2c3752bace7481e58ce465ba8b8a51e37fc9f371 100644 (file)
@@ -99,14 +99,14 @@ static int parse_mpls(struct action_util *a, int *argc_p, char ***argv_p,
                        if (check_double_action(action, *argv))
                                return -1;
                        action = TCA_MPLS_ACT_PUSH;
-               } else if (matches(*argv, "mac_push") == 0) {
-                       if (check_double_action(action, *argv))
-                               return -1;
-                       action = TCA_MPLS_ACT_MAC_PUSH;
                } else if (matches(*argv, "modify") == 0) {
                        if (check_double_action(action, *argv))
                                return -1;
                        action = TCA_MPLS_ACT_MODIFY;
+               } else if (matches(*argv, "mac_push") == 0) {
+                       if (check_double_action(action, *argv))
+                               return -1;
+                       action = TCA_MPLS_ACT_MAC_PUSH;
                } else if (matches(*argv, "dec_ttl") == 0) {
                        if (check_double_action(action, *argv))
                                return -1;