Visit Our UNIX and Linux User Community

Blocking signals

Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Blocking signals
# 1  
Old 10-23-2010
Blocking signals

I know how to add signal to a set. But what if I want to add 2 or 3 signals to the set.
I know I can use sigaddset (&set,SIGBUS)....but what if I want to add SIGBUS and SIGALRM at once. Do i have to do it like this..
sigaddset (&set,SIGBUS);
sigaddset (&set,SIGALRM);

Is there another way to do this?. Also is it possible to individually unblock signals in the set. I know that by calling
sigprocmask(SIG_UNBLOCK......) you can unblock all signals that are block in the set.But what if you want to only unblock one signal in the set.

Last edited by joker40; 10-24-2010 at 12:32 PM.. Reason: adding something

Previous Thread | Next Thread
Test Your Knowledge in Computers #130
Difficulty: Easy
The original Unix code was developed by AT&T.
True or False?

10 More Discussions You Might Find Interesting

1. Programming

Which are blocking and non-blocking api's in sockets in C ?

among the below socket programming api's, please let me know which are blocking and non-blocking. socket accept bind listen write read close (2 Replies)
Discussion started by: VSSajjan
2 Replies

2. Shell Programming and Scripting

Help with trap and signals

I am having issues with trap not working inside a script. I am currently trying this on a Knoppix system V 5.1. What I would like to happen is when I press control c, a message gets echoed and the script is ended. For example: #! /bin/bash trap "echo CTRL c was pressed ; break" SIGINT... (11 Replies)
Discussion started by: Basherrr
11 Replies

3. UNIX for Advanced & Expert Users

Help with Signals

Hi All, The problem statement is as below: Problem: A process (exe) is getting executed in background. The output of this process is getting logged in a file. After successfully running for some time the process gets terminated. In the log file following is present: ^M[7m Interrupt ^M[27m... (8 Replies)
Discussion started by: Praty.27
8 Replies

4. UNIX for Advanced & Expert Users

Ignored signals & blocking system calls

If I explicity ignore a signal (for example, SIGALRM), and this signal is generated during a blocking system call (for example, a recvfrom() ), what happens to the system call? Does it abort, or does it remain blocked until its end? (2 Replies)
Discussion started by: hurricane
2 Replies

5. UNIX for Dummies Questions & Answers

pending signals

I was wondering about following. If I have set of 3 signals. And they are all blocked.Now at some point in the program the set is unblocked. Which signal will be delivered first.This is my set....SIGTSTP,SIGQUIT,SIGINT.When I added them in the set and unblock them I did it in following order... ... (1 Reply)
Discussion started by: joker40
1 Replies

6. UNIX for Dummies Questions & Answers

perror with signals

I have following problem with this code.. First time trough the main loop..... perror gives ....blocked signal:success(all other times gives illlegal seek) Should every time trought the main loop be success?? And the perror otside of main loop...didn't change mask:success That line of code... (2 Replies)
Discussion started by: joker40
2 Replies

7. UNIX for Dummies Questions & Answers

threads and signals

can any one give me an example of a concurrency program in threads and signals, i.e how to deliver messages between threads using signals. thanks (0 Replies)
Discussion started by: moe_7
0 Replies

8. Programming

Using Signals

How can use signals in a C program If i want a child program to signal it's parent program that it(child) program has completed the task that it was assigned.:confused: (2 Replies)
Discussion started by: kapilv
2 Replies

9. UNIX for Dummies Questions & Answers


(posted this in the scripting forum as well, but figured it should go here) So, what's going on is this: For our program, we had to create our own shell, and if the user pressed ctrl-c just at the cmdline, then this signal would be ignored, but if there is a foreground process running, let's... (0 Replies)
Discussion started by: blind melon
0 Replies

10. Programming

Signals In HP-UX

does the way of handling, interrupting signals in HP-UX same as that of solaris. If there is difference than what it is.?:confused: (1 Reply)
Discussion started by: kapilv
1 Replies
sigsetops(3)						     Library Functions Manual						      sigsetops(3)

       sigemptyset, sigfillset, sigaddset, sigdelset, sigismember - manipulate signal sets (POSIX)

       #include <signal.h>

       int sigemptyset(set)
       sigset_t *set;

       int sigfillset (set)
       sigset_t *set;

       int sigaddset(set,sig)
       sigset_t *set;
       int sig;

       int sigdelset(set,sig)
       sigset_t *set;
       int sig;

       int sigismember(set,sig)
       sigset_t *set;
       int sig;

       The functions manipulate signal sets used by the other POSIX signal functions

       The function initializes the signal set pointed to by the argument set so that all signals are excluded.

       The function initializes the signal set pointed to by the argument set so that all signals are included.

       The  and functions respectively add and delete the individual signal specified by the value of the argument sig from the signal set pointed
       to by the argument set.

       The function tests whether the signal specified by the value of the argument sig is a member of the set pointed to by the argument set.

Return Values
       Upon successful completion, the function returns a value of 1 if the specified signal is a member of the set.  If it is not a member of the
       set, a value of 0 is returned.

       If the or functions fail a -1 value is returned and errno is set to indicate the reason.

       The function will fail and the signal mask will remain unchanged if one of the following occur:

       [EINVAL]       The value of the sig argument is not a valid signal number

See Also
       sigprocmask(3), sigaction(3), sigsuspend(3), sigpending(2)


Featured Tech Videos