]> git.ipfire.org Git - thirdparty/glibc.git/blame - sysdeps/unix/sysv/linux/sys/signalfd.h
* stdlib/longlong.h: Update from GCC.
[thirdparty/glibc.git] / sysdeps / unix / sysv / linux / sys / signalfd.h
CommitLineData
3a4ef525 1/* Copyright (C) 2007, 2008 Free Software Foundation, Inc.
34c2c092
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
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;
3a4ef525 41 uint64_t ssi_ptr;
34c2c092
UD
42 uint64_t ssi_utime;
43 uint64_t ssi_stime;
44 uint64_t ssi_addr;
45 uint8_t __pad[48];
46};
47
bdcebfc4
UD
48/* Flags for signalfd. */
49enum
50 {
51 SFD_CLOEXEC = 02000000,
52#define SFD_CLOEXEC SFD_CLOEXEC
53 SFD_NONBLOCK = 04000
54#define SFD_NONBLOCK SFD_NONBLOCK
55 };
34c2c092
UD
56
57__BEGIN_DECLS
58
59/* Request notification for delivery of signals in MASK to be
60 performed using descriptor FD.*/
8e351378 61extern int signalfd (int __fd, const sigset_t *__mask, int __flags)
da0ff4ae 62 __nonnull ((2)) __THROW;
34c2c092
UD
63
64__END_DECLS
65
66#endif /* sys/signalfd.h */