| #include <signal.h> | |
| #include <stdplus/signal.hpp> | |
| #include <stdplus/util/cexec.hpp> | |
| #include <system_error> | |
| namespace stdplus | |
| { | |
| namespace signal | |
| { | |
| void block(int signum) | |
| { | |
| sigset_t set; | |
| CHECK_ERRNO(sigprocmask(SIG_BLOCK, nullptr, &set), "sigprocmask get"); | |
| CHECK_ERRNO(sigaddset(&set, signum), "sigaddset"); | |
| CHECK_ERRNO(sigprocmask(SIG_BLOCK, &set, nullptr), "sigprocmask set"); | |
| } | |
| } // namespace signal | |
| } // namespace stdplus |