From 75ef7b18d2a13657056706895bf8d8dd3ac93e46 Mon Sep 17 00:00:00 2001 From: Davide Caratti Date: Fri, 2 Mar 2018 19:36:16 +0100 Subject: tc: fix parsing of the control action If the user didn't specify any control action, don't pop the command line arguments: otherwise, parsing of the next argument (tipically the 'index' keyword) results in an error, causing the following 'tc-testing' failures: Test a6d6: Add skbedit action with index Test 38f3: Delete skbedit action Test a568: Add action with ife type Test b983: Add action without ife type Test 7d50: Add skbmod action to set destination mac Test 9b29: Add skbmod action to set source mac Test e93a: Delete an skbmod action Also, add missing parse for 'ok' control action to m_police, to fix the following 'tc-testing' failure: Test 8dd5: Add police action with control ok tested with: # ./tdc.py test results: all tests ok using kernel 4.16-rc2, except 9aa8 "Get a single skbmod action from a list" (which is failing also before this commit) Fixes: 3572e01a090a ("tc: util: Don't call NEXT_ARG_FWD() in __parse_action_control()") Cc: Michal Privoznik Cc: Wolfgang Bumiller Signed-off-by: Davide Caratti Signed-off-by: Stephen Hemminger --- tc/m_vlan.c | 1 - 1 file changed, 1 deletion(-) (limited to 'tc/m_vlan.c') diff --git a/tc/m_vlan.c b/tc/m_vlan.c index edae0d1e..161759fd 100644 --- a/tc/m_vlan.c +++ b/tc/m_vlan.c @@ -131,7 +131,6 @@ static int parse_vlan(struct action_util *a, int *argc_p, char ***argv_p, parse_action_control_dflt(&argc, &argv, &parm.action, false, TC_ACT_PIPE); - NEXT_ARG_FWD(); if (argc) { if (matches(*argv, "index") == 0) { NEXT_ARG(); -- cgit v1.2.3