diff options
Diffstat (limited to 'src/regress/lib/libc/sys/t_select.c')
-rw-r--r-- | src/regress/lib/libc/sys/t_select.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/regress/lib/libc/sys/t_select.c b/src/regress/lib/libc/sys/t_select.c index 94ff3d3410..b10fe87495 100644 --- a/src/regress/lib/libc/sys/t_select.c +++ b/src/regress/lib/libc/sys/t_select.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: t_select.c,v 1.1.1.1 2019/11/19 19:57:04 bluhm Exp $ */ | 1 | /* $OpenBSD: t_select.c,v 1.2 2020/11/09 23:18:51 bluhm Exp $ */ |
2 | /* $NetBSD: t_select.c,v 1.4 2017/01/13 21:18:33 christos Exp $ */ | 2 | /* $NetBSD: t_select.c,v 1.4 2017/01/13 21:18:33 christos Exp $ */ |
3 | 3 | ||
4 | /*- | 4 | /*- |
@@ -76,10 +76,18 @@ prmask(const sigset_t *m, char *buf, size_t len) | |||
76 | buf[0] = '0'; | 76 | buf[0] = '0'; |
77 | buf[1] = 'x'; | 77 | buf[1] = 'x'; |
78 | #define N(p, a) (((p) >> ((a) * 4)) & 0xf) | 78 | #define N(p, a) (((p) >> ((a) * 4)) & 0xf) |
79 | /* Adjusted for OpenBSD, on NetBSD sigset_t is a struct */ | 79 | #ifdef __OpenBSD__ |
80 | /* On NetBSD sigset_t is a struct */ | ||
80 | uint32_t p = (*m); | 81 | uint32_t p = (*m); |
81 | for (size_t k = sizeof(p); k > 0; k--) | 82 | for (size_t k = sizeof(p); k > 0; k--) |
82 | buf[j++] = xtoa(N(p, k - 1)); | 83 | buf[j++] = xtoa(N(p, k - 1)); |
84 | #else | ||
85 | for (size_t i = __arraycount(m->__bits); i > 0; i--) { | ||
86 | uint32_t p = m->__bits[i - 1]; | ||
87 | for (size_t k = sizeof(p); k > 0; k--) | ||
88 | buf[j++] = xtoa(N(p, k - 1)); | ||
89 | } | ||
90 | #endif | ||
83 | buf[j] = '\0'; | 91 | buf[j] = '\0'; |
84 | return buf; | 92 | return buf; |
85 | } | 93 | } |