source: trunk/src/emx/src/lib/sys/signals.h@ 1618

Last change on this file since 1618 was 1618, checked in by bird, 21 years ago

More signal debugging and cleanup.

  • Property cvs2svn:cvs-rev set to 1.2
  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 2.3 KB
Line 
1/* $Id: signals.h 1618 2004-11-07 14:19:42Z bird $ */
2/** @file
3 *
4 * InnoTek LIBC - Signal Internals.
5 *
6 * Copyright (c) 2004 knut st. osmundsen <[email protected]>
7 *
8 *
9 * This file is part of InnoTek LIBC.
10 *
11 * InnoTek LIBC is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License as published
13 * by the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
15 *
16 * InnoTek LIBC is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License for more details.
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * along with InnoTek LIBC; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 *
25 */
26
27#ifndef __signals_h__
28#define __signals_h__
29
30#include <sys/cdefs.h>
31#include <signal.h>
32#include <InnoTekLIBC/libc.h>
33#include <InnoTekLIBC/backend.h>
34
35/** Signal set for the signals which are pending on a process scope.
36 * These signals are blocked by all threads and waiting to be delivered
37 * to a thread. */
38extern sigset_t __libc_gSignalPending;
39
40
41__BEGIN_DECLS
42
43int __libc_back_signalInit(void);
44int __libc_back_signalInitExe(void *pvRegRec);
45int __libc_back_signalSemRequest(void);
46void __libc_back_signalSemRelease(void);
47unsigned __libc_back_signalSemIsOwner(void);
48void __libc_back_signalPokeThread(__LIBC_PTHREAD pThrd);
49void __libc_back_signalPokeProcess(void);
50int __libc_back_signalSuspend(void);
51int __libc_back_signalAccept(__LIBC_PTHREAD pThrd, int iSignalNo, sigset_t *pSigSet, siginfo_t *pSigInfo);
52int __libc_back_signalWait(__LIBC_PTHREAD pThrd, volatile int *pfDone, const struct timespec *pTimeout);
53int __libc_back_signalSendPidOther(pid_t pid, int iSignalNo, siginfo_t *pSigInfo);
54int __libc_back_signalAction(int iSignalNo, const struct sigaction *pSigAct, struct sigaction *pSigActOld);
55int __libc_back_signalRaisePoked(void *pvXcptParams, int tidPoker);
56void __libc_back_signalOS2V1Handler16bit(unsigned short uSignal, unsigned short uArg);
57void __libc_back_signalOS2V1Handler32bit(unsigned uSignal, unsigned uArg);
58
59
60__END_DECLS
61
62#endif
Note: See TracBrowser for help on using the repository browser.