• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/toolchains/hndtools-arm-linux-2.6.36-uclibc-4.5.3/arm-brcm-linux-uclibcgnueabi/sysroot/usr/include/sys/
1/* Copyright (C) 2007, 2008 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, write to the Free
16   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
17   02111-1307 USA.  */
18
19#ifndef _SYS_SIGNALFD_H
20#define _SYS_SIGNALFD_H 1
21
22#define __need_sigset_t
23#include <signal.h>
24#include <stdint.h>
25
26
27struct signalfd_siginfo
28{
29  uint32_t ssi_signo;
30  int32_t ssi_errno;
31  int32_t ssi_code;
32  uint32_t ssi_pid;
33  uint32_t ssi_uid;
34  int32_t ssi_fd;
35  uint32_t ssi_tid;
36  uint32_t ssi_band;
37  uint32_t ssi_overrun;
38  uint32_t ssi_trapno;
39  int32_t ssi_status;
40  int32_t ssi_int;
41  uint64_t ssi_ptr;
42  uint64_t ssi_utime;
43  uint64_t ssi_stime;
44  uint64_t ssi_addr;
45  uint8_t __pad[48];
46};
47
48/* Flags for signalfd.  */
49#if defined __sparc__ || defined __sparc64__
50enum
51  {
52    SFD_CLOEXEC = 0x400000,
53# define SFD_CLOEXEC SFD_CLOEXEC
54    SFD_NONBLOCK = 0x4000
55# define SFD_NONBLOCK SFD_NONBLOCK
56  };
57
58#elif defined __alpha__
59enum
60  {
61    SFD_CLOEXEC = 010000000,
62# define SFD_CLOEXEC SFD_CLOEXEC
63    SFD_NONBLOCK = 04
64# define SFD_NONBLOCK SFD_NONBLOCK
65  };
66
67#else
68enum
69  {
70    SFD_CLOEXEC = 02000000,
71# define SFD_CLOEXEC SFD_CLOEXEC
72    SFD_NONBLOCK = 04000
73# define SFD_NONBLOCK SFD_NONBLOCK
74  };
75#endif
76
77__BEGIN_DECLS
78
79/* Request notification for delivery of signals in MASK to be
80   performed using descriptor FD.*/
81extern int signalfd (int __fd, const sigset_t *__mask, int __flags)
82  __nonnull ((2)) __THROW;
83
84__END_DECLS
85
86#endif /* sys/signalfd.h */
87