sgetmask(2) работа с маской сигналов (устарел)

Other Alias

ssetmask

ОБЗОР

long sgetmask(void);

long ssetmask(long newmask);

Замечание: В glibc нет обёрточных функций для этих системных вызовов; смотрите ЗАМЕЧАНИЯ.

ОПИСАНИЕ

Данные системные вызовы устарели. Используйте вместо них sigprocmask(2).

Вызов sgetmask() возвращает маску сигналов вызывающего процесса.

Вызов ssetmask() устанавливает маску сигналов вызывающего процесса равной значению, указанному в newmask. Возвращается предыдущее значение маски сигналов.

Маски сигналов обрабатываются этими системными вызовами как простые битовые маски (в отличие от sigset_t, который используется в sigprocmask(2)); для создания и проверки масок используйте sigmask(3).

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

Вызов sgetmask() всегда выполняется успешно и возвращает маску сигналов. Вызов ssetmask() всегда выполняется успешно и возвращает предыдущее значение маски сигналов.

ОШИБКИ

Данные системные вызовы всегда выполняются без ошибок.

ВЕРСИИ

Начиная с Linux 3.16 поддержка данных системных вызовов необязательна, она зависит от того, собрано ли ядро с параметром CONFIG_SGETMASK_SYSCALL.

СООТВЕТСТВИЕ СТАНДАРТАМ

Данные системные вызовы есть только в Linux.

ЗАМЕЧАНИЯ

В glibc нет обёрток для этих устаревших системных вызовов; вызывайте их через syscall(2).

Данные системные вызовы ничего не знают о номерах сигналов больше 31 (т.е. сигналах реального времени).

Данные системные вызовы не существуют на x86-64.

Они не могут заблокировать SIGSTOP или SIGKILL.