Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/sys This is not used yet.
details: https://anonhg.NetBSD.org/src/rev/8303e639efc5
branches: trunk
changeset: 539812:8303e639efc5
user: christos <christos%NetBSD.org@localhost>
date: Tue Nov 26 19:06:38 2002 +0000
description:
This is not used yet.
diffstat:
sys/sys/siginfo.h | 166 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 166 insertions(+), 0 deletions(-)
diffs (170 lines):
diff -r 3e8d036a9e21 -r 8303e639efc5 sys/sys/siginfo.h
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/sys/siginfo.h Tue Nov 26 19:06:38 2002 +0000
@@ -0,0 +1,166 @@
+/* $NetBSD: siginfo.h,v 1.1 2002/11/26 19:06:38 christos Exp $ */
+
+/*-
+ * Copyright (c) 2002 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Christos Zoulas.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the NetBSD
+ * Foundation, Inc. and its contributors.
+ * 4. Neither the name of The NetBSD Foundation nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _SYS_SIGINFO_H_
+#define _SYS_SIGINFO_H_
+
+typedef union sigval {
+ int sival_int;
+ void *sival_ptr;
+} sigval_t;
+
+typedef union siginfo {
+ char si_pad[128]; /* Total size; for future expansion */
+ struct {
+ int _signo;
+ int _code;
+ int _errno;
+#ifdef _LP64
+ /* In _LP64 the union starts on an 8-byte boundary. */
+ int _pad;
+#endif
+ union {
+ struct {
+ pid_t _pid;
+ uid_t _uid;
+ sigval_t _sigval;
+ } _rt;
+
+ struct {
+ pid_t _pid;
+ uid_t _uid;
+ int _status;
+ clock_t _utime;
+ clock_t _stime;
+ } _child;
+
+ struct {
+ void *_addr;
+ int _trap;
+ } _fault;
+
+ struct {
+ long _band;
+ int _fd;
+ } _poll;
+ } _reason;
+ } _info;
+} siginfo_t;
+
+/** Field access macros */
+#define si_signo _info._signo
+#define si_code _info._code
+#define si_errno _info._errno
+
+#define si_sigval _info._reason._rt._sigval
+#define si_pid _info._reason._child._pid
+#define si_uid _info._reason._child._uid
+#define si_status _info._reason._child._status
+#define si_utime _info._reason._child._utime
+#define si_stime _info._reason._child._stime
+
+#define si_addr _info._reason._fault._addr
+#define si_trap _info._reason._fault._trap
+
+#define si_band _info._reason._poll._band
+#define si_fd _info._reason._poll._fd
+
+/** si_code */
+/* SIGILL */
+#define ILL_ILLOPC 1 /* Illegal opcode */
+#define ILL_ILLOPN 2 /* Illegal operand */
+#define ILL_ILLADR 3 /* Illegal addressing mode */
+#define ILL_ILLTRP 4 /* Illegal trap */
+#define ILL_PRVOPC 5 /* Privileged opcode */
+#define ILL_PRVREG 6 /* Privileged register */
+#define ILL_COPROC 7 /* Coprocessor error */
+#define ILL_BADSTK 8 /* Internal stack error */
+
+/* SIGFPE */
+#define FPE_INTDIV 1 /* Integer divide by zero */
+#define FPE_INTOVF 2 /* Integer overflow */
+#define FPE_FLTDIV 3 /* Floating point divide by zero */
+#define FPE_FLTOVF 4 /* Floating point overflow */
+#define FPE_FLTUND 5 /* Floating point underflow */
+#define FPE_FLTRES 6 /* Floating poing inexact result */
+#define FPE_FLTINV 7 /* Invalid Floating poing operation */
+#define FPE_FLTSUB 8 /* Subscript out of range */
+
+/* SIGSEGV */
+#define SEGV_MAPERR 1 /* Address not mapped to object */
+#define SEGV_ACCERR 2 /* Invalid permissions for mapped object*/
+
+/* SIGBUS */
+#define BUS_ADRALN 1 /* Invalid address alignment */
+#define BUS_ADRERR 2 /* Non-existant physical address */
+#define BUS_OBJERR 3 /* Object specific hardware error */
+
+/* SIGTRAP */
+#define TRAP_BRKPT 1 /* Process breakpoint */
+#define TRAP_TRACE 2 /* Process trace trap */
+
+/* SIGCHLD */
+#define CLD_EXITED 1 /* Child has exited */
+#define CLD_KILLED 2 /* Child has terminated abnormally but */
+ /* did not create a core file */
+#define CLD_DUMPED 3 /* Child has terminated abnormally and */
+ /* created a core file */
+#define CLD_TRAPPED 4 /* Traced child has trapped */
+#define CLD_STOPPED 5 /* Child has stopped */
+#define CLD_CONTINUED 6 /* Stopped child has continued */
+
+/* SIGPOLL */
+#define POLL_IN 1 /* Data input available */
+#define POLL_OUT 2 /* Output buffers available */
+#define POLL_MSG 3 /* Input message available */
+#define POLL_ERR 4 /* I/O Error */
+#define POLL_PRI 5 /* High priority input available */
+#define POLL_HUP 4 /* Device disconnected */
+
+
+/** si_code */
+#define SI_USER 0 /* Sent by kill(2) */
+#define SI_QUEUE -1 /* Sent by the sigqueue(2) */
+#define SI_TIMER -2 /* Generated by expiration of a timer */
+ /* set by timer_settime(2) */
+#define SI_ASYNCIO -3 /* Generated by completion of an */
+ /* asynchronous I/O signal */
+#define SI_MESGQ -4 /* Generated by arrival of a message on */
+ /* an empty message queue */
+
+#endif /* !_SYS_SIGINFO_H_ */
Home |
Main Index |
Thread Index |
Old Index