man pages section 3: Basic Library Functions
  Suche nur diese Buch
Sehen Sie dieses Buch:
Dieses Buch im PDF-Format herunterladen (3779 KB)

bsd_signal(3C)

Name | Synopsis | Description | Return Values | Errors | Usage | Attributes | See Also

Name

    bsd_signal– simplified signal facilities

Synopsis

    #include <signal.h>
    
    void (*bsd_signal(int sig, void (*func)(int)))(int);

Description

    The bsd_signal() function provides a partially compatible interface for programs written to historical system interfaces (see USAGE below).

    The function call bsd_signal(sig, func) has an effect as if implemented as:

    void (*bsd_signal(int sig, void (*func) (int))) (int)
    {
         struct sigaction act, oact;
    
         act.sa_handler = func;
         act.sa_flags = SA_RESTART;
         sigemptyset(&act.sa_mask);
         sigaddset(&act.sa_mask, sig);
         if (sigaction(sig, &act, &oact) == -1)
              return(SIG_ERR);
         return(oact.sa_handler);
    }

    The handler function should be declared:

    void handler(int sig);

    where sig is the signal number. The behavior is undefined if func is a function that takes more than one argument, or an argument of a different type.

Return Values

    Upon successful completion, bsd_signal() returns the previous action for sig. Otherwise, SIG_ERR is returned and errno is set to indicate the error.

Errors

Usage

    This function is a direct replacement for the BSD signal(3UCB) function for simple applications that are installing a single-argument signal handler function. If a BSD signal handler function is being installed that expects more than one argument, the application has to be modified to use sigaction(2). The bsd_signal() function differs from signal(3UCB) in that the SA_RESTART flag is set and the SA_RESETHAND will be clear when bsd_signal() is used. The state of these flags is not specified for signal(3UCB).

Attributes

    See attributes(5) for descriptions of the following attributes:

    ATTRIBUTE TYPE

    ATTRIBUTE VALUE

    Interface Stability 

    Standard 

See Also

SunOS 5.10  Last Revised 24 Jul 2002

Name | Synopsis | Description | Return Values | Errors | Usage | Attributes | See Also