Main index | Section 9 | Options |
#include <sys/sysent.h>
struct syscall_helper_data { struct sysent new_sysent; struct sysent old_sysent; int syscall_no; int registered; };
The only valid flag for the flags argument to syscall_helper_register() is SY_THR_STATIC. This flag prevents the syscall from being unregistered.
Before use, the structure must be initialized with one of the SYSCALL_INIT_HELPER*() macros. In new code, syscall implementation functions shall be named sys_syscallname() and the regular macros shall be used.
For legacy syscall functions named without "sys_" prefixes, the "COMPAT" versions of the macros may be used.
The only valid flag for the flags argument to the "F" variants of the initializer macros is SYF_CAPENABLED. This flag indicates that the syscall is allowed in capability mode.
The syscall_helper_unregister() unregisters a system call. This function takes the same structure struct syscall_helper_data sd that was previously initialized in the manner described above and used in a successful invocation of syscall_helper_register().
[EINVAL] | |
The flags argument contained a value other than SY_THR_STATIC. | |
[EINVAL] | |
The specified syscall number, sd.syscall_no ( SYS_syscallname), was outside of the valid range of system call numbers (zero through SYS_MAXSYSCALL). | |
[ENFILE] | |
The system call table does not have any available slots. | |
[EEXIST] | |
The specified syscall number, sd.syscall_no ( SYS_syscallname), was already in use. | |
SYSCALL_HELPER_REGISTER (9) | February 10, 2018 |
Main index | Section 9 | Options |
Please direct any comments about this manual page service to Ben Bullock. Privacy policy.