\doxysection{src/gsm/bssmap\+\_\+le.c File Reference}
\label{bssmap__le_8c}\index{src/gsm/bssmap\_le.c@{src/gsm/bssmap\_le.c}}


Message encoding and decoding for 3GPP TS 49.\+031 BSSMAP-\/\+LE.  


{\ttfamily \#include $<$string.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/byteswap.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/endian.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/msgb.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/bssmap\+\_\+le.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/bsslap.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/gad.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/gsm48.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/gsm0808.\+h$>$}\newline
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ osmo\+\_\+bssap\+\_\+le\+\_\+header}
\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \textbf{ BSSAP\+\_\+\+LE\+\_\+\+MSG\+\_\+\+SIZE}~\textbf{ BSSMAP\+\_\+\+MSG\+\_\+\+SIZE}
\item 
\#define \textbf{ BSSAP\+\_\+\+LE\+\_\+\+MSG\+\_\+\+HEADROOM}~\textbf{ BSSMAP\+\_\+\+MSG\+\_\+\+HEADROOM}
\item 
\#define \textbf{ DEC\+\_\+\+ERR\+\_\+\+NO\+\_\+\+RETURN}(RC,  MSG\+\_\+\+TYPE,  IEI,  CAUSE,  fmt,  args...)
\item 
\#define \textbf{ DEC\+\_\+\+ERR}(RC,  MSG\+\_\+\+TYPE,  IEI,  CAUSE,  fmt,  args...)
\item 
\#define \textbf{ DEC\+\_\+\+IE\+\_\+\+MANDATORY}(MSG\+\_\+\+TYPE,  IEI,  DEC\+\_\+\+FUN,  DEC\+\_\+\+FUN\+\_\+\+ARG)
\item 
\#define \textbf{ DEC\+\_\+\+IE\+\_\+\+OPTIONAL\+\_\+\+FLAG}(MSG\+\_\+\+TYPE,  IEI,  DEC\+\_\+\+FUN,  DEC\+\_\+\+FUN\+\_\+\+ARG,  PRESENCE\+\_\+\+FLAG)
\item 
\#define \textbf{ DEC\+\_\+\+IE\+\_\+\+OPTIONAL}(MSG\+\_\+\+TYPE,  IEI,  DEC\+\_\+\+FUN,  DEC\+\_\+\+FUN\+\_\+\+ARG)
\item 
\#define \textbf{ BSSAP\+\_\+\+LE\+\_\+\+DEC\+\_\+\+ERR}(RC,  fmt,  args...)
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
uint8\+\_\+t \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+enc\+\_\+location\+\_\+type} (struct \textbf{ msgb} $\ast$\textbf{ msg}, const struct \textbf{ bssmap\+\_\+le\+\_\+location\+\_\+type} $\ast$location\+\_\+type)
\begin{DoxyCompactList}\small\item\em Encode full BSSMAP-\/\+LE Location Type IE, including IEI tag and length. \end{DoxyCompactList}\item 
int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+dec\+\_\+location\+\_\+type} (struct \textbf{ bssmap\+\_\+le\+\_\+location\+\_\+type} $\ast$lt, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, enum \textbf{ bssmap\+\_\+le\+\_\+iei} \textbf{ iei}, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const uint8\+\_\+t $\ast$elem, uint8\+\_\+t \textbf{ len})
\begin{DoxyCompactList}\small\item\em Decode BSSMAP-\/\+LE Location Type IE value part. \end{DoxyCompactList}\item 
static uint8\+\_\+t \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+enc\+\_\+lcs\+\_\+client\+\_\+type} (struct \textbf{ msgb} $\ast$\textbf{ msg}, enum \textbf{ bssmap\+\_\+le\+\_\+lcs\+\_\+client\+\_\+type} client\+\_\+type)
\begin{DoxyCompactList}\small\item\em Encode full BSSMAP-\/\+LE LCS Client Type IE, including IEI tag and length. \end{DoxyCompactList}\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+dec\+\_\+lcs\+\_\+client\+\_\+type} (enum \textbf{ bssmap\+\_\+le\+\_\+lcs\+\_\+client\+\_\+type} $\ast$client\+\_\+type, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, enum \textbf{ bssmap\+\_\+le\+\_\+iei} \textbf{ iei}, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const uint8\+\_\+t $\ast$elem, uint8\+\_\+t \textbf{ len})
\item 
static uint8\+\_\+t \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+enc\+\_\+lcs\+\_\+priority} (struct \textbf{ msgb} $\ast$\textbf{ msg}, uint8\+\_\+t priority)
\begin{DoxyCompactList}\small\item\em Encode full BSSMAP-\/\+LE LCS Priority IE, including IEI tag and length. \end{DoxyCompactList}\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+dec\+\_\+lcs\+\_\+priority} (uint8\+\_\+t $\ast$priority, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, enum \textbf{ bssmap\+\_\+le\+\_\+iei} \textbf{ iei}, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const uint8\+\_\+t $\ast$elem, uint8\+\_\+t \textbf{ len})
\item 
static uint8\+\_\+t \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+enc\+\_\+lcs\+\_\+qos} (struct \textbf{ msgb} $\ast$\textbf{ msg}, const struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+lcs\+\_\+qos} $\ast$qos)
\begin{DoxyCompactList}\small\item\em Encode full BSSMAP-\/\+LE LCS QoS IE, including IEI tag and length. \end{DoxyCompactList}\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+dec\+\_\+lcs\+\_\+qos} (struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+lcs\+\_\+qos} $\ast$qos, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, enum \textbf{ bssmap\+\_\+le\+\_\+iei} \textbf{ iei}, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const uint8\+\_\+t $\ast$elem, uint8\+\_\+t \textbf{ len})
\item 
int \textbf{ osmo\+\_\+lcs\+\_\+cause\+\_\+enc} (struct \textbf{ msgb} $\ast$\textbf{ msg}, const struct \textbf{ lcs\+\_\+cause\+\_\+ie} $\ast$\textbf{ lcs\+\_\+cause})
\begin{DoxyCompactList}\small\item\em Encode the value part of 3GPP TS 49.\+031 10.\+13 LCS Cause, without IEI and len. \end{DoxyCompactList}\item 
int \textbf{ osmo\+\_\+lcs\+\_\+cause\+\_\+dec} (struct \textbf{ lcs\+\_\+cause\+\_\+ie} $\ast$\textbf{ lcs\+\_\+cause}, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, enum \textbf{ bssmap\+\_\+le\+\_\+iei} \textbf{ iei}, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const uint8\+\_\+t $\ast$\textbf{ data}, uint8\+\_\+t \textbf{ len})
\begin{DoxyCompactList}\small\item\em Decode the value part of 3GPP TS 49.\+031 10.\+13 LCS Cause, without IEI and len. \end{DoxyCompactList}\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+enc\+\_\+apdu} (struct \textbf{ msgb} $\ast$\textbf{ msg}, const struct \textbf{ bsslap\+\_\+pdu} $\ast$bsslap)
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+dec\+\_\+apdu} (struct \textbf{ bsslap\+\_\+pdu} $\ast$bsslap, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, enum \textbf{ bssmap\+\_\+le\+\_\+iei} \textbf{ iei}, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const uint8\+\_\+t $\ast$\textbf{ data}, size\+\_\+t \textbf{ len})
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+dec\+\_\+cell\+\_\+id} (struct \textbf{ gsm0808\+\_\+cell\+\_\+id} $\ast$cell\+\_\+id, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, enum \textbf{ bssmap\+\_\+le\+\_\+iei} \textbf{ iei}, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const uint8\+\_\+t $\ast$elem, uint8\+\_\+t \textbf{ len})
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+dec\+\_\+imsi} (struct osmo\+\_\+mobile\+\_\+identity $\ast$imsi, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, enum \textbf{ bssmap\+\_\+le\+\_\+iei} \textbf{ iei}, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const uint8\+\_\+t $\ast$elem, uint8\+\_\+t \textbf{ len})
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+dec\+\_\+imei} (struct osmo\+\_\+mobile\+\_\+identity $\ast$imei, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, enum \textbf{ bssmap\+\_\+le\+\_\+iei} \textbf{ iei}, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const uint8\+\_\+t $\ast$elem, uint8\+\_\+t \textbf{ len})
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+dec\+\_\+gad} (union \textbf{ gad\+\_\+raw} $\ast$gad, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, enum \textbf{ bssmap\+\_\+le\+\_\+iei} \textbf{ iei}, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const uint8\+\_\+t $\ast$elem, uint8\+\_\+t \textbf{ len})
\item 
struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+lcs\+\_\+qos} \textbf{ \+\_\+\+\_\+attribute\+\_\+\+\_\+} ((packed))
\item 
enum \textbf{ bssmap\+\_\+le\+\_\+msgt} \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+msgt} (const uint8\+\_\+t $\ast$\textbf{ data}, uint8\+\_\+t \textbf{ len})
\begin{DoxyCompactList}\small\item\em Return the BSSMAP-\/\+LE msg\+\_\+type from a BSSAP-\/\+LE PDU, e.\+g. \end{DoxyCompactList}\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+enc\+\_\+reset} (struct \textbf{ msgb} $\ast$\textbf{ msg}, enum \textbf{ gsm0808\+\_\+cause} \textbf{ cause})
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+dec\+\_\+reset} (enum \textbf{ gsm0808\+\_\+cause} $\ast$\textbf{ cause}, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const struct \textbf{ tlv\+\_\+parsed} $\ast$tp)
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+enc\+\_\+perform\+\_\+loc\+\_\+req} (struct \textbf{ msgb} $\ast$\textbf{ msg}, const struct \textbf{ bssmap\+\_\+le\+\_\+perform\+\_\+loc\+\_\+req} $\ast$\textbf{ params})
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+dec\+\_\+perform\+\_\+loc\+\_\+req} (struct \textbf{ bssmap\+\_\+le\+\_\+perform\+\_\+loc\+\_\+req} $\ast$\textbf{ params}, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const struct \textbf{ tlv\+\_\+parsed} $\ast$tp)
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+enc\+\_\+perform\+\_\+loc\+\_\+resp} (struct \textbf{ msgb} $\ast$\textbf{ msg}, const struct \textbf{ bssmap\+\_\+le\+\_\+perform\+\_\+loc\+\_\+resp} $\ast$\textbf{ params})
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+dec\+\_\+perform\+\_\+loc\+\_\+resp} (struct \textbf{ bssmap\+\_\+le\+\_\+perform\+\_\+loc\+\_\+resp} $\ast$\textbf{ params}, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const struct \textbf{ tlv\+\_\+parsed} $\ast$tp)
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+enc\+\_\+perform\+\_\+loc\+\_\+abort} (struct \textbf{ msgb} $\ast$\textbf{ msg}, const struct \textbf{ lcs\+\_\+cause\+\_\+ie} $\ast$\textbf{ params})
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+dec\+\_\+perform\+\_\+loc\+\_\+abort} (struct \textbf{ lcs\+\_\+cause\+\_\+ie} $\ast$\textbf{ params}, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const struct \textbf{ tlv\+\_\+parsed} $\ast$tp)
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+enc\+\_\+conn\+\_\+oriented\+\_\+info} (struct \textbf{ msgb} $\ast$\textbf{ msg}, const struct \textbf{ bssmap\+\_\+le\+\_\+conn\+\_\+oriented\+\_\+info} $\ast$\textbf{ params})
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+dec\+\_\+conn\+\_\+oriented\+\_\+info} (struct \textbf{ bssmap\+\_\+le\+\_\+conn\+\_\+oriented\+\_\+info} $\ast$\textbf{ params}, enum \textbf{ bssmap\+\_\+le\+\_\+msgt} msgt, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const struct \textbf{ tlv\+\_\+parsed} $\ast$tp)
\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+enc} (struct \textbf{ msgb} $\ast$\textbf{ msg}, const struct \textbf{ bssmap\+\_\+le\+\_\+pdu} $\ast$pdu)
\begin{DoxyCompactList}\small\item\em Encode BSSMAP-\/\+LE PDU and add to msgb (3GPP TS 49.\+031). \end{DoxyCompactList}\item 
static int \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+dec} (struct \textbf{ bssmap\+\_\+le\+\_\+pdu} $\ast$pdu, struct \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, const uint8\+\_\+t $\ast$\textbf{ data}, size\+\_\+t \textbf{ len})
\begin{DoxyCompactList}\small\item\em Decode BSSMAP-\/\+LE PDU (3GPP TS 49.\+031). \end{DoxyCompactList}\item 
struct \textbf{ msgb} $\ast$ \textbf{ osmo\+\_\+bssap\+\_\+le\+\_\+enc} (const struct \textbf{ bssap\+\_\+le\+\_\+pdu} $\ast$pdu)
\begin{DoxyCompactList}\small\item\em Encode BSSAP-\/\+LE PDU returned in new msgb (3GPP TS 49.\+031). \end{DoxyCompactList}\item 
int \textbf{ osmo\+\_\+bssap\+\_\+le\+\_\+dec} (struct \textbf{ bssap\+\_\+le\+\_\+pdu} $\ast$pdu, struct \textbf{ osmo\+\_\+bssap\+\_\+le\+\_\+err} $\ast$$\ast$err, void $\ast$err\+\_\+ctx, struct \textbf{ msgb} $\ast$\textbf{ msg})
\begin{DoxyCompactList}\small\item\em Decode BSSAP-\/\+LE PDU (3GPP TS 49.\+031). \end{DoxyCompactList}\item 
int \textbf{ osmo\+\_\+bssap\+\_\+le\+\_\+pdu\+\_\+to\+\_\+str\+\_\+buf} (char $\ast$buf, size\+\_\+t buflen, const struct \textbf{ bssap\+\_\+le\+\_\+pdu} $\ast$bssap\+\_\+le)
\begin{DoxyCompactList}\small\item\em Return a human readable string describing a BSSAP-\/\+LE PDU. \end{DoxyCompactList}\item 
char $\ast$ \textbf{ osmo\+\_\+bssap\+\_\+le\+\_\+pdu\+\_\+to\+\_\+str\+\_\+c} (void $\ast$ctx, const struct \textbf{ bssap\+\_\+le\+\_\+pdu} $\ast$bssap\+\_\+le)
\begin{DoxyCompactList}\small\item\em Return a human readable string describing a BSSAP-\/\+LE PDU. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
static const struct \textbf{ tlv\+\_\+definition} \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+tlvdef}
\item 
uint8\+\_\+t \textbf{ type}
\item 
uint8\+\_\+t \textbf{ length}
\item 
uint8\+\_\+t \textbf{ data} [0]
\item 
const struct \textbf{ value\+\_\+string} \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+msgt\+\_\+names} [$\,$]
\item 
const struct \textbf{ value\+\_\+string} \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+iei\+\_\+names} [$\,$]
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Message encoding and decoding for 3GPP TS 49.\+031 BSSMAP-\/\+LE. 



\doxysubsection{Macro Definition Documentation}
\mbox{\label{bssmap__le_8c_a2cbaa8ba816e346ffffb2ef440c944ac}} 
\index{bssmap\_le.c@{bssmap\_le.c}!BSSAP\_LE\_DEC\_ERR@{BSSAP\_LE\_DEC\_ERR}}
\index{BSSAP\_LE\_DEC\_ERR@{BSSAP\_LE\_DEC\_ERR}!bssmap\_le.c@{bssmap\_le.c}}
\doxysubsubsection{BSSAP\_LE\_DEC\_ERR}
{\footnotesize\ttfamily \#define BSSAP\+\_\+\+LE\+\_\+\+DEC\+\_\+\+ERR(\begin{DoxyParamCaption}\item[{}]{RC,  }\item[{}]{fmt,  }\item[{}]{args... }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{                \textcolor{keywordflow}{do} \{ \(\backslash\)}
\DoxyCodeLine{                if (err \&\& !*err) \{ \(\backslash\)}
\DoxyCodeLine{                        *err = talloc\_zero(err\_ctx, \textcolor{keyword}{struct} osmo\_bssap\_le\_err); \(\backslash\)}
\DoxyCodeLine{                        **err = (\textcolor{keyword}{struct }osmo\_bssap\_le\_err)\{ \(\backslash\)}
\DoxyCodeLine{                                .rc = (RC), \(\backslash\)}
\DoxyCodeLine{                                .logmsg = talloc\_asprintf(*err, \textcolor{stringliteral}{"{}Error decoding BSSAP-\/LE: "{}} fmt, \#\#args), \(\backslash\)}
\DoxyCodeLine{                        \}; \(\backslash\)}
\DoxyCodeLine{                \} \(\backslash\)}
\DoxyCodeLine{                return RC; \(\backslash\)}
\DoxyCodeLine{        \} \textcolor{keywordflow}{while}(0)}

\end{DoxyCode}


\doxysubsection{Variable Documentation}
\mbox{\label{bssmap__le_8c_ac3c027f9a365f5741871df5ace13943f}} 
\index{bssmap\_le.c@{bssmap\_le.c}!data@{data}}
\index{data@{data}!bssmap\_le.c@{bssmap\_le.c}}
\doxysubsubsection{data}
{\footnotesize\ttfamily uint8\+\_\+t data[0]}



Referenced by \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+dec()}, \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+ie\+\_\+dec\+\_\+apdu()}, \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+msgt()}, and \textbf{ osmo\+\_\+lcs\+\_\+cause\+\_\+dec()}.

\mbox{\label{bssmap__le_8c_ab2b3adeb2a67e656ff030b56727fd0ac}} 
\index{bssmap\_le.c@{bssmap\_le.c}!length@{length}}
\index{length@{length}!bssmap\_le.c@{bssmap\_le.c}}
\doxysubsubsection{length}
{\footnotesize\ttfamily uint8\+\_\+t length}

\mbox{\label{bssmap__le_8c_a1d127017fb298b889f4ba24752d08b8e}} 
\index{bssmap\_le.c@{bssmap\_le.c}!type@{type}}
\index{type@{type}!bssmap\_le.c@{bssmap\_le.c}}
\doxysubsubsection{type}
{\footnotesize\ttfamily uint8\+\_\+t type}

