libosmocore 0.9.6-23.20170220git32ee5af8.fc42
Osmocom core library
|
Files | |
file | signal.h |
file | signal.c |
Data Structures | |
struct | signal_handler |
Macros | |
#define | OSMO_SIGNAL_SS_APPS 0 |
#define | OSMO_SIGNAL_SS_RESERVED 2147483648u |
#define | OSMO_SIGNAL_T_APPS 0 |
#define | OSMO_SIGNAL_T_RESERVED 2147483648u |
Typedefs | |
typedef int | osmo_signal_cbfn(unsigned int subsys, unsigned int signal, void *handler_data, void *signal_data) |
Enumerations | |
enum | { SS_L_GLOBAL = OSMO_SIGNAL_SS_RESERVED , SS_L_INPUT , SS_L_NS , SS_L_VTY } |
signal subsystems | |
enum | { S_L_GLOBAL_SHUTDOWN = OSMO_SIGNAL_T_RESERVED } |
signal types. | |
Functions | |
int | osmo_signal_register_handler (unsigned int subsys, osmo_signal_cbfn *cbfn, void *data) |
Register a new signal handler. | |
void | osmo_signal_unregister_handler (unsigned int subsys, osmo_signal_cbfn *cbfn, void *data) |
Unregister signal handler. | |
void | osmo_signal_dispatch (unsigned int subsys, unsigned int signal, void *signal_data) |
dispatch (deliver) a new signal to all registered handlers | |
static | LLIST_HEAD (signal_handler_list) |
Variables | |
void * | tall_sigh_ctx |
#define OSMO_SIGNAL_SS_APPS 0 |
subsystem signaling numbers: we split the numberspace for applications and libraries: from 0 to UINT_MAX/2 for applications, from UINT_MAX/2 to UINT_MAX for libraries.
typedef int osmo_signal_cbfn(unsigned int subsys, unsigned int signal, void *handler_data, void *signal_data) |
signal callback function type
void osmo_signal_dispatch | ( | unsigned int | subsys, |
unsigned int | signal, | ||
void * | signal_data ) |
dispatch (deliver) a new signal to all registered handlers
[in] | subsys | Subsystem number |
[in] | signal | Signal number, |
[in] | signal_data | Data to be passed along to handlers |
References llist_for_each_entry.
int osmo_signal_register_handler | ( | unsigned int | subsys, |
osmo_signal_cbfn * | cbfn, | ||
void * | data ) |
Register a new signal handler.
[in] | subsys | Subsystem number |
[in] | cbfn | Callback function |
[in] | data | Data passed through to callback |
References llist_add_tail().
void osmo_signal_unregister_handler | ( | unsigned int | subsys, |
osmo_signal_cbfn * | cbfn, | ||
void * | data ) |
Unregister signal handler.
[in] | subsys | Subsystem number |
[in] | cbfn | Callback function |
[in] | data | Data passed through to callback |
References llist_del(), and llist_for_each_entry.