\doxysection{src/sim/card\+\_\+fs\+\_\+hpsim.c File Reference}
\label{card__fs__hpsim_8c}\index{src/sim/card\_fs\_hpsim.c@{src/sim/card\_fs\_hpsim.c}}


3GPP HPSIM specific structures / routines.  


{\ttfamily \#include $<$errno.\+h$>$}\newline
{\ttfamily \#include $<$string.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/sim/sim.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/talloc.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gsm/gsm48.\+h$>$}\newline
{\ttfamily \#include \char`\"{}sim\+\_\+int.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}gsm\+\_\+int.\+h\char`\"{}}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ osim\+\_\+card\+\_\+app\+\_\+profile} $\ast$ \textbf{ osim\+\_\+aprof\+\_\+hpsim} (void $\ast$ctx)
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
const struct \textbf{ osim\+\_\+card\+\_\+sw} \textbf{ ts31\+\_\+104\+\_\+sw} [$\,$]
\item 
static const struct \textbf{ osim\+\_\+file\+\_\+desc} \textbf{ hpsim\+\_\+ef\+\_\+in\+\_\+adf\+\_\+hpsim} [$\,$]
\item 
static const uint8\+\_\+t \textbf{ adf\+\_\+hpsim\+\_\+aid} [$\,$] = \{ 0x\+A0, 0x00, 0x00, 0x00, 0x87, 0x10, 0x0A \}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
3GPP HPSIM specific structures / routines. 



\doxysubsection{Function Documentation}
\mbox{\label{card__fs__hpsim_8c_a0d1ddba1a8b060dff984936f2bc2d471}} 
\index{card\_fs\_hpsim.c@{card\_fs\_hpsim.c}!osim\_aprof\_hpsim@{osim\_aprof\_hpsim}}
\index{osim\_aprof\_hpsim@{osim\_aprof\_hpsim}!card\_fs\_hpsim.c@{card\_fs\_hpsim.c}}
\doxysubsubsection{osim\_aprof\_hpsim()}
{\footnotesize\ttfamily struct \textbf{ osim\+\_\+card\+\_\+app\+\_\+profile} $\ast$ osim\+\_\+aprof\+\_\+hpsim (\begin{DoxyParamCaption}\item[{void $\ast$}]{ctx }\end{DoxyParamCaption})}



References \textbf{ osim\+\_\+card\+\_\+app\+\_\+profile\+::adf}, \textbf{ adf\+\_\+hpsim\+\_\+aid}, \textbf{ osim\+\_\+card\+\_\+app\+\_\+profile\+::aid}, \textbf{ osim\+\_\+card\+\_\+app\+\_\+profile\+::aid\+\_\+len}, \textbf{ alloc\+\_\+adf\+\_\+with\+\_\+ef()}, \textbf{ ARRAY\+\_\+\+SIZE}, \textbf{ hpsim\+\_\+ef\+\_\+in\+\_\+adf\+\_\+hpsim}, \textbf{ osim\+\_\+card\+\_\+app\+\_\+profile\+::name}, \textbf{ osim\+\_\+card\+\_\+app\+\_\+profile\+::sw}, and \textbf{ ts31\+\_\+104\+\_\+sw}.



Referenced by \textbf{ osim\+\_\+init()}.



\doxysubsection{Variable Documentation}
\mbox{\label{card__fs__hpsim_8c_a6f021b252a276c782307fdc34a92f49a}} 
\index{card\_fs\_hpsim.c@{card\_fs\_hpsim.c}!adf\_hpsim\_aid@{adf\_hpsim\_aid}}
\index{adf\_hpsim\_aid@{adf\_hpsim\_aid}!card\_fs\_hpsim.c@{card\_fs\_hpsim.c}}
\doxysubsubsection{adf\_hpsim\_aid}
{\footnotesize\ttfamily const uint8\+\_\+t adf\+\_\+hpsim\+\_\+aid[$\,$] = \{ 0x\+A0, 0x00, 0x00, 0x00, 0x87, 0x10, 0x0A \}\hspace{0.3cm}{\ttfamily [static]}}



Referenced by \textbf{ osim\+\_\+aprof\+\_\+hpsim()}.

\mbox{\label{card__fs__hpsim_8c_a59d3806e7f8d963b6e9912dfab0d0927}} 
\index{card\_fs\_hpsim.c@{card\_fs\_hpsim.c}!hpsim\_ef\_in\_adf\_hpsim@{hpsim\_ef\_in\_adf\_hpsim}}
\index{hpsim\_ef\_in\_adf\_hpsim@{hpsim\_ef\_in\_adf\_hpsim}!card\_fs\_hpsim.c@{card\_fs\_hpsim.c}}
\doxysubsubsection{hpsim\_ef\_in\_adf\_hpsim}
{\footnotesize\ttfamily const struct \textbf{ osim\+\_\+file\+\_\+desc} hpsim\+\_\+ef\+\_\+in\+\_\+adf\+\_\+hpsim[$\,$]\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        EF\_LIN\_FIX\_N(0x6F06, 0x06, \textcolor{stringliteral}{"{}EF.ARR"{}}, 0, 1, 256,}
\DoxyCodeLine{                \textcolor{stringliteral}{"{}Access Rule TLV data objects"{}}),}
\DoxyCodeLine{        EF\_TRANSP\_N(0x6F07, 0x07, \textcolor{stringliteral}{"{}EF.IMST"{}}, 0, 9, 9,}
\DoxyCodeLine{                \textcolor{stringliteral}{"{}IMSI"{}}),}
\DoxyCodeLine{        EF\_TRANSP\_N(0x6FAD, 0x03, \textcolor{stringliteral}{"{}EF\_AD"{}}, 0, 4, 8,}
\DoxyCodeLine{                \textcolor{stringliteral}{"{}Administrative Data"{}}),}
\DoxyCodeLine{\}}

\end{DoxyCode}


Referenced by \textbf{ osim\+\_\+aprof\+\_\+hpsim()}.

\mbox{\label{card__fs__hpsim_8c_ac838c2b462e0702fc5357b8caba6dd99}} 
\index{card\_fs\_hpsim.c@{card\_fs\_hpsim.c}!ts31\_104\_sw@{ts31\_104\_sw}}
\index{ts31\_104\_sw@{ts31\_104\_sw}!card\_fs\_hpsim.c@{card\_fs\_hpsim.c}}
\doxysubsubsection{ts31\_104\_sw}
{\footnotesize\ttfamily const struct \textbf{ osim\+\_\+card\+\_\+sw} ts31\+\_\+104\+\_\+sw[$\,$]}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        \{}
\DoxyCodeLine{                0x9862, 0xffff, SW\_TYPE\_STR, SW\_CLS\_ERROR,}
\DoxyCodeLine{                .u.str = \textcolor{stringliteral}{"{}Security management -\/ Authentication error, incorrect MAC"{}},}
\DoxyCodeLine{        \},}
\DoxyCodeLine{        OSIM\_CARD\_SW\_LAST}
\DoxyCodeLine{\}}

\end{DoxyCode}


Referenced by \textbf{ osim\+\_\+aprof\+\_\+hpsim()}.

