diff options
| author | Alexander V. Chernikov <melifaro@FreeBSD.org> | 2020-01-10 08:54:46 +0000 |
|---|---|---|
| committer | Alexander V. Chernikov <melifaro@FreeBSD.org> | 2020-01-10 08:54:46 +0000 |
| commit | ac0bea768b4c76ad1b88fa24ad97625c7c16f672 (patch) | |
| tree | 94dc16e6405b5095de3bee801741b83b5c52146a /tests | |
| parent | a11dc32ebc871a2fd0a7c9b7aba6ee5d7f78b377 (diff) | |
Notes
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/sys/net/routing/rtsock_print.h | 10 | ||||
| -rw-r--r-- | tests/sys/net/routing/test_rtsock_l3.c | 14 |
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 |
