Module Name: src Committed By: christos Date: Sat Oct 31 14:57:02 UTC 2020
Modified Files: src/tests/kernel/kqueue: t_ioctl.c Log Message: Avoid hard-coding names and limits so this will not break again. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/tests/kernel/kqueue/t_ioctl.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tests/kernel/kqueue/t_ioctl.c diff -u src/tests/kernel/kqueue/t_ioctl.c:1.4 src/tests/kernel/kqueue/t_ioctl.c:1.5 --- src/tests/kernel/kqueue/t_ioctl.c:1.4 Tue Jan 9 12:35:29 2018 +++ src/tests/kernel/kqueue/t_ioctl.c Sat Oct 31 10:57:02 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: t_ioctl.c,v 1.4 2018/01/09 17:35:29 martin Exp $ */ +/* $NetBSD: t_ioctl.c,v 1.5 2020/10/31 14:57:02 christos Exp $ */ /*- * Copyright (c) 2002, 2008 The NetBSD Foundation, Inc. @@ -32,8 +32,9 @@ #include <sys/cdefs.h> __COPYRIGHT("@(#) Copyright (c) 2008\ The NetBSD Foundation, inc. All rights reserved."); -__RCSID("$NetBSD: t_ioctl.c,v 1.4 2018/01/09 17:35:29 martin Exp $"); +__RCSID("$NetBSD: t_ioctl.c,v 1.5 2020/10/31 14:57:02 christos Exp $"); +#define EVFILT_NAMES #include <sys/event.h> #include <sys/ioctl.h> @@ -61,13 +62,13 @@ ATF_TC_BODY(kfilter_byfilter, tc) km.name = buf; km.len = sizeof(buf) - 1; - for (i = 0; i < 8; ++i) { + for (i = 0; i < EVFILT_SYSCOUNT; ++i) { km.filter = i; RL(ioctl(kq, KFILTER_BYFILTER, &km)); (void)printf(" map %d -> %s\n", km.filter, km.name); } - km.filter = 8; + km.filter = EVFILT_SYSCOUNT; ATF_REQUIRE_EQ(ioctl(kq, KFILTER_BYFILTER, &km), -1); } @@ -78,28 +79,16 @@ ATF_TC_HEAD(kfilter_byname, tc) } ATF_TC_BODY(kfilter_byname, tc) { - const char *tests[] = { - "EVFILT_READ", - "EVFILT_WRITE", - "EVFILT_AIO", - "EVFILT_VNODE", - "EVFILT_PROC", - "EVFILT_SIGNAL", - "EVFILT_TIMER", - "EVFILT_FS", - NULL - }; char buf[32]; struct kfilter_mapping km; - const char **test; int kq; RL(kq = kqueue()); km.name = buf; - for (test = &tests[0]; *test != NULL; ++test) { - (void)strlcpy(buf, *test, sizeof(buf)); + for (size_t i = 0; i < EVFILT_SYSCOUNT; i++) { + (void)strlcpy(buf, evfiltnames[i], sizeof(buf)); RL(ioctl(kq, KFILTER_BYNAME, &km)); (void)printf(" map %s -> %d\n", km.name, km.filter); }