\doxysection{src/ss7\+\_\+combined\+\_\+linkset.c File Reference} \label{ss7__combined__linkset_8c}\index{src/ss7\_combined\_linkset.c@{src/ss7\_combined\_linkset.c}} {\ttfamily \#include $<$errno.\+h$>$}\newline {\ttfamily \#include $<$osmocom/core/linuxlist.\+h$>$}\newline {\ttfamily \#include $<$osmocom/core/logging.\+h$>$}\newline {\ttfamily \#include $<$osmocom/sigtran/osmo\+\_\+ss7.\+h$>$}\newline {\ttfamily \#include \char`\"{}ss7\+\_\+as.\+h\char`\"{}}\newline {\ttfamily \#include \char`\"{}ss7\+\_\+combined\+\_\+linkset.\+h\char`\"{}}\newline {\ttfamily \#include \char`\"{}ss7\+\_\+route.\+h\char`\"{}}\newline {\ttfamily \#include \char`\"{}ss7\+\_\+route\+\_\+table.\+h\char`\"{}}\newline {\ttfamily \#include \char`\"{}ss7\+\_\+internal.\+h\char`\"{}}\newline \doxysubsection*{Macros} \begin{DoxyCompactItemize} \item \#define \textbf{ ss7\+\_\+llist\+\_\+round\+\_\+robin}(list, state, struct\+\_\+type, entry\+\_\+name)~ llist\+\_\+entry(\textbf{ \+\_\+ss7\+\_\+llist\+\_\+round\+\_\+robin}(list, state), struct\+\_\+type, entry\+\_\+name) \end{DoxyCompactItemize} \doxysubsection*{Functions} \begin{DoxyCompactItemize} \item static struct llist\+\_\+head $\ast$ \textbf{ \+\_\+ss7\+\_\+llist\+\_\+round\+\_\+robin} (struct llist\+\_\+head $\ast$list, void $\ast$$\ast$state) \item static void \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+insert} (struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$clset) \begin{DoxyCompactList}\small\item\em Insert combined\+\_\+link into its routing table. \end{DoxyCompactList}\item struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$ \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+alloc} (struct \textbf{ osmo\+\_\+ss7\+\_\+route\+\_\+table} $\ast$rtbl, uint32\+\_\+t pc, uint32\+\_\+t mask, uint32\+\_\+t prio) \item void \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+free} (struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$clset) \item void \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+add\+\_\+route} (struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$clset, struct \textbf{ osmo\+\_\+ss7\+\_\+route} $\ast$rt) \item void \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+del\+\_\+route} (struct \textbf{ osmo\+\_\+ss7\+\_\+route} $\ast$rt) \item bool \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+is\+\_\+available} (const struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$clset) \item static \textbf{ ext\+\_\+sls\+\_\+t} \textbf{ osmo\+\_\+ss7\+\_\+instance\+\_\+calc\+\_\+itu\+\_\+ext\+\_\+sls} (const struct \textbf{ osmo\+\_\+ss7\+\_\+instance} $\ast$inst, const struct \textbf{ osmo\+\_\+ss7\+\_\+route\+\_\+label} $\ast$rtlabel) \item struct \textbf{ osmo\+\_\+ss7\+\_\+route} $\ast$ \textbf{ current\+\_\+rt} (const struct \textbf{ osmo\+\_\+ss7\+\_\+esls\+\_\+entry} $\ast$eslse) \item static struct \textbf{ osmo\+\_\+ss7\+\_\+route} $\ast$ \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+assign\+\_\+route\+\_\+roundrobin} (struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$clset) \item static struct \textbf{ osmo\+\_\+ss7\+\_\+route} $\ast$ \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+select\+\_\+route\+\_\+roundrobin} (struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$clset) \item struct \textbf{ osmo\+\_\+ss7\+\_\+route} $\ast$ \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+lookup\+\_\+route} (struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$clset, const struct \textbf{ osmo\+\_\+ss7\+\_\+route\+\_\+label} $\ast$rtlabel) \end{DoxyCompactItemize} \doxysubsection{Macro Definition Documentation} \mbox{\label{ss7__combined__linkset_8c_a017588d41453c4c03ea51bf6940a6fab}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!ss7\_llist\_round\_robin@{ss7\_llist\_round\_robin}} \index{ss7\_llist\_round\_robin@{ss7\_llist\_round\_robin}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{ss7\_llist\_round\_robin} {\footnotesize\ttfamily \#define ss7\+\_\+llist\+\_\+round\+\_\+robin(\begin{DoxyParamCaption}\item[{}]{list, }\item[{}]{state, }\item[{}]{struct\+\_\+type, }\item[{}]{entry\+\_\+name }\end{DoxyParamCaption})~ llist\+\_\+entry(\textbf{ \+\_\+ss7\+\_\+llist\+\_\+round\+\_\+robin}(list, state), struct\+\_\+type, entry\+\_\+name)} \doxysubsection{Function Documentation} \mbox{\label{ss7__combined__linkset_8c_a83a54f300c1681b1ef4ecb5f85c2576f}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!\_ss7\_llist\_round\_robin@{\_ss7\_llist\_round\_robin}} \index{\_ss7\_llist\_round\_robin@{\_ss7\_llist\_round\_robin}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{\_ss7\_llist\_round\_robin()} {\footnotesize\ttfamily static struct llist\+\_\+head $\ast$ \+\_\+ss7\+\_\+llist\+\_\+round\+\_\+robin (\begin{DoxyParamCaption}\item[{struct llist\+\_\+head $\ast$}]{list, }\item[{void $\ast$$\ast$}]{state }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}} References \textbf{ NULL}. \mbox{\label{ss7__combined__linkset_8c_a5ad20023d53651698d0993a1586f447f}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!current\_rt@{current\_rt}} \index{current\_rt@{current\_rt}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{current\_rt()} {\footnotesize\ttfamily struct \textbf{ osmo\+\_\+ss7\+\_\+route} $\ast$ current\+\_\+rt (\begin{DoxyParamCaption}\item[{const struct \textbf{ osmo\+\_\+ss7\+\_\+esls\+\_\+entry} $\ast$}]{eslse }\end{DoxyParamCaption})} References \textbf{ osmo\+\_\+ss7\+\_\+esls\+\_\+entry\+::alt\+\_\+rt}, \textbf{ osmo\+\_\+ss7\+\_\+esls\+\_\+entry\+::normal\+\_\+rt}, \textbf{ NULL}, and \textbf{ ss7\+\_\+route\+\_\+is\+\_\+available()}. Referenced by \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+lookup\+\_\+route()}. \mbox{\label{ss7__combined__linkset_8c_a40e6759edb41b5b573eb64713bc300d0}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!osmo\_ss7\_instance\_calc\_itu\_ext\_sls@{osmo\_ss7\_instance\_calc\_itu\_ext\_sls}} \index{osmo\_ss7\_instance\_calc\_itu\_ext\_sls@{osmo\_ss7\_instance\_calc\_itu\_ext\_sls}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{osmo\_ss7\_instance\_calc\_itu\_ext\_sls()} {\footnotesize\ttfamily static \textbf{ ext\+\_\+sls\+\_\+t} osmo\+\_\+ss7\+\_\+instance\+\_\+calc\+\_\+itu\+\_\+ext\+\_\+sls (\begin{DoxyParamCaption}\item[{const struct \textbf{ osmo\+\_\+ss7\+\_\+instance} $\ast$}]{inst, }\item[{const struct \textbf{ osmo\+\_\+ss7\+\_\+route\+\_\+label} $\ast$}]{rtlabel }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} References \textbf{ osmo\+\_\+ss7\+\_\+instance\+::cfg}, \textbf{ osmo\+\_\+ss7\+\_\+route\+\_\+label\+::dpc}, \textbf{ osmo\+\_\+ss7\+\_\+instance\+::dpc\+\_\+shift}, \textbf{ NUM\+\_\+\+EXT\+\_\+\+SLS}, \textbf{ osmo\+\_\+ss7\+\_\+route\+\_\+label\+::opc}, \textbf{ osmo\+\_\+ss7\+\_\+instance\+::opc\+\_\+shift}, \textbf{ osmo\+\_\+ss7\+\_\+route\+\_\+label\+::sls}, and \textbf{ osmo\+\_\+ss7\+\_\+instance\+::sls\+\_\+shift}. Referenced by \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+lookup\+\_\+route()}. \mbox{\label{ss7__combined__linkset_8c_a9f9c073c41e30243718ddcf222c81567}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!ss7\_combined\_linkset\_add\_route@{ss7\_combined\_linkset\_add\_route}} \index{ss7\_combined\_linkset\_add\_route@{ss7\_combined\_linkset\_add\_route}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{ss7\_combined\_linkset\_add\_route()} {\footnotesize\ttfamily void ss7\+\_\+combined\+\_\+linkset\+\_\+add\+\_\+route (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$}]{clset, }\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+route} $\ast$}]{rt }\end{DoxyParamCaption})} References \textbf{ osmo\+\_\+ss7\+\_\+route\+::clset}, \textbf{ osmo\+\_\+ss7\+\_\+route\+::list}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::num\+\_\+routes}, and \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::routes}. Referenced by \textbf{ ss7\+\_\+route\+\_\+insert()}. \mbox{\label{ss7__combined__linkset_8c_a443e145e027a08293f8129be66f17ac9}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!ss7\_combined\_linkset\_alloc@{ss7\_combined\_linkset\_alloc}} \index{ss7\_combined\_linkset\_alloc@{ss7\_combined\_linkset\_alloc}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{ss7\_combined\_linkset\_alloc()} {\footnotesize\ttfamily struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$ ss7\+\_\+combined\+\_\+linkset\+\_\+alloc (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+route\+\_\+table} $\ast$}]{rtbl, }\item[{uint32\+\_\+t}]{pc, }\item[{uint32\+\_\+t}]{mask, }\item[{uint32\+\_\+t}]{prio }\end{DoxyParamCaption})} References \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::cfg}, \textbf{ osmo\+\_\+ss7\+\_\+instance\+::cfg}, \textbf{ osmo\+\_\+ss7\+\_\+route\+\_\+table\+::inst}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::mask}, \textbf{ NULL}, \textbf{ osmo\+\_\+ss7\+\_\+pc\+\_\+normalize()}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::pc}, \textbf{ osmo\+\_\+ss7\+\_\+instance\+::pc\+\_\+fmt}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::priority}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::routes}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::rtable}, and \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+insert()}. Referenced by \textbf{ ss7\+\_\+route\+\_\+insert()}, and \textbf{ ss7\+\_\+route\+\_\+table\+\_\+find\+\_\+or\+\_\+create\+\_\+combined\+\_\+linkset()}. \mbox{\label{ss7__combined__linkset_8c_a0924d130f776fa31f0037297e393ab33}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!ss7\_combined\_linkset\_assign\_route\_roundrobin@{ss7\_combined\_linkset\_assign\_route\_roundrobin}} \index{ss7\_combined\_linkset\_assign\_route\_roundrobin@{ss7\_combined\_linkset\_assign\_route\_roundrobin}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{ss7\_combined\_linkset\_assign\_route\_roundrobin()} {\footnotesize\ttfamily static struct \textbf{ osmo\+\_\+ss7\+\_\+route} $\ast$ ss7\+\_\+combined\+\_\+linkset\+\_\+assign\+\_\+route\+\_\+roundrobin (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$}]{clset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} References \textbf{ osmo\+\_\+ss7\+\_\+route\+::clset}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::last\+\_\+route\+\_\+roundrobin\+\_\+ass}, \textbf{ osmo\+\_\+ss7\+\_\+route\+::list}, \textbf{ NULL}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::num\+\_\+routes}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::routes}, and \textbf{ ss7\+\_\+llist\+\_\+round\+\_\+robin}. Referenced by \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+lookup\+\_\+route()}. \mbox{\label{ss7__combined__linkset_8c_aa5fcbdd59e339e2f79c9e681489c0734}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!ss7\_combined\_linkset\_del\_route@{ss7\_combined\_linkset\_del\_route}} \index{ss7\_combined\_linkset\_del\_route@{ss7\_combined\_linkset\_del\_route}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{ss7\_combined\_linkset\_del\_route()} {\footnotesize\ttfamily void ss7\+\_\+combined\+\_\+linkset\+\_\+del\+\_\+route (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+route} $\ast$}]{rt }\end{DoxyParamCaption})} References \textbf{ osmo\+\_\+ss7\+\_\+esls\+\_\+entry\+::alt\+\_\+rt}, \textbf{ osmo\+\_\+ss7\+\_\+route\+::clset}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::esls\+\_\+table}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::last\+\_\+route\+\_\+roundrobin\+\_\+ass}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::last\+\_\+route\+\_\+roundrobin\+\_\+tx}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::list}, \textbf{ osmo\+\_\+ss7\+\_\+route\+::list}, \textbf{ osmo\+\_\+ss7\+\_\+esls\+\_\+entry\+::normal\+\_\+rt}, \textbf{ NULL}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::num\+\_\+routes}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::routes}, \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+free()}, and \textbf{ ss7\+\_\+llist\+\_\+round\+\_\+robin}. Referenced by \textbf{ ss7\+\_\+route\+\_\+destroy()}. \mbox{\label{ss7__combined__linkset_8c_a0b41395057f848b2421552ab0cc9f1e1}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!ss7\_combined\_linkset\_free@{ss7\_combined\_linkset\_free}} \index{ss7\_combined\_linkset\_free@{ss7\_combined\_linkset\_free}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{ss7\_combined\_linkset\_free()} {\footnotesize\ttfamily void ss7\+\_\+combined\+\_\+linkset\+\_\+free (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$}]{clset }\end{DoxyParamCaption})} References \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::list}. Referenced by \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+del\+\_\+route()}. \mbox{\label{ss7__combined__linkset_8c_a2e757f17154c7441a5aff844642d5f86}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!ss7\_combined\_linkset\_insert@{ss7\_combined\_linkset\_insert}} \index{ss7\_combined\_linkset\_insert@{ss7\_combined\_linkset\_insert}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{ss7\_combined\_linkset\_insert()} {\footnotesize\ttfamily static void ss7\+\_\+combined\+\_\+linkset\+\_\+insert (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$}]{clset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} Insert combined\+\_\+link into its routing table. \begin{DoxyParams}[1]{Parameters} \mbox{\texttt{ in}} & {\em clset} & Combined link to be inserted into its routing table \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} 0 on success, negative on error \end{DoxyReturn} A combined link is only really used once it has been inserted into its routing table. insert the route in the ordered list of routes. The list is sorted by mask length, so that the more specific (longer mask) routes are first, while the less specific routes with shorter masks are last. Within the same mask length, the routes are ordered by priority (where lower value means higher prio). Hence, the first matching route in a linear iteration is the most specific match. References \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::cfg}, \textbf{ osmo\+\_\+ss7\+\_\+route\+\_\+table\+::combined\+\_\+linksets}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::list}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::mask}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::priority}, and \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::rtable}. Referenced by \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+alloc()}. \mbox{\label{ss7__combined__linkset_8c_ab781acf4191f42e8e4c3bd3c25cf944e}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!ss7\_combined\_linkset\_is\_available@{ss7\_combined\_linkset\_is\_available}} \index{ss7\_combined\_linkset\_is\_available@{ss7\_combined\_linkset\_is\_available}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{ss7\_combined\_linkset\_is\_available()} {\footnotesize\ttfamily bool ss7\+\_\+combined\+\_\+linkset\+\_\+is\+\_\+available (\begin{DoxyParamCaption}\item[{const struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$}]{clset }\end{DoxyParamCaption})} References \textbf{ osmo\+\_\+ss7\+\_\+route\+::clset}, \textbf{ osmo\+\_\+ss7\+\_\+route\+::list}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::routes}, and \textbf{ ss7\+\_\+route\+\_\+is\+\_\+available()}. Referenced by \textbf{ ss7\+\_\+route\+\_\+table\+\_\+dpc\+\_\+is\+\_\+accessible()}, and \textbf{ vty\+\_\+dump\+\_\+rtable()}. \mbox{\label{ss7__combined__linkset_8c_a047f8f44a19ab1b1f4a2c46869867119}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!ss7\_combined\_linkset\_lookup\_route@{ss7\_combined\_linkset\_lookup\_route}} \index{ss7\_combined\_linkset\_lookup\_route@{ss7\_combined\_linkset\_lookup\_route}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{ss7\_combined\_linkset\_lookup\_route()} {\footnotesize\ttfamily struct \textbf{ osmo\+\_\+ss7\+\_\+route} $\ast$ ss7\+\_\+combined\+\_\+linkset\+\_\+lookup\+\_\+route (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$}]{clset, }\item[{const struct \textbf{ osmo\+\_\+ss7\+\_\+route\+\_\+label} $\ast$}]{rtlabel }\end{DoxyParamCaption})} References \textbf{ osmo\+\_\+ss7\+\_\+esls\+\_\+entry\+::alt\+\_\+rt}, \textbf{ osmo\+\_\+ss7\+\_\+route\+::as}, \textbf{ osmo\+\_\+ss7\+\_\+as\+::cfg}, \textbf{ current\+\_\+rt()}, \textbf{ osmo\+\_\+ss7\+\_\+route\+::dest}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::esls\+\_\+table}, \textbf{ osmo\+\_\+ss7\+\_\+route\+\_\+table\+::inst}, \textbf{ LOGPCLSET}, \textbf{ osmo\+\_\+ss7\+\_\+as\+::name}, \textbf{ osmo\+\_\+ss7\+\_\+esls\+\_\+entry\+::normal\+\_\+rt}, \textbf{ NULL}, \textbf{ osmo\+\_\+ss7\+\_\+instance\+\_\+calc\+\_\+itu\+\_\+ext\+\_\+sls()}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::rtable}, \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+assign\+\_\+route\+\_\+roundrobin()}, \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+select\+\_\+route\+\_\+roundrobin()}, \textbf{ ss7\+\_\+route\+\_\+is\+\_\+available()}, and \textbf{ ss7\+\_\+route\+\_\+label\+\_\+to\+\_\+str()}. Referenced by \textbf{ ss7\+\_\+route\+\_\+table\+\_\+lookup\+\_\+route()}. \mbox{\label{ss7__combined__linkset_8c_aa16f79f4b3dc3d3732c9fbd53225091d}} \index{ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}!ss7\_combined\_linkset\_select\_route\_roundrobin@{ss7\_combined\_linkset\_select\_route\_roundrobin}} \index{ss7\_combined\_linkset\_select\_route\_roundrobin@{ss7\_combined\_linkset\_select\_route\_roundrobin}!ss7\_combined\_linkset.c@{ss7\_combined\_linkset.c}} \doxysubsubsection{ss7\_combined\_linkset\_select\_route\_roundrobin()} {\footnotesize\ttfamily static struct \textbf{ osmo\+\_\+ss7\+\_\+route} $\ast$ ss7\+\_\+combined\+\_\+linkset\+\_\+select\+\_\+route\+\_\+roundrobin (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset} $\ast$}]{clset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} References \textbf{ osmo\+\_\+ss7\+\_\+route\+::clset}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::last\+\_\+route\+\_\+roundrobin\+\_\+tx}, \textbf{ osmo\+\_\+ss7\+\_\+route\+::list}, \textbf{ NULL}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::num\+\_\+routes}, \textbf{ osmo\+\_\+ss7\+\_\+combined\+\_\+linkset\+::routes}, \textbf{ ss7\+\_\+llist\+\_\+round\+\_\+robin}, and \textbf{ ss7\+\_\+route\+\_\+is\+\_\+available()}. Referenced by \textbf{ ss7\+\_\+combined\+\_\+linkset\+\_\+lookup\+\_\+route()}.