summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPhil Sutter <phil@nwl.cc>2020-12-14 18:52:07 +0100
committerPhil Sutter <phil@nwl.cc>2020-12-15 11:14:24 +0100
commit210717c2641874edaee705a9c08820b7082d16ea (patch)
treea70ef987d7c1b2b7e3c4e27c0e0bb3c0a1a4b70e /src
parente53b6fdacea2c4b68c0932804546cf10babfb43e (diff)
set_elem: Include key_end data reg in print output
Elements of concatenated range sets hold the upper boundary in an extra data_reg, print it using dash as a somewhat intuitive separator. Fixes: 04cc28d8d6923 ("set_elem: Introduce support for NFTNL_SET_ELEM_KEY_END") Signed-off-by: Phil Sutter <phil@nwl.cc>
Diffstat (limited to 'src')
-rw-r--r--src/set_elem.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/set_elem.c b/src/set_elem.c
index 51bf2c7..46bb062 100644
--- a/src/set_elem.c
+++ b/src/set_elem.c
@@ -634,6 +634,16 @@ static int nftnl_set_elem_snprintf_default(char *buf, size_t size,
DATA_F_NOPFX, DATA_VALUE);
SNPRINTF_BUFFER_SIZE(ret, remain, offset);
+ if (e->flags & (1 << NFTNL_SET_ELEM_KEY_END)) {
+ ret = snprintf(buf + offset, remain, " - ");
+ SNPRINTF_BUFFER_SIZE(ret, remain, offset);
+
+ ret = nftnl_data_reg_snprintf(buf + offset, remain, &e->key_end,
+ NFTNL_OUTPUT_DEFAULT,
+ DATA_F_NOPFX, DATA_VALUE);
+ SNPRINTF_BUFFER_SIZE(ret, remain, offset);
+ }
+
ret = snprintf(buf + offset, remain, " : ");
SNPRINTF_BUFFER_SIZE(ret, remain, offset);