VSF Documented
signalfd.h
Go to the documentation of this file.
1#ifndef __VSF_LINUX_SYS_SIGNALFD_H__
2#define __VSF_LINUX_SYS_SIGNALFD_H__
3
5
6#if VSF_LINUX_CFG_RELATIVE_PATH == ENABLED
7# include "../sys/types.h"
8# include "../signal.h"
9#else
10# include <sys/types.h>
11# include <signal.h>
12#endif
13#include <stdint.h>
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
19#if VSF_LINUX_CFG_WRAPPER == ENABLED
20#define signalfd VSF_LINUX_WRAPPER(signalfd)
21#endif
22
31};
32
33#if VSF_LINUX_APPLET_USE_SYS_SIGNALFD == ENABLED
36
39# ifndef __VSF_APPLET__
41# endif
42#endif
43
44#if defined(__VSF_APPLET__) && (defined(__VSF_APPLET_LIB__) || defined(__VSF_APPLET_LINUX_SYS_SIGNALFD_LIB__))\
45 && VSF_APPLET_CFG_ABI_PATCH != ENABLED && VSF_LINUX_APPLET_USE_SYS_SIGNALFD == ENABLED
46
47#ifndef VSF_LINUX_APPLET_SYS_SIGNALFD_VPLT
48# if VSF_LINUX_USE_APPLET == ENABLED
49# define VSF_LINUX_APPLET_SYS_SIGNALFD_VPLT \
50 ((vsf_linux_sys_signalfd_vplt_t *)(VSF_LINUX_APPLET_VPLT->sys_signalfd_vplt))
51# else
52# define VSF_LINUX_APPLET_SYS_SIGNALFD_VPLT \
53 ((vsf_linux_sys_signalfd_vplt_t *)vsf_vplt((void *)0))
54# endif
55#endif
56
57#define VSF_LINUX_APPLET_SYS_SIGNALFD_ENTRY(__NAME) \
58 VSF_APPLET_VPLT_ENTRY_FUNC_ENTRY(VSF_LINUX_APPLET_SYS_SIGNALFD_VPLT, __NAME)
59#define VSF_LINUX_APPLET_SYS_SIGNALFD_IMP(...) \
60 VSF_APPLET_VPLT_ENTRY_FUNC_IMP(VSF_LINUX_APPLET_SYS_SIGNALFD_VPLT, __VA_ARGS__)
61
62VSF_LINUX_APPLET_SYS_SIGNALFD_IMP(signalfd, int, int fd, const sigset_t *mask, int flags) {
64 return VSF_LINUX_APPLET_SYS_SIGNALFD_ENTRY(signalfd)(fd, mask, flags);
65}
66
67#else // __VSF_APPLET__ && VSF_LINUX_APPLET_USE_SYS_SIGNALFD
68
69int signalfd(int fd, const sigset_t *mask, int flags);
70
71#endif // __VSF_APPLET__ && VSF_LINUX_APPLET_USE_SYS_SIGNALFD
72
73#ifdef __cplusplus
74}
75#endif
76
77#endif // __VSF_LINUX_SIGNALFD_H__
#define signalfd
Definition signalfd.h:20
__VSF_VPLT_DECORATOR__ vsf_linux_sys_signalfd_vplt_t vsf_linux_sys_signalfd_vplt
unsigned uint32_t
Definition stdint.h:9
Definition signalfd.h:23
uint32_t ssi_tid
Definition signalfd.h:30
uint32_t ssi_uid
Definition signalfd.h:28
uint32_t ssi_pid
Definition signalfd.h:27
uint32_t ssi_fd
Definition signalfd.h:29
uint32_t ssi_signo
Definition signalfd.h:24
uint32_t ssi_errno
Definition signalfd.h:25
uint32_t ssi_code
Definition signalfd.h:26
Definition signal.h:131
Definition signalfd.h:34
vsf_vplt_info_t info
Definition signalfd.h:35
Definition vsf_cfg.h:95
#define __VSF_VPLT_DECORATOR__
Definition vsf_cfg.h:93
#define VSF_APPLET_VPLT_ENTRY_FUNC_TRACE()
Definition vsf_cfg.h:165