add getvfsbyname
[unix-history] / usr / src / lib / libc / gen / signal.c
CommitLineData
b8f253e8 1/*
74155b62
KB
2 * Copyright (c) 1985, 1989, 1993
3 * The Regents of the University of California. All rights reserved.
0aaa35b3 4 *
269a7923 5 * %sccs.include.redist.c%
b8f253e8
KM
6 */
7
2ce81398 8#if defined(LIBC_SCCS) && !defined(lint)
74155b62 9static char sccsid[] = "@(#)signal.c 8.1 (Berkeley) %G%";
0aaa35b3 10#endif /* LIBC_SCCS and not lint */
3a2dc6bc 11
ddc47039
RC
12/*
13 * Almost backwards compatible signal.
ddc47039 14 */
3a2dc6bc
KM
15#include <signal.h>
16
8a376f64
MK
17sigset_t _sigintr; /* shared with siginterrupt */
18
19sig_t
20signal(s, a)
21 int s;
22 sig_t a;
3a2dc6bc 23{
8a376f64 24 struct sigaction sa, osa;
ddc47039 25
8a376f64
MK
26 sa.sa_handler = a;
27 sigemptyset(&sa.sa_mask);
28 sa.sa_flags = 0;
29 if (!sigismember(&_sigintr, s))
30 sa.sa_flags |= SA_RESTART;
31 if (sigaction(s, &sa, &osa) < 0)
06016cbb 32 return (SIG_ERR);
8a376f64 33 return (osa.sa_handler);
3a2dc6bc 34}