]> git.ipfire.org Git - thirdparty/glibc.git/blame - sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c
(CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4.
[thirdparty/glibc.git] / sysdeps / unix / sysv / linux / s390 / s390-64 / sigaction.c
CommitLineData
a334319f 1/* Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
ffeac417
UD
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
41bdb6e2
AJ
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.
ffeac417
UD
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
41bdb6e2 12 Lesser General Public License for more details.
ffeac417 13
41bdb6e2
AJ
14 You should have received a copy of the GNU Lesser General Public
15 License along with the GNU C Library; if not, write to the Free
16 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
17 02111-1307 USA. */
ffeac417 18
5ec5c857 19/* 64 bit Linux for S/390 only has rt signals, thus we do not even want to try
ffeac417
UD
20 falling back to the old style signals as the default Linux handler does. */
21
22#include <errno.h>
23#include <signal.h>
24#include <string.h>
25
26#include <sysdep.h>
27#include <sys/syscall.h>
28
ffeac417
UD
29/* The variable is shared between all wrappers around signal handling
30 functions which have RT equivalents. This is the definition. */
31
32
33/* If ACT is not NULL, change the action for SIG to *ACT.
34 If OACT is not NULL, put the old action for SIG in *OACT. */
35int
36__libc_sigaction (sig, act, oact)
37 int sig;
38 const struct sigaction *act;
39 struct sigaction *oact;
40{
41 /* XXX The size argument hopefully will have to be changed to the
42 real size of the user-level sigset_t. */
43 return INLINE_SYSCALL (rt_sigaction, 4, sig, act, oact, _NSIG / 8);
44}
5ec5c857 45libc_hidden_def (__libc_sigaction)
bf293afe
UD
46
47#ifndef LIBC_SIGACTION
ffeac417 48weak_alias (__libc_sigaction, __sigaction)
37ba7d66 49libc_hidden_weak (__sigaction)
ffeac417 50weak_alias (__libc_sigaction, sigaction)
bf293afe 51#endif