mirror of https://gerrit.osmocom.org/libosmocore
signal: Introduce API osmo_signal_talloc_ctx_init
Otherwise applications need to use "extern void* tall_sigh_ctx" and set it manually (that symbol is not exported in any header file) or end up allocating struct signal_handler into the NULL talloc ctx. API created in a similar way as already existing msgb_talloc_ctx_init(), but without the pool_size because it's not considered necessary in this case. Change-Id: Id58ca18eb826b8f4183a7cf0dbb2b38cba702a09
This commit is contained in:
parent
acc0a070c7
commit
0b6fcb0349
|
@ -34,6 +34,7 @@ typedef int osmo_signal_cbfn(unsigned int subsys, unsigned int signal, void *han
|
|||
|
||||
|
||||
/* Management */
|
||||
void *osmo_signal_talloc_ctx_init(void *root_ctx);
|
||||
int osmo_signal_register_handler(unsigned int subsys, osmo_signal_cbfn *cbfn, void *data);
|
||||
void osmo_signal_unregister_handler(unsigned int subsys, osmo_signal_cbfn *cbfn, void *data);
|
||||
|
||||
|
|
|
@ -46,6 +46,15 @@ struct signal_handler {
|
|||
void *data;
|
||||
};
|
||||
|
||||
/*! Initialize a signal_handler talloc context for \ref osmo_signal_register_handler.
|
||||
* Create a talloc context called "osmo_signal".
|
||||
* \param[in] root_ctx talloc context used as parent for the new "osmo_signal" ctx.
|
||||
* \returns the new osmo_signal talloc context, e.g. for reporting
|
||||
*/
|
||||
void *osmo_signal_talloc_ctx_init(void *root_ctx) {
|
||||
tall_sigh_ctx = talloc_named_const(tall_sigh_ctx, 0, "osmo_signal");
|
||||
return tall_sigh_ctx;
|
||||
}
|
||||
|
||||
/*! Register a new signal handler
|
||||
* \param[in] subsys Subsystem number
|
||||
|
|
Loading…
Reference in New Issue