Remove 'grp' and merge into 'nss' and 'posix'
[platform/upstream/glibc.git] / signal / tst-sigsimple.c
1 /* Copyright (C) 2003-2023 Free Software Foundation, Inc.
2    This file is part of the GNU C Library.
3
4    The GNU C Library is free software; you can redistribute it and/or
5    modify it under the terms of the GNU Lesser General Public
6    License as published by the Free Software Foundation; either
7    version 2.1 of the License, or (at your option) any later version.
8
9    The GNU C Library is distributed in the hope that it will be useful,
10    but WITHOUT ANY WARRANTY; without even the implied warranty of
11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12    Lesser General Public License for more details.
13
14    You should have received a copy of the GNU Lesser General Public
15    License along with the GNU C Library; if not, see
16    <https://www.gnu.org/licenses/>.  */
17
18 #include <errno.h>
19 #include <signal.h>
20 #include <stdio.h>
21 #include <string.h>
22 #include <libc-diag.h>
23
24 /* The sighold and sigrelse functions are deprecated.  */
25 DIAG_IGNORE_NEEDS_COMMENT (4.9, "-Wdeprecated-declarations");
26
27 static int
28 do_test (void)
29 {
30   int result = 0;
31   int e;
32
33 #define RUN(test) \
34   errno = 0;                                                                  \
35   e = test;                                                                   \
36   if (e != -1)                                                                \
37     {                                                                         \
38       printf ("%s returned %d\n", #test, e);                                  \
39       result = 1;                                                             \
40     }                                                                         \
41   else if (errno != EINVAL)                                                   \
42     {                                                                         \
43       printf ("%s didn't set errno to EINVAL (%s instead)\n",                 \
44               #test, strerror (errno));                                       \
45       result = 1;                                                             \
46     }
47
48   RUN (sighold (-1));
49   RUN (sighold (_NSIG + 100));
50
51   RUN (sigrelse (-1));
52   RUN (sigrelse (_NSIG + 100));
53
54   return result;
55 }
56
57 #define TEST_FUNCTION do_test ()
58 #include "../test-skeleton.c"