svn commit: r356596 - head/tests/sys/net/routing
Alexander V. Chernikov
melifaro at FreeBSD.org
Fri Jan 10 08:54:47 UTC 2020
Author: melifaro
Date: Fri Jan 10 08:54:46 2020
New Revision: 356596
URL: https://svnweb.freebsd.org/changeset/base/356596
Log:
Include human-readable list of rtm flags along with bitmask in error messages
for rtsock tests.
MFC after: 2 weeks
Modified:
head/tests/sys/net/routing/rtsock_print.h
head/tests/sys/net/routing/test_rtsock_l3.c
Modified: head/tests/sys/net/routing/rtsock_print.h
==============================================================================
--- head/tests/sys/net/routing/rtsock_print.h Fri Jan 10 04:13:16 2020 (r356595)
+++ head/tests/sys/net/routing/rtsock_print.h Fri Jan 10 08:54:46 2020 (r356596)
@@ -132,7 +132,15 @@ 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__); \
ptr += one_len; \
@@ -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);
Modified: head/tests/sys/net/routing/test_rtsock_l3.c
==============================================================================
--- head/tests/sys/net/routing/test_rtsock_l3.c Fri Jan 10 04:13:16 2020 (r356595)
+++ head/tests/sys/net/routing/test_rtsock_l3.c Fri Jan 10 08:54:46 2020 (r356596)
@@ -196,8 +196,18 @@ verify_route_message_extra(struct rt_msghdr *rtm, int
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
More information about the svn-src-head
mailing list