BUG/MINOR: stick-table: Use MAX_SESS_STKCTR as the max track ID during parsing
During the parsing of the sc-inc-gpc0, sc-inc-gpc1 and sc-inc-gpt1 actions, the
maximum stick table track ID allowed is tested against ACT_ACTION_TRK_SCMAX. It
is the action number and not the maximum number of stick counters. Instead,
MAX_SESS_STKCTR must be used.
This patch must be backported to all stable versions.
diff --git a/src/stick_table.c b/src/stick_table.c
index 1b70b46..7b64847 100644
--- a/src/stick_table.c
+++ b/src/stick_table.c
@@ -1916,9 +1916,9 @@
return ACT_RET_PRS_ERR;
}
- if (rule->arg.gpc.sc >= ACT_ACTION_TRK_SCMAX) {
+ if (rule->arg.gpc.sc >= MAX_SESS_STKCTR) {
memprintf(err, "invalid stick table track ID. The max allowed ID is %d",
- ACT_ACTION_TRK_SCMAX-1);
+ MAX_SESS_STKCTR-1);
return ACT_RET_PRS_ERR;
}
}
@@ -1998,9 +1998,9 @@
return ACT_RET_PRS_ERR;
}
- if (rule->arg.gpc.sc >= ACT_ACTION_TRK_SCMAX) {
+ if (rule->arg.gpc.sc >= MAX_SESS_STKCTR) {
memprintf(err, "invalid stick table track ID. The max allowed ID is %d",
- ACT_ACTION_TRK_SCMAX-1);
+ MAX_SESS_STKCTR-1);
return ACT_RET_PRS_ERR;
}
}
@@ -2107,9 +2107,9 @@
return ACT_RET_PRS_ERR;
}
- if (rule->arg.gpt.sc >= ACT_ACTION_TRK_SCMAX) {
+ if (rule->arg.gpt.sc >= MAX_SESS_STKCTR) {
memprintf(err, "invalid stick table track ID '%s'. The max allowed ID is %d",
- args[*arg-1], ACT_ACTION_TRK_SCMAX-1);
+ args[*arg-1], MAX_SESS_STKCTR-1);
return ACT_RET_PRS_ERR;
}
}