summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/route/act/gact.c14
-rw-r--r--lib/route/act/mirred.c13
-rw-r--r--lib/route/act/skbedit.c4
3 files changed, 3 insertions, 28 deletions
diff --git a/lib/route/act/gact.c b/lib/route/act/gact.c
index 832d229..1a4bacb 100644
--- a/lib/route/act/gact.c
+++ b/lib/route/act/gact.c
@@ -112,19 +112,7 @@ int rtnl_gact_set_action(struct rtnl_act *act, int action)
if (!(u = (struct rtnl_gact *) rtnl_tc_data(TC_CAST(act))))
return -NLE_NOMEM;
- if (action > TC_ACT_SHOT || action < TC_ACT_UNSPEC)
- return -NLE_INVAL;
-
- switch (action) {
- case TC_ACT_UNSPEC:
- case TC_ACT_SHOT:
- u->g_parm.action = action;
- break;
- case TC_ACT_OK:
- case TC_ACT_RECLASSIFY:
- default:
- return NLE_OPNOTSUPP;
- }
+ u->g_parm.action = action;
return 0;
}
diff --git a/lib/route/act/mirred.c b/lib/route/act/mirred.c
index 5d7b089..01da134 100644
--- a/lib/route/act/mirred.c
+++ b/lib/route/act/mirred.c
@@ -173,19 +173,8 @@ int rtnl_mirred_set_policy(struct rtnl_act *act, int policy)
if (!(u = (struct rtnl_mirred *) rtnl_tc_data(TC_CAST(act))))
return -NLE_NOMEM;
- if (policy > TC_ACT_REPEAT || policy < TC_ACT_OK)
- return -NLE_INVAL;
+ u->m_parm.action = policy;
- switch (u->m_parm.eaction) {
- case TCA_EGRESS_MIRROR:
- case TCA_EGRESS_REDIR:
- u->m_parm.action = policy;
- break;
- case TCA_INGRESS_REDIR:
- case TCA_INGRESS_MIRROR:
- default:
- return NLE_OPNOTSUPP;
- }
return 0;
}
diff --git a/lib/route/act/skbedit.c b/lib/route/act/skbedit.c
index 566a1a6..24f57e5 100644
--- a/lib/route/act/skbedit.c
+++ b/lib/route/act/skbedit.c
@@ -152,10 +152,8 @@ int rtnl_skbedit_set_action(struct rtnl_act *act, int action)
if (!(u = (struct rtnl_skbedit *) rtnl_tc_data(TC_CAST(act))))
return -NLE_NOMEM;
- if (action > TC_ACT_REPEAT || action < TC_ACT_UNSPEC)
- return -NLE_INVAL;
-
u->s_parm.action = action;
+
return 0;
}