\doxysection{src/xua\+\_\+snm.c File Reference}
\label{xua__snm_8c}\index{src/xua\_snm.c@{src/xua\_snm.c}}
{\ttfamily \#include $<$stdint.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/utils.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/talloc.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/linuxlist.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/sigtran/osmo\+\_\+ss7.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/sigtran/protocol/m3ua.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/sigtran/protocol/sua.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/sigtran/protocol/mtp.\+h$>$}\newline
{\ttfamily \#include \char`\"{}ss7\+\_\+as.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}ss7\+\_\+asp.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}ss7\+\_\+route.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}ss7\+\_\+internal.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}ss7\+\_\+route\+\_\+table.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}ss7\+\_\+user.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}xua\+\_\+internal.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}sccp\+\_\+internal.\+h\char`\"{}}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\textbf{ osmo\+\_\+static\+\_\+assert} (\textbf{ M3\+UA\+\_\+\+SNM\+\_\+\+DUNA}==\textbf{ SUA\+\_\+\+SNM\+\_\+\+DUNA}, \+\_\+sa\+\_\+duna)
\item 
\textbf{ osmo\+\_\+static\+\_\+assert} (\textbf{ M3\+UA\+\_\+\+SNM\+\_\+\+DAVA}==\textbf{ SUA\+\_\+\+SNM\+\_\+\+DAVA}, \+\_\+sa\+\_\+dava)
\item 
\textbf{ osmo\+\_\+static\+\_\+assert} (\textbf{ M3\+UA\+\_\+\+SNM\+\_\+\+DAUD}==\textbf{ SUA\+\_\+\+SNM\+\_\+\+DAUD}, \+\_\+sa\+\_\+dava)
\item 
\textbf{ osmo\+\_\+static\+\_\+assert} (\textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+AFFECTED\+\_\+\+PC}==\textbf{ SUA\+\_\+\+IEI\+\_\+\+AFFECTED\+\_\+\+PC}, \+\_\+sa\+\_\+aff\+\_\+pc)
\item 
\textbf{ osmo\+\_\+static\+\_\+assert} (\textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+ROUTE\+\_\+\+CTX}==\textbf{ SUA\+\_\+\+IEI\+\_\+\+ROUTE\+\_\+\+CTX}, \+\_\+sa\+\_\+rctx)
\item 
\textbf{ osmo\+\_\+static\+\_\+assert} (\textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+INFO\+\_\+\+STRING}==\textbf{ SUA\+\_\+\+IEI\+\_\+\+INFO\+\_\+\+STRING}, \+\_\+sa\+\_\+inf\+\_\+str)
\item 
static const char $\ast$ \textbf{ format\+\_\+affected\+\_\+pcs\+\_\+c} (void $\ast$ctx, const struct \textbf{ osmo\+\_\+ss7\+\_\+instance} $\ast$s7i, const struct \textbf{ xua\+\_\+msg\+\_\+part} $\ast$ie\+\_\+aff\+\_\+pc)
\item 
void \textbf{ xua\+\_\+tx\+\_\+snm\+\_\+available} (struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$asp, const uint32\+\_\+t $\ast$rctx, unsigned int num\+\_\+rctx, const uint32\+\_\+t $\ast$aff\+\_\+pc, unsigned int num\+\_\+aff\+\_\+pc, const char $\ast$info\+\_\+str, bool available)
\item 
void \textbf{ xua\+\_\+tx\+\_\+snm\+\_\+daud} (struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$asp, const uint32\+\_\+t $\ast$rctx, unsigned int num\+\_\+rctx, const uint32\+\_\+t $\ast$aff\+\_\+pc, unsigned int num\+\_\+aff\+\_\+pc, const char $\ast$info\+\_\+str)
\item 
static void \textbf{ xua\+\_\+tx\+\_\+upu} (struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$asp, const uint32\+\_\+t $\ast$rctx, unsigned int num\+\_\+rctx, uint32\+\_\+t \textbf{ dpc}, uint16\+\_\+t user, uint16\+\_\+t cause, const char $\ast$info\+\_\+str)
\item 
static void \textbf{ xua\+\_\+tx\+\_\+scon} (struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$asp, const uint32\+\_\+t $\ast$rctx, unsigned int num\+\_\+rctx, const uint32\+\_\+t $\ast$aff\+\_\+pc, unsigned int num\+\_\+aff\+\_\+pc, const uint32\+\_\+t $\ast$concerned\+\_\+dpc, const uint8\+\_\+t $\ast$cong\+\_\+level, const char $\ast$info\+\_\+string)
\item 
static void \textbf{ xua\+\_\+snm\+\_\+pc\+\_\+available\+\_\+to\+\_\+mtp\+\_\+users} (struct \textbf{ osmo\+\_\+ss7\+\_\+instance} $\ast$s7i, const uint32\+\_\+t $\ast$aff\+\_\+pc, unsigned int num\+\_\+aff\+\_\+pc, bool available)
\item 
static void \textbf{ xua\+\_\+snm\+\_\+srm\+\_\+pc\+\_\+available\+\_\+single} (struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$as, uint32\+\_\+t \textbf{ pc}, bool available)
\item 
static void \textbf{ xua\+\_\+snm\+\_\+srm\+\_\+pc\+\_\+available} (struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$as, const uint32\+\_\+t $\ast$aff\+\_\+pc, unsigned int num\+\_\+aff\+\_\+pc, bool available)
\item 
void \textbf{ xua\+\_\+snm\+\_\+pc\+\_\+available} (struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$as, const uint32\+\_\+t $\ast$aff\+\_\+pc, unsigned int num\+\_\+aff\+\_\+pc, const char $\ast$info\+\_\+str, bool available)
\item 
static void \textbf{ sua\+\_\+snm\+\_\+ssn\+\_\+available\+\_\+to\+\_\+sccp} (struct \textbf{ osmo\+\_\+sccp\+\_\+instance} $\ast$sccp, uint32\+\_\+t aff\+\_\+pc, uint32\+\_\+t aff\+\_\+ssn, uint32\+\_\+t \textbf{ smi}, bool available)
\item 
static void \textbf{ sua\+\_\+snm\+\_\+ssn\+\_\+available} (struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$as, uint32\+\_\+t aff\+\_\+pc, uint32\+\_\+t aff\+\_\+ssn, const uint32\+\_\+t $\ast$\textbf{ smi}, const char $\ast$info\+\_\+str, bool available)
\item 
static void \textbf{ xua\+\_\+snm\+\_\+upu} (struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$as, uint32\+\_\+t \textbf{ dpc}, uint16\+\_\+t user, uint16\+\_\+t cause, const char $\ast$info\+\_\+str)
\item 
static void \textbf{ xua\+\_\+snm\+\_\+scon\+\_\+to\+\_\+mtp\+\_\+users} (struct \textbf{ osmo\+\_\+ss7\+\_\+instance} $\ast$s7i, const uint32\+\_\+t $\ast$aff\+\_\+pc, unsigned int num\+\_\+aff\+\_\+pc, bool cong\+\_\+level\+\_\+present, uint8\+\_\+t cong\+\_\+level)
\item 
static void \textbf{ xua\+\_\+snm\+\_\+scon} (struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$as, const uint32\+\_\+t $\ast$aff\+\_\+pc, unsigned int num\+\_\+aff\+\_\+pc, const uint32\+\_\+t $\ast$concerned\+\_\+dpc, const uint8\+\_\+t $\ast$cong\+\_\+level, const char $\ast$info\+\_\+string)
\item 
void \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+daud} (struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$asp, struct \textbf{ xua\+\_\+msg} $\ast$xua)
\item 
void \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+duna} (struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$asp, struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$as, struct \textbf{ xua\+\_\+msg} $\ast$xua)
\item 
void \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+dava} (struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$asp, struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$as, struct \textbf{ xua\+\_\+msg} $\ast$xua)
\item 
void \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+dupu} (struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$asp, struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$as, struct \textbf{ xua\+\_\+msg} $\ast$xua)
\item 
void \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+scon} (struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$asp, struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$as, struct \textbf{ xua\+\_\+msg} $\ast$xua)
\end{DoxyCompactItemize}


\doxysubsection{Function Documentation}
\mbox{\label{xua__snm_8c_a668451879459fb8229cf3f66da64ef5e}} 
\index{xua\_snm.c@{xua\_snm.c}!format\_affected\_pcs\_c@{format\_affected\_pcs\_c}}
\index{format\_affected\_pcs\_c@{format\_affected\_pcs\_c}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{format\_affected\_pcs\_c()}
{\footnotesize\ttfamily static const char $\ast$ format\+\_\+affected\+\_\+pcs\+\_\+c (\begin{DoxyParamCaption}\item[{void $\ast$}]{ctx,  }\item[{const struct \textbf{ osmo\+\_\+ss7\+\_\+instance} $\ast$}]{s7i,  }\item[{const struct \textbf{ xua\+\_\+msg\+\_\+part} $\ast$}]{ie\+\_\+aff\+\_\+pc }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ xua\+\_\+msg\+\_\+part\+::dat}, \textbf{ xua\+\_\+msg\+\_\+part\+::len}, \textbf{ osmo\+\_\+ss7\+\_\+pointcode\+\_\+print()}, and \textbf{ pc}.



Referenced by \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+daud()}, \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+dava()}, \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+duna()}, and \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+scon()}.

\mbox{\label{xua__snm_8c_ad4d69ecded4b8958f2ff085cfbb93d4c}} 
\index{xua\_snm.c@{xua\_snm.c}!osmo\_static\_assert@{osmo\_static\_assert}}
\index{osmo\_static\_assert@{osmo\_static\_assert}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{osmo\_static\_assert()\hspace{0.1cm}{\footnotesize\ttfamily [1/6]}}
{\footnotesize\ttfamily osmo\+\_\+static\+\_\+assert (\begin{DoxyParamCaption}\item[{\textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+AFFECTED\+\_\+\+PC}}]{ = {\ttfamily =\textbf{ SUA\+\_\+\+IEI\+\_\+\+AFFECTED\+\_\+\+PC}},  }\item[{\+\_\+sa\+\_\+aff\+\_\+pc}]{ }\end{DoxyParamCaption})}

\mbox{\label{xua__snm_8c_a111957f5ac69350453e964d8c86bdbaa}} 
\index{xua\_snm.c@{xua\_snm.c}!osmo\_static\_assert@{osmo\_static\_assert}}
\index{osmo\_static\_assert@{osmo\_static\_assert}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{osmo\_static\_assert()\hspace{0.1cm}{\footnotesize\ttfamily [2/6]}}
{\footnotesize\ttfamily osmo\+\_\+static\+\_\+assert (\begin{DoxyParamCaption}\item[{\textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+INFO\+\_\+\+STRING}}]{ = {\ttfamily =\textbf{ SUA\+\_\+\+IEI\+\_\+\+INFO\+\_\+\+STRING}},  }\item[{\+\_\+sa\+\_\+inf\+\_\+str}]{ }\end{DoxyParamCaption})}

\mbox{\label{xua__snm_8c_a6da885eeb8d723e852482e40e233c84b}} 
\index{xua\_snm.c@{xua\_snm.c}!osmo\_static\_assert@{osmo\_static\_assert}}
\index{osmo\_static\_assert@{osmo\_static\_assert}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{osmo\_static\_assert()\hspace{0.1cm}{\footnotesize\ttfamily [3/6]}}
{\footnotesize\ttfamily osmo\+\_\+static\+\_\+assert (\begin{DoxyParamCaption}\item[{\textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+ROUTE\+\_\+\+CTX}}]{ = {\ttfamily =\textbf{ SUA\+\_\+\+IEI\+\_\+\+ROUTE\+\_\+\+CTX}},  }\item[{\+\_\+sa\+\_\+rctx}]{ }\end{DoxyParamCaption})}

\mbox{\label{xua__snm_8c_a88caacec93c80552a704438f39be4ce8}} 
\index{xua\_snm.c@{xua\_snm.c}!osmo\_static\_assert@{osmo\_static\_assert}}
\index{osmo\_static\_assert@{osmo\_static\_assert}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{osmo\_static\_assert()\hspace{0.1cm}{\footnotesize\ttfamily [4/6]}}
{\footnotesize\ttfamily osmo\+\_\+static\+\_\+assert (\begin{DoxyParamCaption}\item[{\textbf{ M3\+UA\+\_\+\+SNM\+\_\+\+DAUD}}]{ = {\ttfamily =\textbf{ SUA\+\_\+\+SNM\+\_\+\+DAUD}},  }\item[{\+\_\+sa\+\_\+dava}]{ }\end{DoxyParamCaption})}

\mbox{\label{xua__snm_8c_aa978f8897932c6b00e5adc2cc3f04375}} 
\index{xua\_snm.c@{xua\_snm.c}!osmo\_static\_assert@{osmo\_static\_assert}}
\index{osmo\_static\_assert@{osmo\_static\_assert}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{osmo\_static\_assert()\hspace{0.1cm}{\footnotesize\ttfamily [5/6]}}
{\footnotesize\ttfamily osmo\+\_\+static\+\_\+assert (\begin{DoxyParamCaption}\item[{\textbf{ M3\+UA\+\_\+\+SNM\+\_\+\+DAVA}}]{ = {\ttfamily =\textbf{ SUA\+\_\+\+SNM\+\_\+\+DAVA}},  }\item[{\+\_\+sa\+\_\+dava}]{ }\end{DoxyParamCaption})}

\mbox{\label{xua__snm_8c_a2aa91497e14ee3bf0711ea970deebcd9}} 
\index{xua\_snm.c@{xua\_snm.c}!osmo\_static\_assert@{osmo\_static\_assert}}
\index{osmo\_static\_assert@{osmo\_static\_assert}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{osmo\_static\_assert()\hspace{0.1cm}{\footnotesize\ttfamily [6/6]}}
{\footnotesize\ttfamily osmo\+\_\+static\+\_\+assert (\begin{DoxyParamCaption}\item[{\textbf{ M3\+UA\+\_\+\+SNM\+\_\+\+DUNA}}]{ = {\ttfamily =\textbf{ SUA\+\_\+\+SNM\+\_\+\+DUNA}},  }\item[{\+\_\+sa\+\_\+duna}]{ }\end{DoxyParamCaption})}

\mbox{\label{xua__snm_8c_a5ed4e065ea88037e89210a826fbe211e}} 
\index{xua\_snm.c@{xua\_snm.c}!sua\_snm\_ssn\_available@{sua\_snm\_ssn\_available}}
\index{sua\_snm\_ssn\_available@{sua\_snm\_ssn\_available}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{sua\_snm\_ssn\_available()}
{\footnotesize\ttfamily static void sua\+\_\+snm\+\_\+ssn\+\_\+available (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$}]{as,  }\item[{uint32\+\_\+t}]{aff\+\_\+pc,  }\item[{uint32\+\_\+t}]{aff\+\_\+ssn,  }\item[{const uint32\+\_\+t $\ast$}]{smi,  }\item[{const char $\ast$}]{info\+\_\+str,  }\item[{bool}]{available }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ osmo\+\_\+ss7\+\_\+instance\+::asp\+\_\+list}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::cfg}, \textbf{ osmo\+\_\+ss7\+\_\+as\+::inst}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::list}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+\_\+active()}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+SUA}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+ROLE\+\_\+\+SG}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+MAX\+\_\+\+RCTX\+\_\+\+COUNT}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::proto}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::role}, \textbf{ osmo\+\_\+ss7\+\_\+instance\+::sccp}, \textbf{ smi}, \textbf{ ss7\+\_\+asp\+\_\+get\+\_\+all\+\_\+rctx\+\_\+be()}, \textbf{ sua\+\_\+snm\+\_\+ssn\+\_\+available\+\_\+to\+\_\+sccp()}, and \textbf{ sua\+\_\+tx\+\_\+snm\+\_\+available()}.



Referenced by \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+dava()}, and \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+duna()}.

\mbox{\label{xua__snm_8c_a43f060b585c3bcf5bf2fb1ce00f0d5c2}} 
\index{xua\_snm.c@{xua\_snm.c}!sua\_snm\_ssn\_available\_to\_sccp@{sua\_snm\_ssn\_available\_to\_sccp}}
\index{sua\_snm\_ssn\_available\_to\_sccp@{sua\_snm\_ssn\_available\_to\_sccp}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{sua\_snm\_ssn\_available\_to\_sccp()}
{\footnotesize\ttfamily static void sua\+\_\+snm\+\_\+ssn\+\_\+available\+\_\+to\+\_\+sccp (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+sccp\+\_\+instance} $\ast$}]{sccp,  }\item[{uint32\+\_\+t}]{aff\+\_\+pc,  }\item[{uint32\+\_\+t}]{aff\+\_\+ssn,  }\item[{uint32\+\_\+t}]{smi,  }\item[{bool}]{available }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ sccp\+\_\+scmg\+\_\+rx\+\_\+ssn\+\_\+allowed()}, \textbf{ sccp\+\_\+scmg\+\_\+rx\+\_\+ssn\+\_\+prohibited()}, and \textbf{ smi}.



Referenced by \textbf{ sua\+\_\+snm\+\_\+ssn\+\_\+available()}.

\mbox{\label{xua__snm_8c_ab0a13bea02506a7c10cbc09eb5365cf0}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_snm\_pc\_available@{xua\_snm\_pc\_available}}
\index{xua\_snm\_pc\_available@{xua\_snm\_pc\_available}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_snm\_pc\_available()}
{\footnotesize\ttfamily void xua\+\_\+snm\+\_\+pc\+\_\+available (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$}]{as,  }\item[{const uint32\+\_\+t $\ast$}]{aff\+\_\+pc,  }\item[{unsigned int}]{num\+\_\+aff\+\_\+pc,  }\item[{const char $\ast$}]{info\+\_\+str,  }\item[{bool}]{available }\end{DoxyParamCaption})}



References \textbf{ osmo\+\_\+ss7\+\_\+instance\+::asp\+\_\+list}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::cfg}, \textbf{ osmo\+\_\+ss7\+\_\+as\+::inst}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::list}, \textbf{ osmo\+\_\+ss7\+\_\+as\+\_\+has\+\_\+asp()}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+\_\+active()}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+ROLE\+\_\+\+SG}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+MAX\+\_\+\+RCTX\+\_\+\+COUNT}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::role}, \textbf{ ss7\+\_\+asp\+\_\+get\+\_\+all\+\_\+rctx\+\_\+be()}, \textbf{ xua\+\_\+snm\+\_\+pc\+\_\+available\+\_\+to\+\_\+mtp\+\_\+users()}, \textbf{ xua\+\_\+snm\+\_\+srm\+\_\+pc\+\_\+available()}, and \textbf{ xua\+\_\+tx\+\_\+snm\+\_\+available()}.



Referenced by \textbf{ as\+\_\+snm\+\_\+pc\+\_\+available()}, \textbf{ as\+\_\+snm\+\_\+pc\+\_\+unavailable()}, \textbf{ xua\+\_\+as\+\_\+fsm\+\_\+onenter()}, \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+dava()}, and \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+duna()}.

\mbox{\label{xua__snm_8c_a44df690d924f5126995358efcdce969a}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_snm\_pc\_available\_to\_mtp\_users@{xua\_snm\_pc\_available\_to\_mtp\_users}}
\index{xua\_snm\_pc\_available\_to\_mtp\_users@{xua\_snm\_pc\_available\_to\_mtp\_users}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_snm\_pc\_available\_to\_mtp\_users()}
{\footnotesize\ttfamily static void xua\+\_\+snm\+\_\+pc\+\_\+available\+\_\+to\+\_\+mtp\+\_\+users (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+instance} $\ast$}]{s7i,  }\item[{const uint32\+\_\+t $\ast$}]{aff\+\_\+pc,  }\item[{unsigned int}]{num\+\_\+aff\+\_\+pc,  }\item[{bool}]{available }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ mtp\+\_\+pause\+\_\+ind\+\_\+up\+\_\+to\+\_\+all\+\_\+users()}, \textbf{ mtp\+\_\+resume\+\_\+ind\+\_\+up\+\_\+to\+\_\+all\+\_\+users()}, and \textbf{ pc}.



Referenced by \textbf{ xua\+\_\+snm\+\_\+pc\+\_\+available()}.

\mbox{\label{xua__snm_8c_af0a8709b1ca21e41a1c9d0d89fa5f041}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_snm\_rx\_daud@{xua\_snm\_rx\_daud}}
\index{xua\_snm\_rx\_daud@{xua\_snm\_rx\_daud}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_snm\_rx\_daud()}
{\footnotesize\ttfamily void xua\+\_\+snm\+\_\+rx\+\_\+daud (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$}]{asp,  }\item[{struct \textbf{ xua\+\_\+msg} $\ast$}]{xua }\end{DoxyParamCaption})}



References \textbf{ xua\+\_\+msg\+\_\+part\+::dat}, \textbf{ format\+\_\+affected\+\_\+pcs\+\_\+c()}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::inst}, \textbf{ xua\+\_\+msg\+\_\+part\+::len}, \textbf{ LOGPASP}, \textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+AFFECTED\+\_\+\+PC}, \textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+INFO\+\_\+\+STRING}, \textbf{ NULL}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+\_\+get\+\_\+log\+\_\+subsys()}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+MAX\+\_\+\+RCTX\+\_\+\+COUNT}, \textbf{ pc}, \textbf{ osmo\+\_\+ss7\+\_\+instance\+::rtable\+\_\+system}, \textbf{ ss7\+\_\+asp\+\_\+get\+\_\+all\+\_\+rctx\+\_\+be()}, \textbf{ ss7\+\_\+route\+\_\+table\+\_\+dpc\+\_\+is\+\_\+accessible()}, \textbf{ xua\+\_\+msg\+\_\+find\+\_\+tag()}, \textbf{ xua\+\_\+msg\+\_\+get\+\_\+str()}, and \textbf{ xua\+\_\+tx\+\_\+snm\+\_\+available()}.



Referenced by \textbf{ m3ua\+\_\+rx\+\_\+snm\+\_\+asp()}, \textbf{ m3ua\+\_\+rx\+\_\+snm\+\_\+ipsp()}, \textbf{ m3ua\+\_\+rx\+\_\+snm\+\_\+sg()}, \textbf{ sua\+\_\+rx\+\_\+snm\+\_\+asp()}, \textbf{ sua\+\_\+rx\+\_\+snm\+\_\+ipsp()}, and \textbf{ sua\+\_\+rx\+\_\+snm\+\_\+sg()}.

\mbox{\label{xua__snm_8c_a4c96597e36bad63b9f666ca630fb7881}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_snm\_rx\_dava@{xua\_snm\_rx\_dava}}
\index{xua\_snm\_rx\_dava@{xua\_snm\_rx\_dava}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_snm\_rx\_dava()}
{\footnotesize\ttfamily void xua\+\_\+snm\+\_\+rx\+\_\+dava (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$}]{asp,  }\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$}]{as,  }\item[{struct \textbf{ xua\+\_\+msg} $\ast$}]{xua }\end{DoxyParamCaption})}



References \textbf{ osmo\+\_\+ss7\+\_\+asp\+::cfg}, \textbf{ xua\+\_\+msg\+\_\+part\+::dat}, \textbf{ format\+\_\+affected\+\_\+pcs\+\_\+c()}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::inst}, \textbf{ xua\+\_\+msg\+\_\+part\+::len}, \textbf{ LOGPASP}, \textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+AFFECTED\+\_\+\+PC}, \textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+INFO\+\_\+\+STRING}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+\_\+get\+\_\+log\+\_\+subsys()}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+SUA}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+ROLE\+\_\+\+ASP}, \textbf{ pc}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::proto}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::role}, \textbf{ smi}, \textbf{ ssn}, \textbf{ SUA\+\_\+\+IEI\+\_\+\+SMI}, \textbf{ SUA\+\_\+\+IEI\+\_\+\+SSN}, \textbf{ sua\+\_\+snm\+\_\+ssn\+\_\+available()}, \textbf{ xua\+\_\+msg\+\_\+find\+\_\+tag()}, \textbf{ xua\+\_\+msg\+\_\+get\+\_\+str()}, \textbf{ xua\+\_\+msg\+\_\+get\+\_\+u32p()}, \textbf{ xua\+\_\+msg\+\_\+part\+\_\+get\+\_\+u32()}, and \textbf{ xua\+\_\+snm\+\_\+pc\+\_\+available()}.



Referenced by \textbf{ m3ua\+\_\+rx\+\_\+snm\+\_\+asp()}, and \textbf{ sua\+\_\+rx\+\_\+snm\+\_\+asp()}.

\mbox{\label{xua__snm_8c_aea11cd352ca23f5fcb6a07d00deff86b}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_snm\_rx\_duna@{xua\_snm\_rx\_duna}}
\index{xua\_snm\_rx\_duna@{xua\_snm\_rx\_duna}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_snm\_rx\_duna()}
{\footnotesize\ttfamily void xua\+\_\+snm\+\_\+rx\+\_\+duna (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$}]{asp,  }\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$}]{as,  }\item[{struct \textbf{ xua\+\_\+msg} $\ast$}]{xua }\end{DoxyParamCaption})}



References \textbf{ osmo\+\_\+ss7\+\_\+asp\+::cfg}, \textbf{ xua\+\_\+msg\+\_\+part\+::dat}, \textbf{ format\+\_\+affected\+\_\+pcs\+\_\+c()}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::inst}, \textbf{ xua\+\_\+msg\+\_\+part\+::len}, \textbf{ LOGPASP}, \textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+AFFECTED\+\_\+\+PC}, \textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+INFO\+\_\+\+STRING}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+\_\+get\+\_\+log\+\_\+subsys()}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+SUA}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+ROLE\+\_\+\+ASP}, \textbf{ pc}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::proto}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::role}, \textbf{ smi}, \textbf{ ssn}, \textbf{ SUA\+\_\+\+IEI\+\_\+\+SMI}, \textbf{ SUA\+\_\+\+IEI\+\_\+\+SSN}, \textbf{ sua\+\_\+snm\+\_\+ssn\+\_\+available()}, \textbf{ xua\+\_\+msg\+\_\+find\+\_\+tag()}, \textbf{ xua\+\_\+msg\+\_\+get\+\_\+str()}, \textbf{ xua\+\_\+msg\+\_\+get\+\_\+u32p()}, \textbf{ xua\+\_\+msg\+\_\+part\+\_\+get\+\_\+u32()}, and \textbf{ xua\+\_\+snm\+\_\+pc\+\_\+available()}.



Referenced by \textbf{ m3ua\+\_\+rx\+\_\+snm\+\_\+asp()}, and \textbf{ sua\+\_\+rx\+\_\+snm\+\_\+asp()}.

\mbox{\label{xua__snm_8c_a13d36aa2ddc80797a8ec03ab6cdbebe8}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_snm\_rx\_dupu@{xua\_snm\_rx\_dupu}}
\index{xua\_snm\_rx\_dupu@{xua\_snm\_rx\_dupu}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_snm\_rx\_dupu()}
{\footnotesize\ttfamily void xua\+\_\+snm\+\_\+rx\+\_\+dupu (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$}]{asp,  }\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$}]{as,  }\item[{struct \textbf{ xua\+\_\+msg} $\ast$}]{xua }\end{DoxyParamCaption})}



References \textbf{ osmo\+\_\+ss7\+\_\+asp\+::cfg}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::inst}, \textbf{ LOGPASP}, \textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+USER\+\_\+\+CAUSE}, \textbf{ mtp\+\_\+si\+\_\+vals}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+\_\+get\+\_\+log\+\_\+subsys()}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+M3\+UA}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+SUA}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+ROLE\+\_\+\+ASP}, \textbf{ osmo\+\_\+ss7\+\_\+pointcode\+\_\+print()}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::proto}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::role}, \textbf{ SUA\+\_\+\+IEI\+\_\+\+AFFECTED\+\_\+\+PC}, \textbf{ SUA\+\_\+\+IEI\+\_\+\+INFO\+\_\+\+STRING}, \textbf{ SUA\+\_\+\+IEI\+\_\+\+USER\+\_\+\+CAUSE}, \textbf{ xua\+\_\+msg\+\_\+get\+\_\+str()}, \textbf{ xua\+\_\+msg\+\_\+get\+\_\+u32()}, and \textbf{ xua\+\_\+snm\+\_\+upu()}.



Referenced by \textbf{ m3ua\+\_\+rx\+\_\+snm\+\_\+asp()}, and \textbf{ sua\+\_\+rx\+\_\+snm\+\_\+asp()}.

\mbox{\label{xua__snm_8c_a0de81b0e4a0baa2f6eeca78ec84fc506}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_snm\_rx\_scon@{xua\_snm\_rx\_scon}}
\index{xua\_snm\_rx\_scon@{xua\_snm\_rx\_scon}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_snm\_rx\_scon()}
{\footnotesize\ttfamily void xua\+\_\+snm\+\_\+rx\+\_\+scon (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$}]{asp,  }\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$}]{as,  }\item[{struct \textbf{ xua\+\_\+msg} $\ast$}]{xua }\end{DoxyParamCaption})}



References \textbf{ xua\+\_\+msg\+\_\+part\+::dat}, \textbf{ format\+\_\+affected\+\_\+pcs\+\_\+c()}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::inst}, \textbf{ xua\+\_\+msg\+\_\+part\+::len}, \textbf{ LOGPASP}, \textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+AFFECTED\+\_\+\+PC}, \textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+CONC\+\_\+\+DEST}, \textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+CONG\+\_\+\+IND}, \textbf{ M3\+UA\+\_\+\+IEI\+\_\+\+INFO\+\_\+\+STRING}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+\_\+get\+\_\+log\+\_\+subsys()}, \textbf{ xua\+\_\+msg\+\_\+find\+\_\+tag()}, \textbf{ xua\+\_\+msg\+\_\+get\+\_\+str()}, \textbf{ xua\+\_\+msg\+\_\+get\+\_\+u32p()}, and \textbf{ xua\+\_\+snm\+\_\+scon()}.



Referenced by \textbf{ m3ua\+\_\+rx\+\_\+snm\+\_\+asp()}, \textbf{ m3ua\+\_\+rx\+\_\+snm\+\_\+ipsp()}, \textbf{ m3ua\+\_\+rx\+\_\+snm\+\_\+sg()}, \textbf{ sua\+\_\+rx\+\_\+snm\+\_\+asp()}, \textbf{ sua\+\_\+rx\+\_\+snm\+\_\+ipsp()}, and \textbf{ sua\+\_\+rx\+\_\+snm\+\_\+sg()}.

\mbox{\label{xua__snm_8c_add6b264fa09b199c57718f8715388c60}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_snm\_scon@{xua\_snm\_scon}}
\index{xua\_snm\_scon@{xua\_snm\_scon}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_snm\_scon()}
{\footnotesize\ttfamily static void xua\+\_\+snm\+\_\+scon (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$}]{as,  }\item[{const uint32\+\_\+t $\ast$}]{aff\+\_\+pc,  }\item[{unsigned int}]{num\+\_\+aff\+\_\+pc,  }\item[{const uint32\+\_\+t $\ast$}]{concerned\+\_\+dpc,  }\item[{const uint8\+\_\+t $\ast$}]{cong\+\_\+level,  }\item[{const char $\ast$}]{info\+\_\+string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ osmo\+\_\+ss7\+\_\+instance\+::asp\+\_\+list}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::cfg}, \textbf{ osmo\+\_\+ss7\+\_\+as\+::inst}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::list}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+\_\+active()}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+ROLE\+\_\+\+SG}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+MAX\+\_\+\+RCTX\+\_\+\+COUNT}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::role}, \textbf{ ss7\+\_\+asp\+\_\+get\+\_\+all\+\_\+rctx\+\_\+be()}, \textbf{ xua\+\_\+snm\+\_\+scon\+\_\+to\+\_\+mtp\+\_\+users()}, and \textbf{ xua\+\_\+tx\+\_\+scon()}.



Referenced by \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+scon()}.

\mbox{\label{xua__snm_8c_aef379a6ba53945fc512f4646f7db7842}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_snm\_scon\_to\_mtp\_users@{xua\_snm\_scon\_to\_mtp\_users}}
\index{xua\_snm\_scon\_to\_mtp\_users@{xua\_snm\_scon\_to\_mtp\_users}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_snm\_scon\_to\_mtp\_users()}
{\footnotesize\ttfamily static void xua\+\_\+snm\+\_\+scon\+\_\+to\+\_\+mtp\+\_\+users (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+instance} $\ast$}]{s7i,  }\item[{const uint32\+\_\+t $\ast$}]{aff\+\_\+pc,  }\item[{unsigned int}]{num\+\_\+aff\+\_\+pc,  }\item[{bool}]{cong\+\_\+level\+\_\+present,  }\item[{uint8\+\_\+t}]{cong\+\_\+level }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ mtp\+\_\+status\+\_\+ind\+\_\+up\+\_\+to\+\_\+all\+\_\+users()}, \textbf{ MTP\+\_\+\+UNAVAIL\+\_\+\+C\+\_\+\+CONGESTED}, and \textbf{ pc}.



Referenced by \textbf{ xua\+\_\+snm\+\_\+scon()}.

\mbox{\label{xua__snm_8c_a8141d53a551473c81bbb5f1a122175ef}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_snm\_srm\_pc\_available@{xua\_snm\_srm\_pc\_available}}
\index{xua\_snm\_srm\_pc\_available@{xua\_snm\_srm\_pc\_available}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_snm\_srm\_pc\_available()}
{\footnotesize\ttfamily static void xua\+\_\+snm\+\_\+srm\+\_\+pc\+\_\+available (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$}]{as,  }\item[{const uint32\+\_\+t $\ast$}]{aff\+\_\+pc,  }\item[{unsigned int}]{num\+\_\+aff\+\_\+pc,  }\item[{bool}]{available }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ osmo\+\_\+ss7\+\_\+route\+::as}, \textbf{ osmo\+\_\+ss7\+\_\+route\+::mask}, \textbf{ pc}, and \textbf{ xua\+\_\+snm\+\_\+srm\+\_\+pc\+\_\+available\+\_\+single()}.



Referenced by \textbf{ xua\+\_\+snm\+\_\+pc\+\_\+available()}.

\mbox{\label{xua__snm_8c_ac1713e572140ba55e0da6cab77c0dbf9}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_snm\_srm\_pc\_available\_single@{xua\_snm\_srm\_pc\_available\_single}}
\index{xua\_snm\_srm\_pc\_available\_single@{xua\_snm\_srm\_pc\_available\_single}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_snm\_srm\_pc\_available\_single()}
{\footnotesize\ttfamily static void xua\+\_\+snm\+\_\+srm\+\_\+pc\+\_\+available\+\_\+single (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$}]{as,  }\item[{uint32\+\_\+t}]{pc,  }\item[{bool}]{available }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ osmo\+\_\+ss7\+\_\+route\+::as}, \textbf{ osmo\+\_\+ss7\+\_\+as\+::cfg}, \textbf{ osmo\+\_\+ss7\+\_\+as\+::inst}, \textbf{ LOGPAS}, \textbf{ osmo\+\_\+ss7\+\_\+as\+::name}, \textbf{ osmo\+\_\+ss7\+\_\+pointcode\+\_\+print()}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ROUTE\+\_\+\+STATUS\+\_\+\+AVAILABLE}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ROUTE\+\_\+\+STATUS\+\_\+\+UNAVAILABLE}, \textbf{ pc}, \textbf{ osmo\+\_\+ss7\+\_\+instance\+::rtable\+\_\+system}, \textbf{ ss7\+\_\+route\+\_\+create()}, \textbf{ ss7\+\_\+route\+\_\+status\+\_\+name()}, \textbf{ ss7\+\_\+route\+\_\+table\+\_\+find\+\_\+route\+\_\+by\+\_\+dpc\+\_\+mask\+\_\+as()}, \textbf{ ss7\+\_\+route\+\_\+table\+\_\+update\+\_\+route\+\_\+status\+\_\+by\+\_\+as()}, and \textbf{ ss7\+\_\+route\+\_\+update\+\_\+route\+\_\+status()}.



Referenced by \textbf{ xua\+\_\+snm\+\_\+srm\+\_\+pc\+\_\+available()}.

\mbox{\label{xua__snm_8c_a77a2cf4c3f8ccb4d07251152d647b267}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_snm\_upu@{xua\_snm\_upu}}
\index{xua\_snm\_upu@{xua\_snm\_upu}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_snm\_upu()}
{\footnotesize\ttfamily static void xua\+\_\+snm\+\_\+upu (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$}]{as,  }\item[{uint32\+\_\+t}]{dpc,  }\item[{uint16\+\_\+t}]{user,  }\item[{uint16\+\_\+t}]{cause,  }\item[{const char $\ast$}]{info\+\_\+str }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ osmo\+\_\+ss7\+\_\+instance\+::asp\+\_\+list}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::cfg}, \textbf{ dpc}, \textbf{ osmo\+\_\+ss7\+\_\+as\+::inst}, \textbf{ mtp\+\_\+prim\+\_\+status\+\_\+ind\+\_\+alloc()}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+\_\+active()}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+ROLE\+\_\+\+SG}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+MAX\+\_\+\+RCTX\+\_\+\+COUNT}, \textbf{ osmo\+\_\+ss7\+\_\+user\+\_\+find\+\_\+by\+\_\+si()}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::role}, \textbf{ ss7\+\_\+asp\+\_\+get\+\_\+all\+\_\+rctx\+\_\+be()}, \textbf{ ss7\+\_\+user\+\_\+mtp\+\_\+sap\+\_\+prim\+\_\+up()}, and \textbf{ xua\+\_\+tx\+\_\+upu()}.



Referenced by \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+dupu()}.

\mbox{\label{xua__snm_8c_a47f13ba14d34718693d5293a1ec65a2e}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_tx\_scon@{xua\_tx\_scon}}
\index{xua\_tx\_scon@{xua\_tx\_scon}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_tx\_scon()}
{\footnotesize\ttfamily static void xua\+\_\+tx\+\_\+scon (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$}]{asp,  }\item[{const uint32\+\_\+t $\ast$}]{rctx,  }\item[{unsigned int}]{num\+\_\+rctx,  }\item[{const uint32\+\_\+t $\ast$}]{aff\+\_\+pc,  }\item[{unsigned int}]{num\+\_\+aff\+\_\+pc,  }\item[{const uint32\+\_\+t $\ast$}]{concerned\+\_\+dpc,  }\item[{const uint8\+\_\+t $\ast$}]{cong\+\_\+level,  }\item[{const char $\ast$}]{info\+\_\+string }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ osmo\+\_\+ss7\+\_\+asp\+::cfg}, \textbf{ m3ua\+\_\+tx\+\_\+snm\+\_\+congestion()}, \textbf{ NULL}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+M3\+UA}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+SUA}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::proto}, and \textbf{ sua\+\_\+tx\+\_\+snm\+\_\+congestion()}.



Referenced by \textbf{ xua\+\_\+snm\+\_\+scon()}.

\mbox{\label{xua__snm_8c_ac4113fec76692fabc672d9c2185a6d6a}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_tx\_snm\_available@{xua\_tx\_snm\_available}}
\index{xua\_tx\_snm\_available@{xua\_tx\_snm\_available}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_tx\_snm\_available()}
{\footnotesize\ttfamily void xua\+\_\+tx\+\_\+snm\+\_\+available (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$}]{asp,  }\item[{const uint32\+\_\+t $\ast$}]{rctx,  }\item[{unsigned int}]{num\+\_\+rctx,  }\item[{const uint32\+\_\+t $\ast$}]{aff\+\_\+pc,  }\item[{unsigned int}]{num\+\_\+aff\+\_\+pc,  }\item[{const char $\ast$}]{info\+\_\+str,  }\item[{bool}]{available }\end{DoxyParamCaption})}



References \textbf{ osmo\+\_\+ss7\+\_\+asp\+::cfg}, \textbf{ m3ua\+\_\+tx\+\_\+snm\+\_\+available()}, \textbf{ NULL}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+M3\+UA}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+SUA}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::proto}, and \textbf{ sua\+\_\+tx\+\_\+snm\+\_\+available()}.



Referenced by \textbf{ as\+\_\+tx\+\_\+duna\+\_\+during\+\_\+asp\+\_\+act()}, \textbf{ xua\+\_\+snm\+\_\+pc\+\_\+available()}, and \textbf{ xua\+\_\+snm\+\_\+rx\+\_\+daud()}.

\mbox{\label{xua__snm_8c_aefa13ed1d2e243fad308d4ca6c7305b2}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_tx\_snm\_daud@{xua\_tx\_snm\_daud}}
\index{xua\_tx\_snm\_daud@{xua\_tx\_snm\_daud}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_tx\_snm\_daud()}
{\footnotesize\ttfamily void xua\+\_\+tx\+\_\+snm\+\_\+daud (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$}]{asp,  }\item[{const uint32\+\_\+t $\ast$}]{rctx,  }\item[{unsigned int}]{num\+\_\+rctx,  }\item[{const uint32\+\_\+t $\ast$}]{aff\+\_\+pc,  }\item[{unsigned int}]{num\+\_\+aff\+\_\+pc,  }\item[{const char $\ast$}]{info\+\_\+str }\end{DoxyParamCaption})}



References \textbf{ osmo\+\_\+ss7\+\_\+asp\+::cfg}, \textbf{ m3ua\+\_\+tx\+\_\+snm\+\_\+daud()}, \textbf{ NULL}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+M3\+UA}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+SUA}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::proto}, and \textbf{ sua\+\_\+tx\+\_\+snm\+\_\+daud()}.



Referenced by \textbf{ tx\+\_\+daud\+\_\+pc()}, and \textbf{ xua\+\_\+asp\+\_\+tx\+\_\+snm\+\_\+daud\+\_\+address\+\_\+book()}.

\mbox{\label{xua__snm_8c_ac3e1876a06926afc8b89b4630fd696e2}} 
\index{xua\_snm.c@{xua\_snm.c}!xua\_tx\_upu@{xua\_tx\_upu}}
\index{xua\_tx\_upu@{xua\_tx\_upu}!xua\_snm.c@{xua\_snm.c}}
\doxysubsubsection{xua\_tx\_upu()}
{\footnotesize\ttfamily static void xua\+\_\+tx\+\_\+upu (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$}]{asp,  }\item[{const uint32\+\_\+t $\ast$}]{rctx,  }\item[{unsigned int}]{num\+\_\+rctx,  }\item[{uint32\+\_\+t}]{dpc,  }\item[{uint16\+\_\+t}]{user,  }\item[{uint16\+\_\+t}]{cause,  }\item[{const char $\ast$}]{info\+\_\+str }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ osmo\+\_\+ss7\+\_\+asp\+::cfg}, \textbf{ dpc}, \textbf{ m3ua\+\_\+tx\+\_\+dupu()}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+M3\+UA}, \textbf{ OSMO\+\_\+\+SS7\+\_\+\+ASP\+\_\+\+PROT\+\_\+\+SUA}, \textbf{ osmo\+\_\+ss7\+\_\+asp\+::proto}, and \textbf{ sua\+\_\+tx\+\_\+dupu()}.



Referenced by \textbf{ xua\+\_\+snm\+\_\+upu()}.

