aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAlexander V. Chernikov <melifaro@FreeBSD.org>2020-01-10 08:54:46 +0000
committerAlexander V. Chernikov <melifaro@FreeBSD.org>2020-01-10 08:54:46 +0000
commitac0bea768b4c76ad1b88fa24ad97625c7c16f672 (patch)
tree94dc16e6405b5095de3bee801741b83b5c52146a /tests
parenta11dc32ebc871a2fd0a7c9b7aba6ee5d7f78b377 (diff)
Notes
Diffstat (limited to 'tests')
-rw-r--r--tests/sys/net/routing/rtsock_print.h10
-rw-r--r--tests/sys/net/routing/test_rtsock_l3.c14
2 files changed, 21 insertions, 3 deletions
diff --git a/tests/sys/net/routing/rtsock_print.h b/tests/sys/net/routing/rtsock_print.h
index cdb661febea05..c817344395ff5 100644
--- a/tests/sys/net/routing/rtsock_print.h
+++ b/tests/sys/net/routing/rtsock_print.h
@@ -132,6 +132,14 @@ rtsock_print_cmdtype(int cmd)
return (msgtypes[cmd]);
}
+char *
+rtsock_print_rtm_flags(char *buf, int buflen, int rtm_flags)
+{
+
+ _printb(buf, buflen, rtm_flags, routeflags);
+ return (buf);
+}
+
#define _PRINTX(fmt, ...) do { \
one_len = snprintf(ptr, rem_len, fmt, __VA_ARGS__); \
@@ -262,7 +270,7 @@ rtsock_print_rtm(struct rt_msghdr *rtm)
printf("Got message of size %hu on %s\n", rtm->rtm_msglen, buf);
char flags_buf[256];
- _printb(flags_buf, sizeof(flags_buf), rtm->rtm_flags, routeflags);
+ rtsock_print_rtm_flags(flags_buf, sizeof(flags_buf), rtm->rtm_flags);
printf("%s: len %hu, pid: %d, seq %d, errno %d, flags: %s\n", msgtypes[rtm->rtm_type],
rtm->rtm_msglen, rtm->rtm_pid, rtm->rtm_seq, rtm->rtm_errno, flags_buf);
diff --git a/tests/sys/net/routing/test_rtsock_l3.c b/tests/sys/net/routing/test_rtsock_l3.c
index ad02f130ead9f..5c55afecd58e0 100644
--- a/tests/sys/net/routing/test_rtsock_l3.c
+++ b/tests/sys/net/routing/test_rtsock_l3.c
@@ -196,8 +196,18 @@ verify_route_message_extra(struct rt_msghdr *rtm, int ifindex, int rtm_flags)
RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_index == ifindex,
"expected ifindex %d, got %d", ifindex, rtm->rtm_index);
- RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_flags == rtm_flags,
- "expected flags: 0x%X, got 0x%X", rtm_flags, rtm->rtm_flags);
+ if (rtm->rtm_flags != rtm_flags) {
+ char got_flags[64], expected_flags[64];
+ rtsock_print_rtm_flags(got_flags, sizeof(got_flags),
+ rtm->rtm_flags);
+ rtsock_print_rtm_flags(expected_flags, sizeof(expected_flags),
+ rtm_flags);
+
+ RTSOCK_ATF_REQUIRE_MSG(rtm, rtm->rtm_flags == rtm_flags,
+ "expected flags: 0x%X %s, got 0x%X %s",
+ rtm_flags, expected_flags,
+ rtm->rtm_flags, got_flags);
+ }
}
static void