summaryrefslogtreecommitdiff
path: root/tests/test-sigprocmask.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test-sigprocmask.c')
-rw-r--r--tests/test-sigprocmask.c17
1 files changed, 6 insertions, 11 deletions
diff --git a/tests/test-sigprocmask.c b/tests/test-sigprocmask.c
index 4bab4c1c..c712d77d 100644
--- a/tests/test-sigprocmask.c
+++ b/tests/test-sigprocmask.c
@@ -1,5 +1,5 @@
/* Test of sigprocmask.
- Copyright (C) 2011-2022 Free Software Foundation, Inc.
+ Copyright (C) 2011-2024 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -24,6 +24,7 @@
SIGNATURE_CHECK (sigprocmask, int, (int, const sigset_t *, sigset_t *));
#include <errno.h>
+#include <inttypes.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
@@ -35,24 +36,18 @@ SIGNATURE_CHECK (sigprocmask, int, (int, const sigset_t *, sigset_t *));
static volatile int sigint_occurred;
static void
-sigint_handler (int sig)
+sigint_handler (_GL_UNUSED int sig)
{
sigint_occurred++;
}
int
-main (int argc, char *argv[])
+main ()
{
sigset_t set;
- pid_t pid = getpid ();
+ intmax_t pid = getpid ();
char command[80];
- if (sizeof (int) < sizeof pid && 0x7fffffff < pid)
- {
- fputs ("Skipping test: pid too large\n", stderr);
- return 77;
- }
-
signal (SIGINT, sigint_handler);
sigemptyset (&set);
@@ -66,7 +61,7 @@ main (int argc, char *argv[])
ASSERT (sigprocmask (SIG_BLOCK, &set, NULL) == 0);
/* Request a SIGINT signal from outside. */
- sprintf (command, "sh -c 'sleep 1; kill -%d %d' &", SIGINT, (int) pid);
+ sprintf (command, "sh -c 'sleep 1; kill -INT %"PRIdMAX"' &", pid);
ASSERT (system (command) == 0);
/* Wait. */