\section{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`\"{}xua\+\_\+internal.\+h\char`\"{}}\newline {\ttfamily \#include \char`\"{}sccp\+\_\+internal.\+h\char`\"{}}\newline \subsection*{Functions} \begin{DoxyCompactItemize} \item \textbf{ osmo\+\_\+static\+\_\+assert} (\textbf{ M3\+U\+A\+\_\+\+S\+N\+M\+\_\+\+D\+U\+NA}==\textbf{ S\+U\+A\+\_\+\+S\+N\+M\+\_\+\+D\+U\+NA}, \+\_\+sa\+\_\+duna) \item \textbf{ osmo\+\_\+static\+\_\+assert} (\textbf{ M3\+U\+A\+\_\+\+S\+N\+M\+\_\+\+D\+A\+VA}==\textbf{ S\+U\+A\+\_\+\+S\+N\+M\+\_\+\+D\+A\+VA}, \+\_\+sa\+\_\+dava) \item \textbf{ osmo\+\_\+static\+\_\+assert} (\textbf{ M3\+U\+A\+\_\+\+S\+N\+M\+\_\+\+D\+A\+UD}==\textbf{ S\+U\+A\+\_\+\+S\+N\+M\+\_\+\+D\+A\+UD}, \+\_\+sa\+\_\+dava) \item \textbf{ osmo\+\_\+static\+\_\+assert} (\textbf{ M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+A\+F\+F\+E\+C\+T\+E\+D\+\_\+\+PC}==\textbf{ S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+A\+F\+F\+E\+C\+T\+E\+D\+\_\+\+PC}, \+\_\+sa\+\_\+aff\+\_\+pc) \item \textbf{ osmo\+\_\+static\+\_\+assert} (\textbf{ M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+R\+O\+U\+T\+E\+\_\+\+C\+TX}==\textbf{ S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+R\+O\+U\+T\+E\+\_\+\+C\+TX}, \+\_\+sa\+\_\+rctx) \item \textbf{ osmo\+\_\+static\+\_\+assert} (\textbf{ M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+I\+N\+F\+O\+\_\+\+S\+T\+R\+I\+NG}==\textbf{ S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+I\+N\+F\+O\+\_\+\+S\+T\+R\+I\+NG}, \+\_\+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 static unsigned int \textbf{ get\+\_\+all\+\_\+rctx\+\_\+for\+\_\+asp} (uint32\+\_\+t $\ast$rctx, unsigned int rctx\+\_\+size, struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$asp, struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$excl\+\_\+as) \item static 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 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\+\_\+sccp} (struct \textbf{ osmo\+\_\+sccp\+\_\+instance} $\ast$sccp, 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} (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} \subsection{Function Documentation} \mbox{\label{xua__snm_8c_a1a7619e578c41ec4ec816cbd337ba2f5}} \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}} \subsubsection{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 xua\+\_\+msg\+\_\+part\+::dat, xua\+\_\+msg\+\_\+part\+::len, and osmo\+\_\+ss7\+\_\+pointcode\+\_\+print(). Referenced by xua\+\_\+snm\+\_\+rx\+\_\+daud(), xua\+\_\+snm\+\_\+rx\+\_\+dava(), xua\+\_\+snm\+\_\+rx\+\_\+duna(), and xua\+\_\+snm\+\_\+rx\+\_\+scon(). \mbox{\label{xua__snm_8c_ab5411ae2b38a8b73eef58353e3d81c70}} \index{xua\+\_\+snm.\+c@{xua\+\_\+snm.\+c}!get\+\_\+all\+\_\+rctx\+\_\+for\+\_\+asp@{get\+\_\+all\+\_\+rctx\+\_\+for\+\_\+asp}} \index{get\+\_\+all\+\_\+rctx\+\_\+for\+\_\+asp@{get\+\_\+all\+\_\+rctx\+\_\+for\+\_\+asp}!xua\+\_\+snm.\+c@{xua\+\_\+snm.\+c}} \subsubsection{get\+\_\+all\+\_\+rctx\+\_\+for\+\_\+asp()} {\footnotesize\ttfamily static unsigned int get\+\_\+all\+\_\+rctx\+\_\+for\+\_\+asp (\begin{DoxyParamCaption}\item[{uint32\+\_\+t $\ast$}]{rctx, }\item[{unsigned int}]{rctx\+\_\+size, }\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+asp} $\ast$}]{asp, }\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+as} $\ast$}]{excl\+\_\+as }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} References osmo\+\_\+ss7\+\_\+instance\+::as\+\_\+list, osmo\+\_\+ss7\+\_\+as\+::cfg, osmo\+\_\+ss7\+\_\+routing\+\_\+key\+::context, osmo\+\_\+ss7\+\_\+asp\+::inst, osmo\+\_\+ss7\+\_\+as\+::list, osmo\+\_\+ss7\+\_\+as\+\_\+has\+\_\+asp(), and osmo\+\_\+ss7\+\_\+as\+::routing\+\_\+key. Referenced by sua\+\_\+snm\+\_\+ssn\+\_\+available(), xua\+\_\+snm\+\_\+pc\+\_\+available(), xua\+\_\+snm\+\_\+rx\+\_\+daud(), xua\+\_\+snm\+\_\+scon(), and xua\+\_\+snm\+\_\+upu(). \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}} \subsubsection{osmo\+\_\+static\+\_\+assert()\hspace{0.1cm}{\footnotesize\ttfamily [1/6]}} {\footnotesize\ttfamily osmo\+\_\+static\+\_\+assert (\begin{DoxyParamCaption}\item[{\textbf{ M3\+U\+A\+\_\+\+S\+N\+M\+\_\+\+D\+U\+NA}}]{ = {\ttfamily =\textbf{ S\+U\+A\+\_\+\+S\+N\+M\+\_\+\+D\+U\+NA}}, }\item[{\+\_\+sa\+\_\+duna}]{ }\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}} \subsubsection{osmo\+\_\+static\+\_\+assert()\hspace{0.1cm}{\footnotesize\ttfamily [2/6]}} {\footnotesize\ttfamily osmo\+\_\+static\+\_\+assert (\begin{DoxyParamCaption}\item[{\textbf{ M3\+U\+A\+\_\+\+S\+N\+M\+\_\+\+D\+A\+VA}}]{ = {\ttfamily =\textbf{ S\+U\+A\+\_\+\+S\+N\+M\+\_\+\+D\+A\+VA}}, }\item[{\+\_\+sa\+\_\+dava}]{ }\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}} \subsubsection{osmo\+\_\+static\+\_\+assert()\hspace{0.1cm}{\footnotesize\ttfamily [3/6]}} {\footnotesize\ttfamily osmo\+\_\+static\+\_\+assert (\begin{DoxyParamCaption}\item[{\textbf{ M3\+U\+A\+\_\+\+S\+N\+M\+\_\+\+D\+A\+UD}}]{ = {\ttfamily =\textbf{ S\+U\+A\+\_\+\+S\+N\+M\+\_\+\+D\+A\+UD}}, }\item[{\+\_\+sa\+\_\+dava}]{ }\end{DoxyParamCaption})} \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}} \subsubsection{osmo\+\_\+static\+\_\+assert()\hspace{0.1cm}{\footnotesize\ttfamily [4/6]}} {\footnotesize\ttfamily osmo\+\_\+static\+\_\+assert (\begin{DoxyParamCaption}\item[{\textbf{ M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+A\+F\+F\+E\+C\+T\+E\+D\+\_\+\+PC}}]{ = {\ttfamily =\textbf{ S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+A\+F\+F\+E\+C\+T\+E\+D\+\_\+\+PC}}, }\item[{\+\_\+sa\+\_\+aff\+\_\+pc}]{ }\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}} \subsubsection{osmo\+\_\+static\+\_\+assert()\hspace{0.1cm}{\footnotesize\ttfamily [5/6]}} {\footnotesize\ttfamily osmo\+\_\+static\+\_\+assert (\begin{DoxyParamCaption}\item[{\textbf{ M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+R\+O\+U\+T\+E\+\_\+\+C\+TX}}]{ = {\ttfamily =\textbf{ S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+R\+O\+U\+T\+E\+\_\+\+C\+TX}}, }\item[{\+\_\+sa\+\_\+rctx}]{ }\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}} \subsubsection{osmo\+\_\+static\+\_\+assert()\hspace{0.1cm}{\footnotesize\ttfamily [6/6]}} {\footnotesize\ttfamily osmo\+\_\+static\+\_\+assert (\begin{DoxyParamCaption}\item[{\textbf{ M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+I\+N\+F\+O\+\_\+\+S\+T\+R\+I\+NG}}]{ = {\ttfamily =\textbf{ S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+I\+N\+F\+O\+\_\+\+S\+T\+R\+I\+NG}}, }\item[{\+\_\+sa\+\_\+inf\+\_\+str}]{ }\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}} \subsubsection{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 osmo\+\_\+ss7\+\_\+instance\+::asp\+\_\+list, osmo\+\_\+ss7\+\_\+asp\+::cfg, get\+\_\+all\+\_\+rctx\+\_\+for\+\_\+asp(), osmo\+\_\+ss7\+\_\+as\+::inst, osmo\+\_\+ss7\+\_\+asp\+::list, osmo\+\_\+ss7\+\_\+asp\+\_\+active(), O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+P\+R\+O\+T\+\_\+\+S\+UA, O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+R\+O\+L\+E\+\_\+\+SG, osmo\+\_\+ss7\+\_\+asp\+::proto, osmo\+\_\+ss7\+\_\+asp\+::role, osmo\+\_\+ss7\+\_\+instance\+::sccp, smi, sua\+\_\+snm\+\_\+ssn\+\_\+available\+\_\+to\+\_\+sccp(), and sua\+\_\+tx\+\_\+snm\+\_\+available(). Referenced by xua\+\_\+snm\+\_\+rx\+\_\+dava(), and 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}} \subsubsection{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 sccp\+\_\+scmg\+\_\+rx\+\_\+ssn\+\_\+allowed(), and sccp\+\_\+scmg\+\_\+rx\+\_\+ssn\+\_\+prohibited(). Referenced by 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}} \subsubsection{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 osmo\+\_\+ss7\+\_\+instance\+::asp\+\_\+list, osmo\+\_\+ss7\+\_\+asp\+::cfg, get\+\_\+all\+\_\+rctx\+\_\+for\+\_\+asp(), osmo\+\_\+ss7\+\_\+as\+::inst, osmo\+\_\+ss7\+\_\+asp\+::list, osmo\+\_\+ss7\+\_\+asp\+\_\+active(), O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+R\+O\+L\+E\+\_\+\+SG, osmo\+\_\+ss7\+\_\+asp\+::role, osmo\+\_\+ss7\+\_\+instance\+::sccp, xua\+\_\+snm\+\_\+pc\+\_\+available\+\_\+to\+\_\+sccp(), and xua\+\_\+tx\+\_\+snm\+\_\+available(). Referenced by xua\+\_\+snm\+\_\+rx\+\_\+dava(), and xua\+\_\+snm\+\_\+rx\+\_\+duna(). \mbox{\label{xua__snm_8c_aaa313eeda58ad7b0183bafa6d7351419}} \index{xua\+\_\+snm.\+c@{xua\+\_\+snm.\+c}!xua\+\_\+snm\+\_\+pc\+\_\+available\+\_\+to\+\_\+sccp@{xua\+\_\+snm\+\_\+pc\+\_\+available\+\_\+to\+\_\+sccp}} \index{xua\+\_\+snm\+\_\+pc\+\_\+available\+\_\+to\+\_\+sccp@{xua\+\_\+snm\+\_\+pc\+\_\+available\+\_\+to\+\_\+sccp}!xua\+\_\+snm.\+c@{xua\+\_\+snm.\+c}} \subsubsection{xua\+\_\+snm\+\_\+pc\+\_\+available\+\_\+to\+\_\+sccp()} {\footnotesize\ttfamily static void xua\+\_\+snm\+\_\+pc\+\_\+available\+\_\+to\+\_\+sccp (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+sccp\+\_\+instance} $\ast$}]{sccp, }\item[{const uint32\+\_\+t $\ast$}]{aff\+\_\+pc, }\item[{unsigned int}]{num\+\_\+aff\+\_\+pc, }\item[{bool}]{available }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} References sccp\+\_\+scmg\+\_\+rx\+\_\+mtp\+\_\+pause(), and sccp\+\_\+scmg\+\_\+rx\+\_\+mtp\+\_\+resume(). Referenced by 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}} \subsubsection{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 xua\+\_\+msg\+\_\+part\+::dat, format\+\_\+affected\+\_\+pcs\+\_\+c(), get\+\_\+all\+\_\+rctx\+\_\+for\+\_\+asp(), osmo\+\_\+ss7\+\_\+asp\+::inst, xua\+\_\+msg\+\_\+part\+::len, L\+O\+G\+P\+A\+SP, M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+A\+F\+F\+E\+C\+T\+E\+D\+\_\+\+PC, M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+I\+N\+F\+O\+\_\+\+S\+T\+R\+I\+NG, osmo\+\_\+ss7\+\_\+asp\+\_\+get\+\_\+log\+\_\+subsys(), osmo\+\_\+ss7\+\_\+route\+\_\+lookup(), xua\+\_\+msg\+\_\+find\+\_\+tag(), xua\+\_\+msg\+\_\+get\+\_\+str(), and xua\+\_\+tx\+\_\+snm\+\_\+available(). Referenced by m3ua\+\_\+rx\+\_\+snm\+\_\+asp(), m3ua\+\_\+rx\+\_\+snm\+\_\+sg(), sua\+\_\+rx\+\_\+snm\+\_\+asp(), and 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}} \subsubsection{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 osmo\+\_\+ss7\+\_\+asp\+::cfg, xua\+\_\+msg\+\_\+part\+::dat, format\+\_\+affected\+\_\+pcs\+\_\+c(), osmo\+\_\+ss7\+\_\+asp\+::inst, xua\+\_\+msg\+\_\+part\+::len, L\+O\+G\+P\+A\+SP, M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+A\+F\+F\+E\+C\+T\+E\+D\+\_\+\+PC, M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+I\+N\+F\+O\+\_\+\+S\+T\+R\+I\+NG, osmo\+\_\+ss7\+\_\+asp\+\_\+get\+\_\+log\+\_\+subsys(), O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+P\+R\+O\+T\+\_\+\+S\+UA, O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+R\+O\+L\+E\+\_\+\+A\+SP, osmo\+\_\+ss7\+\_\+asp\+::proto, osmo\+\_\+ss7\+\_\+asp\+::role, smi, S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+S\+MI, S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+S\+SN, sua\+\_\+snm\+\_\+ssn\+\_\+available(), xua\+\_\+msg\+\_\+find\+\_\+tag(), xua\+\_\+msg\+\_\+get\+\_\+str(), xua\+\_\+msg\+\_\+get\+\_\+u32p(), xua\+\_\+msg\+\_\+part\+\_\+get\+\_\+u32(), and xua\+\_\+snm\+\_\+pc\+\_\+available(). Referenced by m3ua\+\_\+rx\+\_\+snm\+\_\+asp(), and 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}} \subsubsection{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 osmo\+\_\+ss7\+\_\+asp\+::cfg, xua\+\_\+msg\+\_\+part\+::dat, format\+\_\+affected\+\_\+pcs\+\_\+c(), osmo\+\_\+ss7\+\_\+asp\+::inst, xua\+\_\+msg\+\_\+part\+::len, L\+O\+G\+P\+A\+SP, M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+A\+F\+F\+E\+C\+T\+E\+D\+\_\+\+PC, M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+I\+N\+F\+O\+\_\+\+S\+T\+R\+I\+NG, osmo\+\_\+ss7\+\_\+asp\+\_\+get\+\_\+log\+\_\+subsys(), O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+P\+R\+O\+T\+\_\+\+S\+UA, O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+R\+O\+L\+E\+\_\+\+A\+SP, osmo\+\_\+ss7\+\_\+asp\+::proto, osmo\+\_\+ss7\+\_\+asp\+::role, smi, S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+S\+MI, S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+S\+SN, sua\+\_\+snm\+\_\+ssn\+\_\+available(), xua\+\_\+msg\+\_\+find\+\_\+tag(), xua\+\_\+msg\+\_\+get\+\_\+str(), xua\+\_\+msg\+\_\+get\+\_\+u32p(), xua\+\_\+msg\+\_\+part\+\_\+get\+\_\+u32(), and xua\+\_\+snm\+\_\+pc\+\_\+available(). Referenced by m3ua\+\_\+rx\+\_\+snm\+\_\+asp(), and 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}} \subsubsection{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 osmo\+\_\+ss7\+\_\+asp\+::cfg, osmo\+\_\+ss7\+\_\+asp\+::inst, L\+O\+G\+P\+A\+SP, M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+U\+S\+E\+R\+\_\+\+C\+A\+U\+SE, mtp\+\_\+si\+\_\+vals, osmo\+\_\+ss7\+\_\+asp\+\_\+get\+\_\+log\+\_\+subsys(), O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+P\+R\+O\+T\+\_\+\+M3\+UA, O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+P\+R\+O\+T\+\_\+\+S\+UA, O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+R\+O\+L\+E\+\_\+\+A\+SP, osmo\+\_\+ss7\+\_\+pointcode\+\_\+print(), osmo\+\_\+ss7\+\_\+asp\+::proto, osmo\+\_\+ss7\+\_\+asp\+::role, S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+A\+F\+F\+E\+C\+T\+E\+D\+\_\+\+PC, S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+I\+N\+F\+O\+\_\+\+S\+T\+R\+I\+NG, S\+U\+A\+\_\+\+I\+E\+I\+\_\+\+U\+S\+E\+R\+\_\+\+C\+A\+U\+SE, xua\+\_\+msg\+\_\+get\+\_\+str(), xua\+\_\+msg\+\_\+get\+\_\+u32(), and xua\+\_\+snm\+\_\+upu(). Referenced by m3ua\+\_\+rx\+\_\+snm\+\_\+asp(), and 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}} \subsubsection{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 xua\+\_\+msg\+\_\+part\+::dat, format\+\_\+affected\+\_\+pcs\+\_\+c(), osmo\+\_\+ss7\+\_\+asp\+::inst, xua\+\_\+msg\+\_\+part\+::len, L\+O\+G\+P\+A\+SP, M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+A\+F\+F\+E\+C\+T\+E\+D\+\_\+\+PC, M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+C\+O\+N\+C\+\_\+\+D\+E\+ST, M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+C\+O\+N\+G\+\_\+\+I\+ND, M3\+U\+A\+\_\+\+I\+E\+I\+\_\+\+I\+N\+F\+O\+\_\+\+S\+T\+R\+I\+NG, osmo\+\_\+ss7\+\_\+asp\+\_\+get\+\_\+log\+\_\+subsys(), xua\+\_\+msg\+\_\+find\+\_\+tag(), xua\+\_\+msg\+\_\+get\+\_\+str(), xua\+\_\+msg\+\_\+get\+\_\+u32p(), and xua\+\_\+snm\+\_\+scon(). Referenced by m3ua\+\_\+rx\+\_\+snm\+\_\+asp(). \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}} \subsubsection{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 osmo\+\_\+ss7\+\_\+instance\+::asp\+\_\+list, osmo\+\_\+ss7\+\_\+asp\+::cfg, get\+\_\+all\+\_\+rctx\+\_\+for\+\_\+asp(), osmo\+\_\+ss7\+\_\+as\+::inst, osmo\+\_\+ss7\+\_\+asp\+::list, osmo\+\_\+ss7\+\_\+asp\+\_\+active(), O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+R\+O\+L\+E\+\_\+\+SG, osmo\+\_\+ss7\+\_\+asp\+::role, and xua\+\_\+tx\+\_\+scon(). Referenced by xua\+\_\+snm\+\_\+rx\+\_\+scon(). \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}} \subsubsection{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 osmo\+\_\+ss7\+\_\+instance\+::asp\+\_\+list, osmo\+\_\+ss7\+\_\+asp\+::cfg, get\+\_\+all\+\_\+rctx\+\_\+for\+\_\+asp(), osmo\+\_\+ss7\+\_\+as\+::inst, osmo\+\_\+ss7\+\_\+asp\+::list, M\+T\+P\+\_\+\+S\+I\+\_\+\+S\+C\+CP, osmo\+\_\+ss7\+\_\+asp\+\_\+active(), O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+R\+O\+L\+E\+\_\+\+SG, osmo\+\_\+ss7\+\_\+asp\+::role, osmo\+\_\+ss7\+\_\+instance\+::sccp, sccp\+\_\+scmg\+\_\+rx\+\_\+mtp\+\_\+status(), and xua\+\_\+tx\+\_\+upu(). Referenced by 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}} \subsubsection{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 osmo\+\_\+ss7\+\_\+asp\+::cfg, m3ua\+\_\+tx\+\_\+snm\+\_\+congestion(), O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+P\+R\+O\+T\+\_\+\+M3\+UA, O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+P\+R\+O\+T\+\_\+\+S\+UA, osmo\+\_\+ss7\+\_\+asp\+::proto, and sua\+\_\+tx\+\_\+snm\+\_\+congestion(). Referenced by xua\+\_\+snm\+\_\+scon(). \mbox{\label{xua__snm_8c_acefced501347657d4d7646eccd6b9aed}} \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}} \subsubsection{xua\+\_\+tx\+\_\+snm\+\_\+available()} {\footnotesize\ttfamily static 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})\hspace{0.3cm}{\ttfamily [static]}} References osmo\+\_\+ss7\+\_\+asp\+::cfg, m3ua\+\_\+tx\+\_\+snm\+\_\+available(), O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+P\+R\+O\+T\+\_\+\+M3\+UA, O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+P\+R\+O\+T\+\_\+\+S\+UA, osmo\+\_\+ss7\+\_\+asp\+::proto, and sua\+\_\+tx\+\_\+snm\+\_\+available(). Referenced by xua\+\_\+snm\+\_\+pc\+\_\+available(), and xua\+\_\+snm\+\_\+rx\+\_\+daud(). \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}} \subsubsection{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 osmo\+\_\+ss7\+\_\+asp\+::cfg, m3ua\+\_\+tx\+\_\+dupu(), O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+P\+R\+O\+T\+\_\+\+M3\+UA, O\+S\+M\+O\+\_\+\+S\+S7\+\_\+\+A\+S\+P\+\_\+\+P\+R\+O\+T\+\_\+\+S\+UA, osmo\+\_\+ss7\+\_\+asp\+::proto, and sua\+\_\+tx\+\_\+dupu(). Referenced by xua\+\_\+snm\+\_\+upu().