[PATCH v2 12/25] tests: check decoding of rtnetlink tc messages

JingPiao Chen chenjingpiao at gmail.com
Sun Aug 13 02:22:30 UTC 2017


* tests/netlink_route.c (test_rtnl_tc): New function.
(main): Use it.

Co-authored-by: Fabien Siron <fabien.siron at epita.fr>
---
 tests/netlink_route.c | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/tests/netlink_route.c b/tests/netlink_route.c
index 929902a..887e904 100644
--- a/tests/netlink_route.c
+++ b/tests/netlink_route.c
@@ -330,6 +330,27 @@ test_rtnl_neightbl(const int fd)
 		     printf("{ndtm_family=AF_NETLINK}"));
 }
 
+static void
+test_rtnl_tc(const int fd)
+{
+	void *const nlh0 = tail_alloc(NLMSG_HDRLEN);
+	const struct tcmsg msg = {
+		.tcm_family = AF_UNIX,
+		.tcm_ifindex = IFINDEX_LO,
+		.tcm_handle = 0xfadcdafb,
+		.tcm_parent = 0xafbcadab,
+		.tcm_info = 0xbcaedafa
+	};
+
+	TEST_NL_ROUTE(fd, nlh0, RTM_GETQDISC, msg,
+		      printf("{tcm_family=AF_UNIX"),
+		      printf(", tcm_ifindex=if_nametoindex(\"lo\")");
+		      PRINT_FIELD_U(", ", msg, tcm_handle);
+		      PRINT_FIELD_U(", ", msg, tcm_parent);
+		      PRINT_FIELD_U(", ", msg, tcm_info);
+		      printf("}"));
+}
+
 int main(void)
 {
 	skip_if_unavailable("/proc/self/fd/");
@@ -348,6 +369,7 @@ int main(void)
 #endif
 	test_rtnl_neigh(fd);
 	test_rtnl_neightbl(fd);
+	test_rtnl_tc(fd);
 
 	printf("+++ exited with 0 +++\n");
 
-- 
2.7.4





More information about the Strace-devel mailing list