\doxysection{src/gsm/gsm48\+\_\+rest\+\_\+octets.c File Reference}
\label{gsm48__rest__octets_8c}\index{src/gsm/gsm48\_rest\_octets.c@{src/gsm/gsm48\_rest\_octets.c}}
{\ttfamily \#include $<$string.\+h$>$}\newline
{\ttfamily \#include $<$stdlib.\+h$>$}\newline
{\ttfamily \#include $<$errno.\+h$>$}\newline
{\ttfamily \#include $<$stdbool.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/bitvec.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/bitvec\+\_\+gsm.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/sysinfo.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/gsm48\+\_\+arfcn\+\_\+range\+\_\+encode.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/gsm48\+\_\+rest\+\_\+octets.\+h$>$}\newline
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ nch\+\_\+pos}
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
int \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si1\+\_\+encode} (uint8\+\_\+t $\ast$\textbf{ data}, uint8\+\_\+t $\ast$\textbf{ nch\+\_\+pos}, int is1800\+\_\+net)
\item 
int \textbf{ osmo\+\_\+gsm48\+\_\+si1ro\+\_\+nch\+\_\+pos\+\_\+decode} (uint8\+\_\+t value, uint8\+\_\+t $\ast$num\+\_\+blocks, uint8\+\_\+t $\ast$first\+\_\+block)
\begin{DoxyCompactList}\small\item\em Decode the 5-\/bit \textquotesingle{}NCH position\textquotesingle{} field within SI1 Rest Octets. \end{DoxyCompactList}\item 
int \textbf{ osmo\+\_\+gsm48\+\_\+si1ro\+\_\+nch\+\_\+pos\+\_\+encode} (uint8\+\_\+t num\+\_\+blocks, uint8\+\_\+t first\+\_\+block)
\begin{DoxyCompactList}\small\item\em Encode the 5-\/bit \textquotesingle{}NCH position\textquotesingle{} field within SI1 Rest Octets. \end{DoxyCompactList}\item 
static bool \textbf{ append\+\_\+eutran\+\_\+neib\+\_\+cell} (struct \textbf{ bitvec} $\ast$bv, const struct \textbf{ osmo\+\_\+earfcn\+\_\+si2q} $\ast$e, size\+\_\+t $\ast$e\+\_\+offset, uint8\+\_\+t budget)
\item 
static void \textbf{ append\+\_\+earfcn} (struct \textbf{ bitvec} $\ast$bv, const struct \textbf{ osmo\+\_\+earfcn\+\_\+si2q} $\ast$e, size\+\_\+t $\ast$e\+\_\+offset, uint8\+\_\+t budget)
\item 
static int \textbf{ range\+\_\+encode} (enum \textbf{ osmo\+\_\+gsm48\+\_\+range} r, int $\ast$arfcns, int arfcns\+\_\+used, int $\ast$w, int f0, uint8\+\_\+t $\ast$chan\+\_\+list)
\item 
static int \textbf{ f0\+\_\+helper} (int $\ast$sc, size\+\_\+t \textbf{ length}, uint8\+\_\+t $\ast$chan\+\_\+list)
\item 
static unsigned \textbf{ range1024\+\_\+p} (unsigned \textbf{ n})
\item 
static int \textbf{ append\+\_\+utran\+\_\+fdd\+\_\+length} (uint16\+\_\+t u, const int $\ast$sc, size\+\_\+t sc\+\_\+len, size\+\_\+t \textbf{ length})
\item 
static int \textbf{ append\+\_\+utran\+\_\+fdd} (struct \textbf{ bitvec} $\ast$bv, uint16\+\_\+t u, int $\ast$sc, size\+\_\+t \textbf{ length})
\item 
static int \textbf{ try\+\_\+adding\+\_\+uarfcn} (struct \textbf{ bitvec} $\ast$bv, uint16\+\_\+t $\ast$scramble\+\_\+list, size\+\_\+t uarfcn\+\_\+length, size\+\_\+t $\ast$u\+\_\+offset, uint16\+\_\+t uarfcn, uint8\+\_\+t num\+\_\+sc, uint8\+\_\+t start\+\_\+pos, uint8\+\_\+t budget)
\item 
static void \textbf{ append\+\_\+uarfcns} (struct \textbf{ bitvec} $\ast$bv, const uint16\+\_\+t $\ast$uarfcn\+\_\+list, size\+\_\+t $\ast$u\+\_\+offset, size\+\_\+t uarfcn\+\_\+length, uint16\+\_\+t $\ast$scramble\+\_\+list, uint8\+\_\+t budget)
\item 
static size\+\_\+t \textbf{ si2q\+\_\+earfcn\+\_\+count} (const struct \textbf{ osmo\+\_\+earfcn\+\_\+si2q} $\ast$e)
\item 
int \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si2quater\+\_\+encode} (uint8\+\_\+t $\ast$\textbf{ data}, uint8\+\_\+t si2q\+\_\+index, uint8\+\_\+t si2q\+\_\+count, const uint16\+\_\+t $\ast$uarfcn\+\_\+list, size\+\_\+t $\ast$u\+\_\+offset, size\+\_\+t uarfcn\+\_\+length, uint16\+\_\+t $\ast$scramble\+\_\+list, struct \textbf{ osmo\+\_\+earfcn\+\_\+si2q} $\ast$si2quater\+\_\+neigh\+\_\+list, size\+\_\+t $\ast$e\+\_\+offset)
\item 
static void \textbf{ append\+\_\+selection\+\_\+params} (struct \textbf{ bitvec} $\ast$bv, const struct \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params} $\ast$sp)
\item 
static void \textbf{ append\+\_\+power\+\_\+offset} (struct \textbf{ bitvec} $\ast$bv, const struct \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+power\+\_\+offset} $\ast$po)
\item 
static void \textbf{ append\+\_\+gprs\+\_\+ind} (struct \textbf{ bitvec} $\ast$bv, const struct \textbf{ osmo\+\_\+gsm48\+\_\+si3\+\_\+gprs\+\_\+ind} $\ast$gi)
\item 
int \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si3\+\_\+encode} (uint8\+\_\+t $\ast$\textbf{ data}, const struct \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info} $\ast$si3)
\item 
static int \textbf{ append\+\_\+lsa\+\_\+params} (struct \textbf{ bitvec} $\ast$bv, const struct \textbf{ osmo\+\_\+gsm48\+\_\+lsa\+\_\+params} $\ast$lsa\+\_\+params)
\item 
int \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si4\+\_\+encode} (uint8\+\_\+t $\ast$\textbf{ data}, const struct \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info} $\ast$si4, int \textbf{ len})
\item 
int \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si6\+\_\+encode} (uint8\+\_\+t $\ast$\textbf{ data}, const struct \textbf{ osmo\+\_\+gsm48\+\_\+si6\+\_\+ro\+\_\+info} $\ast$in)
\item 
static unsigned int \textbf{ decode\+\_\+t3192} (unsigned int t3192)
\item 
static unsigned int \textbf{ decode\+\_\+drx\+\_\+timer} (unsigned int drx)
\item 
static int \textbf{ decode\+\_\+gprs\+\_\+cell\+\_\+opt} (struct \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options} $\ast$gco, struct \textbf{ bitvec} $\ast$bv)
\item 
static void \textbf{ decode\+\_\+gprs\+\_\+pwr\+\_\+ctrl\+\_\+pars} (struct \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars} $\ast$pcp, struct \textbf{ bitvec} $\ast$bv)
\item 
int \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si13\+\_\+decode} (struct \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info} $\ast$si13, const uint8\+\_\+t $\ast$\textbf{ data})
\begin{DoxyCompactList}\small\item\em Decode SI13 Rest Octests (04.\+08 Chapter 10.\+5.\+2.\+37b). \end{DoxyCompactList}\item 
static int \textbf{ append\+\_\+gprs\+\_\+mobile\+\_\+alloc} (struct \textbf{ bitvec} $\ast$bv)
\item 
static int \textbf{ encode\+\_\+t3192} (unsigned int t3192)
\item 
static int \textbf{ encode\+\_\+drx\+\_\+timer} (unsigned int drx)
\item 
static int \textbf{ append\+\_\+gprs\+\_\+cell\+\_\+opt} (struct \textbf{ bitvec} $\ast$bv, const struct \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options} $\ast$gco)
\item 
static void \textbf{ append\+\_\+gprs\+\_\+pwr\+\_\+ctrl\+\_\+pars} (struct \textbf{ bitvec} $\ast$bv, const struct \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars} $\ast$pcp)
\item 
int \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si13\+\_\+encode} (uint8\+\_\+t $\ast$\textbf{ data}, const struct \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info} $\ast$si13)
\item 
void \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si3\+\_\+decode} (struct \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info} $\ast$si3, const uint8\+\_\+t $\ast$\textbf{ data})
\begin{DoxyCompactList}\small\item\em Decode SI3 Rest Octests (Chapter 10.\+5.\+2.\+34 / Table 10.\+4.\+72). \end{DoxyCompactList}\item 
void \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si4\+\_\+decode} (struct \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info} $\ast$si4, const uint8\+\_\+t $\ast$\textbf{ data}, int \textbf{ len})
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
static const struct \textbf{ nch\+\_\+pos} \textbf{ si1ro\+\_\+nch\+\_\+positions} [$\,$]
\end{DoxyCompactItemize}


\doxysubsection{Function Documentation}
\mbox{\label{gsm48__rest__octets_8c_a195ac8d635b241c7194512ba8ba768b5}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!append\_earfcn@{append\_earfcn}}
\index{append\_earfcn@{append\_earfcn}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{append\_earfcn()}
{\footnotesize\ttfamily static void append\+\_\+earfcn (\begin{DoxyParamCaption}\item[{struct \textbf{ bitvec} $\ast$}]{bv,  }\item[{const struct \textbf{ osmo\+\_\+earfcn\+\_\+si2q} $\ast$}]{e,  }\item[{size\+\_\+t $\ast$}]{e\+\_\+offset,  }\item[{uint8\+\_\+t}]{budget }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



References \textbf{ append\+\_\+eutran\+\_\+neib\+\_\+cell()}, \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ bitvec\+::cur\+\_\+bit}, \textbf{ H}, \textbf{ L}, \textbf{ OSMO\+\_\+\+ASSERT}, and \textbf{ SI2\+Q\+\_\+\+MAX\+\_\+\+LEN}.



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si2quater\+\_\+encode()}.

\mbox{\label{gsm48__rest__octets_8c_a2f25023f41c9f021cb2cb22cefb3457f}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!append\_eutran\_neib\_cell@{append\_eutran\_neib\_cell}}
\index{append\_eutran\_neib\_cell@{append\_eutran\_neib\_cell}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{append\_eutran\_neib\_cell()}
{\footnotesize\ttfamily static bool append\+\_\+eutran\+\_\+neib\+\_\+cell (\begin{DoxyParamCaption}\item[{struct \textbf{ bitvec} $\ast$}]{bv,  }\item[{const struct \textbf{ osmo\+\_\+earfcn\+\_\+si2q} $\ast$}]{e,  }\item[{size\+\_\+t $\ast$}]{e\+\_\+offset,  }\item[{uint8\+\_\+t}]{budget }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



References \textbf{ osmo\+\_\+earfcn\+\_\+si2q\+::arfcn}, \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ osmo\+\_\+earfcn\+\_\+si2q\+::length}, \textbf{ osmo\+\_\+earfcn\+\_\+si2q\+::meas\+\_\+bw}, \textbf{ OSMO\+\_\+\+ASSERT}, \textbf{ OSMO\+\_\+\+EARFCN\+\_\+\+INVALID}, \textbf{ OSMO\+\_\+\+EARFCN\+\_\+\+MEAS\+\_\+\+INVALID}, \textbf{ osmo\+\_\+earfcn\+\_\+si2q\+::prio}, \textbf{ osmo\+\_\+earfcn\+\_\+si2q\+::prio\+\_\+valid}, \textbf{ osmo\+\_\+earfcn\+\_\+si2q\+::qrxlm}, \textbf{ osmo\+\_\+earfcn\+\_\+si2q\+::qrxlm\+\_\+valid}, \textbf{ SI2\+Q\+\_\+\+MAX\+\_\+\+LEN}, \textbf{ osmo\+\_\+earfcn\+\_\+si2q\+::thresh\+\_\+hi}, \textbf{ osmo\+\_\+earfcn\+\_\+si2q\+::thresh\+\_\+lo}, and \textbf{ osmo\+\_\+earfcn\+\_\+si2q\+::thresh\+\_\+lo\+\_\+valid}.



Referenced by \textbf{ append\+\_\+earfcn()}.

\mbox{\label{gsm48__rest__octets_8c_af7482666ec8ca4409333c51982177b2b}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!append\_gprs\_cell\_opt@{append\_gprs\_cell\_opt}}
\index{append\_gprs\_cell\_opt@{append\_gprs\_cell\_opt}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{append\_gprs\_cell\_opt()}
{\footnotesize\ttfamily static int append\+\_\+gprs\+\_\+cell\+\_\+opt (\begin{DoxyParamCaption}\item[{struct \textbf{ bitvec} $\ast$}]{bv,  }\item[{const struct \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options} $\ast$}]{gco }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::bep\+\_\+period}, \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::bs\+\_\+cv\+\_\+max}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::bss\+\_\+paging\+\_\+coordination}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::ccn\+\_\+active}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::ctrl\+\_\+ack\+\_\+type\+\_\+use\+\_\+block}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::drx\+\_\+timer\+\_\+max}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::dtm\+\_\+supported}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::egprs\+\_\+supported}, \textbf{ encode\+\_\+drx\+\_\+timer()}, \textbf{ encode\+\_\+t3192()}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::ext\+\_\+info}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::ext\+\_\+info\+\_\+present}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::nmo}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::pfc\+\_\+supported}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::t3168}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::t3192}, and \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::use\+\_\+egprs\+\_\+p\+\_\+ch\+\_\+req}.



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si13\+\_\+encode()}.

\mbox{\label{gsm48__rest__octets_8c_a0f51c12a63d2207605356bb4488ab72a}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!append\_gprs\_ind@{append\_gprs\_ind}}
\index{append\_gprs\_ind@{append\_gprs\_ind}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{append\_gprs\_ind()}
{\footnotesize\ttfamily static void append\+\_\+gprs\+\_\+ind (\begin{DoxyParamCaption}\item[{struct \textbf{ bitvec} $\ast$}]{bv,  }\item[{const struct \textbf{ osmo\+\_\+gsm48\+\_\+si3\+\_\+gprs\+\_\+ind} $\ast$}]{gi }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ H}, \textbf{ L}, \textbf{ osmo\+\_\+gsm48\+\_\+si3\+\_\+gprs\+\_\+ind\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si3\+\_\+gprs\+\_\+ind\+::ra\+\_\+colour}, and \textbf{ osmo\+\_\+gsm48\+\_\+si3\+\_\+gprs\+\_\+ind\+::si13\+\_\+position}.



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si3\+\_\+encode()}, and \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si4\+\_\+encode()}.

\mbox{\label{gsm48__rest__octets_8c_aef2a3d1bc975540c765e287351de9eb7}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!append\_gprs\_mobile\_alloc@{append\_gprs\_mobile\_alloc}}
\index{append\_gprs\_mobile\_alloc@{append\_gprs\_mobile\_alloc}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{append\_gprs\_mobile\_alloc()}
{\footnotesize\ttfamily static int append\+\_\+gprs\+\_\+mobile\+\_\+alloc (\begin{DoxyParamCaption}\item[{struct \textbf{ bitvec} $\ast$}]{bv }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ bitvec\+\_\+set\+\_\+bit()}, and \textbf{ bitvec\+\_\+set\+\_\+uint()}.



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si13\+\_\+encode()}.

\mbox{\label{gsm48__rest__octets_8c_aa4191c92bc4153589d6ca25806584474}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!append\_gprs\_pwr\_ctrl\_pars@{append\_gprs\_pwr\_ctrl\_pars}}
\index{append\_gprs\_pwr\_ctrl\_pars@{append\_gprs\_pwr\_ctrl\_pars}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{append\_gprs\_pwr\_ctrl\_pars()}
{\footnotesize\ttfamily static void append\+\_\+gprs\+\_\+pwr\+\_\+ctrl\+\_\+pars (\begin{DoxyParamCaption}\item[{struct \textbf{ bitvec} $\ast$}]{bv,  }\item[{const struct \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars} $\ast$}]{pcp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars\+::alpha}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars\+::n\+\_\+avg\+\_\+i}, \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars\+::pc\+\_\+meas\+\_\+chan}, \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars\+::t\+\_\+avg\+\_\+t}, and \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars\+::t\+\_\+avg\+\_\+w}.



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si13\+\_\+encode()}.

\mbox{\label{gsm48__rest__octets_8c_abed99143c85ac8b89fa8bada6036de86}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!append\_lsa\_params@{append\_lsa\_params}}
\index{append\_lsa\_params@{append\_lsa\_params}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{append\_lsa\_params()}
{\footnotesize\ttfamily static int append\+\_\+lsa\+\_\+params (\begin{DoxyParamCaption}\item[{struct \textbf{ bitvec} $\ast$}]{bv,  }\item[{const struct \textbf{ osmo\+\_\+gsm48\+\_\+lsa\+\_\+params} $\ast$}]{lsa\+\_\+params }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si4\+\_\+encode()}.

\mbox{\label{gsm48__rest__octets_8c_a6b738842166934cfc60401032653c056}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!append\_power\_offset@{append\_power\_offset}}
\index{append\_power\_offset@{append\_power\_offset}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{append\_power\_offset()}
{\footnotesize\ttfamily static void append\+\_\+power\+\_\+offset (\begin{DoxyParamCaption}\item[{struct \textbf{ bitvec} $\ast$}]{bv,  }\item[{const struct \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+power\+\_\+offset} $\ast$}]{po }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ H}, \textbf{ L}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+power\+\_\+offset\+::power\+\_\+offset}, and \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+power\+\_\+offset\+::present}.



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si3\+\_\+encode()}, and \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si4\+\_\+encode()}.

\mbox{\label{gsm48__rest__octets_8c_ad6e3f3fcf20bd8d19372088d0ebe2a1e}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!append\_selection\_params@{append\_selection\_params}}
\index{append\_selection\_params@{append\_selection\_params}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{append\_selection\_params()}
{\footnotesize\ttfamily static void append\+\_\+selection\+\_\+params (\begin{DoxyParamCaption}\item[{struct \textbf{ bitvec} $\ast$}]{bv,  }\item[{const struct \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params} $\ast$}]{sp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::cbq}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::cell\+\_\+resel\+\_\+off}, \textbf{ H}, \textbf{ L}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::penalty\+\_\+time}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::present}, and \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::temp\+\_\+offs}.



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si3\+\_\+encode()}, and \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si4\+\_\+encode()}.

\mbox{\label{gsm48__rest__octets_8c_ad1ce169d53e73d38b6f65768f59df565}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!append\_uarfcns@{append\_uarfcns}}
\index{append\_uarfcns@{append\_uarfcns}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{append\_uarfcns()}
{\footnotesize\ttfamily static void append\+\_\+uarfcns (\begin{DoxyParamCaption}\item[{struct \textbf{ bitvec} $\ast$}]{bv,  }\item[{const uint16\+\_\+t $\ast$}]{uarfcn\+\_\+list,  }\item[{size\+\_\+t $\ast$}]{u\+\_\+offset,  }\item[{size\+\_\+t}]{uarfcn\+\_\+length,  }\item[{uint16\+\_\+t $\ast$}]{scramble\+\_\+list,  }\item[{uint8\+\_\+t}]{budget }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



References \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ OSMO\+\_\+\+ASSERT}, \textbf{ SI2\+Q\+\_\+\+MAX\+\_\+\+LEN}, and \textbf{ try\+\_\+adding\+\_\+uarfcn()}.



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si2quater\+\_\+encode()}.

\mbox{\label{gsm48__rest__octets_8c_ab9ab5ccc460f02428e49477789871852}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!append\_utran\_fdd@{append\_utran\_fdd}}
\index{append\_utran\_fdd@{append\_utran\_fdd}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{append\_utran\_fdd()}
{\footnotesize\ttfamily static int append\+\_\+utran\+\_\+fdd (\begin{DoxyParamCaption}\item[{struct \textbf{ bitvec} $\ast$}]{bv,  }\item[{uint16\+\_\+t}]{u,  }\item[{int $\ast$}]{sc,  }\item[{size\+\_\+t}]{length }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



References \textbf{ bitvec\+\_\+add\+\_\+range1024()}, \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ bitvec\+::cur\+\_\+bit}, \textbf{ f0\+\_\+helper()}, \textbf{ length}, and \textbf{ range1024\+\_\+p()}.



Referenced by \textbf{ try\+\_\+adding\+\_\+uarfcn()}.

\mbox{\label{gsm48__rest__octets_8c_a6600579350a702d8a67a2837dfef40a9}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!append\_utran\_fdd\_length@{append\_utran\_fdd\_length}}
\index{append\_utran\_fdd\_length@{append\_utran\_fdd\_length}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{append\_utran\_fdd\_length()}
{\footnotesize\ttfamily static int append\+\_\+utran\+\_\+fdd\+\_\+length (\begin{DoxyParamCaption}\item[{uint16\+\_\+t}]{u,  }\item[{const int $\ast$}]{sc,  }\item[{size\+\_\+t}]{sc\+\_\+len,  }\item[{size\+\_\+t}]{length }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



References \textbf{ f0\+\_\+helper()}, \textbf{ length}, and \textbf{ range1024\+\_\+p()}.



Referenced by \textbf{ try\+\_\+adding\+\_\+uarfcn()}.

\mbox{\label{gsm48__rest__octets_8c_aabba367ceebb90871699065e7398532b}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!decode\_drx\_timer@{decode\_drx\_timer}}
\index{decode\_drx\_timer@{decode\_drx\_timer}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{decode\_drx\_timer()}
{\footnotesize\ttfamily static unsigned int decode\+\_\+drx\+\_\+timer (\begin{DoxyParamCaption}\item[{unsigned int}]{drx }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ OSMO\+\_\+\+ASSERT}.



Referenced by \textbf{ decode\+\_\+gprs\+\_\+cell\+\_\+opt()}.

\mbox{\label{gsm48__rest__octets_8c_a6749cdae4a8b313b6aab3375c0b88039}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!decode\_gprs\_cell\_opt@{decode\_gprs\_cell\_opt}}
\index{decode\_gprs\_cell\_opt@{decode\_gprs\_cell\_opt}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{decode\_gprs\_cell\_opt()}
{\footnotesize\ttfamily static int decode\+\_\+gprs\+\_\+cell\+\_\+opt (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options} $\ast$}]{gco,  }\item[{struct \textbf{ bitvec} $\ast$}]{bv }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::bep\+\_\+period}, \textbf{ bitvec\+\_\+get\+\_\+uint()}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::bs\+\_\+cv\+\_\+max}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::bss\+\_\+paging\+\_\+coordination}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::ccn\+\_\+active}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::ctrl\+\_\+ack\+\_\+type\+\_\+use\+\_\+block}, \textbf{ bitvec\+::cur\+\_\+bit}, \textbf{ decode\+\_\+drx\+\_\+timer()}, \textbf{ decode\+\_\+t3192()}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::drx\+\_\+timer\+\_\+max}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::dtm\+\_\+supported}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::egprs\+\_\+supported}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::ext\+\_\+info}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::nmo}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::pfc\+\_\+supported}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::t3168}, \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::t3192}, and \textbf{ osmo\+\_\+gprs\+\_\+cell\+\_\+options\+::use\+\_\+egprs\+\_\+p\+\_\+ch\+\_\+req}.



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si13\+\_\+decode()}.

\mbox{\label{gsm48__rest__octets_8c_a480aaaf43b9c54bec89e52d05998a6f1}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!decode\_gprs\_pwr\_ctrl\_pars@{decode\_gprs\_pwr\_ctrl\_pars}}
\index{decode\_gprs\_pwr\_ctrl\_pars@{decode\_gprs\_pwr\_ctrl\_pars}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{decode\_gprs\_pwr\_ctrl\_pars()}
{\footnotesize\ttfamily static void decode\+\_\+gprs\+\_\+pwr\+\_\+ctrl\+\_\+pars (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars} $\ast$}]{pcp,  }\item[{struct \textbf{ bitvec} $\ast$}]{bv }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars\+::alpha}, \textbf{ bitvec\+\_\+get\+\_\+uint()}, \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars\+::n\+\_\+avg\+\_\+i}, \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars\+::pc\+\_\+meas\+\_\+chan}, \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars\+::t\+\_\+avg\+\_\+t}, and \textbf{ osmo\+\_\+gprs\+\_\+power\+\_\+ctrl\+\_\+pars\+::t\+\_\+avg\+\_\+w}.



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si13\+\_\+decode()}.

\mbox{\label{gsm48__rest__octets_8c_ad76db19cc7f6e4ca008567cfc3da7adb}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!decode\_t3192@{decode\_t3192}}
\index{decode\_t3192@{decode\_t3192}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{decode\_t3192()}
{\footnotesize\ttfamily static unsigned int decode\+\_\+t3192 (\begin{DoxyParamCaption}\item[{unsigned int}]{t3192 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ OSMO\+\_\+\+ASSERT}.



Referenced by \textbf{ decode\+\_\+gprs\+\_\+cell\+\_\+opt()}.

\mbox{\label{gsm48__rest__octets_8c_a5ded1d98d38f1c70be378bf699b5aced}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!encode\_drx\_timer@{encode\_drx\_timer}}
\index{encode\_drx\_timer@{encode\_drx\_timer}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{encode\_drx\_timer()}
{\footnotesize\ttfamily static int encode\+\_\+drx\+\_\+timer (\begin{DoxyParamCaption}\item[{unsigned int}]{drx }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Referenced by \textbf{ append\+\_\+gprs\+\_\+cell\+\_\+opt()}.

\mbox{\label{gsm48__rest__octets_8c_a0ef69303385027aa2ed91f4e3d1cbc96}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!encode\_t3192@{encode\_t3192}}
\index{encode\_t3192@{encode\_t3192}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{encode\_t3192()}
{\footnotesize\ttfamily static int encode\+\_\+t3192 (\begin{DoxyParamCaption}\item[{unsigned int}]{t3192 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Referenced by \textbf{ append\+\_\+gprs\+\_\+cell\+\_\+opt()}.

\mbox{\label{gsm48__rest__octets_8c_a7480f9eab72ec9fbb6df388f609d6cd5}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!f0\_helper@{f0\_helper}}
\index{f0\_helper@{f0\_helper}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{f0\_helper()}
{\footnotesize\ttfamily static int f0\+\_\+helper (\begin{DoxyParamCaption}\item[{int $\ast$}]{sc,  }\item[{size\+\_\+t}]{length,  }\item[{uint8\+\_\+t $\ast$}]{chan\+\_\+list }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



References \textbf{ length}, \textbf{ OSMO\+\_\+\+GSM48\+\_\+\+ARFCN\+\_\+\+RANGE\+\_\+1024}, \textbf{ OSMO\+\_\+\+GSM48\+\_\+\+RANGE\+\_\+\+ENC\+\_\+\+MAX\+\_\+\+ARFCNS}, and \textbf{ range\+\_\+encode()}.



Referenced by \textbf{ append\+\_\+utran\+\_\+fdd()}, and \textbf{ append\+\_\+utran\+\_\+fdd\+\_\+length()}.

\mbox{\label{gsm48__rest__octets_8c_a8c6b0a4487950d4ec573d8dc4a787232}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!osmo\_gsm48\_rest\_octets\_si13\_decode@{osmo\_gsm48\_rest\_octets\_si13\_decode}}
\index{osmo\_gsm48\_rest\_octets\_si13\_decode@{osmo\_gsm48\_rest\_octets\_si13\_decode}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{osmo\_gsm48\_rest\_octets\_si13\_decode()}
{\footnotesize\ttfamily int osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si13\+\_\+decode (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info} $\ast$}]{si13,  }\item[{const uint8\+\_\+t $\ast$}]{data }\end{DoxyParamCaption})}



Decode SI13 Rest Octests (04.\+08 Chapter 10.\+5.\+2.\+37b). 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ out}}  & {\em si13} & decoded SI13 rest octets \\
\hline
\mbox{\texttt{ in}}  & {\em encoded} & SI13 rest octets \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
parsed bits on success, negative on error 
\end{DoxyReturn}


References \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::bcch\+\_\+change\+\_\+mark}, \textbf{ bitvec\+\_\+get\+\_\+bit\+\_\+high()}, \textbf{ bitvec\+\_\+get\+\_\+uint()}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::cell\+\_\+opts}, \textbf{ bitvec\+::cur\+\_\+bit}, \textbf{ bitvec\+::data}, \textbf{ data}, \textbf{ bitvec\+::data\+\_\+len}, \textbf{ decode\+\_\+gprs\+\_\+cell\+\_\+opt()}, \textbf{ decode\+\_\+gprs\+\_\+pwr\+\_\+ctrl\+\_\+pars()}, \textbf{ ENOTSUP}, \textbf{ H}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::net\+\_\+ctrl\+\_\+ord}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::prio\+\_\+acc\+\_\+thr}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::pwr\+\_\+ctrl\+\_\+pars}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::rac}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::si\+\_\+change\+\_\+field}, and \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::spgc\+\_\+ccch\+\_\+sup}.

\mbox{\label{gsm48__rest__octets_8c_a2e63b2384e9d3128d343d71381b41a06}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!osmo\_gsm48\_rest\_octets\_si13\_encode@{osmo\_gsm48\_rest\_octets\_si13\_encode}}
\index{osmo\_gsm48\_rest\_octets\_si13\_encode@{osmo\_gsm48\_rest\_octets\_si13\_encode}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{osmo\_gsm48\_rest\_octets\_si13\_encode()}
{\footnotesize\ttfamily int osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si13\+\_\+encode (\begin{DoxyParamCaption}\item[{uint8\+\_\+t $\ast$}]{data,  }\item[{const struct \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info} $\ast$}]{si13 }\end{DoxyParamCaption})}



References \textbf{ append\+\_\+gprs\+\_\+cell\+\_\+opt()}, \textbf{ append\+\_\+gprs\+\_\+mobile\+\_\+alloc()}, \textbf{ append\+\_\+gprs\+\_\+pwr\+\_\+ctrl\+\_\+pars()}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::bcch\+\_\+change\+\_\+mark}, \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ bitvec\+\_\+spare\+\_\+padding()}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::cell\+\_\+opts}, \textbf{ bitvec\+::data}, \textbf{ data}, \textbf{ bitvec\+::data\+\_\+len}, \textbf{ H}, \textbf{ L}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::net\+\_\+ctrl\+\_\+ord}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::prio\+\_\+acc\+\_\+thr}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::pwr\+\_\+ctrl\+\_\+pars}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::rac}, \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::si\+\_\+change\+\_\+field}, and \textbf{ osmo\+\_\+gsm48\+\_\+si13\+\_\+info\+::spgc\+\_\+ccch\+\_\+sup}.

\mbox{\label{gsm48__rest__octets_8c_a1bee05a7f558bcaae514f96bbb9e07d7}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!osmo\_gsm48\_rest\_octets\_si1\_encode@{osmo\_gsm48\_rest\_octets\_si1\_encode}}
\index{osmo\_gsm48\_rest\_octets\_si1\_encode@{osmo\_gsm48\_rest\_octets\_si1\_encode}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{osmo\_gsm48\_rest\_octets\_si1\_encode()}
{\footnotesize\ttfamily int osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si1\+\_\+encode (\begin{DoxyParamCaption}\item[{uint8\+\_\+t $\ast$}]{data,  }\item[{uint8\+\_\+t $\ast$}]{nch\+\_\+pos,  }\item[{int}]{is1800\+\_\+net }\end{DoxyParamCaption})}



References \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ bitvec\+\_\+spare\+\_\+padding()}, \textbf{ bitvec\+::data}, \textbf{ data}, \textbf{ bitvec\+::data\+\_\+len}, \textbf{ H}, and \textbf{ L}.

\mbox{\label{gsm48__rest__octets_8c_ab83e2b3a2dd7e5873e90856c59737c1f}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!osmo\_gsm48\_rest\_octets\_si2quater\_encode@{osmo\_gsm48\_rest\_octets\_si2quater\_encode}}
\index{osmo\_gsm48\_rest\_octets\_si2quater\_encode@{osmo\_gsm48\_rest\_octets\_si2quater\_encode}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{osmo\_gsm48\_rest\_octets\_si2quater\_encode()}
{\footnotesize\ttfamily int osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si2quater\+\_\+encode (\begin{DoxyParamCaption}\item[{uint8\+\_\+t $\ast$}]{data,  }\item[{uint8\+\_\+t}]{si2q\+\_\+index,  }\item[{uint8\+\_\+t}]{si2q\+\_\+count,  }\item[{const uint16\+\_\+t $\ast$}]{uarfcn\+\_\+list,  }\item[{size\+\_\+t $\ast$}]{u\+\_\+offset,  }\item[{size\+\_\+t}]{uarfcn\+\_\+length,  }\item[{uint16\+\_\+t $\ast$}]{scramble\+\_\+list,  }\item[{struct \textbf{ osmo\+\_\+earfcn\+\_\+si2q} $\ast$}]{si2quater\+\_\+neigh\+\_\+list,  }\item[{size\+\_\+t $\ast$}]{e\+\_\+offset }\end{DoxyParamCaption})}



References \textbf{ append\+\_\+earfcn()}, \textbf{ append\+\_\+uarfcns()}, \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ bitvec\+\_\+spare\+\_\+padding()}, \textbf{ bitvec\+\_\+zero()}, \textbf{ bitvec\+::cur\+\_\+bit}, \textbf{ bitvec\+::data}, \textbf{ data}, \textbf{ bitvec\+::data\+\_\+len}, \textbf{ L}, \textbf{ si2q\+\_\+earfcn\+\_\+count()}, and \textbf{ SI2\+Q\+\_\+\+MAX\+\_\+\+LEN}.

\mbox{\label{gsm48__rest__octets_8c_a9848710656f03c1282cf5c7c90ead26b}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!osmo\_gsm48\_rest\_octets\_si3\_decode@{osmo\_gsm48\_rest\_octets\_si3\_decode}}
\index{osmo\_gsm48\_rest\_octets\_si3\_decode@{osmo\_gsm48\_rest\_octets\_si3\_decode}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{osmo\_gsm48\_rest\_octets\_si3\_decode()}
{\footnotesize\ttfamily void osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si3\+\_\+decode (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info} $\ast$}]{si3,  }\item[{const uint8\+\_\+t $\ast$}]{data }\end{DoxyParamCaption})}



Decode SI3 Rest Octests (Chapter 10.\+5.\+2.\+34 / Table 10.\+4.\+72). 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ out}}  & {\em si3} & decoded SI3 rest octets \\
\hline
\mbox{\texttt{ in}}  & {\em encoded} & SI3 rest octets, 4 octets long \\
\hline
\end{DoxyParams}


References \textbf{ bitvec\+\_\+get\+\_\+bit\+\_\+high()}, \textbf{ bitvec\+\_\+get\+\_\+uint()}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::cbq}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::cell\+\_\+resel\+\_\+off}, \textbf{ bitvec\+::data}, \textbf{ data}, \textbf{ bitvec\+::data\+\_\+len}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::early\+\_\+cm\+\_\+ctrl}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::early\+\_\+cm\+\_\+restrict\+\_\+3g}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::gprs\+\_\+ind}, \textbf{ H}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::penalty\+\_\+time}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+power\+\_\+offset\+::power\+\_\+offset}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::power\+\_\+offset}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+power\+\_\+offset\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si3\+\_\+gprs\+\_\+ind\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si3\+\_\+gprs\+\_\+ind\+::ra\+\_\+colour}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::scheduling}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::selection\+\_\+params}, \textbf{ osmo\+\_\+gsm48\+\_\+si3\+\_\+gprs\+\_\+ind\+::si13\+\_\+position}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::si2quater\+\_\+indicator}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::si2ter\+\_\+indicator}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::temp\+\_\+offs}, and \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::where}.

\mbox{\label{gsm48__rest__octets_8c_aa8c4555688398761a0760776f47a7423}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!osmo\_gsm48\_rest\_octets\_si3\_encode@{osmo\_gsm48\_rest\_octets\_si3\_encode}}
\index{osmo\_gsm48\_rest\_octets\_si3\_encode@{osmo\_gsm48\_rest\_octets\_si3\_encode}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{osmo\_gsm48\_rest\_octets\_si3\_encode()}
{\footnotesize\ttfamily int osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si3\+\_\+encode (\begin{DoxyParamCaption}\item[{uint8\+\_\+t $\ast$}]{data,  }\item[{const struct \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info} $\ast$}]{si3 }\end{DoxyParamCaption})}



References \textbf{ append\+\_\+gprs\+\_\+ind()}, \textbf{ append\+\_\+power\+\_\+offset()}, \textbf{ append\+\_\+selection\+\_\+params()}, \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ bitvec\+\_\+spare\+\_\+padding()}, \textbf{ bitvec\+::data}, \textbf{ data}, \textbf{ bitvec\+::data\+\_\+len}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::early\+\_\+cm\+\_\+ctrl}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::early\+\_\+cm\+\_\+restrict\+\_\+3g}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::gprs\+\_\+ind}, \textbf{ H}, \textbf{ L}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::power\+\_\+offset}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::scheduling}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::selection\+\_\+params}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::si2quater\+\_\+indicator}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::si2ter\+\_\+indicator}, and \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::where}.

\mbox{\label{gsm48__rest__octets_8c_a3da8de952a2a1be8d6c42beaf6870f23}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!osmo\_gsm48\_rest\_octets\_si4\_decode@{osmo\_gsm48\_rest\_octets\_si4\_decode}}
\index{osmo\_gsm48\_rest\_octets\_si4\_decode@{osmo\_gsm48\_rest\_octets\_si4\_decode}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{osmo\_gsm48\_rest\_octets\_si4\_decode()}
{\footnotesize\ttfamily void osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si4\+\_\+decode (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info} $\ast$}]{si4,  }\item[{const uint8\+\_\+t $\ast$}]{data,  }\item[{int}]{len }\end{DoxyParamCaption})}



References \textbf{ bitvec\+\_\+get\+\_\+bit\+\_\+high()}, \textbf{ bitvec\+\_\+get\+\_\+uint()}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::cbq}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::cell\+\_\+resel\+\_\+off}, \textbf{ bitvec\+::data}, \textbf{ data}, \textbf{ bitvec\+::data\+\_\+len}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::gprs\+\_\+ind}, \textbf{ H}, \textbf{ len}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::penalty\+\_\+time}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+power\+\_\+offset\+::power\+\_\+offset}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::power\+\_\+offset}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+power\+\_\+offset\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si3\+\_\+gprs\+\_\+ind\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si3\+\_\+gprs\+\_\+ind\+::ra\+\_\+colour}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::selection\+\_\+params}, \textbf{ osmo\+\_\+gsm48\+\_\+si3\+\_\+gprs\+\_\+ind\+::si13\+\_\+position}, and \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+selection\+\_\+params\+::temp\+\_\+offs}.

\mbox{\label{gsm48__rest__octets_8c_a04400b7fc273590a53887322d2160f1b}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!osmo\_gsm48\_rest\_octets\_si4\_encode@{osmo\_gsm48\_rest\_octets\_si4\_encode}}
\index{osmo\_gsm48\_rest\_octets\_si4\_encode@{osmo\_gsm48\_rest\_octets\_si4\_encode}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{osmo\_gsm48\_rest\_octets\_si4\_encode()}
{\footnotesize\ttfamily int osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si4\+\_\+encode (\begin{DoxyParamCaption}\item[{uint8\+\_\+t $\ast$}]{data,  }\item[{const struct \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info} $\ast$}]{si4,  }\item[{int}]{len }\end{DoxyParamCaption})}



References \textbf{ append\+\_\+gprs\+\_\+ind()}, \textbf{ append\+\_\+lsa\+\_\+params()}, \textbf{ append\+\_\+power\+\_\+offset()}, \textbf{ append\+\_\+selection\+\_\+params()}, \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::break\+\_\+ind}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::cell\+\_\+id}, \textbf{ bitvec\+::data}, \textbf{ data}, \textbf{ bitvec\+::data\+\_\+len}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::gprs\+\_\+ind}, \textbf{ H}, \textbf{ L}, \textbf{ len}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::lsa\+\_\+params}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::power\+\_\+offset}, \textbf{ osmo\+\_\+gsm48\+\_\+lsa\+\_\+params\+::present}, and \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+ro\+\_\+info\+::selection\+\_\+params}.

\mbox{\label{gsm48__rest__octets_8c_a66665f1f3f726a97c855c5a9fe03558c}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!osmo\_gsm48\_rest\_octets\_si6\_encode@{osmo\_gsm48\_rest\_octets\_si6\_encode}}
\index{osmo\_gsm48\_rest\_octets\_si6\_encode@{osmo\_gsm48\_rest\_octets\_si6\_encode}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{osmo\_gsm48\_rest\_octets\_si6\_encode()}
{\footnotesize\ttfamily int osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si6\+\_\+encode (\begin{DoxyParamCaption}\item[{uint8\+\_\+t $\ast$}]{data,  }\item[{const struct \textbf{ osmo\+\_\+gsm48\+\_\+si6\+\_\+ro\+\_\+info} $\ast$}]{in }\end{DoxyParamCaption})}



References \textbf{ osmo\+\_\+gsm48\+\_\+si6\+\_\+ro\+\_\+info\+::band\+\_\+indicator\+\_\+1900}, \textbf{ bitvec\+\_\+set\+\_\+bit()}, \textbf{ bitvec\+\_\+set\+\_\+uint()}, \textbf{ bitvec\+\_\+spare\+\_\+padding()}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+pch\+\_\+nch\+\_\+info\+::call\+\_\+priority}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+pch\+\_\+nch\+\_\+info\+::call\+\_\+priority\+\_\+present}, \textbf{ bitvec\+::data}, \textbf{ data}, \textbf{ bitvec\+::data\+\_\+len}, \textbf{ osmo\+\_\+gsm48\+\_\+si6\+\_\+ro\+\_\+info\+::dtm\+\_\+support}, \textbf{ osmo\+\_\+gsm48\+\_\+si6\+\_\+ro\+\_\+info\+::gprs\+\_\+ms\+\_\+txpwr\+\_\+max\+\_\+ccch}, \textbf{ H}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+vbs\+\_\+vgcs\+\_\+options\+::inband\+\_\+notifications}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+vbs\+\_\+vgcs\+\_\+options\+::inband\+\_\+pagings}, \textbf{ L}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+dtm\+\_\+support\+::max\+\_\+lapdm}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+gprs\+\_\+ms\+\_\+txpwr\+\_\+max\+\_\+ccch\+::max\+\_\+txpwr}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+pch\+\_\+nch\+\_\+info\+::nln\+\_\+sacch}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+pch\+\_\+nch\+\_\+info\+::nln\+\_\+status\+\_\+sacch}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+pch\+\_\+nch\+\_\+info\+::paging\+\_\+channel\+\_\+restructuring}, \textbf{ osmo\+\_\+gsm48\+\_\+si6\+\_\+ro\+\_\+info\+::pch\+\_\+nch\+\_\+info}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+pch\+\_\+nch\+\_\+info\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+vbs\+\_\+vgcs\+\_\+options\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+dtm\+\_\+support\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+gprs\+\_\+ms\+\_\+txpwr\+\_\+max\+\_\+ccch\+::present}, \textbf{ osmo\+\_\+gsm48\+\_\+si\+\_\+dtm\+\_\+support\+::rac}, and \textbf{ osmo\+\_\+gsm48\+\_\+si6\+\_\+ro\+\_\+info\+::vbs\+\_\+vgcs\+\_\+options}.

\mbox{\label{gsm48__rest__octets_8c_a8526ab6627e9644ea457f44bef04bcea}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!osmo\_gsm48\_si1ro\_nch\_pos\_decode@{osmo\_gsm48\_si1ro\_nch\_pos\_decode}}
\index{osmo\_gsm48\_si1ro\_nch\_pos\_decode@{osmo\_gsm48\_si1ro\_nch\_pos\_decode}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{osmo\_gsm48\_si1ro\_nch\_pos\_decode()}
{\footnotesize\ttfamily int osmo\+\_\+gsm48\+\_\+si1ro\+\_\+nch\+\_\+pos\+\_\+decode (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{value,  }\item[{uint8\+\_\+t $\ast$}]{num\+\_\+blocks,  }\item[{uint8\+\_\+t $\ast$}]{first\+\_\+block }\end{DoxyParamCaption})}



Decode the 5-\/bit \textquotesingle{}NCH position\textquotesingle{} field within SI1 Rest Octets. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em value} & 5-\/bit value from SI1 rest octets \\
\hline
\mbox{\texttt{ out}}  & {\em num\+\_\+blocks} & Number of CCCH used for NCH \\
\hline
\mbox{\texttt{ out}}  & {\em first\+\_\+block} & First CCCH block used for NCH \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
0 on success; negative in case of error 
\end{DoxyReturn}


References \textbf{ ARRAY\+\_\+\+SIZE}, \textbf{ nch\+\_\+pos\+::first\+\_\+block}, \textbf{ nch\+\_\+pos\+::num\+\_\+blocks}, and \textbf{ si1ro\+\_\+nch\+\_\+positions}.

\mbox{\label{gsm48__rest__octets_8c_a555e16ace13a45c4bf6813af4ae3cd71}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!osmo\_gsm48\_si1ro\_nch\_pos\_encode@{osmo\_gsm48\_si1ro\_nch\_pos\_encode}}
\index{osmo\_gsm48\_si1ro\_nch\_pos\_encode@{osmo\_gsm48\_si1ro\_nch\_pos\_encode}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{osmo\_gsm48\_si1ro\_nch\_pos\_encode()}
{\footnotesize\ttfamily int osmo\+\_\+gsm48\+\_\+si1ro\+\_\+nch\+\_\+pos\+\_\+encode (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{num\+\_\+blocks,  }\item[{uint8\+\_\+t}]{first\+\_\+block }\end{DoxyParamCaption})}



Encode the 5-\/bit \textquotesingle{}NCH position\textquotesingle{} field within SI1 Rest Octets. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em num\+\_\+blocks} & Number of CCCH used for NCH \\
\hline
\mbox{\texttt{ in}}  & {\em first\+\_\+block} & First CCCH block used for NCH \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
5-\/bit value for SI1 rest octets on success; negative in case of error 
\end{DoxyReturn}


References \textbf{ ARRAY\+\_\+\+SIZE}, \textbf{ nch\+\_\+pos\+::first\+\_\+block}, \textbf{ nch\+\_\+pos\+::num\+\_\+blocks}, and \textbf{ si1ro\+\_\+nch\+\_\+positions}.

\mbox{\label{gsm48__rest__octets_8c_a4bd8066b734420875e26c1cb79d72219}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!range1024\_p@{range1024\_p}}
\index{range1024\_p@{range1024\_p}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{range1024\_p()}
{\footnotesize\ttfamily static unsigned range1024\+\_\+p (\begin{DoxyParamCaption}\item[{unsigned}]{n }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ n}.



Referenced by \textbf{ append\+\_\+utran\+\_\+fdd()}, and \textbf{ append\+\_\+utran\+\_\+fdd\+\_\+length()}.

\mbox{\label{gsm48__rest__octets_8c_a719ffe8f2bef37d0b9019949d04cc109}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!range\_encode@{range\_encode}}
\index{range\_encode@{range\_encode}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{range\_encode()}
{\footnotesize\ttfamily static int range\+\_\+encode (\begin{DoxyParamCaption}\item[{enum \textbf{ osmo\+\_\+gsm48\+\_\+range}}]{r,  }\item[{int $\ast$}]{arfcns,  }\item[{int}]{arfcns\+\_\+used,  }\item[{int $\ast$}]{w,  }\item[{int}]{f0,  }\item[{uint8\+\_\+t $\ast$}]{chan\+\_\+list }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ OSMO\+\_\+\+GSM48\+\_\+\+ARFCN\+\_\+\+RANGE\+\_\+1024}, \textbf{ OSMO\+\_\+\+GSM48\+\_\+\+ARFCN\+\_\+\+RANGE\+\_\+128}, \textbf{ OSMO\+\_\+\+GSM48\+\_\+\+ARFCN\+\_\+\+RANGE\+\_\+256}, \textbf{ OSMO\+\_\+\+GSM48\+\_\+\+ARFCN\+\_\+\+RANGE\+\_\+512}, \textbf{ osmo\+\_\+gsm48\+\_\+range\+\_\+enc\+\_\+1024()}, \textbf{ osmo\+\_\+gsm48\+\_\+range\+\_\+enc\+\_\+128()}, \textbf{ osmo\+\_\+gsm48\+\_\+range\+\_\+enc\+\_\+256()}, \textbf{ osmo\+\_\+gsm48\+\_\+range\+\_\+enc\+\_\+512()}, \textbf{ osmo\+\_\+gsm48\+\_\+range\+\_\+enc\+\_\+arfcns()}, and \textbf{ osmo\+\_\+gsm48\+\_\+range\+\_\+enc\+\_\+filter\+\_\+arfcns()}.



Referenced by \textbf{ f0\+\_\+helper()}.

\mbox{\label{gsm48__rest__octets_8c_ab1ce7173ce54108c70fb8d22bcc839f7}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!si2q\_earfcn\_count@{si2q\_earfcn\_count}}
\index{si2q\_earfcn\_count@{si2q\_earfcn\_count}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{si2q\_earfcn\_count()}
{\footnotesize\ttfamily static size\+\_\+t si2q\+\_\+earfcn\+\_\+count (\begin{DoxyParamCaption}\item[{const struct \textbf{ osmo\+\_\+earfcn\+\_\+si2q} $\ast$}]{e }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



References \textbf{ osmo\+\_\+earfcn\+\_\+si2q\+::arfcn}, \textbf{ osmo\+\_\+earfcn\+\_\+si2q\+::length}, and \textbf{ OSMO\+\_\+\+EARFCN\+\_\+\+INVALID}.



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+rest\+\_\+octets\+\_\+si2quater\+\_\+encode()}.

\mbox{\label{gsm48__rest__octets_8c_a152368b0b11fe3c06aaf65137154f993}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!try\_adding\_uarfcn@{try\_adding\_uarfcn}}
\index{try\_adding\_uarfcn@{try\_adding\_uarfcn}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{try\_adding\_uarfcn()}
{\footnotesize\ttfamily static int try\+\_\+adding\+\_\+uarfcn (\begin{DoxyParamCaption}\item[{struct \textbf{ bitvec} $\ast$}]{bv,  }\item[{uint16\+\_\+t $\ast$}]{scramble\+\_\+list,  }\item[{size\+\_\+t}]{uarfcn\+\_\+length,  }\item[{size\+\_\+t $\ast$}]{u\+\_\+offset,  }\item[{uint16\+\_\+t}]{uarfcn,  }\item[{uint8\+\_\+t}]{num\+\_\+sc,  }\item[{uint8\+\_\+t}]{start\+\_\+pos,  }\item[{uint8\+\_\+t}]{budget }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



References \textbf{ append\+\_\+utran\+\_\+fdd()}, and \textbf{ append\+\_\+utran\+\_\+fdd\+\_\+length()}.



Referenced by \textbf{ append\+\_\+uarfcns()}.



\doxysubsection{Variable Documentation}
\mbox{\label{gsm48__rest__octets_8c_ab733c8b56bab2aee91f1121b5fded630}} 
\index{gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}!si1ro\_nch\_positions@{si1ro\_nch\_positions}}
\index{si1ro\_nch\_positions@{si1ro\_nch\_positions}!gsm48\_rest\_octets.c@{gsm48\_rest\_octets.c}}
\doxysubsubsection{si1ro\_nch\_positions}
{\footnotesize\ttfamily const struct \textbf{ nch\+\_\+pos} si1ro\+\_\+nch\+\_\+positions[$\,$]\hspace{0.3cm}{\ttfamily [static]}}



Referenced by \textbf{ osmo\+\_\+gsm48\+\_\+si1ro\+\_\+nch\+\_\+pos\+\_\+decode()}, and \textbf{ osmo\+\_\+gsm48\+\_\+si1ro\+\_\+nch\+\_\+pos\+\_\+encode()}.

