Loading...
Searching...
No Matches
card_fs_uicc.c File Reference

ETSI UICC specific structures / routines. More...

`#include <osmocom/sim/sim.h>`
`#include <osmocom/core/talloc.h>`
`#include <osmocom/gsm/tlv.h>`
`#include "sim_int.h"`
`#include "gsm_int.h"`

## Functions

static const uint8_t | __attribute__ ((__unused__))
struct osim_card_profile * | osim_cprof_uicc (void *ctx, bool have_df_gsm)

## Variables

const struct osim_card_sw | ts102221_uicc_sw []
static const struct osim_card_sw * | uicc_card_sws []
static const struct osim_file_desc | uicc_ef_in_mf []
const struct value_string | ts102221_fcp_vals [14]
const struct tlv_definition | ts102221_fcp_tlv_def

## Detailed Description

ETSI UICC specific structures / routines.

## Function Documentation

## __attribute__()

const uint8_t __attribute__ | ( | (__unused__) |  | ) |

static

## osim_cprof_uicc()

struct osim_card_profile * osim_cprof_uicc | ( | void * | ctx,
|  | bool | have_df_gsm )

References add_filedesc(), alloc_df(), osim_card_profile::mf, osim_card_profile::name, osim_int_cprof_add_gsm(), osim_int_cprof_add_telecom(), osim_card_profile::sws, uicc_card_sws, and uicc_ef_in_mf.

## Variable Documentation

## ts102221_fcp_tlv_def

const struct tlv_definition ts102221_fcp_tlv_def

Initial value:
= {
.def = {
[UICC_FCP_T_FCP] = { TLV_TYPE_TLV },
[UICC_FCP_T_FILE_SIZE] = { TLV_TYPE_TLV },
[UICC_FCP_T_TOT_F_SIZE] = { TLV_TYPE_TLV },
[UICC_FCP_T_FILE_DESC] = { TLV_TYPE_TLV },
[UICC_FCP_T_FILE_ID] = { TLV_TYPE_TLV },
[UICC_FCP_T_DF_NAME] = { TLV_TYPE_TLV },
[UICC_FCP_T_SFID] = { TLV_TYPE_TLV },
[UICC_FCP_T_LIFEC_STS] = { TLV_TYPE_TLV },
[UICC_FCP_T_SEC_ATTR_REFEXP] = { TLV_TYPE_TLV },
[UICC_FCP_T_SEC_ATTR_COMP] = { TLV_TYPE_TLV },
[UICC_FCP_T_PROPRIETARY] = { TLV_TYPE_TLV },
[UICC_FCP_T_SEC_ATTR_EXP] = { TLV_TYPE_TLV },
[UICC_FCP_T_PIN_STS_DO] = { TLV_TYPE_TLV },
},
}
UICC_FCP_T_FILE_DESC
@ UICC_FCP_T_FILE_DESC
Definition sim.h:345
UICC_FCP_T_FILE_ID
@ UICC_FCP_T_FILE_ID
Definition sim.h:346
UICC_FCP_T_SEC_ATTR_COMP
@ UICC_FCP_T_SEC_ATTR_COMP
Definition sim.h:351
UICC_FCP_T_FCP
@ UICC_FCP_T_FCP
Definition sim.h:342
UICC_FCP_T_PROPRIETARY
@ UICC_FCP_T_PROPRIETARY
Definition sim.h:352
UICC_FCP_T_FILE_SIZE
@ UICC_FCP_T_FILE_SIZE
Definition sim.h:343
UICC_FCP_T_SFID
@ UICC_FCP_T_SFID
Definition sim.h:348
UICC_FCP_T_DF_NAME
@ UICC_FCP_T_DF_NAME
Definition sim.h:347
UICC_FCP_T_SEC_ATTR_REFEXP
@ UICC_FCP_T_SEC_ATTR_REFEXP
Definition sim.h:350
UICC_FCP_T_LIFEC_STS
@ UICC_FCP_T_LIFEC_STS
Definition sim.h:349
UICC_FCP_T_SEC_ATTR_EXP
@ UICC_FCP_T_SEC_ATTR_EXP
Definition sim.h:353
UICC_FCP_T_PIN_STS_DO
@ UICC_FCP_T_PIN_STS_DO
Definition sim.h:354
UICC_FCP_T_TOT_F_SIZE
@ UICC_FCP_T_TOT_F_SIZE
Definition sim.h:344

## ts102221_fcp_vals

const struct value_string ts102221_fcp_vals[14]

Initial value:
= {
{ UICC_FCP_T_FCP, "File control parameters" },
{ UICC_FCP_T_FILE_SIZE, "File size" },
{ UICC_FCP_T_TOT_F_SIZE, "Total size of files" },
{ UICC_FCP_T_FILE_DESC, "File descriptor" },
{ UICC_FCP_T_FILE_ID, "File identifier" },
{ UICC_FCP_T_DF_NAME, "DF name" },
{ UICC_FCP_T_SFID, "Short file identifier" },
{ UICC_FCP_T_LIFEC_STS, "Lifecycle status integer" },
{ UICC_FCP_T_SEC_ATTR_REFEXP, "Security attributes (Referenced/Expanded)" },
{ UICC_FCP_T_SEC_ATTR_COMP, "Security attributes (Compact)" },
{ UICC_FCP_T_PROPRIETARY, "Proprietary" },
{ UICC_FCP_T_SEC_ATTR_EXP, "Security attributes (Expanded)" },
{ UICC_FCP_T_PIN_STS_DO, "PIN Status DO" },
{ 0, NULL }
}

## ts102221_uicc_sw

const struct osim_card_sw ts102221_uicc_sw[]

## uicc_card_sws

const struct osim_card_sw* uicc_card_sws[]

static

Initial value:
= {
ts102221_uicc_sw,
NULL
}
ts102221_uicc_sw
const struct osim_card_sw ts102221_uicc_sw[]
Definition card_fs_uicc.c:31

Referenced by osim_cprof_uicc().

## uicc_ef_in_mf

const struct osim_file_desc uicc_ef_in_mf[]

static

Initial value:
= {
EF_LIN_FIX_N(0x2f00, SFI_NONE, "EF.DIR", 0, 1, 32,
"Application directory"),
EF_TRANSP_N(0x2FE2, SFI_NONE, "EF.ICCID", 0, 10, 10,
"ICC Identification"),
EF_TRANSP_N(0x2F05, SFI_NONE, "EF.PL", 0, 2, 20,
"Preferred Languages"),
EF_LIN_FIX_N(0x2F06, SFI_NONE, "EF.ARR", F_OPTIONAL, 1, 256,
"Access Rule Reference"),
}
SFI_NONE
#define SFI_NONE
Definition sim.h:159
EF_TRANSP_N
#define EF_TRANSP_N(fid, sfi, ns, flags, smin, srec, nl)
Convenience macros for defining EF.
Definition sim.h:219
EF_LIN_FIX_N
#define EF_LIN_FIX_N(fid, sfi, ns, flags, smin, srec, nl)
Convenience macros for defining EF.
Definition sim.h:237
F_OPTIONAL
#define F_OPTIONAL
Definition sim.h:157

Referenced by osim_cprof_uicc().