\doxysection{src/gsm/gsup.c File Reference}
\label{gsup_8c}\index{src/gsm/gsup.c@{src/gsm/gsup.c}}


Osmocom Generic Subscriber Update Protocol.  


{\ttfamily \#include $<$osmocom/gsm/tlv.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/msgb.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/logging.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/gsm48\+\_\+ie.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/gsup.\+h$>$}\newline
{\ttfamily \#include $<$stdint.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
int \textbf{ osmo\+\_\+gsup\+\_\+get\+\_\+err\+\_\+msg\+\_\+type} (enum \textbf{ osmo\+\_\+gsup\+\_\+message\+\_\+type} type\+\_\+in)
\begin{DoxyCompactList}\small\item\em return the error message type corresponding to {\itshape type\+\_\+in}. \end{DoxyCompactList}\item 
static int \textbf{ decode\+\_\+pdp\+\_\+address} (const uint8\+\_\+t $\ast$\textbf{ data}, size\+\_\+t data\+\_\+len, struct \textbf{ osmo\+\_\+gsup\+\_\+pdp\+\_\+info} $\ast$pdp\+\_\+info)
\item 
static int \textbf{ decode\+\_\+pdp\+\_\+info} (uint8\+\_\+t $\ast$\textbf{ data}, size\+\_\+t data\+\_\+len, struct \textbf{ osmo\+\_\+gsup\+\_\+pdp\+\_\+info} $\ast$pdp\+\_\+info)
\item 
static int \textbf{ decode\+\_\+auth\+\_\+info} (uint8\+\_\+t $\ast$\textbf{ data}, size\+\_\+t data\+\_\+len, struct \textbf{ osmo\+\_\+auth\+\_\+vector} $\ast$auth\+\_\+vector)
\item 
int \textbf{ osmo\+\_\+gsup\+\_\+decode\+\_\+an\+\_\+apdu} (struct \textbf{ osmo\+\_\+gsup\+\_\+message} $\ast$gsup\+\_\+msg, const uint8\+\_\+t $\ast$\textbf{ data}, size\+\_\+t data\+\_\+len)
\begin{DoxyCompactList}\small\item\em Decode AN-\/apdu (see 3GPP TS 29.\+002 7.\+6.\+9.\+1). \end{DoxyCompactList}\item 
int \textbf{ osmo\+\_\+gsup\+\_\+decode} (const uint8\+\_\+t $\ast$const\+\_\+data, size\+\_\+t data\+\_\+len, struct \textbf{ osmo\+\_\+gsup\+\_\+message} $\ast$gsup\+\_\+msg)
\begin{DoxyCompactList}\small\item\em Decode (parse) a GSUP message. \end{DoxyCompactList}\item 
static void \textbf{ encode\+\_\+pdp\+\_\+info} (struct \textbf{ msgb} $\ast$\textbf{ msg}, enum \textbf{ osmo\+\_\+gsup\+\_\+iei} \textbf{ iei}, const struct \textbf{ osmo\+\_\+gsup\+\_\+pdp\+\_\+info} $\ast$pdp\+\_\+info)
\item 
static void \textbf{ encode\+\_\+auth\+\_\+info} (struct \textbf{ msgb} $\ast$\textbf{ msg}, enum \textbf{ osmo\+\_\+gsup\+\_\+iei} \textbf{ iei}, const struct \textbf{ osmo\+\_\+auth\+\_\+vector} $\ast$auth\+\_\+vector)
\item 
int \textbf{ osmo\+\_\+gsup\+\_\+encode\+\_\+an\+\_\+apdu} (struct \textbf{ msgb} $\ast$\textbf{ msg}, const struct \textbf{ osmo\+\_\+gsup\+\_\+message} $\ast$gsup\+\_\+msg)
\begin{DoxyCompactList}\small\item\em Encode AN-\/apdu (see 3GPP TS 29.\+002 7.\+6.\+9.\+1). \end{DoxyCompactList}\item 
int \textbf{ osmo\+\_\+gsup\+\_\+encode} (struct \textbf{ msgb} $\ast$\textbf{ msg}, const struct \textbf{ osmo\+\_\+gsup\+\_\+message} $\ast$gsup\+\_\+msg)
\begin{DoxyCompactList}\small\item\em Encode a GSUP message. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
const struct \textbf{ value\+\_\+string} \textbf{ osmo\+\_\+gsup\+\_\+message\+\_\+type\+\_\+names} [$\,$]
\item 
const struct \textbf{ value\+\_\+string} \textbf{ osmo\+\_\+gsup\+\_\+session\+\_\+state\+\_\+names} [$\,$]
\item 
const struct \textbf{ value\+\_\+string} \textbf{ osmo\+\_\+gsup\+\_\+message\+\_\+class\+\_\+names} [$\,$]
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Osmocom Generic Subscriber Update Protocol. 

