\doxysection{src/gb/gprs\+\_\+bssgp\+\_\+util.c File Reference}
\label{gprs__bssgp__util_8c}\index{src/gb/gprs\_bssgp\_util.c@{src/gb/gprs\_bssgp\_util.c}}


GPRS BSSGP protocol implementation as per 3GPP TS 08.\+18.  


{\ttfamily \#include $<$errno.\+h$>$}\newline
{\ttfamily \#include $<$stdint.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/msgb.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/byteswap.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/tlv.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/talloc.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gprs/gprs\+\_\+bssgp.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gprs/gprs\+\_\+ns.\+h$>$}\newline
{\ttfamily \#include \char`\"{}gprs\+\_\+bssgp\+\_\+internal.\+h\char`\"{}}\newline
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \textbf{ DL}~\textbf{ BSSGP\+\_\+\+PDUF\+\_\+\+DL}
\item 
\#define \textbf{ UL}~\textbf{ BSSGP\+\_\+\+PDUF\+\_\+\+UL}
\item 
\#define \textbf{ SIG}~\textbf{ BSSGP\+\_\+\+PDUF\+\_\+\+SIG}
\item 
\#define \textbf{ PTP}~\textbf{ BSSGP\+\_\+\+PDUF\+\_\+\+PTP}
\item 
\#define \textbf{ PTM}~\textbf{ BSSGP\+\_\+\+PDUF\+\_\+\+PTM}
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
const char $\ast$ \textbf{ bssgp\+\_\+cause\+\_\+str} (enum \textbf{ gprs\+\_\+bssgp\+\_\+cause} \textbf{ cause})
\item 
const char $\ast$ \textbf{ bssgp\+\_\+pdu\+\_\+str} (enum \textbf{ bssgp\+\_\+pdu\+\_\+type} pdu)
\item 
struct \textbf{ msgb} $\ast$ \textbf{ bssgp\+\_\+msgb\+\_\+alloc} (void)
\item 
struct \textbf{ msgb} $\ast$ \textbf{ bssgp\+\_\+msgb\+\_\+copy} (const struct \textbf{ msgb} $\ast$\textbf{ msg}, const char $\ast$\textbf{ name})
\item 
int \textbf{ bssgp\+\_\+tx\+\_\+simple\+\_\+bvci} (uint8\+\_\+t \textbf{ pdu\+\_\+type}, uint16\+\_\+t \textbf{ nsei}, uint16\+\_\+t \textbf{ bvci}, uint16\+\_\+t ns\+\_\+bvci)
\item 
int \textbf{ bssgp\+\_\+tx\+\_\+status} (uint8\+\_\+t \textbf{ cause}, uint16\+\_\+t $\ast$\textbf{ bvci}, struct \textbf{ msgb} $\ast$orig\+\_\+msg)
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ gprs\+\_\+ns\+\_\+inst} $\ast$ \textbf{ bssgp\+\_\+nsi}
\item 
static const struct \textbf{ value\+\_\+string} \textbf{ bssgp\+\_\+cause\+\_\+strings} [$\,$]
\item 
static const struct \textbf{ value\+\_\+string} \textbf{ bssgp\+\_\+pdu\+\_\+strings} [$\,$]
\item 
static const uint8\+\_\+t \textbf{ dl\+\_\+ud\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PDU\+\_\+\+LIFETIME} \}
\item 
static const uint8\+\_\+t \textbf{ ul\+\_\+ud\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CELL\+\_\+\+ID} \}
\item 
static const uint8\+\_\+t \textbf{ ra\+\_\+cap\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+MS\+\_\+\+RADIO\+\_\+\+ACCESS\+\_\+\+CAP} \}
\item 
static const uint8\+\_\+t \textbf{ dl\+\_\+mb\+\_\+ud\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PDU\+\_\+\+LIFETIME}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TMGI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+LLC\+\_\+\+PDU} \}
\item 
static const uint8\+\_\+t \textbf{ ul\+\_\+mb\+\_\+ud\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PDU\+\_\+\+LIFETIME}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TMGI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+LLC\+\_\+\+PDU} \}
\item 
static const uint8\+\_\+t \textbf{ pag\+\_\+ps\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+QOS\+\_\+\+PROFILE} \}
\item 
static const uint8\+\_\+t \textbf{ pag\+\_\+cs\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+DRX\+\_\+\+PARAMS} \}
\item 
static const uint8\+\_\+t \textbf{ ra\+\_\+cap\+\_\+upd\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TAG} \}
\item 
static const uint8\+\_\+t \textbf{ ra\+\_\+cap\+\_\+upd\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TAG}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RA\+\_\+\+CAP\+\_\+\+UPD\+\_\+\+CAUSE} \}
\item 
static const uint8\+\_\+t \textbf{ rad\+\_\+sts\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RADIO\+\_\+\+CAUSE} \}
\item 
static const uint8\+\_\+t \textbf{ suspend\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+ROUTEING\+\_\+\+AREA} \}
\item 
static const uint8\+\_\+t \textbf{ suspend\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+ROUTEING\+\_\+\+AREA}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+SUSPEND\+\_\+\+REF\+\_\+\+NR} \}
\item 
static const uint8\+\_\+t \textbf{ suspend\+\_\+nack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+ROUTEING\+\_\+\+AREA} \}
\item 
static const uint8\+\_\+t \textbf{ resume\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+ROUTEING\+\_\+\+AREA}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+SUSPEND\+\_\+\+REF\+\_\+\+NR} \}
\item 
static const uint8\+\_\+t \textbf{ resume\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+ROUTEING\+\_\+\+AREA} \}
\item 
static const uint8\+\_\+t \textbf{ resume\+\_\+nack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+ROUTEING\+\_\+\+AREA} \}
\item 
static const uint8\+\_\+t \textbf{ d\+\_\+pag\+\_\+ps\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI} \}
\item 
static const uint8\+\_\+t \textbf{ d\+\_\+pag\+\_\+ps\+\_\+resp\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+T\+\_\+\+UNTIL\+\_\+\+NEXT\+\_\+\+PAGING} \}
\item 
static const uint8\+\_\+t \textbf{ d\+\_\+pag\+\_\+ps\+\_\+rej\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+T\+\_\+\+UNTIL\+\_\+\+NEXT\+\_\+\+PAGING} \}
\item 
static const uint8\+\_\+t \textbf{ ms\+\_\+reg\+\_\+enq\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI} \}
\item 
static const uint8\+\_\+t \textbf{ ms\+\_\+reg\+\_\+enq\+\_\+res\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI} \}
\item 
static const uint8\+\_\+t \textbf{ flush\+\_\+ll\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI} \}
\item 
static const uint8\+\_\+t \textbf{ flush\+\_\+ll\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+FLUSH\+\_\+\+ACTION} \}
\item 
static const uint8\+\_\+t \textbf{ llc\+\_\+disc\+\_\+ies} [$\,$]
\item 
static const uint8\+\_\+t \textbf{ fc\+\_\+bvc\+\_\+ies} [$\,$]
\item 
static const uint8\+\_\+t \textbf{ fc\+\_\+bvc\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TAG} \}
\item 
static const uint8\+\_\+t \textbf{ fc\+\_\+ms\+\_\+ies} [$\,$]
\item 
static const uint8\+\_\+t \textbf{ fc\+\_\+ms\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TAG} \}
\item 
static const uint8\+\_\+t \textbf{ block\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}
\item 
static const uint8\+\_\+t \textbf{ block\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI} \}
\item 
static const uint8\+\_\+t \textbf{ unblock\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI} \}
\item 
static const uint8\+\_\+t \textbf{ unblock\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI} \}
\item 
static const uint8\+\_\+t \textbf{ reset\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}
\item 
static const uint8\+\_\+t \textbf{ reset\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI} \}
\item 
static const uint8\+\_\+t \textbf{ status\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}
\item 
static const uint8\+\_\+t \textbf{ inv\+\_\+trc\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TRACE\+\_\+\+TYPE}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TRACE\+\_\+\+REFERENC} \}
\item 
static const uint8\+\_\+t \textbf{ dl\+\_\+bss\+\_\+pfc\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PACKET\+\_\+\+FLOW\+\_\+\+ID} \}
\item 
static const uint8\+\_\+t \textbf{ crt\+\_\+bss\+\_\+pfc\+\_\+ies} [$\,$]
\item 
static const uint8\+\_\+t \textbf{ crt\+\_\+bss\+\_\+pfc\+\_\+ack\+\_\+ies} [$\,$]
\item 
static const uint8\+\_\+t \textbf{ crt\+\_\+bss\+\_\+pfc\+\_\+nack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PACKET\+\_\+\+FLOW\+\_\+\+ID}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}
\item 
static const uint8\+\_\+t \textbf{ mod\+\_\+bss\+\_\+pfc\+\_\+ies} [$\,$]
\item 
static const uint8\+\_\+t \textbf{ mod\+\_\+bss\+\_\+pfc\+\_\+ack\+\_\+ies} [$\,$]
\item 
static const uint8\+\_\+t \textbf{ del\+\_\+bss\+\_\+pfc\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PACKET\+\_\+\+FLOW\+\_\+\+ID} \}
\item 
static const uint8\+\_\+t \textbf{ del\+\_\+bss\+\_\+pfc\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PACKET\+\_\+\+FLOW\+\_\+\+ID} \}
\item 
static const uint8\+\_\+t \textbf{ fc\+\_\+pfc\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TAG}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PFC\+\_\+\+FLOW\+\_\+\+CTRL\+\_\+\+PARAMS} \}
\item 
static const uint8\+\_\+t \textbf{ fc\+\_\+pfc\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TAG} \}
\item 
static const uint8\+\_\+t \textbf{ del\+\_\+bss\+\_\+pfc\+\_\+req\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PACKET\+\_\+\+FLOW\+\_\+\+ID}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}
\item 
static const uint8\+\_\+t \textbf{ ps\+\_\+ho\+\_\+required\+\_\+ies} [$\,$]
\item 
static const uint8\+\_\+t \textbf{ ps\+\_\+ho\+\_\+required\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+LIST\+\_\+\+OF\+\_\+\+SETUP\+\_\+\+PFC} \}
\item 
static const uint8\+\_\+t \textbf{ ps\+\_\+ho\+\_\+required\+\_\+nack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}
\item 
static const uint8\+\_\+t \textbf{ ps\+\_\+ho\+\_\+request\+\_\+ies} [$\,$]
\item 
static const uint8\+\_\+t \textbf{ ps\+\_\+ho\+\_\+request\+\_\+ack\+\_\+ies} [$\,$]
\item 
static const uint8\+\_\+t \textbf{ ps\+\_\+ho\+\_\+request\+\_\+nack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}
\item 
static const uint8\+\_\+t \textbf{ ps\+\_\+ho\+\_\+compl\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI} \}
\item 
static const uint8\+\_\+t \textbf{ ps\+\_\+ho\+\_\+cancel\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CELL\+\_\+\+ID} \}
\item 
static const uint8\+\_\+t \textbf{ ps\+\_\+ho\+\_\+compl\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI} \}
\item 
static const uint8\+\_\+t \textbf{ overload\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PRIO\+\_\+\+CLASS\+\_\+\+IND} \}
\item 
static const uint8\+\_\+t \textbf{ rinfo\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RIM\+\_\+\+ROUTING\+\_\+\+INFO}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RI\+\_\+\+RIM\+\_\+\+CONTAINER} \}
\item 
static const uint8\+\_\+t \textbf{ rinfo\+\_\+req\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RIM\+\_\+\+ROUTING\+\_\+\+INFO}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RI\+\_\+\+REQ\+\_\+\+RIM\+\_\+\+CONTAINER} \}
\item 
static const uint8\+\_\+t \textbf{ rinfo\+\_\+ack\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RIM\+\_\+\+ROUTING\+\_\+\+INFO}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RI\+\_\+\+ACK\+\_\+\+RIM\+\_\+\+CONTAINER} \}
\item 
static const uint8\+\_\+t \textbf{ rinfo\+\_\+err\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RIM\+\_\+\+ROUTING\+\_\+\+INFO}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RI\+\_\+\+ERROR\+\_\+\+RIM\+\_\+\+COINTAINER} \}
\item 
static const uint8\+\_\+t \textbf{ rinfo\+\_\+aerr\+\_\+ies} [$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RIM\+\_\+\+ROUTING\+\_\+\+INFO}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RI\+\_\+\+APP\+\_\+\+ERROR\+\_\+\+RIM\+\_\+\+CONT} \}
\item 
const struct \textbf{ osmo\+\_\+tlv\+\_\+prot\+\_\+def} \textbf{ osmo\+\_\+pdef\+\_\+bssgp}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
GPRS BSSGP protocol implementation as per 3GPP TS 08.\+18. 



\doxysubsection{Macro Definition Documentation}
\mbox{\label{gprs__bssgp__util_8c_a7c70057f4ac04e167029eef16e7bb770}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!DL@{DL}}
\index{DL@{DL}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{DL}
{\footnotesize\ttfamily \#define DL~\textbf{ BSSGP\+\_\+\+PDUF\+\_\+\+DL}}

\mbox{\label{gprs__bssgp__util_8c_af321d4e67915520ce9b190f347508a4d}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!PTM@{PTM}}
\index{PTM@{PTM}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{PTM}
{\footnotesize\ttfamily \#define PTM~\textbf{ BSSGP\+\_\+\+PDUF\+\_\+\+PTM}}

\mbox{\label{gprs__bssgp__util_8c_a0110a12871e7df55e92e872965d30bf9}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!PTP@{PTP}}
\index{PTP@{PTP}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{PTP}
{\footnotesize\ttfamily \#define PTP~\textbf{ BSSGP\+\_\+\+PDUF\+\_\+\+PTP}}

\mbox{\label{gprs__bssgp__util_8c_ad6f1d374549d22100d676d5fcac0a7e5}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!SIG@{SIG}}
\index{SIG@{SIG}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{SIG}
{\footnotesize\ttfamily \#define SIG~\textbf{ BSSGP\+\_\+\+PDUF\+\_\+\+SIG}}

\mbox{\label{gprs__bssgp__util_8c_a77401f6b813b95031813338afa9221e3}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!UL@{UL}}
\index{UL@{UL}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{UL}
{\footnotesize\ttfamily \#define UL~\textbf{ BSSGP\+\_\+\+PDUF\+\_\+\+UL}}



\doxysubsection{Function Documentation}
\mbox{\label{gprs__bssgp__util_8c_ac135944ac79774324810b7d7fb84c9f0}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!bssgp\_cause\_str@{bssgp\_cause\_str}}
\index{bssgp\_cause\_str@{bssgp\_cause\_str}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{bssgp\_cause\_str()}
{\footnotesize\ttfamily const char $\ast$ bssgp\+\_\+cause\+\_\+str (\begin{DoxyParamCaption}\item[{enum \textbf{ gprs\+\_\+bssgp\+\_\+cause}}]{cause }\end{DoxyParamCaption})}



References \textbf{ bssgp\+\_\+cause\+\_\+strings}, \textbf{ cause}, and \textbf{ get\+\_\+value\+\_\+string()}.



Referenced by \textbf{ bssgp\+\_\+bvc\+\_\+fsm\+\_\+allstate()}, \textbf{ bssgp\+\_\+bvc\+\_\+fsm\+\_\+blocked()}, \textbf{ bssgp\+\_\+bvc\+\_\+fsm\+\_\+unblocked()}, \textbf{ bssgp\+\_\+rx\+\_\+bvc\+\_\+reset()}, \textbf{ bssgp\+\_\+rx\+\_\+status()}, \textbf{ bssgp\+\_\+tx\+\_\+bvc\+\_\+block()}, \textbf{ bssgp\+\_\+tx\+\_\+bvc\+\_\+ptp\+\_\+reset()}, \textbf{ bssgp\+\_\+tx\+\_\+status()}, \textbf{ common\+\_\+tx\+\_\+radio\+\_\+status2()}, and \textbf{ tx\+\_\+bvc\+\_\+reset\+\_\+nsei\+\_\+bvci()}.

\mbox{\label{gprs__bssgp__util_8c_ad6dae2d5136390ed52d994b494377b18}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!bssgp\_msgb\_alloc@{bssgp\_msgb\_alloc}}
\index{bssgp\_msgb\_alloc@{bssgp\_msgb\_alloc}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{bssgp\_msgb\_alloc()}
{\footnotesize\ttfamily struct \textbf{ msgb} $\ast$ bssgp\+\_\+msgb\+\_\+alloc (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



References \textbf{ msg}, \textbf{ msgb\+\_\+alloc\+\_\+headroom()}, \textbf{ msgb\+\_\+bssgph}, and \textbf{ OSMO\+\_\+\+ASSERT}.



Referenced by \textbf{ bssgp2\+\_\+enc\+\_\+bvc\+\_\+block()}, \textbf{ bssgp2\+\_\+enc\+\_\+bvc\+\_\+block\+\_\+ack()}, \textbf{ bssgp2\+\_\+enc\+\_\+bvc\+\_\+reset()}, \textbf{ bssgp2\+\_\+enc\+\_\+bvc\+\_\+reset\+\_\+ack()}, \textbf{ bssgp2\+\_\+enc\+\_\+bvc\+\_\+unblock()}, \textbf{ bssgp2\+\_\+enc\+\_\+bvc\+\_\+unblock\+\_\+ack()}, \textbf{ bssgp2\+\_\+enc\+\_\+fc\+\_\+bvc()}, \textbf{ bssgp2\+\_\+enc\+\_\+fc\+\_\+bvc\+\_\+ack()}, \textbf{ bssgp2\+\_\+enc\+\_\+fc\+\_\+ms()}, \textbf{ bssgp2\+\_\+enc\+\_\+fc\+\_\+ms\+\_\+ack()}, \textbf{ bssgp2\+\_\+enc\+\_\+flush\+\_\+ll()}, \textbf{ bssgp2\+\_\+enc\+\_\+status()}, \textbf{ bssgp\+\_\+encode\+\_\+rim\+\_\+pdu()}, \textbf{ bssgp\+\_\+tx\+\_\+bvc\+\_\+block()}, \textbf{ bssgp\+\_\+tx\+\_\+bvc\+\_\+unblock()}, \textbf{ bssgp\+\_\+tx\+\_\+fc\+\_\+bvc()}, \textbf{ bssgp\+\_\+tx\+\_\+fc\+\_\+bvc\+\_\+ack()}, \textbf{ bssgp\+\_\+tx\+\_\+fc\+\_\+ms()}, \textbf{ bssgp\+\_\+tx\+\_\+flush\+\_\+ll\+\_\+ack()}, \textbf{ bssgp\+\_\+tx\+\_\+llc\+\_\+discarded()}, \textbf{ bssgp\+\_\+tx\+\_\+paging()}, \textbf{ bssgp\+\_\+tx\+\_\+ra\+\_\+capa\+\_\+upd()}, \textbf{ bssgp\+\_\+tx\+\_\+resume()}, \textbf{ bssgp\+\_\+tx\+\_\+resume\+\_\+ack()}, \textbf{ bssgp\+\_\+tx\+\_\+resume\+\_\+nack()}, \textbf{ bssgp\+\_\+tx\+\_\+simple\+\_\+bvci()}, \textbf{ bssgp\+\_\+tx\+\_\+status()}, \textbf{ bssgp\+\_\+tx\+\_\+suspend()}, \textbf{ bssgp\+\_\+tx\+\_\+suspend\+\_\+ack()}, \textbf{ bssgp\+\_\+tx\+\_\+suspend\+\_\+nack()}, \textbf{ common\+\_\+tx\+\_\+radio\+\_\+status()}, and \textbf{ tx\+\_\+bvc\+\_\+reset\+\_\+nsei\+\_\+bvci()}.

\mbox{\label{gprs__bssgp__util_8c_a0da4d8b82755a46c921c4b2aaf28dd7b}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!bssgp\_msgb\_copy@{bssgp\_msgb\_copy}}
\index{bssgp\_msgb\_copy@{bssgp\_msgb\_copy}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{bssgp\_msgb\_copy()}
{\footnotesize\ttfamily struct \textbf{ msgb} $\ast$ bssgp\+\_\+msgb\+\_\+copy (\begin{DoxyParamCaption}\item[{const struct \textbf{ msgb} $\ast$}]{msg,  }\item[{const char $\ast$}]{name }\end{DoxyParamCaption})}



References \textbf{ msgb\+::\+\_\+data}, \textbf{ libgb\+\_\+msgb\+\_\+cb\+::bssgp\+\_\+cell\+\_\+id}, \textbf{ libgb\+\_\+msgb\+\_\+cb\+::bssgph}, \textbf{ libgb\+\_\+msgb\+\_\+cb\+::bvci}, \textbf{ LIBGB\+\_\+\+MSGB\+\_\+\+CB}, \textbf{ libgb\+\_\+msgb\+\_\+cb\+::llch}, \textbf{ msg}, \textbf{ msgb\+\_\+copy()}, \textbf{ name}, \textbf{ libgb\+\_\+msgb\+\_\+cb\+::nsei}, and \textbf{ libgb\+\_\+msgb\+\_\+cb\+::tlli}.

\mbox{\label{gprs__bssgp__util_8c_ab532d740ac429042753607ed8874e274}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!bssgp\_pdu\_str@{bssgp\_pdu\_str}}
\index{bssgp\_pdu\_str@{bssgp\_pdu\_str}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{bssgp\_pdu\_str()}
{\footnotesize\ttfamily const char $\ast$ bssgp\+\_\+pdu\+\_\+str (\begin{DoxyParamCaption}\item[{enum \textbf{ bssgp\+\_\+pdu\+\_\+type}}]{pdu }\end{DoxyParamCaption})}



References \textbf{ bssgp\+\_\+pdu\+\_\+strings}, and \textbf{ get\+\_\+value\+\_\+string()}.



Referenced by \textbf{ bssgp\+\_\+rcvmsg()}, \textbf{ bssgp\+\_\+rx\+\_\+ptp()}, \textbf{ bssgp\+\_\+rx\+\_\+rim()}, \textbf{ bssgp\+\_\+rx\+\_\+sign()}, \textbf{ bssgp\+\_\+tx\+\_\+rim()}, and \textbf{ bssgp\+\_\+tx\+\_\+rim\+\_\+encoded()}.

\mbox{\label{gprs__bssgp__util_8c_a3e64c5a2dba7519668b780f45fc74f07}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!bssgp\_tx\_simple\_bvci@{bssgp\_tx\_simple\_bvci}}
\index{bssgp\_tx\_simple\_bvci@{bssgp\_tx\_simple\_bvci}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{bssgp\_tx\_simple\_bvci()}
{\footnotesize\ttfamily int bssgp\+\_\+tx\+\_\+simple\+\_\+bvci (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{pdu\+\_\+type,  }\item[{uint16\+\_\+t}]{nsei,  }\item[{uint16\+\_\+t}]{bvci,  }\item[{uint16\+\_\+t}]{ns\+\_\+bvci }\end{DoxyParamCaption})}



References \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI}, \textbf{ bssgp\+\_\+msgb\+\_\+alloc()}, \textbf{ bssgp\+\_\+ns\+\_\+send}, \textbf{ bssgp\+\_\+ns\+\_\+send\+\_\+data}, \textbf{ bvci}, \textbf{ msg}, \textbf{ msgb\+\_\+bvci}, \textbf{ msgb\+\_\+nsei}, \textbf{ msgb\+\_\+put()}, \textbf{ msgb\+\_\+tvlv\+\_\+put()}, \textbf{ nsei}, \textbf{ osmo\+\_\+htons}, \textbf{ pdu\+\_\+type}, and \textbf{ bssgp\+\_\+normal\+\_\+hdr\+::pdu\+\_\+type}.



Referenced by \textbf{ bssgp\+\_\+bvc\+\_\+fsm\+\_\+unblocked()}, \textbf{ bssgp\+\_\+rx\+\_\+bvc\+\_\+block()}, \textbf{ bssgp\+\_\+rx\+\_\+bvc\+\_\+reset()}, and \textbf{ bssgp\+\_\+rx\+\_\+bvc\+\_\+unblock()}.

\mbox{\label{gprs__bssgp__util_8c_aefa4aef5a1f62b373c087781bbe73e3a}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!bssgp\_tx\_status@{bssgp\_tx\_status}}
\index{bssgp\_tx\_status@{bssgp\_tx\_status}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{bssgp\_tx\_status()}
{\footnotesize\ttfamily int bssgp\+\_\+tx\+\_\+status (\begin{DoxyParamCaption}\item[{uint8\+\_\+t}]{cause,  }\item[{uint16\+\_\+t $\ast$}]{bvci,  }\item[{struct \textbf{ msgb} $\ast$}]{orig\+\_\+msg }\end{DoxyParamCaption})}



References \textbf{ BSSGP\+\_\+\+CAUSE\+\_\+\+BVCI\+\_\+\+BLOCKED}, \textbf{ bssgp\+\_\+cause\+\_\+str()}, \textbf{ BSSGP\+\_\+\+CAUSE\+\_\+\+UNKNOWN\+\_\+\+BVCI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PDU\+\_\+\+IN\+\_\+\+ERROR}, \textbf{ bssgp\+\_\+msgb\+\_\+alloc()}, \textbf{ bssgp\+\_\+ns\+\_\+send}, \textbf{ bssgp\+\_\+ns\+\_\+send\+\_\+data}, \textbf{ BSSGP\+\_\+\+PDUT\+\_\+\+STATUS}, \textbf{ bvci}, \textbf{ cause}, \textbf{ DLBSSGP}, \textbf{ LOGL\+\_\+\+ERROR}, \textbf{ LOGL\+\_\+\+NOTICE}, \textbf{ LOGP}, \textbf{ msg}, \textbf{ msgb\+\_\+bssgp\+\_\+len}, \textbf{ msgb\+\_\+bssgph}, \textbf{ msgb\+\_\+bvci}, \textbf{ msgb\+\_\+nsei}, \textbf{ msgb\+\_\+put()}, \textbf{ msgb\+\_\+tvlv\+\_\+put()}, \textbf{ osmo\+\_\+htons}, and \textbf{ bssgp\+\_\+normal\+\_\+hdr\+::pdu\+\_\+type}.



Referenced by \textbf{ bssgp\+\_\+rcvmsg()}, \textbf{ bssgp\+\_\+rx\+\_\+bvc\+\_\+block()}, \textbf{ bssgp\+\_\+rx\+\_\+bvc\+\_\+unblock()}, \textbf{ bssgp\+\_\+rx\+\_\+fc\+\_\+bvc()}, \textbf{ bssgp\+\_\+rx\+\_\+llc\+\_\+disc()}, \textbf{ bssgp\+\_\+rx\+\_\+ptp()}, \textbf{ bssgp\+\_\+rx\+\_\+resume()}, \textbf{ bssgp\+\_\+rx\+\_\+rim()}, \textbf{ bssgp\+\_\+rx\+\_\+sign()}, \textbf{ bssgp\+\_\+rx\+\_\+suspend()}, and \textbf{ bssgp\+\_\+rx\+\_\+ul\+\_\+ud()}.



\doxysubsection{Variable Documentation}
\mbox{\label{gprs__bssgp__util_8c_a223317cc33641ca983884e5f56797fc6}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!block\_ack\_ies@{block\_ack\_ies}}
\index{block\_ack\_ies@{block\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{block\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t block\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_aded4dbfa39ae4b4ed5720689aec8b83e}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!block\_ies@{block\_ies}}
\index{block\_ies@{block\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{block\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t block\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a4639a8503fad3a2ba501d05fdef8567b}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!bssgp\_cause\_strings@{bssgp\_cause\_strings}}
\index{bssgp\_cause\_strings@{bssgp\_cause\_strings}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{bssgp\_cause\_strings}
{\footnotesize\ttfamily const struct \textbf{ value\+\_\+string} bssgp\+\_\+cause\+\_\+strings[$\,$]\hspace{0.3cm}{\ttfamily [static]}}



Referenced by \textbf{ bssgp\+\_\+cause\+\_\+str()}.

\mbox{\label{gprs__bssgp__util_8c_a7abd4b99378cd62a1fe7ae8edeaba1f9}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!bssgp\_nsi@{bssgp\_nsi}}
\index{bssgp\_nsi@{bssgp\_nsi}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{bssgp\_nsi}
{\footnotesize\ttfamily struct \textbf{ gprs\+\_\+ns\+\_\+inst}$\ast$ bssgp\+\_\+nsi}



Referenced by \textbf{ \+\_\+gprs\+\_\+ns\+\_\+sendmsg()}.

\mbox{\label{gprs__bssgp__util_8c_a3ad74bfbf8812ddda2d4635dc6a51eb1}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!bssgp\_pdu\_strings@{bssgp\_pdu\_strings}}
\index{bssgp\_pdu\_strings@{bssgp\_pdu\_strings}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{bssgp\_pdu\_strings}
{\footnotesize\ttfamily const struct \textbf{ value\+\_\+string} bssgp\+\_\+pdu\+\_\+strings[$\,$]\hspace{0.3cm}{\ttfamily [static]}}



Referenced by \textbf{ bssgp\+\_\+pdu\+\_\+str()}.

\mbox{\label{gprs__bssgp__util_8c_a1207aef43ffd267000d007a77d739ed5}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!crt\_bss\_pfc\_ack\_ies@{crt\_bss\_pfc\_ack\_ies}}
\index{crt\_bss\_pfc\_ack\_ies@{crt\_bss\_pfc\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{crt\_bss\_pfc\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t crt\+\_\+bss\+\_\+pfc\+\_\+ack\+\_\+ies[$\,$]\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{ BSSGP\_IE\_TLLI, BSSGP\_IE\_PACKET\_FLOW\_ID,}
\DoxyCodeLine{                                                BSSGP\_IE\_AGG\_BSS\_QOS\_PROFILE \}}

\end{DoxyCode}
\mbox{\label{gprs__bssgp__util_8c_a4a3a1ff0008bb7a472346a6e9a6ea0b1}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!crt\_bss\_pfc\_ies@{crt\_bss\_pfc\_ies}}
\index{crt\_bss\_pfc\_ies@{crt\_bss\_pfc\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{crt\_bss\_pfc\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t crt\+\_\+bss\+\_\+pfc\+\_\+ies[$\,$]\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{ BSSGP\_IE\_TLLI, BSSGP\_IE\_PACKET\_FLOW\_ID,}
\DoxyCodeLine{                                           BSSGP\_IE\_PACKET\_FLOW\_TIMER, BSSGP\_IE\_AGG\_BSS\_QOS\_PROFILE \}}

\end{DoxyCode}
\mbox{\label{gprs__bssgp__util_8c_a8b6913ef0869aae5de28a890665e5528}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!crt\_bss\_pfc\_nack\_ies@{crt\_bss\_pfc\_nack\_ies}}
\index{crt\_bss\_pfc\_nack\_ies@{crt\_bss\_pfc\_nack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{crt\_bss\_pfc\_nack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t crt\+\_\+bss\+\_\+pfc\+\_\+nack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PACKET\+\_\+\+FLOW\+\_\+\+ID}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_ac443ca68f02fdecafe33ee1c9b689f42}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!d\_pag\_ps\_ies@{d\_pag\_ps\_ies}}
\index{d\_pag\_ps\_ies@{d\_pag\_ps\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{d\_pag\_ps\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t d\+\_\+pag\+\_\+ps\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a628c1260019041b7ae51a0b2d26c0e16}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!d\_pag\_ps\_rej\_ies@{d\_pag\_ps\_rej\_ies}}
\index{d\_pag\_ps\_rej\_ies@{d\_pag\_ps\_rej\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{d\_pag\_ps\_rej\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t d\+\_\+pag\+\_\+ps\+\_\+rej\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+T\+\_\+\+UNTIL\+\_\+\+NEXT\+\_\+\+PAGING} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_aa38eca020383962de4ace01bec6af59d}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!d\_pag\_ps\_resp\_ies@{d\_pag\_ps\_resp\_ies}}
\index{d\_pag\_ps\_resp\_ies@{d\_pag\_ps\_resp\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{d\_pag\_ps\_resp\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t d\+\_\+pag\+\_\+ps\+\_\+resp\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+T\+\_\+\+UNTIL\+\_\+\+NEXT\+\_\+\+PAGING} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_af271556d53e7abc901ca996ec4d33f67}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!del\_bss\_pfc\_ack\_ies@{del\_bss\_pfc\_ack\_ies}}
\index{del\_bss\_pfc\_ack\_ies@{del\_bss\_pfc\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{del\_bss\_pfc\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t del\+\_\+bss\+\_\+pfc\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PACKET\+\_\+\+FLOW\+\_\+\+ID} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a517bbc0fd8a716ac002a8cd5ccf6157a}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!del\_bss\_pfc\_ies@{del\_bss\_pfc\_ies}}
\index{del\_bss\_pfc\_ies@{del\_bss\_pfc\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{del\_bss\_pfc\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t del\+\_\+bss\+\_\+pfc\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PACKET\+\_\+\+FLOW\+\_\+\+ID} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a83e75ed30f03187315a2b66520a9aa50}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!del\_bss\_pfc\_req\_ies@{del\_bss\_pfc\_req\_ies}}
\index{del\_bss\_pfc\_req\_ies@{del\_bss\_pfc\_req\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{del\_bss\_pfc\_req\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t del\+\_\+bss\+\_\+pfc\+\_\+req\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PACKET\+\_\+\+FLOW\+\_\+\+ID}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a4a889083cf1f02620bf938e822ccd64f}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!dl\_bss\_pfc\_ies@{dl\_bss\_pfc\_ies}}
\index{dl\_bss\_pfc\_ies@{dl\_bss\_pfc\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{dl\_bss\_pfc\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t dl\+\_\+bss\+\_\+pfc\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PACKET\+\_\+\+FLOW\+\_\+\+ID} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_aa83e19f9b9968971b48867873e3b8658}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!dl\_mb\_ud\_ies@{dl\_mb\_ud\_ies}}
\index{dl\_mb\_ud\_ies@{dl\_mb\_ud\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{dl\_mb\_ud\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t dl\+\_\+mb\+\_\+ud\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PDU\+\_\+\+LIFETIME}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TMGI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+LLC\+\_\+\+PDU} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a99c864d07c5a421d6b4038d0fa9ec671}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!dl\_ud\_ies@{dl\_ud\_ies}}
\index{dl\_ud\_ies@{dl\_ud\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{dl\_ud\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t dl\+\_\+ud\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PDU\+\_\+\+LIFETIME} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a6f71fbd081fd596b31a276d4ef383f31}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!fc\_bvc\_ack\_ies@{fc\_bvc\_ack\_ies}}
\index{fc\_bvc\_ack\_ies@{fc\_bvc\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{fc\_bvc\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t fc\+\_\+bvc\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TAG} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_ae8c6e1aa96bbcf04e5245b2b0b853fa4}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!fc\_bvc\_ies@{fc\_bvc\_ies}}
\index{fc\_bvc\_ies@{fc\_bvc\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{fc\_bvc\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t fc\+\_\+bvc\+\_\+ies[$\,$]\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{ BSSGP\_IE\_TAG, BSSGP\_IE\_BVC\_BUCKET\_SIZE, BSSGP\_IE\_BUCKET\_LEAK\_RATE,}
\DoxyCodeLine{                                      BSSGP\_IE\_BMAX\_DEFAULT\_MS, BSSGP\_IE\_R\_DEFAULT\_MS \}}

\end{DoxyCode}
\mbox{\label{gprs__bssgp__util_8c_aba84d37e882a99091189496041fdded2}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!fc\_ms\_ack\_ies@{fc\_ms\_ack\_ies}}
\index{fc\_ms\_ack\_ies@{fc\_ms\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{fc\_ms\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t fc\+\_\+ms\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TAG} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_ae84421244ce00ea34ea52e9e9a7d5db8}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!fc\_ms\_ies@{fc\_ms\_ies}}
\index{fc\_ms\_ies@{fc\_ms\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{fc\_ms\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t fc\+\_\+ms\+\_\+ies[$\,$]\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{ BSSGP\_IE\_TLLI, BSSGP\_IE\_TAG, BSSGP\_IE\_MS\_BUCKET\_SIZE,}
\DoxyCodeLine{                                     BSSGP\_IE\_BUCKET\_LEAK\_RATE \}}

\end{DoxyCode}
\mbox{\label{gprs__bssgp__util_8c_a1153c5dc6a2ea4867bf4beee7a24ddbb}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!fc\_pfc\_ack\_ies@{fc\_pfc\_ack\_ies}}
\index{fc\_pfc\_ack\_ies@{fc\_pfc\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{fc\_pfc\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t fc\+\_\+pfc\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TAG} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a8f65614c398536c7785a4d4a08e28403}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!fc\_pfc\_ies@{fc\_pfc\_ies}}
\index{fc\_pfc\_ies@{fc\_pfc\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{fc\_pfc\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t fc\+\_\+pfc\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TAG}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PFC\+\_\+\+FLOW\+\_\+\+CTRL\+\_\+\+PARAMS} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a605a35f17b73bc395ad47511b2e91a5d}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!flush\_ll\_ack\_ies@{flush\_ll\_ack\_ies}}
\index{flush\_ll\_ack\_ies@{flush\_ll\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{flush\_ll\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t flush\+\_\+ll\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+FLUSH\+\_\+\+ACTION} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a3a2abbfb5c57e79b0a250fa1130f4c80}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!flush\_ll\_ies@{flush\_ll\_ies}}
\index{flush\_ll\_ies@{flush\_ll\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{flush\_ll\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t flush\+\_\+ll\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a42f7bae2a3922a11807b737545096441}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!inv\_trc\_ies@{inv\_trc\_ies}}
\index{inv\_trc\_ies@{inv\_trc\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{inv\_trc\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t inv\+\_\+trc\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TRACE\+\_\+\+TYPE}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TRACE\+\_\+\+REFERENC} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a04f7c827756336d44178913112001eb2}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!llc\_disc\_ies@{llc\_disc\_ies}}
\index{llc\_disc\_ies@{llc\_disc\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{llc\_disc\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t llc\+\_\+disc\+\_\+ies[$\,$]\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{ BSSGP\_IE\_TLLI, BSSGP\_IE\_LLC\_FRAMES\_DISCARDED, BSSGP\_IE\_BVCI,}
\DoxyCodeLine{                                        BSSGP\_IE\_NUM\_OCT\_AFF \}}

\end{DoxyCode}
\mbox{\label{gprs__bssgp__util_8c_a4cf1dee31ef549d06f5fe0167745c71f}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!mod\_bss\_pfc\_ack\_ies@{mod\_bss\_pfc\_ack\_ies}}
\index{mod\_bss\_pfc\_ack\_ies@{mod\_bss\_pfc\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{mod\_bss\_pfc\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t mod\+\_\+bss\+\_\+pfc\+\_\+ack\+\_\+ies[$\,$]\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{ BSSGP\_IE\_TLLI, BSSGP\_IE\_PACKET\_FLOW\_ID,}
\DoxyCodeLine{                                               BSSGP\_IE\_PACKET\_FLOW\_TIMER, BSSGP\_IE\_AGG\_BSS\_QOS\_PROFILE \}}

\end{DoxyCode}
\mbox{\label{gprs__bssgp__util_8c_a4e2bd1170ba8cc64b3894a39b715e6a0}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!mod\_bss\_pfc\_ies@{mod\_bss\_pfc\_ies}}
\index{mod\_bss\_pfc\_ies@{mod\_bss\_pfc\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{mod\_bss\_pfc\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t mod\+\_\+bss\+\_\+pfc\+\_\+ies[$\,$]\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{ BSSGP\_IE\_TLLI, BSSGP\_IE\_PACKET\_FLOW\_ID,}
\DoxyCodeLine{                                           BSSGP\_IE\_AGG\_BSS\_QOS\_PROFILE \}}

\end{DoxyCode}
\mbox{\label{gprs__bssgp__util_8c_ad6ba688ef24123ca00b20919638ce262}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ms\_reg\_enq\_ies@{ms\_reg\_enq\_ies}}
\index{ms\_reg\_enq\_ies@{ms\_reg\_enq\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ms\_reg\_enq\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ms\+\_\+reg\+\_\+enq\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a86bb9f29aa6cb2f11fdc1130db939816}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ms\_reg\_enq\_res\_ies@{ms\_reg\_enq\_res\_ies}}
\index{ms\_reg\_enq\_res\_ies@{ms\_reg\_enq\_res\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ms\_reg\_enq\_res\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ms\+\_\+reg\+\_\+enq\+\_\+res\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a69e4a98967a7fbd317b9fb32d17db7f7}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!osmo\_pdef\_bssgp@{osmo\_pdef\_bssgp}}
\index{osmo\_pdef\_bssgp@{osmo\_pdef\_bssgp}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{osmo\_pdef\_bssgp}
{\footnotesize\ttfamily const struct \textbf{ osmo\+\_\+tlv\+\_\+prot\+\_\+def} osmo\+\_\+pdef\+\_\+bssgp}



Referenced by \textbf{ bssgp\+\_\+parse\+\_\+rim\+\_\+pdu()}, \textbf{ bssgp\+\_\+pdu\+\_\+type\+\_\+flags()}, \textbf{ fi\+\_\+tx\+\_\+ptp()}, and \textbf{ fi\+\_\+tx\+\_\+sig()}.

\mbox{\label{gprs__bssgp__util_8c_aab7aa89d564812223c4172310579b391}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!overload\_ies@{overload\_ies}}
\index{overload\_ies@{overload\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{overload\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t overload\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PRIO\+\_\+\+CLASS\+\_\+\+IND} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_ac630bf84f8530870da3f72d670a61dbe}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!pag\_cs\_ies@{pag\_cs\_ies}}
\index{pag\_cs\_ies@{pag\_cs\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{pag\_cs\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t pag\+\_\+cs\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+DRX\+\_\+\+PARAMS} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_ab67152a83f7b01d46fa50fdeabebe10f}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!pag\_ps\_ies@{pag\_ps\_ies}}
\index{pag\_ps\_ies@{pag\_ps\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{pag\_ps\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t pag\+\_\+ps\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+QOS\+\_\+\+PROFILE} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_aea7544db3e1d317e249276006103330d}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ps\_ho\_cancel\_ies@{ps\_ho\_cancel\_ies}}
\index{ps\_ho\_cancel\_ies@{ps\_ho\_cancel\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ps\_ho\_cancel\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ps\+\_\+ho\+\_\+cancel\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CELL\+\_\+\+ID} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a927487f12126533265ef4d78b52edc90}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ps\_ho\_compl\_ack\_ies@{ps\_ho\_compl\_ack\_ies}}
\index{ps\_ho\_compl\_ack\_ies@{ps\_ho\_compl\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ps\_ho\_compl\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ps\+\_\+ho\+\_\+compl\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a237d718205f82bdf91f4171c8a8a8a2e}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ps\_ho\_compl\_ies@{ps\_ho\_compl\_ies}}
\index{ps\_ho\_compl\_ies@{ps\_ho\_compl\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ps\_ho\_compl\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ps\+\_\+ho\+\_\+compl\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+IMSI} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a5dc59a2e1e2f7dee8f6dd7566f38548e}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ps\_ho\_request\_ack\_ies@{ps\_ho\_request\_ack\_ies}}
\index{ps\_ho\_request\_ack\_ies@{ps\_ho\_request\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ps\_ho\_request\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ps\+\_\+ho\+\_\+request\+\_\+ack\+\_\+ies[$\,$]\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{ BSSGP\_IE\_TLLI, BSSGP\_IE\_LIST\_OF\_SETUP\_PFC,}
\DoxyCodeLine{                                                 BSSGP\_IE\_TBSS\_TO\_SBSS\_TR\_CONT \}}

\end{DoxyCode}
\mbox{\label{gprs__bssgp__util_8c_a32267b8f20c88f2dd4406d0df4eb97c6}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ps\_ho\_request\_ies@{ps\_ho\_request\_ies}}
\index{ps\_ho\_request\_ies@{ps\_ho\_request\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ps\_ho\_request\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ps\+\_\+ho\+\_\+request\+\_\+ies[$\,$]\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{ BSSGP\_IE\_TLLI, BSSGP\_IE\_IMSI, BSSGP\_IE\_CAUSE,}
\DoxyCodeLine{                                             BSSGP\_IE\_CELL\_ID, BSSGP\_IE\_SBSS\_TO\_TBSS\_TR\_CONT,}
\DoxyCodeLine{                                             BSSGP\_IE\_PFC\_TO\_BE\_SETUP\_LIST \}}

\end{DoxyCode}
\mbox{\label{gprs__bssgp__util_8c_a43725d58e25a1e069a4bcc0572e1bba5}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ps\_ho\_request\_nack\_ies@{ps\_ho\_request\_nack\_ies}}
\index{ps\_ho\_request\_nack\_ies@{ps\_ho\_request\_nack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ps\_ho\_request\_nack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ps\+\_\+ho\+\_\+request\+\_\+nack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a3205d9e0a66d2c62ee567179218c050c}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ps\_ho\_required\_ack\_ies@{ps\_ho\_required\_ack\_ies}}
\index{ps\_ho\_required\_ack\_ies@{ps\_ho\_required\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ps\_ho\_required\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ps\+\_\+ho\+\_\+required\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+LIST\+\_\+\+OF\+\_\+\+SETUP\+\_\+\+PFC} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_ada763dedcc9c1647569a9999a2336dc8}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ps\_ho\_required\_ies@{ps\_ho\_required\_ies}}
\index{ps\_ho\_required\_ies@{ps\_ho\_required\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ps\_ho\_required\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ps\+\_\+ho\+\_\+required\+\_\+ies[$\,$]\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{ BSSGP\_IE\_TLLI, BSSGP\_IE\_CAUSE, BSSGP\_IE\_CELL\_ID,}
\DoxyCodeLine{                                              BSSGP\_IE\_ACTIVE\_PFC\_LIST \}}

\end{DoxyCode}
\mbox{\label{gprs__bssgp__util_8c_a86d5206accfe2ac387c603d521c97a91}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ps\_ho\_required\_nack\_ies@{ps\_ho\_required\_nack\_ies}}
\index{ps\_ho\_required\_nack\_ies@{ps\_ho\_required\_nack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ps\_ho\_required\_nack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ps\+\_\+ho\+\_\+required\+\_\+nack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a7462224ffd49ce6c5e13ab9c36c98d2d}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ra\_cap\_ies@{ra\_cap\_ies}}
\index{ra\_cap\_ies@{ra\_cap\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ra\_cap\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ra\+\_\+cap\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+MS\+\_\+\+RADIO\+\_\+\+ACCESS\+\_\+\+CAP} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_abed67bdb7db548b382903d2f021ae68a}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ra\_cap\_upd\_ack\_ies@{ra\_cap\_upd\_ack\_ies}}
\index{ra\_cap\_upd\_ack\_ies@{ra\_cap\_upd\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ra\_cap\_upd\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ra\+\_\+cap\+\_\+upd\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TAG}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RA\+\_\+\+CAP\+\_\+\+UPD\+\_\+\+CAUSE} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a29fd878bffb08330c615838a29e3bf5f}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ra\_cap\_upd\_ies@{ra\_cap\_upd\_ies}}
\index{ra\_cap\_upd\_ies@{ra\_cap\_upd\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ra\_cap\_upd\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ra\+\_\+cap\+\_\+upd\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TAG} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a472ebae1a6ff24a6cbec5b1abd4537ad}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!rad\_sts\_ies@{rad\_sts\_ies}}
\index{rad\_sts\_ies@{rad\_sts\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{rad\_sts\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t rad\+\_\+sts\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RADIO\+\_\+\+CAUSE} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a720c8d8b809ec94aa25e8670db9ae324}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!reset\_ack\_ies@{reset\_ack\_ies}}
\index{reset\_ack\_ies@{reset\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{reset\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t reset\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_ad95ccea611c0cb89181917742171b490}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!reset\_ies@{reset\_ies}}
\index{reset\_ies@{reset\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{reset\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t reset\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_afc444aa9b85af7c943a97e23d21ea64f}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!resume\_ack\_ies@{resume\_ack\_ies}}
\index{resume\_ack\_ies@{resume\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{resume\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t resume\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+ROUTEING\+\_\+\+AREA} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_aa0ce51594a1f72100b6ac40fe09f8f0a}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!resume\_ies@{resume\_ies}}
\index{resume\_ies@{resume\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{resume\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t resume\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+ROUTEING\+\_\+\+AREA}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+SUSPEND\+\_\+\+REF\+\_\+\+NR} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a2c238dd43c22bf7302076639d2530a51}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!resume\_nack\_ies@{resume\_nack\_ies}}
\index{resume\_nack\_ies@{resume\_nack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{resume\_nack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t resume\+\_\+nack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+ROUTEING\+\_\+\+AREA} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a082339dbb25826f72e3a8b1b69a66ef2}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!rinfo\_ack\_ies@{rinfo\_ack\_ies}}
\index{rinfo\_ack\_ies@{rinfo\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{rinfo\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t rinfo\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RIM\+\_\+\+ROUTING\+\_\+\+INFO}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RI\+\_\+\+ACK\+\_\+\+RIM\+\_\+\+CONTAINER} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a80e533bc340b439fa45dab255dcfec31}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!rinfo\_aerr\_ies@{rinfo\_aerr\_ies}}
\index{rinfo\_aerr\_ies@{rinfo\_aerr\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{rinfo\_aerr\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t rinfo\+\_\+aerr\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RIM\+\_\+\+ROUTING\+\_\+\+INFO}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RI\+\_\+\+APP\+\_\+\+ERROR\+\_\+\+RIM\+\_\+\+CONT} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a3f21a1924216c0020b2aa4b0068450d8}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!rinfo\_err\_ies@{rinfo\_err\_ies}}
\index{rinfo\_err\_ies@{rinfo\_err\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{rinfo\_err\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t rinfo\+\_\+err\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RIM\+\_\+\+ROUTING\+\_\+\+INFO}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RI\+\_\+\+ERROR\+\_\+\+RIM\+\_\+\+COINTAINER} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_af0f6db4adb77eb7e5c666e1b4b3e3c2f}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!rinfo\_ies@{rinfo\_ies}}
\index{rinfo\_ies@{rinfo\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{rinfo\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t rinfo\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RIM\+\_\+\+ROUTING\+\_\+\+INFO}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RI\+\_\+\+RIM\+\_\+\+CONTAINER} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a96643e5eba556276ad5be4ae2a8d184e}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!rinfo\_req\_ies@{rinfo\_req\_ies}}
\index{rinfo\_req\_ies@{rinfo\_req\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{rinfo\_req\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t rinfo\+\_\+req\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RIM\+\_\+\+ROUTING\+\_\+\+INFO}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+RI\+\_\+\+REQ\+\_\+\+RIM\+\_\+\+CONTAINER} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a4efc82082f307404fc6413ce1ab491c0}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!status\_ies@{status\_ies}}
\index{status\_ies@{status\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{status\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t status\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CAUSE} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a5790d0a351e04f71aa8f41377affc178}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!suspend\_ack\_ies@{suspend\_ack\_ies}}
\index{suspend\_ack\_ies@{suspend\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{suspend\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t suspend\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+ROUTEING\+\_\+\+AREA}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+SUSPEND\+\_\+\+REF\+\_\+\+NR} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a0a03bbffb0b259b992c69dc39f0b93ba}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!suspend\_ies@{suspend\_ies}}
\index{suspend\_ies@{suspend\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{suspend\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t suspend\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+ROUTEING\+\_\+\+AREA} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a2e5db0219d70019c7a23dbd48db022d2}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!suspend\_nack\_ies@{suspend\_nack\_ies}}
\index{suspend\_nack\_ies@{suspend\_nack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{suspend\_nack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t suspend\+\_\+nack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TLLI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+ROUTEING\+\_\+\+AREA} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a16d8e1070fa38f1ae4f1f954e3204464}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ul\_mb\_ud\_ies@{ul\_mb\_ud\_ies}}
\index{ul\_mb\_ud\_ies@{ul\_mb\_ud\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ul\_mb\_ud\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ul\+\_\+mb\+\_\+ud\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+PDU\+\_\+\+LIFETIME}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+TMGI}, \textbf{ BSSGP\+\_\+\+IE\+\_\+\+LLC\+\_\+\+PDU} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_ab7bdbf4944aeda5fcb91f0a4108c0d08}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!ul\_ud\_ies@{ul\_ud\_ies}}
\index{ul\_ud\_ies@{ul\_ud\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{ul\_ud\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t ul\+\_\+ud\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+CELL\+\_\+\+ID} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_adaf6d2784e7c117bc946aaebb906b9e8}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!unblock\_ack\_ies@{unblock\_ack\_ies}}
\index{unblock\_ack\_ies@{unblock\_ack\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{unblock\_ack\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t unblock\+\_\+ack\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI} \}\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\label{gprs__bssgp__util_8c_a994716d87ec5df8077c7358d4b63567e}} 
\index{gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}!unblock\_ies@{unblock\_ies}}
\index{unblock\_ies@{unblock\_ies}!gprs\_bssgp\_util.c@{gprs\_bssgp\_util.c}}
\doxysubsubsection{unblock\_ies}
{\footnotesize\ttfamily const uint8\+\_\+t unblock\+\_\+ies[$\,$] = \{ \textbf{ BSSGP\+\_\+\+IE\+\_\+\+BVCI} \}\hspace{0.3cm}{\ttfamily [static]}}

