Man page - rt_sigaction(2)
Packages contains this manual
- __malloc_initialize_hook(3)
- getpwuid(3)
- frexpl(3)
- fchown(2)
- setttyent(3)
- pthread_attr_setstacksize(3)
- calloc(3)
- clog(3)
- seteuid(2)
- res_nquerydomain(3)
- y0l(3)
- catanl(3)
- catanh(3)
- inet_addr(3)
- getcwd(2)
- epoll_create1(2)
- atol(3)
- pciconfig_write(2)
- htonl(3)
- timer_settime(2)
- munmap(2)
- cexpl(3)
- rt_sigsuspend(2)
- msgctl(2)
- tan(3)
- get_mempolicy(2)
- roundf(3)
- towctrans(3)
- xdr_opaque(3)
- psignal(3)
- error_at_line(3)
- xdrmem_create(3)
- select(2)
- getdate_r(3)
- getprotobyname_r(3)
- nrand48_r(3)
- inet_netof(3)
- inet_ntoa(3)
- nextafterl(3)
- innetgr(3)
- on_exit(3)
- expm1l(3)
- strfmon(3)
- strdup(3)
- getservbyport(3)
- arch_prctl(2)
- j0(3)
- wait4(2)
- personality(2)
- bpf(2)
- pvalloc(3)
- getresuid32(2)
- des_setparity(3)
- prctl(2)
- clog10(3)
- aio_init(3)
- pthread_getconcurrency(3)
- csinl(3)
- linkat(2)
- vsscanf(3)
- isascii(3)
- xdr_union(3)
- nan(3)
- utimensat(2)
- ioctl_vt(2)
- _newselect(2)
- ldexpl(3)
- fabsf(3)
- chown(2)
- mkstemps(3)
- pthread_attr_getstacksize(3)
- listxattr(2)
- getpgrp(2)
- xdr_short(3)
- tcflush(3)
- pthread_cond_wait(3)
- argz_add(3)
- wcpncpy(3)
- reallocarray(3)
- llrintf(3)
- outsl(2)
- qsort(3)
- authnone_create(3)
- tzname(3)
- setresuid32(2)
- isspace(3)
- open_by_handle_at(2)
- drem(3)
- conjf(3)
- nanosleep(2)
- pthread_kill(3)
- putc(3)
- pthread_condattr_destroy(3)
- getpwuid_r(3)
- strverscmp(3)
- res_init(3)
- cacosl(3)
- qecvt_r(3)
- iswgraph(3)
- gethostbyname(3)
- ntohl(3)
- acct(2)
- asinl(3)
- envz_merge(3)
- strdupa(3)
- idle(2)
- getopt_long_only(3)
- hstrerror(3)
- fanotify_init(2)
- fputs_unlocked(3)
- sleep(3)
- vfprintf(3)
- scalb(3)
- nanl(3)
- lchown32(2)
- getnetent_r(3)
- fcntl(2)
- inw(2)
- rintl(3)
- arc4random(3)
- getsockopt(2)
- ilogbl(3)
- clog2(3)
- encrypt(3)
- sqrtf(3)
- isspace_l(3)
- tanl(3)
- cfmakeraw(3)
- assert(3)
- strtoull(3)
- xdrstdio_create(3)
- optopt(3)
- setrlimit(2)
- lround(3)
- xdr_accepted_reply(3)
- fmin(3)
- mq_notify(3)
- svcerr_auth(3)
- sbrk(2)
- recv(2)
- mq_unlink(2)
- strxfrm(3)
- ctan(3)
- atoi(3)
- xcrypt(3)
- sgetspent(3)
- fread(3)
- isless(3)
- ceil(3)
- pthread_cond_broadcast(3)
- oldfstat(2)
- outl(2)
- times(2)
- wcslen(3)
- popen(3)
- wprintf(3)
- labs(3)
- getrpcbynumber(3)
- shmat(2)
- clock_gettime(2)
- btree(3)
- s390_sthyi(2)
- siggetmask(3)
- getgid32(2)
- puts(3)
- scalblnl(3)
- strpbrk(3)
- catanhl(3)
- vlimit(3)
- getrpcent(3)
- tgammal(3)
- strtoll(3)
- funlockfile(3)
- xdecrypt(3)
- pthread_key_delete(3)
- setgrent(3)
- wmemmove(3)
- gnu_dev_major(3)
- regexec(3)
- lrintl(3)
- __ppc_set_ppr_med(3)
- rmdir(2)
- io_getevents(2)
- request_key(2)
- ecvt(3)
- __ppc_mdoom(3)
- mktemp(3)
- key_gendes(3)
- le64toh(3)
- statvfs(3)
- rpc(3)
- getdate_err(3)
- munlockall(2)
- close(2)
- xdr_rejected_reply(3)
- dlerror(3)
- le32toh(3)
- feclearexcept(3)
- insque(3)
- clntraw_create(3)
- getutid(3)
- strtof(3)
- settimeofday(2)
- mkdir(2)
- rewind(3)
- logf(3)
- tmpnam(3)
- iswpunct(3)
- wcrtomb(3)
- epoll_pwait(2)
- getitimer(2)
- wordexp(3)
- clog2f(3)
- capset(2)
- strrchr(3)
- outsb(2)
- freeifaddrs(3)
- getwc_unlocked(3)
- ustat(2)
- bswap_16(3)
- program_invocation_short_name(3)
- ldiv(3)
- exp10f(3)
- vprintf(3)
- wcsncpy(3)
- iscntrl(3)
- readlink(2)
- semget(2)
- connect(2)
- psiginfo(3)
- epoll_ctl(2)
- removexattr(2)
- envz_strip(3)
- fgetxattr(2)
- atexit(3)
- putgrent(3)
- bswap(3)
- getegid32(2)
- qecvt(3)
- asinh(3)
- isfdtype(3)
- setenv(3)
- readdir(3)
- rtime(3)
- nearbyint(3)
- getgroups32(2)
- statx(2)
- modify_ldt(2)
- cpow(3)
- eventfd_read(3)
- sendfile64(2)
- getnetbyname(3)
- fremovexattr(2)
- uselib(2)
- inet(3)
- endutxent(3)
- clnt_spcreateerror(3)
- pututline(3)
- nexttowardl(3)
- getipnodebyaddr(3)
- fts_set(3)
- memmem(3)
- fmodl(3)
- setfsuid32(2)
- wordfree(3)
- fadvise64(2)
- getppid(2)
- qsort_r(3)
- toupper(3)
- getwc(3)
- fputws(3)
- mrand48(3)
- preadv(2)
- sincosf(3)
- fstatat64(2)
- dirfd(3)
- jnf(3)
- static_assert(3)
- wctype(3)
- vwarn(3)
- setfsent(3)
- listen(2)
- wcstok(3)
- argz_insert(3)
- select_tut(2)
- ctanl(3)
- getunwind(2)
- difftime(3)
- daylight(3)
- sigpause(3)
- wcscat(3)
- dlclose(3)
- __ppc_set_ppr_med_low(3)
- pread(2)
- fstatvfs(3)
- cbrtf(3)
- strnlen(3)
- sinhl(3)
- inl_p(2)
- setregid32(2)
- putwc(3)
- register_printf_type(3)
- nextafterf(3)
- opendir(3)
- strtod(3)
- tgamma(3)
- malloc_get_state(3)
- aio_write(3)
- timezone(3)
- xdr_pmaplist(3)
- sysfs(2)
- index(3)
- svcerr_noproc(3)
- envz(3)
- klogctl(3)
- pselect(2)
- get_current_dir_name(3)
- xdr_char(3)
- asinhf(3)
- preadv2(2)
- inotify_init1(2)
- pthread_attr_setstackaddr(3)
- getline(3)
- tanhf(3)
- rtnetlink(3)
- pkey_alloc(2)
- edata(3)
- stailq(3)
- isastream(2)
- setregid(2)
- copy_file_range(2)
- rcmd_af(3)
- futex(2)
- prof(2)
- siglongjmp(3)
- hdestroy(3)
- catan(3)
- pthread_cond_signal(3)
- mkfifoat(3)
- clntudp_create(3)
- getentropy(3)
- vsprintf(3)
- fabs(3)
- lseek64(3)
- pthread_setname_np(3)
- conjl(3)
- chroot(2)
- ccoshf(3)
- erand48_r(3)
- wcsnrtombs(3)
- rindex(3)
- fputc_unlocked(3)
- setresgid32(2)
- gettimeofday(2)
- cexp(3)
- inotify_add_watch(2)
- set_robust_list(2)
- nice(2)
- strtold(3)
- mq_getattr(3)
- xdr(3)
- getxattr(2)
- getrandom(2)
- splice(2)
- strerror(3)
- fcntl64(2)
- fnmatch(3)
- ungetwc(3)
- getspnam_r(3)
- clearenv(3)
- atan2(3)
- get_myaddress(3)
- open(2)
- pthread_setcancelstate(3)
- newlocale(3)
- open_memstream(3)
- setprotoent(3)
- logbf(3)
- ilogb(3)
- wmemcpy(3)
- tcsendbreak(3)
- be16toh(3)
- perfmonctl(2)
- strtoq(3)
- getgrgid_r(3)
- pthread_timedjoin_np(3)
- memfd_create(2)
- getttynam(3)
- mcheck_pedantic(3)
- _llseek(2)
- renameat2(2)
- ioperm(2)
- ecb_crypt(3)
- pthread_condattr_init(3)
- fminl(3)
- lio_listio(3)
- envz_add(3)
- setbuf(3)
- setkey(3)
- expm1(3)
- strtoul(3)
- getcwd(3)
- setutxent(3)
- getrpcent_r(3)
- unimplemented(2)
- fclose(3)
- epoll_create(2)
- getfsent(3)
- key_secretkey_is_set(3)
- vserver(2)
- vswprintf(3)
- sigsuspend(2)
- pututxline(3)
- clnt_freeres(3)
- cacheflush(2)
- ioprio_set(2)
- alarm(2)
- fgetc(3)
- __fpurge(3)
- getlogin_r(3)
- vfork(2)
- bstring(3)
- div(3)
- getrusage(2)
- gettid(2)
- dprintf(3)
- strtoumax(3)
- jrand48(3)
- iswcntrl(3)
- vwarnx(3)
- cacos(3)
- ccoshl(3)
- fesetexceptflag(3)
- res_nclose(3)
- shmop(2)
- mcheck_check_all(3)
- vscanf(3)
- tolower(3)
- landlock_add_rule(2)
- argz_next(3)
- lroundl(3)
- ruserok(3)
- glob(3)
- brk(2)
- rename(2)
- strcspn(3)
- sched_getscheduler(2)
- wcstoumax(3)
- dbopen(3)
- xdr_bytes(3)
- fegetenv(3)
- scalbf(3)
- pkey_free(2)
- fgetgrent(3)
- strchrnul(3)
- fork(2)
- log1pf(3)
- strtoimax(3)
- fputs(3)
- putspent(3)
- ttyname_r(3)
- iswlower(3)
- epoll_wait(2)
- minor(3)
- wcsspn(3)
- sendmmsg(2)
- pthread_attr_getsigmask_np(3)
- erand48(3)
- setpgrp(2)
- db(3)
- readv(2)
- cimagf(3)
- pthread_sigmask(3)
- getresuid(2)
- gamma(3)
- logwtmp(3)
- imaxabs(3)
- y1(3)
- swapoff(2)
- svcerr_weakauth(3)
- mbtowc(3)
- madvise(2)
- __fbufsize(3)
- swapon(2)
- towlower(3)
- asin(3)
- initgroups(3)
- svc_getreqset(3)
- pthread_attr_destroy(3)
- scalblnf(3)
- ispunct(3)
- casin(3)
- xdr_pmap(3)
- sigvec(3)
- dlmopen(3)
- localeconv(3)
- tcgetattr(3)
- mempcpy(3)
- clnt_perrno(3)
- clock_getcpuclockid(3)
- setaliasent(3)
- clock(3)
- ftok(3)
- svc_run(3)
- getsubopt(3)
- coshf(3)
- pow(3)
- getpwent(3)
- ntp_gettime(3)
- xdrrec_skiprecord(3)
- symlink(2)
- shmctl(2)
- mq_timedreceive(2)
- malloc(3)
- tgkill(2)
- l64a(3)
- unlockpt(3)
- mallopt(3)
- creal(3)
- syscalls(2)
- set_tid_address(2)
- exp2f(3)
- fstatfs(2)
- statfs(2)
- dreml(3)
- feenableexcept(3)
- ftw(3)
- fanotify_mark(2)
- clnt_sperror(3)
- realpath(3)
- sysconf(3)
- _syscall(2)
- set_mempolicy(2)
- mq_unlink(3)
- freehostent(3)
- rresvport_af(3)
- nl_langinfo_l(3)
- fmaxl(3)
- iscntrl_l(3)
- copysignf(3)
- llseek(2)
- bzero(3)
- ioctl_fsmap(2)
- remquof(3)
- malloc_trim(3)
- pthread_getattr_default_np(3)
- isalnum_l(3)
- mlock(2)
- nearbyintf(3)
- confstr(3)
- sinf(3)
- ioctl_eventpoll(2)
- sigstack(3)
- seed48_r(3)
- utmpname(3)
- malloc_stats(3)
- stpncpy(3)
- getservbyport_r(3)
- cabsl(3)
- isblank(3)
- sigprocmask(2)
- isinfl(3)
- isinff(3)
- pathconf(3)
- xdr_u_short(3)
- acos(3)
- timerfd_create(2)
- key_encryptsession(3)
- log2f(3)
- oldlstat(2)
- res_querydomain(3)
- memcmp(3)
- gethostbyaddr(3)
- sighold(3)
- gtty(2)
- xdr_void(3)
- getmsg(2)
- io_setup(2)
- ttyslot(3)
- recno(3)
- cuserid(3)
- nanf(3)
- pthread_getaffinity_np(3)
- if_indextoname(3)
- remainderf(3)
- putpwent(3)
- pow10f(3)
- pwritev(2)
- swapcontext(3)
- cfsetospeed(3)
- envz_remove(3)
- cosh(3)
- a64l(3)
- uselocale(3)
- yn(3)
- msgget(2)
- pthread_equal(3)
- prlimit(2)
- setspent(3)
- newfstatat(2)
- renameat(2)
- truncf(3)
- pthread_yield(3)
- tkill(2)
- islessequal(3)
- isnanf(3)
- sethostent(3)
- setvbuf(3)
- gnu_get_libc_release(3)
- atoll(3)
- getgrnam(3)
- get_robust_list(2)
- __ppc_yield(3)
- __memalign_hook(3)
- eventfd2(2)
- mq_setattr(3)
- tmpnam_r(3)
- pmap_getport(3)
- svcfd_create(3)
- getfsspec(3)
- setgid(2)
- getlogin(3)
- get_nprocs(3)
- canonicalize_file_name(3)
- pthread_mutexattr_getrobust(3)
- strerrorname_np(3)
- csinh(3)
- malloc_set_state(3)
- tcgetsid(3)
- ssignal(3)
- secure_getenv(3)
- significandl(3)
- wcschr(3)
- isgraph(3)
- pthread_mutexattr_gettype(3)
- creat(2)
- cabsf(3)
- __ppc_set_ppr_med_high(3)
- fchdir(2)
- backtrace_symbols(3)
- exp10l(3)
- euidaccess(3)
- sync_file_range(2)
- getutxline(3)
- isdigit(3)
- sinhf(3)
- lgetxattr(2)
- getaliasent(3)
- memrchr(3)
- io_submit(2)
- clnt_create(3)
- __setfpucw(3)
- _flushlbf(3)
- lcong48_r(3)
- clog10l(3)
- pmap_getmaps(3)
- memalign(3)
- xdr_authunix_parms(3)
- execl(3)
- getdate(3)
- cfsetispeed(3)
- tanhl(3)
- wmempcpy(3)
- outw_p(2)
- faccessat(2)
- rresvport(3)
- nextup(3)
- fgetgrent_r(3)
- getopt(3)
- xdr_vector(3)
- aio_error(3)
- frexpf(3)
- getpw(3)
- sscanf(3)
- mprotect(2)
- exp(3)
- sched_getaffinity(2)
- accept4(2)
- remainderl(3)
- pthread_key_create(3)
- endian(3)
- setmntent(3)
- get_phys_pages(3)
- argz(3)
- _exit(2)
- towupper_l(3)
- lrand48(3)
- csqrt(3)
- hdestroy_r(3)
- remquo(3)
- feof_unlocked(3)
- isprint(3)
- pivot_root(2)
- arc4random_uniform(3)
- strfroml(3)
- getdomainname(2)
- va_end(3)
- getresgid(2)
- cosf(3)
- endhostent(3)
- setgid32(2)
- ioctl_fs(2)
- getaddrinfo(3)
- fgetwc(3)
- lock(2)
- getservbyname_r(3)
- sys_nerr(3)
- insb(2)
- usleep(3)
- security(2)
- cfree(3)
- tanf(3)
- fprintf(3)
- pthread_mutexattr_setpshared(3)
- xprt_unregister(3)
- alphasort(3)
- getgrent(3)
- scandirat(3)
- iruserok(3)
- ttyname(3)
- tdestroy(3)
- strcasecmp(3)
- getpgid(2)
- drand48_r(3)
- mmap(2)
- sigtimedwait(2)
- pthread_once(3)
- mq_receive(3)
- pthread_mutexattr_setkind_np(3)
- iopl(2)
- s390_runtime_instr(2)
- lckpwdf(3)
- memmove(3)
- __fpending(3)
- mbsrtowcs(3)
- restart_syscall(2)
- memset(3)
- significandf(3)
- openat2(2)
- timeradd(3)
- conj(3)
- flockfile(3)
- madvise1(2)
- inet_aton(3)
- fstatfs64(2)
- fmax(3)
- fmemopen(3)
- fmaf(3)
- lseek(2)
- registerrpc(3)
- kexec_file_load(2)
- gammal(3)
- feof(3)
- pidfd_open(2)
- crealf(3)
- clogl(3)
- getutmp(3)
- umount(2)
- inet_pton(3)
- flistxattr(2)
- xdr_wrapstring(3)
- socketcall(2)
- setrpcent(3)
- rint(3)
- vm86(2)
- sincosl(3)
- getprotoent_r(3)
- mknod(2)
- getdents64(2)
- gai_cancel(3)
- srandom_r(3)
- getnetbyname_r(3)
- sigaddset(3)
- htole16(3)
- endnetent(3)
- nextafter(3)
- timerisset(3)
- getgrent_r(3)
- freeaddrinfo(3)
- endprotoent(3)
- mbind(2)
- sigorset(3)
- pthread_rwlockattr_setkind_np(3)
- cimag(3)
- waitid(2)
- abs(3)
- unlink(2)
- recvmsg(2)
- getaliasbyname(3)
- wctrans(3)
- kill(2)
- strtol(3)
- __ppc_set_ppr_very_low(3)
- membarrier(2)
- getnetbyaddr_r(3)
- writev(2)
- errx(3)
- tfind(3)
- clone3(2)
- __freading(3)
- outw(2)
- regfree(3)
- accept(2)
- timer_getoverrun(2)
- shmdt(2)
- svcerr_decode(3)
- getnameinfo(3)
- endusershell(3)
- execvpe(3)
- cbc_crypt(3)
- res_send(3)
- xdr_destroy(3)
- getcontext(3)
- pkey_mprotect(2)
- twalk_r(3)
- isalnum(3)
- timercmp(3)
- setxattr(2)
- pthread_cleanup_pop_restore_np(3)
- stat(2)
- isupper(3)
- vsyslog(3)
- strlen(3)
- pthread_attr_setinheritsched(3)
- xdr_inline(3)
- strtouq(3)
- raise(3)
- getpeername(2)
- capget(2)
- atanl(3)
- ferror_unlocked(3)
- isxdigit_l(3)
- modfl(3)
- pthread_mutexattr_init(3)
- pthread_mutexattr_getkind_np(3)
- phys(2)
- llabs(3)
- sched_rr_get_interval(2)
- asprintf(3)
- explicit_bzero(3)
- asctime(3)
- clone(2)
- munlock(2)
- __realloc_hook(3)
- atof(3)
- rt_tgsigqueueinfo(2)
- syslog(2)
- inet_makeaddr(3)
- epoll_pwait2(2)
- iswalpha(3)
- netlink(3)
- sched_setattr(2)
- sigdescr_np(3)
- access(2)
- getc_unlocked(3)
- dysize(3)
- inet_net_pton(3)
- sched_setparam(2)
- timerfd_settime(2)
- nexttowardf(3)
- expf(3)
- svcerr_progvers(3)
- getwchar(3)
- ftime(3)
- if_nametoindex(3)
- argz_add_sep(3)
- vasprintf(3)
- unlinkat(2)
- putenv(3)
- pthread_mutexattr_setrobust_np(3)
- error_message_count(3)
- setfsgid(2)
- cmsg(3)
- setpwent(3)
- cfgetospeed(3)
- end(3)
- pidfd_send_signal(2)
- scalbn(3)
- closelog(3)
- srandom(3)
- argz_replace(3)
- ioctl_tty(2)
- va_arg(3)
- towlower_l(3)
- isblank_l(3)
- remove(3)
- expl(3)
- fscanf(3)
- versionsort(3)
- pow10(3)
- hsearch(3)
- gethostid(3)
- fchownat(2)
- group_member(3)
- getchar_unlocked(3)
- getservbyname(3)
- pthread_mutexattr_destroy(3)
- setpgid(2)
- acosf(3)
- ctanhf(3)
- shm_open(3)
- towupper(3)
- getdents(2)
- chown32(2)
- hypotf(3)
- undocumented(3)
- drand48(3)
- csinf(3)
- ctime_r(3)
- setlinebuf(3)
- ulimit(3)
- spu_create(2)
- fcvt_r(3)
- ipc(2)
- ftruncate64(2)
- fdopen(3)
- svcerr_noprog(3)
- getrpcport(3)
- csin(3)
- sinh(3)
- nrand48(3)
- openpty(3)
- xdr_double(3)
- pthread_attr_getscope(3)
- vfscanf(3)
- catanhf(3)
- inb(2)
- wcpcpy(3)
- ldexp(3)
- getopt_long(3)
- strerrordesc_np(3)
- mbsinit(3)
- argz_stringify(3)
- setbuffer(3)
- byteorder(3)
- expm1f(3)
- pthread_attr_setscope(3)
- gnu_dev_makedev(3)
- pipe(2)
- updwtmp(3)
- fts_read(3)
- ioctl_fat(2)
- h_errno(3)
- sem_getvalue(3)
- iswupper(3)
- lrint(3)
- perror(3)
- xdr_u_int(3)
- timer_create(2)
- iswdigit(3)
- fgetspent(3)
- fwrite_unlocked(3)
- reboot(2)
- ftruncate(2)
- getutmpx(3)
- pwrite64(2)
- getauxval(3)
- xdr_pointer(3)
- getprotobynumber(3)
- svc_destroy(3)
- vmsplice(2)
- inet_network(3)
- readdir_r(3)
- setsockopt(2)
- rexec(3)
- flock(2)
- getw(3)
- mmap2(2)
- j1f(3)
- cprojf(3)
- mkstemp(3)
- symlinkat(2)
- tempnam(3)
- pthread_attr_getaffinity_np(3)
- gethostbyname_r(3)
- signalfd4(2)
- sys_siglist(3)
- erfc(3)
- truncate64(2)
- verr(3)
- pthread_kill_other_threads_np(3)
- eaccess(3)
- fsetpos(3)
- slist(3)
- pmap_unset(3)
- modf(3)
- ioctl_pipe(2)
- vfwprintf(3)
- getresgid32(2)
- statfs64(2)
- cexp2(3)
- stdio_ext(3)
- login_tty(3)
- xdr_long(3)
- dlsym(3)
- clog2l(3)
- malloc_usable_size(3)
- fegetexceptflag(3)
- basename(3)
- fwrite(3)
- vhangup(2)
- printf(3)
- setnetent(3)
- gethostbyname2(3)
- mallinfo2(3)
- signbit(3)
- clnt_broadcast(3)
- sched_yield(2)
- sem_open(3)
- sigsetjmp(3)
- cacoshl(3)
- sem_unlink(3)
- setresuid(2)
- signgam(3)
- putw(3)
- imaxdiv(3)
- regex(3)
- alloc_hugepages(2)
- modff(3)
- exp10(3)
- cprojl(3)
- utime(2)
- clogf(3)
- pthread_mutex_unlock(3)
- erff(3)
- ioctl_userfaultfd(2)
- iswprint(3)
- roundl(3)
- sqrtl(3)
- fpurge(3)
- getusershell(3)
- fcloseall(3)
- xdr_opaque_auth(3)
- gethostent_r(3)
- fgetwc_unlocked(3)
- fchmod(2)
- strptime(3)
- lutimes(3)
- htole64(3)
- putchar_unlocked(3)
- create_module(2)
- isascii_l(3)
- sigaction(2)
- stdout(3)
- geteuid32(2)
- xprt_register(3)
- freopen(3)
- ccosl(3)
- pthread_setschedprio(3)
- rt_sigaction(2)
- getmntent(3)
- putwchar_unlocked(3)
- logl(3)
- remque(3)
- unsetenv(3)
- sigwaitinfo(2)
- pthread_mutexattr_getrobust_np(3)
- initstate_r(3)
- getfsfile(3)
- exp2l(3)
- isatty(3)
- lgamma_r(3)
- lrintf(3)
- outb(2)
- __clone2(2)
- strcpy(3)
- clnt_call(3)
- hypot(3)
- fegetexcept(3)
- tcsetpgrp(3)
- gets(3)
- malloc_info(3)
- nextupf(3)
- pthread_attr_getdetachstate(3)
- getaliasent_r(3)
- fstat64(2)
- futimesat(2)
- dl_iterate_phdr(3)
- posix_madvise(3)
- endnetgrent(3)
- tolower_l(3)
- pthread_attr_setstack(3)
- pread64(2)
- sigsetops(3)
- stty(2)
- process_vm_readv(2)
- isfinite(3)
- gethostbyaddr_r(3)
- cproj(3)
- gai_strerror(3)
- key_decryptsession(3)
- inet_ntop(3)
- __ppc_mdoio(3)
- btowc(3)
- setstate_r(3)
- if_nameindex(3)
- fdetach(2)
- random_r(3)
- iruserok_af(3)
- truncl(3)
- clearerr(3)
- lgammaf(3)
- lfind(3)
- ctanf(3)
- strcat(3)
- pthread_attr_getschedpolicy(3)
- pthread_rwlockattr_getkind_np(3)
- sigrelse(3)
- daemon(3)
- pthread_setcanceltype(3)
- sigevent(7)
- iswalnum(3)
- pmap_set(3)
- stdin(3)
- ceilf(3)
- asctime_r(3)
- poll(2)
- svc_unregister(3)
- isnanl(3)
- carg(3)
- getprotobyname(3)
- arm_fadvise(2)
- optind(3)
- mount_setattr(2)
- dlvsym(3)
- ntp_adjtime(3)
- abort(3)
- pthread_getname_np(3)
- execlp(3)
- bind(2)
- bsearch(3)
- endspent(3)
- register_printf_specifier(3)
- landlock_create_ruleset(2)
- mkostemp(3)
- setgroups(2)
- toupper_l(3)
- argz_extract(3)
- sigblock(3)
- j0l(3)
- argz_delete(3)
- setusershell(3)
- getspnam(3)
- optarg(3)
- vm86old(2)
- sigandset(3)
- getdtablesize(3)
- getsockname(2)
- pthread_sigqueue(3)
- ptsname(3)
- j1(3)
- lgamma(3)
- getpagesize(2)
- pthread_mutex_lock(3)
- setsid(2)
- strncat(3)
- ioctl_kd(2)
- tsearch(3)
- mq_notify(2)
- fcvt(3)
- clntudp_bufcreate(3)
- getpwent_r(3)
- pthread_getspecific(3)
- memfrob(3)
- arc4random_buf(3)
- forkpty(3)
- powl(3)
- dlopen(3)
- stderr(3)
- set_thread_area(2)
- query_module(2)
- sem_close(3)
- strndup(3)
- __malloc_hook(3)
- setjmp(3)
- stdio(3)
- bdflush(2)
- sendto(2)
- mpx(2)
- fopen(3)
- setpriority(2)
- nextdownl(3)
- mprobe(3)
- oldstat(2)
- sem_destroy(3)
- bcopy(3)
- remap_file_pages(2)
- isgreaterequal(3)
- getpass(3)
- seekdir(3)
- break(2)
- authunix_create_default(3)
- tty_ioctl(4)
- process_madvise(2)
- endfsent(3)
- atoq(3)
- strftime(3)
- fts(3)
- getgrgid(3)
- isxdigit(3)
- ftello(3)
- regcomp(3)
- error(3)
- getenv(3)
- clnt_sperrno(3)
- readahead(2)
- y0(3)
- roundup(3)
- io_destroy(2)
- vsnprintf(3)
- lgammal(3)
- eventfd_write(3)
- pthread_mutex_trylock(3)
- lchown(2)
- dladdr(3)
- error_print_progname(3)
- pthread_mutexattr_settype(3)
- strspn(3)
- __after_morecore_hook(3)
- localtime(3)
- fsync(2)
- ether_aton(3)
- csinhl(3)
- trunc(3)
- xdr_u_char(3)
- syslog(3)
- y1f(3)
- ioctl_nsfs(2)
- wmemcmp(3)
- ffsll(3)
- ether_ntohost(3)
- bswap_32(3)
- umount2(2)
- sigfillset(3)
- landlock_restrict_self(2)
- pthread_join(3)
- sysinfo(2)
- clock_settime(2)
- llrint(3)
- s390_guarded_storage(2)
- getc(3)
- inet_lnaof(3)
- tcgetpgrp(3)
- clock_getres(2)
- etext(3)
- strfmon_l(3)
- putwc_unlocked(3)
- xdr_replymsg(3)
- scalbl(3)
- fdim(3)
- getspent(3)
- sem_timedwait(3)
- posix_fallocate(3)
- res_nmkquery(3)
- pthread_spin_unlock(3)
- mq_timedsend(2)
- opterr(3)
- getloadavg(3)
- strsignal(3)
- finite(3)
- inw_p(2)
- csinhf(3)
- execveat(2)
- seed48(3)
- sigset(3)
- setgroups32(2)
- logbl(3)
- wcsdup(3)
- clnt_geterr(3)
- sys_errlist(3)
- inotify_rm_watch(2)
- qgcvt(3)
- wcspbrk(3)
- sin(3)
- lookup_dcookie(2)
- s390_pci_mmio_read(2)
- wcscmp(3)
- getutxent(3)
- pciconfig_read(2)
- initstate(3)
- backtrace(3)
- putc_unlocked(3)
- fedisableexcept(3)
- rt_sigprocmask(2)
- clock_adjtime(2)
- fwprintf(3)
- jnl(3)
- grantpt(3)
- cimagl(3)
- getgrnam_r(3)
- remquol(3)
- swprintf(3)
- mbrtowc(3)
- fileno_unlocked(3)
- readlinkat(2)
- sigignore(3)
- strndupa(3)
- semctl(2)
- assert_perror(3)
- sendfile(2)
- shm_unlink(3)
- log(3)
- ungetc(3)
- erf(3)
- qfcvt(3)
- pthread_atfork(3)
- login(3)
- setservent(3)
- jrand48_r(3)
- wcsnlen(3)
- tcflow(3)
- pthread_cond_destroy(3)
- inl(2)
- srand48_r(3)
- erfcf(3)
- iconv(3)
- pthread_mutex_consistent_np(3)
- fabsl(3)
- pclose(3)
- nfsservctl(2)
- gai_error(3)
- wcsncmp(3)
- islower_l(3)
- iswctype(3)
- svc_register(3)
- arm_sync_file_range(2)
- strfry(3)
- strfromd(3)
- getttyent(3)
- rand(3)
- fchown32(2)
- ctime(3)
- fsetxattr(2)
- feupdateenv(3)
- random(3)
- getpwnam_r(3)
- sigwait(3)
- aio_fsync(3)
- mq_open(2)
- tanh(3)
- localtime_r(3)
- bsd_signal(3)
- strsep(3)
- mknodat(2)
- cexpf(3)
- cacosh(3)
- mbrlen(3)
- aio_cancel(3)
- mq_getsetattr(2)
- fdatasync(2)
- htons(3)
- sem_post(3)
- htobe16(3)
- vtimes(3)
- fgetpwent_r(3)
- getwchar_unlocked(3)
- mkdirat(2)
- dup(2)
- free_hugepages(2)
- feraiseexcept(3)
- lockf(3)
- userfaultfd(2)
- pthread_attr_setaffinity_np(3)
- memcpy(3)
- prlimit64(2)
- ferror(3)
- ldexpf(3)
- aio_return(3)
- adjtimex(2)
- execle(3)
- tailq(3)
- cabs(3)
- endaliasent(3)
- execvp(3)
- hasmntopt(3)
- if_freenameindex(3)
- signal(2)
- dn_comp(3)
- pthread_attr_getstack(3)
- ether_hostton(3)
- re_comp(3)
- cexp2l(3)
- getwd(3)
- llroundl(3)
- cos(3)
- pthread_mutex_consistent(3)
- isalpha_l(3)
- io_cancel(2)
- frexp(3)
- finitel(3)
- perf_event_open(2)
- pthread_exit(3)
- ioctl_console(2)
- timelocal(3)
- timersub(3)
- setresgid(2)
- semop(2)
- getgroups(2)
- envz_entry(3)
- xdr_u_long(3)
- seccomp(2)
- ftrylockfile(3)
- setuid(2)
- wcwidth(3)
- llround(3)
- cacoshf(3)
- pthread_attr_setschedpolicy(3)
- fgetpos(3)
- xdr_array(3)
- sprintf(3)
- wmemset(3)
- setcontext(3)
- copysignl(3)
- be64toh(3)
- matherr(3)
- hypotl(3)
- rawmemchr(3)
- fmodf(3)
- mount(2)
- mktime(3)
- stdarg(3)
- clnttcp_create(3)
- string(3)
- profil(3)
- clnt_perror(3)
- getpriority(2)
- regerror(3)
- clone2(2)
- getgid(2)
- pthread_spin_lock(3)
- iswblank(3)
- ftell(3)
- dup3(2)
- toascii(3)
- strncpy(3)
- mrand48_r(3)
- setstate(3)
- sigqueue(3)
- cpowf(3)
- setlogmask(3)
- sched_getcpu(3)
- htobe32(3)
- list(3)
- isdigit_l(3)
- chdir(2)
- fstat(2)
- pwritev2(2)
- get_thread_area(2)
- freelocale(3)
- acoshl(3)
- socketpair(2)
- scalbln(3)
- fpclassify(3)
- getpwnam(3)
- pthread_getcpuclockid(3)
- ioprio_get(2)
- strtok_r(3)
- exit_group(2)
- scalbnf(3)
- xdrrec_create(3)
- pthread_mutex_destroy(3)
- sqrt(3)
- dirname(3)
- exit(2)
- ulckpwdf(3)
- cargl(3)
- powerof2(3)
- simpleq(3)
- process_vm_writev(2)
- fdopendir(3)
- getpt(3)
- floorl(3)
- va_start(3)
- lcong48(3)
- strerror_l(3)
- xdrrec_eof(3)
- key_setsecret(3)
- lstat64(2)
- memfd_secret(2)
- sigreturn(2)
- casinhf(3)
- valloc(3)
- stat64(2)
- jn(3)
- sinl(3)
- pthread_testcancel(3)
- cfgetispeed(3)
- dup2(2)
- getnetent(3)
- pthread_setconcurrency(3)
- memccpy(3)
- rt_sigqueueinfo(2)
- ccosf(3)
- sincos(3)
- tcdrain(3)
- ccos(3)
- chmod(2)
- cacosf(3)
- lstat(2)
- pthread_spin_trylock(3)
- sigisemptyset(3)
- getrpcbyname(3)
- fpathconf(3)
- copysign(3)
- round(3)
- wmemchr(3)
- qfcvt_r(3)
- fattach(2)
- __fsetlocking(3)
- adjtime(3)
- makedev(3)
- des_crypt(3)
- iswspace(3)
- twalk(3)
- exec(3)
- link(2)
- fileno(3)
- endpwent(3)
- logb(3)
- wcscspn(3)
- console_ioctl(4)
- fgetpwent(3)
- setegid(2)
- clnt_destroy(3)
- getaddrinfo_a(3)
- svc_getargs(3)
- addmntent(3)
- globfree(3)
- islower(3)
- muntrace(3)
- clnt_pcreateerror(3)
- llrintl(3)
- clnt_control(3)
- fgetspent_r(3)
- strstr(3)
- putmsg(2)
- __fwritable(3)
- res_nsearch(3)
- fseeko(3)
- mq_timedreceive(3)
- log10(3)
- fexecve(3)
- gammaf(3)
- pthread_setschedparam(3)
- wcscpy(3)
- xdr_float(3)
- pthread_attr_setdetachstate(3)
- sem_wait(3)
- pow10l(3)
- re_exec(3)
- rand_r(3)
- putpmsg(2)
- getdelim(3)
- utimes(2)
- mq_close(3)
- setutent(3)
- creall(3)
- mq_send(3)
- telldir(3)
- powf(3)
- erfl(3)
- pthread_self(3)
- pselect6(2)
- unlocked_stdio(3)
- insw(2)
- cfsetspeed(3)
- argz_create(3)
- xdr_string(3)
- pthread_attr_getguardsize(3)
- finitef(3)
- setlocale(3)
- bcmp(3)
- fmtmsg(3)
- sendmsg(2)
- pthread_cleanup_push(3)
- inb_p(2)
- mmap64(3)
- getuid32(2)
- truncate(2)
- mlock2(2)
- fegetround(3)
- ugetrlimit(2)
- getprotobynumber_r(3)
- utmpxname(3)
- isinf(3)
- clearerr_unlocked(3)
- stime(2)
- nftw(3)
- duplocale(3)
- svcraw_create(3)
- svc_getcaller(3)
- ctanhl(3)
- cbrt(3)
- floorf(3)
- sethostid(3)
- sigemptyset(3)
- sigaltstack(2)
- mkfifo(3)
- lsearch(3)
- getservent_r(3)
- islessgreater(3)
- floor(3)
- argz_append(3)
- tzset(3)
- res_mkquery(3)
- fstatat(2)
- strchr(3)
- semtimedop(2)
- bindresvport(3)
- tcsetattr(3)
- warn(3)
- getservent(3)
- atanhl(3)
- tdelete(3)
- ynf(3)
- ether_ntoa_r(3)
- fesetenv(3)
- mq_timedsend(3)
- quotactl(2)
- init_module(2)
- rcmd(3)
- fenv(3)
- getutxid(3)
- pthread_mutexattr_getpshared(3)
- scalbnl(3)
- atan2l(3)
- argz_count(3)
- rpmatch(3)
- timerfd_gettime(2)
- ualarm(3)
- pthread_attr_init(3)
- vdprintf(3)
- pthread_cancel(3)
- fflush(3)
- setkey_r(3)
- mbstowcs(3)
- mremap(2)
- strcasestr(3)
- hcreate_r(3)
- siginterrupt(3)
- offsetof(3)
- atan(3)
- wctomb(3)
- getutent(3)
- significand(3)
- arm_fadvise64_64(2)
- dremf(3)
- wcswidth(3)
- syscall(2)
- rintf(3)
- bswap_64(3)
- pthread_attr_getschedparam(3)
- lroundf(3)
- timegm(3)
- posix_fadvise(2)
- getrlimit(2)
- svc_freeargs(3)
- xdr_enum(3)
- hcreate(3)
- ptrace(2)
- backtrace_symbols_fd(3)
- fetestexcept(3)
- ccosh(3)
- htole32(3)
- kexec_load(2)
- fallocate(2)
- timer_gettime(2)
- tgammaf(3)
- errno(3)
- sched_get_priority_max(2)
- xdr_getpos(3)
- vwprintf(3)
- ssetmask(2)
- ether_ntoa(3)
- waitpid(2)
- sched_getattr(2)
- inotify_init(2)
- fma(3)
- gnu_get_libc_version(3)
- svctcp_create(3)
- wcstombs(3)
- gethostname(2)
- strerror_r(3)
- sigismember(3)
- fgetws_unlocked(3)
- hash(3)
- circleq(3)
- getrpcbynumber_r(3)
- pthread_cond_timedwait(3)
- uname(2)
- fgetc_unlocked(3)
- mq_open(3)
- cosl(3)
- rewinddir(3)
- nextdown(3)
- longjmp(3)
- execv(3)
- iconv_open(3)
- xencrypt(3)
- ctermid(3)
- isgraph_l(3)
- move_pages(2)
- isunordered(3)
- msgsnd(2)
- rt_sigtimedwait(2)
- syncfs(2)
- mlockall(2)
- pthread_getschedparam(3)
- lsetxattr(2)
- getutid_r(3)
- log1pl(3)
- catanf(3)
- passwd2des(3)
- iconv_close(3)
- aligned_alloc(3)
- sched_setscheduler(2)
- gmtime(3)
- __free_hook(3)
- acoshf(3)
- mtrace(3)
- resolver(3)
- clog10f(3)
- sethostname(2)
- pthread_attr_setguardsize(3)
- tuxcall(2)
- atanh(3)
- ispunct_l(3)
- svcudp_bufcreate(3)
- ctanh(3)
- j1l(3)
- log10l(3)
- alloca(3)
- sigpending(2)
- nexttoward(3)
- isnormal(3)
- svc_getreq(3)
- putchar(3)
- getnetbyaddr(3)
- cpowl(3)
- get_kernel_syms(2)
- getutline_r(3)
- pthread_setaffinity_np(3)
- isnan(3)
- getprotoent(3)
- catclose(3)
- getsid(2)
- endrpcent(3)
- fts_close(3)
- gnu_dev_minor(3)
- ruserok_af(3)
- getutent_r(3)
- getegid(2)
- sgetmask(2)
- posix_memalign(3)
- atanf(3)
- unshare(2)
- lremovexattr(2)
- strncasecmp(3)
- endutent(3)
- updwtmpx(3)
- outsw(2)
- sched_getparam(2)
- setuid32(2)
- catgets(3)
- nextupl(3)
- openat(2)
- logout(3)
- free(3)
- setfsuid(2)
- getutline(3)
- svc_sendreply(3)
- fadvise64_64(2)
- cargf(3)
- __ppc_set_ppr_low(3)
- casinh(3)
- outb_p(2)
- fputwc(3)
- log10f(3)
- getnetgrent(3)
- fputws_unlocked(3)
- ffsl(3)
- endttyent(3)
- isgreater(3)
- sigmask(3)
- sgetspent_r(3)
- fmaxf(3)
- openlog(3)
- strncmp(3)
- closedir(3)
- rexec_af(3)
- exp2(3)
- mcheck(3)
- isalpha(3)
- pthread_mutex_init(3)
- catopen(3)
- clock_nanosleep(2)
- ioctl(2)
- remainder(3)
- olduname(2)
- getcpu(2)
- setns(2)
- asinhl(3)
- wcscasecmp(3)
- nearbyintl(3)
- atan2f(3)
- wctob(3)
- nextdownf(3)
- gmtime_r(3)
- fmal(3)
- setfsgid32(2)
- dlinfo(3)
- posix_spawnp(3)
- fgets_unlocked(3)
- major(3)
- fseek(3)
- xdr_callhdr(3)
- execve(2)
- exit(3)
- makecontext(3)
- sysctl(2)
- oldolduname(2)
- getgrouplist(3)
- pthread_getattr_np(3)
- ffs(3)
- sem_init(3)
- gcvt(3)
- fts_children(3)
- rt_sigreturn(2)
- mallinfo(3)
- insl(2)
- geteuid(2)
- signalfd(2)
- erfcl(3)
- sched_get_priority_min(2)
- sched_setaffinity(2)
- wcsrchr(3)
- xdr_reference(3)
- snprintf(3)
- delete_module(2)
- j0f(3)
- malloc_hook(3)
- casinf(3)
- y0f(3)
- endgrent(3)
- y1l(3)
- pthread_create(3)
- wcsncasecmp(3)
- pidfd_getfd(2)
- htobe64(3)
- _sysctl(2)
- lrand48_r(3)
- warnx(3)
- lgammaf_r(3)
- verrx(3)
- finit_module(2)
- gsignal(3)
- recvfrom(2)
- log2(3)
- fflush_unlocked(3)
- getaliasbyname_r(3)
- pthread_mutexattr_setrobust(3)
- getdirentries(3)
- getrpcbyname_r(3)
- ppoll(2)
- tmpfile(3)
- isupper_l(3)
- xdr_free(3)
- res_nquery(3)
- fts_open(3)
- shutdown(2)
- xdr_callmsg(3)
- coshl(3)
- ntp_gettimex(3)
- afs_syscall(2)
- be32toh(3)
- fchmodat(2)
- addseverity(3)
- pause(2)
- strcmp(3)
- mkostemps(3)
- wcsrtombs(3)
- scandir(3)
- __freadable(3)
- killpg(3)
- add_key(2)
- strcoll(3)
- migrate_pages(2)
- pthread_setattr_default_np(3)
- pthread_attr_setsigmask_np(3)
- sigabbrev_np(3)
- readdir(2)
- subpage_prot(2)
- strfromf(3)
- sysv_signal(3)
- gethostbyname2_r(3)
- outl_p(2)
- sync(2)
- pthread_attr_getinheritsched(3)
- socket(2)
- msgrcv(2)
- fgetws(3)
- pthread_cleanup_push_defer_np(3)
- getnetgrent_r(3)
- ynl(3)
- endservent(3)
- srand(3)
- endmntent(3)
- cbrtl(3)
- setitimer(2)
- pmap_rmtcall(3)
- svcerr_systemerr(3)
- fesetround(3)
- ilogbf(3)
- __fwriting(3)
- log1p(3)
- futimens(3)
- xdrrec_endofrecord(3)
- setreuid32(2)
- swab(3)
- pthread_spin_init(3)
- memchr(3)
- fminf(3)
- getipnodebyname(3)
- msgop(2)
- wait(2)
- ether_aton_r(3)
- open_wmemstream(3)
- xdr_bool(3)
- pthread_tryjoin_np(3)
- xdr_int(3)
- inet_net_ntop(3)
- fdimf(3)
- srand48(3)
- xdr_setpos(3)
- asinf(3)
- program_invocation_name(3)
- write(2)
- mkdtemp(3)
- pthread_cleanup_pop(3)
- ptsname_r(3)
- lgammal_r(3)
- pthread_attr_getstackaddr(3)
- authunix_create(3)
- getpmsg(2)
- ceill(3)
- cexp2f(3)
- kcmp(2)
- setup(2)
- err(3)
- sync_file_range2(2)
- getpid(2)
- wcsncat(3)
- envz_get(3)
- futimes(3)
- mincore(2)
- herror(3)
- ether_line(3)
- feholdexcept(3)
- fputc(3)
- keyctl(2)
- timer_delete(2)
- posix_spawn(3)
- faccessat2(2)
- setnetgrent(3)
- pwrite(2)
- aio_read(3)
- shmget(2)
- acosh(3)
- sigdelset(3)
- __ppc_get_timebase(3)
- __flbf(3)
- dladdr1(3)
- argz_create_sep(3)
- mblen(3)
- gethostent(3)
- pciconfig_iobase(2)
- recvmmsg(2)
- isprint_l(3)
- csqrtf(3)
- wcstoimax(3)
- hsearch_r(3)
- svcudp_create(3)
- setreuid(2)
- le16toh(3)
- name_to_handle_at(2)
- strftime_l(3)
- pthread_attr_setschedparam(3)
- eventfd(2)
- atanhf(3)
- pthread_setspecific(3)
- pthread_cond_init(3)
- acosl(3)
- llistxattr(2)
- fputwc_unlocked(3)
- scanf(3)
- getmntent_r(3)
- getchar(3)
- res_ninit(3)
- error_one_per_line(3)
- sigsetmask(3)
- putwchar(3)
- llroundf(3)
- rt_sigpending(2)
- send(2)
- wcsstr(3)
- log2l(3)
- fmod(3)
- va_copy(3)
- res_search(3)
- res_nsend(3)
- res_query(3)
- wait3(2)
- encrypt_r(3)
- system(3)
- close_range(2)
- ecvt_r(3)
- read(2)
- auth_destroy(3)
- realloc(3)
- pipe2(2)
- dn_expand(3)
- timerclear(3)
- get_avphys_pages(3)
- mbsnrtowcs(3)
- strtok(3)
- fwide(3)
- __ppc_get_timebase_freq(3)
- gai_suspend(3)
- stpcpy(3)
- lldiv(3)
- iswxdigit(3)
- posix_openpt(3)
- s390_pci_mmio_write(2)
- pthread_spin_destroy(3)
- callrpc(3)
- getifaddrs(3)
- aio_suspend(3)
- fread_unlocked(3)
- get_nprocs_conf(3)
- getuid(2)
- spu_run(2)
- termios(3)
- umask(2)
- csqrtl(3)
- register_printf_modifier(3)
- sem_trywait(3)
- tee(2)
- msync(2)
- mpool(3)
- setdomainname(2)
- fopencookie(3)
- nl_langinfo(3)
- sockatmark(3)
- getspent_r(3)
- casinhl(3)
- fdiml(3)
- ntohs(3)
- fgets(3)
- time(2)
- casinl(3)
- pthread_detach(3)
- seccomp_unotify(2)
apt-get install manpages-dev
Available languages:
en fr pl nl ja ru deManual
sigaction
NOMBIBLIOTHĂQUE
SYNOPSIS
DESCRIPTION
Le paramĂštre siginfo_t vers un gestionnaire SA_SIGINFO
Le champ si_code
Sondage dynamique de la prise en charge des bits de drapeau
VALEUR RENVOYĂE
ERREURS
VERSIONS
Différences entre bibliothÚque C et noyau
STANDARDS
HISTORIQUE
NOTES
Non documenté
BOGUES
EXEMPLES
Sondage de la prise en charge dâun drapeau
VOIR AUSSI
TRADUCTION
NOM
sigaction, rt_sigaction - Examiner et modifier lâaction associĂ©e Ă un signal
BIBLIOTHĂQUE
BibliothĂšque C standard ( libc , -lc )
SYNOPSIS
#include <signal.h>
int
sigaction(int
signum
,
const struct sigaction *_Nullable restrict
act
,
struct sigaction *_Nullable restrict
oldact
);
Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros (7)) :
sigaction
()Â :
_POSIX_C_SOURCE
siginfo_t
:
_POSIX_C_SOURCE >= 199309L
DESCRIPTION
Lâappel systĂšme sigaction () sert Ă modifier lâaction effectuĂ©e par un processus Ă la rĂ©ception dâun signal spĂ©cifique. (Consultez signal (7) pour une vue dâensemble sur les signaux)
signum indique le signal concernĂ©, Ă lâexception de SIGKILL et SIGSTOP .
Si act nâest pas NULL, la nouvelle action pour le signal signum est dĂ©finie par act . Si oldact nâest pas NULL, lâancienne action est sauvegardĂ©e dans oldact .
La structure sigaction est définie par quelque chose comme :
struct
sigaction {
void (*sa_handler)(int);
void (*sa_sigaction)(int, siginfo_t *, void *);
sigset_t sa_mask;
int sa_flags;
void (*sa_restorer)(void);
};
Sur certaines architectures, on emploie une union. Il ne faut donc pas utiliser ou remplir simultanément sa_handler et sa_sigaction .
Le champ sa_restorer nâest pas conçu pour une utilisation dans une application (POSIX ne spĂ©cifie pas de champ sa_restorer ). Vous pouvez trouver plus de dĂ©tails sur lâobjectif de ce champ dans sigreturn (2).
sa_handler indique lâaction Ă associer Ă signum et il peut sâagir dâune des suivantes :
|
- |
SIG_DFL pour lâaction par dĂ©faut. |
||
|
- |
SIG_IGN pour ignorer ce signal. |
||
|
- |
Un pointeur vers une fonction de gestion de signal. Cette fonction reçoit le numéro du signal comme seul paramÚtre. |
Si SA_SIGINFO est indiqué dans sa_flags , sa_sigaction (et non sa_handler ) indique la fonction de gestion de signal dans signum . Cette fonction reçoit trois paramÚtres, comme décrit ci-dessous.
sa_mask spĂ©cifie un masque de signaux Ă bloquer (câest-Ă -dire ajoutĂ©s au masque de signaux du thread dans lequel le gestionnaire est appelĂ©) pendant lâexĂ©cution du gestionnaire. De plus le signal ayant appelĂ© le gestionnaire est bloquĂ© Ă moins que lâattribut SA_NODEFER soit prĂ©cisĂ©.
sa_flags
spĂ©cifie un ensemble dâattributs qui modifient
le comportement du signal. Il est formé par un OU
binaire « | ») entre les options
suivantes :
SA_NOCLDSTOP
Si signum vaut SIGCHLD , ne pas recevoir les signaux de notification dâarrĂȘt (quand lâenfant reçoit un signal SIGSTOP , SIGTSTP , SIGTTIN ou SIGTTOU ) ou de relance (quand il reçoit SIGCONT ) des processus enfant. Consultez wait (2). Cet attribut nâa de sens que lors de la mise en place dâun gestionnaire pour SIGCHLD .
SA_NOCLDWAIT (depuis Linux 2.6)
Si signum vaut SIGCHLD , ne pas transformer les enfants en zombies lorsquâils se terminent. Consultez aussi waitpid (2). Cet attribut nâa de sens que lors de la mise en place dâun gestionnaire pour SIGCHLD , ou lors de la configuration de la disposition de signal de SIG_DFL .
Si lâattribut SA_NOCLDWAIT est dĂ©fini lors de la mise en place dâun gestionnaire pour SIGCHLD , POSIX.1 ne spĂ©cifie pas si le signal SIGCHLD est gĂ©nĂ©rĂ© lorsquâun processus enfant se termine. Sous Linux, un signal SIGCHLD est gĂ©nĂ©rĂ© dans ce cas ; sur dâautres implĂ©mentations, il ne lâest pas.
SA_NODEFER
Ne pas ajouter le signal au masque de signal du thread pendant lâexĂ©ution du gestionnaire, sauf si le signal est indiquĂ© dans act.sa_mask . Par consĂ©quent, une prochaine instance du signal pourra ĂȘtre dĂ©livrĂ©e au thread pendant quâil exĂ©cute le gestionnaire. Ce drapeau nâa de sens que lorsquâon met en place un gestionnaire de signal.
SA_NOMASK est un synonyme obsolĂšte et non standard de ce drapeau.
SA_ONSTACK
Appeler le gestionnaire avec une pile diffĂ©rente fournie par sigaltstack (2). Si cette pile est indisponible, on utilisera la pile par dĂ©faut. Cet attribut nâa de sens que lors de la mise en place dâun gestionnaire de signal.
SA_RESETHAND
RĂ©tablir lâaction Ă son comportement par dĂ©faut Ă lâentrĂ©e dans le gestionnaire de signal. Cet attribut nâa de sens que lors de la mise en place dâun gestionnaire de signal.
SA_ONESHOT est un synonyme obsolĂšte et non standard de ce drapeau.
SA_RESTART
Fournir un comportement compatible avec la sĂ©mantique BSD en redĂ©marrant automatiquement les appels systĂšme lents interrompus par lâarrivĂ©e du signal. Cet attribut nâa de sens que lors de la mise en place dâun gestionnaire de signal. Consultez signal (7) pour une discussion sur le redĂ©marrage dâun appel systĂšme.
SA_RESTORER
Nâest pas conçu pour ĂȘtre utilisĂ© dans une application. Ce drapeau est utilisĂ© par les bibliothĂšques C pour indiquer que le champ sa_restorer contient lâadresse dâun « trampoline de signal ». Consultez sigreturn (2) pour plus de dĂ©tails.
SA_SIGINFO (depuis Linux 2.2)
Le gestionnaire de signal recevra trois arguments, et non plus un seul. Dans ce cas, il faut utiliser le membre sa_sigaction au lieu de sa_handler . Cet attribut nâa de sens que lors de la mise en place dâun gestionnaire de signal.
SA_UNSUPPORTED (depuis Linux 5.11)
Utilisé pour sonder de maniÚre dynamique la prise en charge des bits de drapeau.
Si un essai dâenregistrement de gestionnaire rĂ©ussit alors que ce drapeau est positionnĂ© sur act->sa_flags parmi dâautres drapeaux potentiellement non pris en charge par le noyau, et si un appel sigaction () immĂ©diatement consĂ©cutif indiquant un numĂ©ro de signal et ayant un paramĂštre oldact non NULL aboutit Ă un clear SA_UNSUPPORTED dans oldact->sa_flags , oldact->sa_flags peut ĂȘtre utilisĂ© comme masque de bit dĂ©crivant les drapeaux potentiellement non pris en charge qui sont en rĂ©alitĂ© gĂ©rĂ©s. Consultez la section « Sonder dynamiquement la prise en charge de bits de drapeau » ci-dessous pour plus de dĂ©tails.
SA_EXPOSE_TAGBITS (depuis Linux 5.11)
Normalement, lorsquâun signal est dĂ©livrĂ©, un jeu de bits dâĂ©tiquettes spĂ©cifique Ă lâarchitecture est vidĂ© depuis le champ si_addr de siginfo_t . Si ce drapeau est positionnĂ©, un sous-ensemble de bits dâĂ©tiquette spĂ©cifique Ă lâarchitecture sera conservĂ© dans si_addr .
Les programmes qui doivent ĂȘtre compatibles avec des versions de Linux supĂ©rieures Ă la 5.11 doivent utiliser SA_UNSUPPORTED pour tester la prise en charge.
Le paramĂštre siginfo_t vers un gestionnaire SA_SIGINFO
Quand le drapeau SA_SIGINFO est indiquĂ© Ă act.sa_flags , lâadresse du gestionnaire de signal est passĂ©e Ă lâaide du champ act.sa_sigaction . Ce gestionnaire prend trois paramĂštres comme suit :
void
handler(int sig, siginfo_t *info, void *ucontext)
{
...
}
Ces trois paramĂštres sont comme suit
|
sig |
Le numĂ©ro de signal qui a provoquĂ© lâappel du gestionnaire. |
||
|
info |
Un pointeur vers un siginfo_t , qui est une structure contenant plus dâinformations sur le signal comme dĂ©crit ci-dessous. |
ucontext
Il sâagit dâun pointeur vers une structure ucontext_t , diffusĂ©e sur void\ * . La structure vers laquelle pointe ce champ contient des informations contextuelles sur le signal sauvegardĂ©es dans la pile de lâespace utilisateur par le noyau ; pour des dĂ©tails, consultez sigreturn (2). Vous pouvez trouver plus dâinformations sur la structure ucontext_t dans getcontext (3) et signal (7). GĂ©nĂ©ralement, la fonction de gestionnaire nâutilise pas le troisiĂšme paramĂštre.
Le type de données siginfo_t est une structure contenant les champs suivants :
siginfo_t {
int si_signo; /* Numéro de signal */
int si_errno; /* NumĂ©ro dâerreur */
int si_code; /* Code du signal */
int si_trapno; /* Numéro de trappe qui a causé
le signal généré par le
matériel (pas utilisé sur la
plupart des architectures) */
pid_t si_pid; /* PID de lâĂ©metteur */
uid_t si_uid; /* UID rĂ©el de lâĂ©metteur
*/
int si_status; /* Valeur de sortie ou signal */
clock_t si_utime; /* Temps utilisateur écoulé
*/
clock_t si_stime; /* Temps systĂšme
écoulé */
union sigval si_value; /* Valeur du signal */
int si_int; /* Signal POSIX.1b */
void *si_ptr; /* Signal POSIX.1b */
int si_overrun; /* Décompte de dépassement des
horloges (POSIX.1b) */
int si_timerid; /* ID dâhorloge (POSIX.1b) */
void *si_addr; /* Emplacement mémoire ayant
causĂ© lâerreur */
long si_band; /* Band event (était
int
dans
glibc 2.3.2 et antérieures */
int si_fd; /* Descripteur de fichier */
short si_addr_lsb; /* Bit le moins significatif de
lâadresse
(depuis Linux 2.6.32) */
void *si_lower; /* Limite infĂ©rieure lorsquâune
violation
dâadresse se produit (depuis Linux 3.19) */
void *si_upper; /* Limite supĂ©rieure lorsquâune
violation
dâadresse se produit (depuis Linux 3.19) */
int si_pkey; /* ClĂ© de protection PTE Ă
lâorigine de
lâereur (depuis Linux 4.6) */
void *si_call_addr; /* Adresse de lâinstruction
dâappel systĂšme
(depuis Linux 3.5) */
int si_syscall; /* Nombre dâappels systĂšme
essayés
(depuis Linux 3.5) */
unsigned int si_arch; /* Architecture des appels
systÚme essayés
(depuis Linux 3.5) */
}
si_signo , si_errno et si_code sont dĂ©finis pour tous les signaux ( si_errno nâest gĂ©nĂ©ralement pas utilisĂ© sous Linux). Le reste de la structure peut ĂȘtre une union, de telle sorte quâon puisse ne lire que les champs spĂ©cifiques Ă un signal donné :
|
- |
Les signaux envoyĂ©s avec kill (2) et sigqueue (3) remplissent si_pid et si_uid . De plus, les signaux envoyĂ©s avec sigqueue (3) remplissent si_int et si_ptr avec les valeurs indiquĂ©es par lâĂ©metteur du signal ; consultez sigqueue (3) pour plus de dĂ©tails. |
||
|
- |
Les signaux envoyĂ©s par les horloges POSIX.1b (depuis Linux 2.6) remplissent si_overrun et si_timerid . Le champ si_timerid est un identifiant interne utilisĂ© par le noyau pour identifier lâhorloge ; ce nâest pas la mĂȘme chose que lâidentifient dâhorloge renvoyĂ© par timer_create (2). Le champ si_overrun est le compteur de dĂ©passement de lâhorloge ; il sâagit de la mĂȘme information renvoyĂ©e par un appel Ă timer_getoverrun (2). Ces champs sont des extensions Linux non standard. |
||
|
- |
Les signaux envoyĂ©s pour les notifications de files de messages (voyez la description de SIGEV_SIGNAL dans mq_notify (3)) remplissent si_int / si_ptr avec la valeur sigev_value fournie Ă mq_notify (3) ; si_pid avec lâidentifiant du processus de lâĂ©metteur du message ; et si_uid avec lâidentifiant dâutilisateur rĂ©el de lâĂ©metteur du message. |
||
|
- |
SIGCHLD remplit si_pid , si_uid , si_status , si_utime et si_stime , pour fournir des informations au sujet des enfants. Le champ si_pid est lâidentifiant de processus de lâenfant ; si_uid est lâidentifiant dâutilisateur rĂ©el de lâenfant. Le champ si_status contient le code de sortie de lâenfant (si si_code vaut CLD_EXITED ), ou le numĂ©ro du signal qui a changĂ© lâetat du processus. Les champs si_utime et si_stime comprennent les temps utilisateur et systĂšme utilisĂ© par le processus enfant ; ces champs ne comprennent pas le temps utilisĂ© par les enfants lorsquâils sont attendus (au contraire de getrusage (2) et times (2)). JusquâĂ Linux 2.6, et depuis Linux 2.6.27, ces champs renvoient le temps CPU en unitĂ© de sysconf(_SC_CLK_TCK) . Dans les noyaux Linux 2.6, avant Linux 2.6.27, un bogue faisait que ces champs renvoyaient des temps mesurĂ©s en jiffy systĂšme (configurable) (consultez time (7)). |
||
|
- |
SIGILL , SIGFPE , SIGSEGV , SIGBUS et SIGTRAP remplissent si_addr avec lâadresse de lâerreur. Sur certaines architectures, ces signaux remplissent aussi le champ si_trapno . |
Certaines sous-erreurs de SIGBUS , en particulier BUS_MCEERR_AO et BUS_MCEERR_AR , remplissent Ă©galement si_addr_lsb . Ce champ indique le bit le moins significatif de lâadresse signalĂ©e et, donc, lâĂ©tendue de la corruption. Par exemple, si toute une page est corrompue, si_addr_lsb contient log2(sysconf(_SC_PAGESIZE)) . Lorsque SIGTRAP est dĂ©livrĂ© en rĂ©ponse Ă un Ă©vĂ©nement ptrace (2) ((PTRACE_EVENT_foo), si_addr nâest pas peuplĂ© mais si_pid et si_uid le sont avec leur identifiant de processus et dâutilisateur respectifs responsables de cette trappe. Dans le cas de seccomp (2), le traceur sera affichĂ© comme dĂ©livrant un Ă©vĂ©nement. BUS_MCEERR_* et si_addr_lsb sont des extensions spĂ©cifiques Ă Linux.
La sous-erreur de SEGV_BNDERR de SIGSEGV peuple si_lower et si_upper .
La sous-erreur SEGV_PKUERR de SIGSEGV peuple si_pkey .
|
- |
SIGPOLL / SIGIO (synonymes sous Linux) remplissent si_band et si_fd . LâĂ©vĂ©nement si_band est un masque de bits contenant les mĂȘmes valeurs que celles qui sont remplies dans le champ revents par poll (2). Le champ si_fd donne le descripteur de fichiers sur lequel lâĂ©vĂ©nement dâentrĂ©es-sorties sâest produit. Pour plus de dĂ©tails, voir la description de F_SETSIG dans fcntl (2). |
||
|
- |
SIGSYS , gĂ©nĂ©rĂ© (depuis Linux 3.5) quand un filtre seccomp renvoie SECCOMP_RET_TRAP , remplit si_call_addr , si_syscall , si_arch , si_errno et dâautres dĂ©crits dans seccomp (2). |
Le champ si_code
Le champ si_code du paramĂštre siginfo_t passĂ© Ă un gestionnaire de signal SA_SIGINFO est une valeur (et non un masque de bit) indiquant la raison de lâenvoi de ce signal. Pour un Ă©vĂ©nement ptrace (2), si_code contiendra SIGTRAP et aura lâĂ©vĂ©nement ptrace dans lâoctet fort :
(SIGTRAP | PTRACE_EVENT_foo << 8).
Pour un Ă©vĂ©nement non ptrace (2), les valeurs qui peuvent apparaĂźtre dans si_code sont dĂ©crites dans le reste de cette section. Depuis la glibc 2.20, les dĂ©finitions de la plupart de ces symboles viennent de <signal.h> en dĂ©finissant des macros de test de fonctionnalitĂ©s (avant lâinclusion de tout fichier dâen-tĂȘte) comme suit :
|
- |
_XOPEN_SOURCE avec la valeur 500 ou supérieure ; |
|||
|
- |
_XOPEN_SOURCE et _XOPEN_SOURCE_EXTENDED ; ou |
|||
|
- |
_POSIX_C_SOURCE avec la valeur 200809L ou supérieure. |
Pour les constantes TRAP_* , les dĂ©finitions de symboles ne sont fournies que dans les deux premiers cas. Avant la glibc 2.20, aucune macro de test nâĂ©tait nĂ©cessaire pour obtenir ces symboles.
Pour un signal normal, la liste suivante indique les valeurs que peut prendre si_code pour nâimporte quel signal, avec la raison associĂ©e.
SI_USER
kill (2).
SI_KERNEL
Envoyé par le noyau.
SI_QUEUE
sigqueue (3).
SI_TIMER
Fin dâune temporisation POSIX.
SI_MESGQ (depuis Linux 2.6.6)
Changement dâĂ©tat dâune file de messages ; voir mq_notify (3).
SI_ASYNCIO
Fin dâune AIO.
SI_SIGIO
SIGIO avec file dâattente (seulement jusquâĂ Linux 2.2 ; Ă partir de Linux 2.4, SIGIO / SIGPOLL remplit si_code de la façon dĂ©crite plus bas).
SI_TKILL (depuis Linux 2.4.19)
tkill (2) ou tgkill (2).
Les valeurs suivantes peuvent ĂȘtre prises par si_code pour un signal SIGILL :
ILL_ILLOPC
opcode illégal.
ILL_ILLOPN
opérande illégale.
ILL_ILLADR
Mode dâadressage illĂ©gal.
ILL_ILLTRP
Trappe illégale.
ILL_PRVOPC
Opcode privilégié.
ILL_PRVREG
Registre privilégié.
ILL_COPROC
Erreur de coprocesseur.
ILL_BADSTK
erreur interne de pile.
Les valeurs suivantes peuvent ĂȘtre prises par si_code pour un signal SIGFPE :
FPE_INTDIV
division entiÚre par zéro.
FPE_INTOVF
débordement entier.
FPE_FLTDIV
division flottante par zéro.
FPE_FLTOVF
débordement flottant.
FPE_FLTUND
débordement inférieur flottant.
FPE_FLTRES
résultat flottant inexact.
FPE_FLTINV
opération flottante invalide.
FPE_FLTSUB
indice hors intervalle.
Les valeurs suivantes peuvent ĂȘtre prises par si_code pour un signal SIGSEGV :
SEGV_MAPERR
adresse sans objet.
SEGV_ACCERR
permissions invalides pour lâobjet.
SEGV_BNDERR (depuis Linux 3.19)
VĂ©rification des limites de lâadresse Ă©chouĂ©e.
SEGV_PKUERR (depuis Linux 4.6)
AccĂšs interdit par des clĂ©s de protection de la mĂ©moire. Consultez pkeys (7). La clĂ© de protection applicable Ă cet accĂšs est disponible Ă lâaide de si_pkey .
Les valeurs suivantes peuvent ĂȘtre prises par si_code pour un signal SIGBUS :
BUS_ADRALN
alignement dâadresse non valable.
BUS_ADRERR
adresse physique inexistante.
BUS_OBJERR
erreur matérielle spécifique.
BUS_MCEERR_AR (depuis Linux 2.6.32)
erreur mémoire matérielle consommée lors de vérification de la machine ; action requise.
BUS_MCEERR_AO (depuis Linux 2.6.32)
erreur mémoire matérielle détectée dans le processus mais non consommée ; action optionnelle.
Les valeurs suivantes peuvent ĂȘtre prises par si_code pour un signal SIGTRAP :
TRAP_BRKPT
point dâarrĂȘt du processus.
TRAP_TRACE
trappe dans le suivi dâexĂ©cution du processus.
TRAP_BRANCH (depuis Linux 2.4, IA64 seulement)
trappe dans le suivi des branches prises par le processus.
TRAP_HWBKPT (depuis Linux 2.4, IA64 seulement)
point dâarrĂȘt/point Ă surveiller matĂ©riels.
Les valeurs suivantes peuvent ĂȘtre prises par si_code pour un signal SIGCHLD :
CLD_EXITED
enfant terminé normalement.
CLD_KILLED
enfant tué par un signal.
CLD_DUMPED
enfant terminé anormalement.
CLD_TRAPPED
lâenfant en cours de suivi a une trappe.
CLD_STOPPED
Lâenfant sâest arrĂȘtĂ©.
CLD_CONTINUED (depuis Linux 2.6.9)
lâenfant arrĂȘtĂ© a redĂ©marrĂ©.
Les valeurs suivantes peuvent ĂȘtre prises par si_code pour un signal SIGIO / SIGPOLL :
POLL_IN
données disponibles en entrée.
POLL_OUT
tampons de sortie libres.
POLL_MSG
message disponible en entrée.
POLL_ERR
Erreur dâentrĂ©e-sortie.
POLL_PRI
entrée à haute priorité disponible.
POLL_HUP
périphérique débranché.
Les valeurs suivantes peuvent ĂȘtre prises par si_code pour un signal SIGSYS :
SYS_SECCOMP (depuis Linux 3.5)
Différé par une rÚgle de filtrage seccomp (2).
Sondage dynamique de la prise en charge des bits de drapeau
Lâappel sigaction () sur Linux accepte des jeux de bits inconnus act->sa_flags sans erreur. Le comportement du noyau, Ă partir de Linux 5.11, est quâun deuxiĂšme sigaction (2) videra les bits inconnus de oldact->sa_flags . Toutefois, historiquement, un second appel sigaction () laissait gĂ©nĂ©ralement ces ensembles de bits dans oldact->sa_flags .
Cela signifie que la prise en charge de nouveaux drapeaux ne peut pas ĂȘtre dĂ©tectĂ©e par un simple test du drapeau sa_flags dans sa_flags et un programme doit tester que SA_UNSUPPORTED a Ă©tĂ© vidĂ© avant de sâappuyer sur le contenu de sa_flags .
Comme le comportement du gestionnaire ne peut pas ĂȘtre garanti, sauf si la vĂ©rification rĂ©ussit, il vaut mieux soit bloquer le signal concernĂ© tout en enregistrant le gestionnaire puis effectuer la vĂ©rification dans ce cas, soit, quand cela nâest pas possible, par exemple si le signal est synchrone, effectuer le deuxiĂšme sigaction () dans le gestionnaire de signal lui-mĂȘme.
Dans les noyaux qui ne prennent pas en charge un drapeau en particulier, le comportement du noyau est le mĂȘme que si le drapeau nâĂ©tait pas positionnĂ©, mĂȘme si ce dernier a Ă©tĂ© positionnĂ© avec act->sa_flags .
Les drapeaux SA_NOCLDSTOP , SA_NOCLDWAIT , SA_SIGINFO , SA_ONSTACK , SA_RESTART , SA_NODEFER , SA_RESETHAND et, sâil est dĂ©fini par lâarchitecture, SA_RESTORER , peuvent ne pas ĂȘtre sondĂ©s de maniĂšre fiable si on utilise ce mĂ©canisme, parce quâils ont Ă©tĂ© introduits avant Linux 5.11. Cependant, en gĂ©nĂ©ral, les programmes peuvent supposer que ces drapeaux sont pris en charge car ils le sont depuis Linux 2.6, publiĂ© en 2003.
Consultez les EXEMPLES ci-dessous pour une dĂ©monstration de lâutilisation de SA_UNSUPPORTED .
VALEUR RENVOYĂE
sigaction () renvoie 0 sâil rĂ©ussit. En cas dâerreur, -1 est renvoyĂ© et errno contient le code dâerreur.
ERREURS
|
EFAULT |
act ou oldact pointent en-dehors de lâespace dâadressage accessible. |
||
|
EINVAL |
Un signal non valable est indiquĂ©. Cela se produit Ă©galement si lâon tente de modifier lâaction associĂ©e aux signaux SIGKILL ou SIGSTOP , qui ne peuvent pas ĂȘtre interceptĂ©s ou ignorĂ©s. |
VERSIONS
Différences entre bibliothÚque C et noyau
La fonction enveloppe de la glibc autour de sigacttion () donne une erreur ( EINVAL ) lorsquâon essaie de changer la position des deux signaux en temps rĂ©el utilisĂ©s en interne par lâimplĂ©mentation de threading de NPTL. Consultez nptl (7) pour plus de dĂ©tails.
Sur des architectures oĂč le trampoline du signal se trouve dans la bibliothĂšque C, la fonction enveloppe de la bibliothĂšque C autour de sigaction () met lâadresse du code de trampoline dans le champ act.sa_restorer et positionne le drapeau SA_RESTORER du champ act.sa_flags . Consultez sigreturn (2).
Lâappel systĂšme Linux dâorigine sâappelait sigaction (). Toutefois, avec lâarrivĂ©e des signaux en temps rĂ©el dans Linux 2.2 et de la taille figĂ©e, le type sigset_t 32 bits pris en charge par cet appel systĂšme ne convenait plus Ă cet objectif. Par consĂ©quent, un nouvel appel systĂšme rt_sigaction () a Ă©tĂ© ajoutĂ© pour prendre en charge le type sigset_t Ă©largi. Le nouvel appel systĂšme prend un quatriĂšme paramĂštre, size_t sigsetsize , qui indique la taille en octets des jeux de signal dans act.sa_mask et oldact.sa_mask . Ce paramĂštre est actuellement nĂ©cessaire pour obtenir la valeur sizeof(sigset_t) (ou le rĂ©sultat de lâerreur EINVAL ). La fonction enveloppe sigaction () de la glibc nous cache ces dĂ©tails en appelant de maniĂšre transparente rt_sigaction () quand le noyau le fournit.
STANDARDS
POSIX.1-2008.
HISTORIQUE
POSIX.1-2001, SVr4.
POSIX.1-1990 interdisait de positionner SIGCHLD avec SIG_IGN . POSIX.1-2001 lâautorise, et ignorer SIGCHLD permet donc dâĂ©viter la crĂ©ation de zombies (consultez wait (2)). Cependant, les comportements historiques de BSD et de System V quand SIGCHLD est ignorĂ© diffĂšrent, si bien que la seule mĂ©thode complĂštement portable pour sâassurer que les enfants ne deviennent pas des zombies Ă leur terminaison est dâintercepter le signal SIGCHLD et dâinvoquer wait (2) ou Ă©quivalent.
POSIX.1-1990 ne documentait que SA_NOCLDSTOP . POSIX.1-2001 a ajoutĂ© SA_NOCLDWAIT , SA_NODEFER , SA_ONSTACK , SA_RESETHAND , SA_RESTART et SA_SIGINFO comme extensions XSI. POSIX.1-2008 a dĂ©placĂ© SA_NODEFER , SA_RESETHAND , SA_RESTART et SA_SIGINFO dans les spĂ©cifications de base. Lâutilisation de ces derniĂšres valeurs dans sa_flags peut ĂȘtre moins portable dans les applications censĂ©es sâexĂ©cuter sur des implĂ©mentations UNIX anciennes.
Lâoption SA_RESETHAND est compatible avec lâoption SVr4 du mĂȘme nom.
Le drapeau SA_NODEFER est compatible avec le drapeau SVr4 du mĂȘme nom pour les noyaux 1.3.9 et ultĂ©rieurs. Pour les noyaux plus anciens, Linux autorisera la rĂ©ception de tous les signaux et pas seulement celui quâon est en train de mettre en place (Ă©crasant de fait sa_mask ).
NOTES
Un enfant créé par fork (2) hĂ©rite dâune copie des actions des signaux de son parent. Lors dâun execve (2), les actions des signaux pris en charge sont remises aux valeurs par dĂ©faut ; les actions des signaux ignorĂ©s ne sont pas modifiĂ©es.
Comme spĂ©cifiĂ© par POSIX, le comportement dâun processus est indĂ©fini aprĂšs la rĂ©ception dâun signal SIGFPE , SIGILL , ou SIGSEGV qui nâa pas Ă©tĂ© engendrĂ© par une fonction kill (2) ou raise (3). La division entiĂšre par zĂ©ro a un rĂ©sultat indĂ©fini, sur certaines architectures elle dĂ©clenche un signal SIGFPE . De mĂȘme, diviser lâentier le plus nĂ©gatif par -1 peut dĂ©clencher SIGFPE .
sigaction () peut ĂȘtre appelĂ© avec un second argument NULL pour obtenir le gestionnaire de signaux actuel. On peut aussi vĂ©rifier si un signal est valide sur la machine actuelle en lâappelant avec les deuxiĂšme et troisiĂšme arguments qui valent NULL.
Il est impossible de bloquer SIGKILL or SIGSTOP (en les indiquant dans sa_mask ). Les tentatives seront ignorées silencieusement.
Consultez sigsetops (3) pour les détails concernant les ensembles de signaux.
Consultez signal-safety (7) pour une liste de fonctions sĂ»res pour les signaux asynchrones qui peuvent ĂȘtre appelĂ©es dans un gestionnaire de signal.
Non documenté
Avant lâintroduction de lâattribut SA_SIGINFO il Ă©tait dĂ©jĂ possible dâobtenir des informations supplĂ©mentaires sur un signal. Cela se faisait en fournissant au gestionnaire de signal sa_handler un second paramĂštre de type struct sigcontext , qui est la mĂȘme structure que celle fournie dans le champ uc_mcontext de la structure ucontext passĂ©e (Ă lâaide dâun pointeur) comme troisiĂšme paramĂštre du gestionnaire sa_sigaction Consultez les sources du noyau Linux pertinentes pour des dĂ©tails. Cette utilisation est dĂ©sormais obsolĂšte.
BOGUES
Au moment oĂč un signal est dĂ©livrĂ© avec le gestionnaire SA_SIGINFO , le noyau ne fournit pas toujours des valeurs significatives pour tous les champs de siginfo_t cohĂ©rentes pour ce signal.
JusquâĂ Linux 2.6.13 inclus, indiquer SA_NODEFER dans sa_flags empĂȘchait non seulement le signal reçu dâĂȘtre masquĂ© pendant lâexĂ©cution du gestionnaire, mais empĂȘchait Ă©galement les signaux de sa_mask dâĂȘtre masquĂ©s. Ce bogue a Ă©tĂ© corrigĂ© dans Linux 2.6.14.
EXEMPLES
Consultez mprotect (2).
Sondage de la prise en charge dâun drapeau
Le programme dâexemple suivant quitte avec lâĂ©tat EXIT_SUCCESS si SA_EXPOSE_TAGBITS a vocation Ă ĂȘtre pris en charge, ou sinon EXIT_FAILURE .
#include
<signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
void
handler(int signo, siginfo_t *info, void *context)
{
struct sigaction oldact;
if (sigaction(SIGSEGV, NULL, &oldact) == -1
|| (oldact.sa_flags & SA_UNSUPPORTED)
|| !(oldact.sa_flags & SA_EXPOSE_TAGBITS))
{
_exit(EXIT_FAILURE);
}
_exit(EXIT_SUCCESS);
}
int
main(void)
{
struct sigaction act = { 0 };
act.sa_flags = SA_SIGINFO | SA_UNSUPPORTED |
SA_EXPOSE_TAGBITS;
act.sa_sigaction = &handler;
if (sigaction(SIGSEGV, &act, NULL) == -1) {
perror("sigaction");
exit(EXIT_FAILURE);
}
raise(SIGSEGV);
}
VOIR AUSSI
kill (1), kill (2), pause (2), pidfd_send_signal (2), restart_syscall (2), seccomp (2), sigaltstack (2), signal (2), signalfd (2), sigpending (2), sigprocmask (2), sigreturn (2), sigsuspend (2), wait (2), killpg (3), raise (3), siginterrupt (3), sigqueue (3), sigsetops (3), sigvec (3), core (5), signal (7)
TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org>, Cédric Boutillier <cedric.boutillier@gmail.com>, Frédéric Hantrais <fhantrais@gmail.com> et Jean-Philippe MENGUAL <jpmengual@debian.org>
Cette traduction est une documentation libre ; veuillez vous reporter Ă la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il nây a aucune RESPONSABILITĂ LĂGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org .