+void wait_for_ending_command(void) {
+ sigset_t sigset;
+ sigemptyset(&sigset);
+ sigaddset(&sigset, SIGINT);
+ sigaddset(&sigset, SIGTERM);
+ sigwaitinfo(&sigset, NULL);
+}
+static void block_signals(void) {
+ sigset_t sigset;
+ sigemptyset(&sigset);
+ sigaddset(&sigset, SIGINT);
+ sigaddset(&sigset, SIGTERM);
+ sigprocmask(SIG_BLOCK,&sigset,NULL);
+ pthread_sigmask(SIG_BLOCK,&sigset,NULL);
+}
+
+