When we have "fail" in the test cases then py test doesn't complain
anything, but the test should complain if the fix is not applied.
Before applying
986dea8a4a9d ("evaluate: avoid reference to multiple src
data in statements which set values"), nft throws following error
message and exits with error code 134.
$ nft add rule x y tcp dport set { 0 , 1 }
BUG: unknown expression type set reference
nft: netlink_linearize.c:696: netlink_gen_expr: Assertion `0' failed.
Aborted
This commit enforces nft-test.py to throw error message when the fix
is not applied.
Signed-off-by: Shyam Saini <mayhs11saini@gmail.com>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
ret = execute_cmd(cmd, filename, lineno, payload_log)
state = rule[1].rstrip()
- if (ret == 0 and state == "fail") or (ret != 0 and state == "ok"):
+ if (ret in [0,134] and state == "fail") or (ret != 0 and state == "ok"):
if state == "fail":
test_state = "This rule should have failed."
else: