\doxysection{include/osmocom/core/signal.h File Reference}
\label{signal_8h}\index{include/osmocom/core/signal.h@{include/osmocom/core/signal.h}}
{\ttfamily \#include $<$stdint.\+h$>$}\newline
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \textbf{ OSMO\+\_\+\+SIGNAL\+\_\+\+SS\+\_\+\+APPS}~0
\begin{DoxyCompactList}\small\item\em 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. \end{DoxyCompactList}\item 
\#define \textbf{ OSMO\+\_\+\+SIGNAL\+\_\+\+SS\+\_\+\+RESERVED}~2147483648\textbf{ u}
\item 
\#define \textbf{ OSMO\+\_\+\+SIGNAL\+\_\+\+T\+\_\+\+APPS}~0
\item 
\#define \textbf{ OSMO\+\_\+\+SIGNAL\+\_\+\+T\+\_\+\+RESERVED}~2147483648\textbf{ u}
\end{DoxyCompactItemize}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef int \textbf{ osmo\+\_\+signal\+\_\+cbfn}(unsigned int \textbf{ subsys}, unsigned int signal, void $\ast$handler\+\_\+data, void $\ast$signal\+\_\+data)
\begin{DoxyCompactList}\small\item\em signal callback function type \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \{ \newline
\textbf{ SS\+\_\+\+L\+\_\+\+GLOBAL} = OSMO\+\_\+\+SIGNAL\+\_\+\+SS\+\_\+\+RESERVED
, \newline
\textbf{ SS\+\_\+\+L\+\_\+\+INPUT}
, \newline
\textbf{ SS\+\_\+\+L\+\_\+\+NS}
, \newline
\textbf{ SS\+\_\+\+L\+\_\+\+VTY}
 \}
\begin{DoxyCompactList}\small\item\em signal subsystems \end{DoxyCompactList}\item 
enum \{ \textbf{ S\+\_\+\+L\+\_\+\+GLOBAL\+\_\+\+SHUTDOWN} = OSMO\+\_\+\+SIGNAL\+\_\+\+T\+\_\+\+RESERVED
 \}
\begin{DoxyCompactList}\small\item\em signal types. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void $\ast$ \textbf{ osmo\+\_\+signal\+\_\+talloc\+\_\+ctx\+\_\+init} (void $\ast$root\+\_\+ctx)
\begin{DoxyCompactList}\small\item\em Initialize a \doxyref{signal\+\_\+handler}{p.}{structsignal__handler} talloc context for \doxyref{osmo\+\_\+signal\+\_\+register\+\_\+handler}{p.}{group__signal_ga34e5e27e85ffdaa63744cf9e97468807}. \end{DoxyCompactList}\item 
int \textbf{ osmo\+\_\+signal\+\_\+register\+\_\+handler} (unsigned int \textbf{ subsys}, \textbf{ osmo\+\_\+signal\+\_\+cbfn} $\ast$cbfn, void $\ast$\textbf{ data})
\begin{DoxyCompactList}\small\item\em Register a new signal handler. \end{DoxyCompactList}\item 
void \textbf{ osmo\+\_\+signal\+\_\+unregister\+\_\+handler} (unsigned int \textbf{ subsys}, \textbf{ osmo\+\_\+signal\+\_\+cbfn} $\ast$cbfn, void $\ast$\textbf{ data})
\begin{DoxyCompactList}\small\item\em Unregister signal handler. \end{DoxyCompactList}\item 
void \textbf{ osmo\+\_\+signal\+\_\+dispatch} (unsigned int \textbf{ subsys}, unsigned int signal, void $\ast$signal\+\_\+data)
\begin{DoxyCompactList}\small\item\em dispatch (deliver) a new signal to all registered handlers \end{DoxyCompactList}\end{DoxyCompactItemize}
