diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2016-06-10 14:13:00 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2016-06-15 12:12:38 +0200 |
commit | 844541f4c43c2469b9955b78480cbe36fde653d0 (patch) | |
tree | 0c5238784698f46c4166596b5487abace0646145 /src/utils.c | |
parent | 396cdb2375af8c8b8884f5f50c773a39b29a06d7 (diff) |
src: assert when setting unknown attributes
If this attribute is not supported by the library, we should rise an
assertion so the client knows something is wrong, instead of silently
going through.
The only case I can think may hit this problem is version mismatch
between library and tools. This should not ever really happen, so better
bail out from the library itself in this case.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/utils.c')
-rw-r--r-- | src/utils.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/utils.c b/src/utils.c index 22710b9..e2715a2 100644 --- a/src/utils.c +++ b/src/utils.c @@ -269,6 +269,14 @@ out: return ret; } +void __nftnl_assert_attr_exists(uint16_t attr, uint16_t attr_max, + const char *filename, int line) +{ + fprintf(stderr, "libnftnl: attribute %d > %d (maximum) assertion failed in %s:%d\n", + attr, attr_max, filename, line); + exit(EXIT_FAILURE); +} + void __nftnl_assert_fail(uint16_t attr, const char *filename, int line) { fprintf(stderr, "libnftnl: attribute %d assertion failed in %s:%d\n", |