Sdílet prostřednictvím


Přístup UICC nízké úrovně MB

Přehled

Model mobilního širokopásmového rozhraní Revize 1.0 nebo MBIM1 definuje rozhraní nezávislé na modelu OEM a IHV mezi hostitelským zařízením a mobilním datovým modemem.

Funkce MBIM1 obsahuje čipovou kartu UICC a poskytuje přístup k některým datům a internímu stavu. Čipová karta ale může mít další funkce nad rámec těch, které jsou definovány rozhraním MBIM. Mezi tyto další funkce patří podpora zabezpečeného prvku pro mobilní platební řešení založená na komunikaci téměř v terénu nebo pro vzdálené zřizování celého profilu UICC.

V zařízení s Windows s podporou mobilního širokopásmového připojení se kromě rozhraní Radio Interface Layer (RIL) používá rozhraní MBIM. Jednou z funkcí, které poskytuje RIL, je rozhraní pro přístup na nízkou úroveň k UICC. Toto téma popisuje sadu rozšíření Microsoftu pro MBIM, která popisují tuto další funkci v rozhraní MBIM.

Rozšíření Microsoftu tvoří sadu příkazů služby zařízení (Set i Query) a oznámení. Tato rozšíření nezahrnují žádná nová použití proudů služeb zařízení.

Hodnoty služby MBIM a identifikátoru CID

Název služby UUID (univerzálně jednoznačný identifikátor) Hodnota UUID
Microsoft Low-Level UICC Access UUID_MS_UICC_LOW_LEVEL C2F6588E-F037-4BC9-8665-F4D44BD09367

Následující tabulka určuje kód příkazu pro každý identifikátor CID a také to, jestli identifikátor CID podporuje požadavky Set, Query nebo Event (oznámení). Další informace o parametrech, datových strukturách a oznámeních najdete v jednotlivých částech CID v tomto tématu.

CID Kód příkazu Nastavit Dotaz Oznámit
MBIM_CID_MS_UICC_ATR 1 N Y N
MBIM_CID_MS_UICC_OPEN_CHANNEL 2 Y N N
MBIM_CID_MS_UICC_CLOSE_CHANNEL 3 Y N N
MBIM_CID_MS_UICC_APDU) 4 Y N N
MBIM_CID_MS_UICC_TERMINAL_CAPABILITY 5 Y Y N
MBIM_CID_MS_UICC_RESET 6 Y Y N

Stavové kódy

Stavové kódy MBIM jsou definovány v oddílu 9.4.5 standardu MBIM . Kromě toho jsou definovány následující další stavové kódy selhání:

Stavový kód Hodnota (hexadecimální) Popis
MBIM_STATUS_MS_NO_LOGICAL_CHANNELS 87430001 Otevřený logický kanál nebyl úspěšný, protože v uiCC nejsou k dispozici žádné logické kanály (buď je nepodporuje, nebo se používají všechny).
MBIM_STATUS_MS_VÝBĚR_SELHAL 87430002 Otevřený logický kanál nebyl úspěšný, protože funkce SELECT selhala.
MBIM_STATUS_MS_INVALID_LOGICAL_CHANNEL 87430003 Číslo logického kanálu je neplatné (MBIM_CID_MS_UICC_OPEN_CHANNEL ho neotevřelo).

MBIM_SUBSCRIBER_READY_STATE

Typ Hodnota Popis
MBIMSubscriberReadyStateNoEsimProfile 7 Karta je připravená, ale nemá žádné povolené profily.

Odpovědi a stav UICC

UICC může implementovat buď znakové rozhraní, nebo rozhraní založené na záznamech, nebo obojí. I když se konkrétní mechanismus liší, výsledkem je, že UICC reaguje na každý příkaz se dvěma bajty stavu (s názvem SW1 a SW2) a odpovědí (která může být prázdná). Normální stav úspěchu je označen hodnotou 90 00. Pokud však UICC podporuje sadu nástrojů pro aplikace karet a UICC chce odeslat do terminálu proaktivní příkaz, bude úspěšný návrat označen stavem 91 XX (kde se XX liší). Funkce MBIM nebo terminál zodpovídá za zpracování tohoto proaktivního příkazu stejně jako zpracování proaktivního příkazu přijatého během jakékoli jiné operace UICC (odeslání funkce FETCH do UICC, zpracování proaktivního příkazu nebo jeho odeslání hostiteli pomocí MBIM_CID_STK_PAC). Když hostitel MBIM odesílá MBIM_CID_MS_UICC_OPEN_CHANNEL nebo MBIM_CID_MS_UICC_APDU měl by považovat za normální stav 90 00 i 91 XX.

Příkazy musí být schopné vracet odpovědi, které jsou větší než 256 bajtů. Tento mechanismus je popsán v bodě 5.1.3 normy ISO/IEC 7816-4:2013. V tomto případě karta vrátí stavová slova SW1 SW2 61 XX místo 90 00, kde XX je počet zbývajících bajtů nebo 00, pokud zbývá 256 bajtů nebo více. Modem musí opakovaně vydat GET RESPONSE se stejným bajtem třídy, dokud nejsou přijata všechna data. To bude označeno konečným stavem 90 00. Sekvence musí být nepřerušovaná v rámci konkrétního logického kanálu. Další APDU by měly být zpracovávány v modemu a měly by být pro hostitele transparentní. Pokud se zpracovává v hostiteli, nelze zaručit, že některé jiné APDU může asynchronně odkazovat na kartu během sekvence APDU.

Porovnání s IHVRIL

Oddíly 5.2.3.3.10 až 5.2.3.3.14 specifikace IHVRIL definují podobné rozhraní, na kterém je tato specifikace založena. Mezi rozdíly patří:

  • Rozhraní RIL neposkytuje způsob, jak určit zabezpečené zasílání zpráv. Příkaz MBIM pro výměnu APDU určuje tento parametr jako explicitní.
  • Rozhraní RIL jasně nedefinuje interpretaci bajtu třídy v apDU. Specifikace MBIM uvádí, že bajt třídy odesílaný z hostitele musí být přítomn, ale není používán (a místo toho funkce MBIM vytváří tento bajt).
  • Rozhraní RIL používá samostatnou funkci k zavření všech kanálů UICC ve skupině, zatímco rozhraní MBIM toho dosahuje s variantními argumenty pro jeden identifikátor CID.
  • Vztah mezi stavem chyb MBIM a stavem SW1 SW2 (UICC) je jasněji definovaný než vztah mezi chybami RIL a stavem UICC.
  • Rozhraní MBIM rozlišuje selhání při přidělování nového logického kanálu od selhání při výběru zadané aplikace.
  • Rozhraní MBIM umožňuje odesílat na kartu objekty terminalní schopnosti modemu.

MBIM_CID_MS_UICC_ATR

Odpověď na resetování (ATR) je první řetězec bajtů odeslaných uiCC po provedení resetování. Popisuje možnosti karty, například počet logických kanálů, které podporuje. Funkce MBIM musí uložit ATR při přijetí z UICC. Následně může hostitel k načtení ATR použít příkaz MBIM_CID_MS_UICC_ATR.

Parametry

Typ Nastavit Dotaz Oznámení
Příkaz Nevztahuje se Prázdný Nevztahuje se
Odpověď Nevztahuje se MBIM_MS_ATR_INFO Nevztahuje se

Dotaz

InformationBuffer zprávy dotazu je prázdný.

Nastavit

Nelze použít.

Odpověď

InformationBuffer MBIM_COMMAND_DONE obsahuje následující MBIM_MS_ATR_INFO strukturu popisující odpověď pro resetování UICC připojené k této funkci.

MBIM_MS_ATR_INFO

Ofset Velikost Pole Typ Popis
0 4 AtrSize VELIKOST(0..33) Délka AtrData.
4 4 AtrOffset OFSET Posun v bajtech, vypočítaný od začátku této struktury, k poli bajtů s názvem AtrData, které obsahuje data ATR.
8 AtrSize DataBuffer datový buffer Pole bajtů AtrData.

Nevyžádané události

Nelze použít.

Stavové kódy

Platí následující stavové kódy.

Stavový kód Popis
MBIM_STATUS_SUCCESS Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_BUSY Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_FAILURE Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_NO_DEVICE_SUPPORT Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_SIM_NOT_INSERTED (Stav SIM není vložen) Operaci UICC nelze provést, protože chybí funkce UICC.
MBIM_STATUS_ŠPATNÁ_SIM Operaci UICC nelze provést, protože uiCC je ve stavu chyby.
MBIM_STATUS_NOT_INITIALIZED (není inicializován) Operaci UICC nelze provést, protože funkce UICC ještě není plně inicializována.

MBIM_CID_MS_UICC_OPEN_CHANNEL

Hostitel použije příkaz MBIM_CID_MS_UICC_OPEN_CHANNEL k vyžádání, aby funkce otevřela nový logický kanál na kartě UICC a vybrali zadanou aplikaci UICC (určenou jejím ID aplikace).

Funkce implementuje tento příkaz MBIM pomocí posloupnosti příkazů UICC:

  1. Funkce odešle příkaz MANAGE CHANNEL do UICC, jak je popsáno v části 11.1.17 ETSI TS 102 221 technické specifikace, a vytvoří nový logický kanál. Pokud tento příkaz selže, vrátí funkce stav MBIM_STATUS_MS_NO_LOGICAL_CHANNELS se stavy SW1 SW2 a neprovede žádnou další akci.
  2. Pokud příkaz MANAGE CHANNEL proběhne úspěšně, UICC hlásí číslo nového logického kanálu do funkce. Funkce odešle příkaz SELECT [by name] kde P1 = 04, jak je popsáno v části 11.1.1 ETSI TS 102 221 technické specifikace. Pokud tato operace selže, funkce odešle příkaz MANAGE CHANNEL k UICC, aby zavřela logický kanál a vrátí stav MBIM_STATUS_MS_SELECT_FAILED společně s SW1 SW2 ze SELECT.
  3. Pokud příkaz SELECT proběhne úspěšně, funkce zaznamená číslo logického kanálu a skupinu kanálů určenou hostitelem pro budoucí referenci. Pak vrátí číslo logického kanálu, SW1 SW2 z SELECT a odpověď z SELECT na hostitele.

Parametry

Operace Nastavit Dotaz Oznámení
Příkaz MBIM_MS_SET_UICC_OPEN_CHANNEL (Nastavit otevření kanálu UICC) Nepoužitelné Nelze použít
Odpověď MBIM_MS_UICC_OPEN_CHANNEL_INFO Nepoužitelné Není použitelné

Dotaz

Nelze použít.

Nastavit

InformationBuffer MBIM_COMMAND_MSG obsahuje následující MBIM_MS_SET_UICC_OPEN_CHANNEL strukturu.

MBIM_MS_SET_UICC_OPEN_CHANNEL

Posun Velikost Pole Typ Popis
0 4 AppIdSize VELIKOST(0..32) Velikost ID aplikace (AppId).
4 4 AppIdOffset POSUN Posun v bajtech vypočítaný od začátku této struktury k bajtovému poli s názvem AppId, které definuje AppId, které má být vybrán.
8 4 SelectP2Arg UINT32(0..255) Argument P2 příkazu SELECT.
12 4 ChannelGroup UINT32 Hodnota značky, která identifikuje skupinu kanálů pro tento kanál.
16 AppIdSize Datový buffer datový buffer Pole bajtů AppId.

Odpověď

InformationBuffer MBIM_COMMAND_DONE obsahuje následující MBIM_MS_UICC_OPEN_CHANNEL_INFO strukturu.

MBIM_MS_UICC_OTEVŘÍT_KANÁL_INFO

Ofset Velikost Pole Typ Popis
0 4 Stav BYTE[2] SW1 a SW2 v daném pořadí bajtů. Další informace najdete v poznámkách následující v této tabulce.
4 4 Kanál UINT32(0..19) Identifikátor logického kanálu. Pokud je tento člen 0, operace se nezdařila.
8 4 DélkaOdpovědi VELIKOST(0..256) Délka odpovědi v bajtech.
12 4 Posun Odezvy Posun Posun v bajtech, vypočítaný od začátku této struktury, k bajtovému poli nazvanému Odpověď, které obsahuje odpověď od SELECT.
16 - DataBuffer Data Buffer Odpověď datové pole bajtů.

Pokud příkaz vrátí MBIM_STATUS_MS_NO_LOGICAL_CHANNELS, pole Stav musí obsahovat stavová slova UICC SW1 a SW2 z příkazu MANAGE CHANNEL a zbývající pole budou nulová. Pokud příkaz vrátí MBIM_STATUS_MS_SELECT_FAILED, pole Stav musí obsahovat stavová slova UICC SW1 a SW2 z příkazu SELECT a zbývající pole budou nulová. Pro jakýkoli jiný stav musí být InformationBuffer prázdný.

Nevyžádané události

Nelze použít.

Stavové kódy

Platí následující stavové kódy:

Stavový kód Popis
MBIM_STATUS_SUCCESS Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_BUSY Základní stav MBIM definovaný pro všechny příkazy
MBIM_STAV_NEÚSPĚCH Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_BEZ_PODPORY_ZAŘÍZENÍ Základní stav MBIM definovaný pro všechny příkazy
Stav MBIM: SIM karta není vložena Operaci UICC nelze provést, protože chybí funkce UICC.
MBIM_STATUS_BAD_SIM Operaci UICC nelze provést, protože uiCC je ve stavu chyby.
MBIM_STATUS_NOT_INITIALIZED (Stav není inicializován) Operaci UICC nelze provést, protože funkce UICC ještě není plně inicializována.
MBIM_STATUS_MS_NO_LOGICAL_CHANNELS Logický kanál se nepovedlo otevřít, protože v uiCC nejsou dostupné žádné logické kanály (buď je nepodporuje, nebo se používají všechny).
MBIM_STATUS_MS_SELECT_FAILED znamená, že výběr se nezdařil. Otevřený logický kanál nebyl úspěšný, protože funkce SELECT selhala.

MBIM_CID_MS_UICC_CLOSE_CHANNEL

Hostitel odešle příkaz MBIM_CID_MS_UICC_CLOSE_CHANNEL funkci, aby zavřela logický kanál na UICC. Hostitel může zadat číslo kanálu nebo může zadat skupinu kanálů.

Pokud hostitel určuje číslo kanálu, měla by funkce zkontrolovat, jestli byl tento kanál otevřen předchozím MBIM_CID_MS_UICC_OPEN_CHANNEL. Pokud ano, měl by odeslat příkaz MANAGE CHANNEL do UICC zavřít kanál, vrátit stav MBIM_STATUS_SUCCESS a vrátit SW1 SW2 z MANAGE CHANNEL. Pokud ne, neměl by provést žádnou akci a vrátit stav selhání MBIM_STATUS_MS_INVALID_LOGICAL_CHANNEL.

Pokud hostitel určuje skupinu kanálů, funkce určí, které (pokud nějaké) logické kanály byly otevřeny s touto skupinou kanálů, a odešle příkaz MANAGE CHANNEL do UICC pro každý takový kanál. Vrátí stav MBIM_STATUS_SUCCESS s SW1 SW2 posledního příkazu MANAGE CHANNEL. Pokud nebyly uzavřeny žádné kanály, vrátí 90 00.

Parametry

Operace Nastavit Dotaz Oznámení
Příkaz MBIM_MS_SET_UICC_CLOSE_CHANNEL Nevztahuje se Nepoužitelné
Odpověď MBIM_MS_UICC_CLOSE_CHANNEL_INFO Není relevantní Nepoužitelné

Dotaz

Nelze použít.

Nastavit

InformationBuffer MBIM_COMMAND_MSG obsahuje následující MBIM_MS_SET_UICC_CLOSE_CHANNEL strukturu.

MBIM_MS_SET_UICC_CLOSE_CHANNEL

Ofset Velikost Pole Typ Popis
0 4 Kanál UINT32(0..19) Pokud nenízero, určuje kanál, který se má zavřít. Pokud je nula, určuje, že kanály přidružené k ChannelGroup mají být uzavřeny.
4 4 ChannelGroup UINT32 Pokud je kanál nula, to určuje hodnotu značky a všechny kanály s touto značkou jsou zavřené. Pokud kanálu je nenulové, bude toto pole ignorováno.

Odpověď

InformationBuffer MBIM_COMMAND_DONE obsahuje následující MBIM_MS_UICC_CLOSE_CHANNEL_INFO strukturu.

MBIM_MS_UICC_CLOSE_CHANNEL_INFO

Vyvážení Velikost Pole Typ Popis
0 4 Stav BYTE[2] SW1 a SW2 posledního MANAGE CHANNEL vykonaného funkcí na základě tohoto příkazu.

Nevyžádané události

Nelze použít.

Stavové kódy

Stavový kód Popis
MBIM_STATUS_SUCCESS Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_BUSY Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_FAILURE Základní stav MBIM definovaný pro všechny příkazy
Stav MBIM: Zařízení není podporováno Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_SIM_NOT_INSERTED (SIM karta není vložena) Operaci UICC nelze provést, protože chybí funkce UICC.
MBIM_STATUS_ŠPATNÁ_SIM Operaci UICC nelze provést, protože uiCC je ve stavu chyby.
MBIM_STATUS_NOT_INITIALIZED Operaci UICC nelze provést, protože funkce UICC ještě není plně inicializována.
MBIM_STATUS_MS_NEPLATNÝ_LOGICKÝ_KANÁL Číslo logického kanálu není platné (jinými slovy, nebylo otevřeno s MBIM_CID_MS_UICC_OPEN_CHANNEL).

MBIM_CID_MS_UICC_APDU

Hostitel používá MBIM_CID_MS_UICC_APDU k odeslání apDU příkazu do zadaného logického kanálu v UICC a přijetí odpovědi. Funkce MBIM by měla zajistit, aby byl logický kanál dříve otevřen s MBIM_CID_MS_UICC_OPEN_CHANNEL, a měla by selhat s chybovým stavem MBIM_STATUS_MS_INVALID_LOGICAL_CHANNEL, pokud tomu tak nebylo.

Hostitel musí funkci odeslat kompletní APDU. APDU lze odeslat s hodnotou bajtu třídy definovanou v první definici interindustry v části 4 NORMY ISO/IEC 7816-4:2013nebo v rozšířené definici v oddílu 10.1.1 technické specifikace ETSI TS 102 221. ApDU se může odesílat bez zabezpečeného zasílání zpráv nebo se zabezpečeným zasíláním zpráv. Hlavička příkazu není ověřena. Hostitel určuje třídu bajtu, číslo logického kanálu a zabezpečenou komunikaci spolu s APDU.

První bajt příkazu APDU je bajt třídy kódovaný podle bodu 4 NORMY ISO/IEC 7816-4:2013 nebo oddílu 10.1.1 ETSI TS 102 221. Hostitel může odesílat bajty třídy 0X, 4X, 6X, 8X, CX nebo EX. Funkce ale tento bajt nepředává přímo do UICC. Místo toho před odesláním APDU do UICC nahradí funkce první bajt z hostitele bajtů nové třídy (kódovaný podle oddílu 4 technické specifikace ISO/IEC 7816-4:2013 nebo oddíl 10.1.1 ETSI TS 102 221) na základě typu, Hodnoty kanálu a SecureMessaging zadané hostitelem:

Bajtová třída Popis
0X 7816-4 meziodvětvový, 1 <= kanál <= 3, kóduje bezpečnost ve spodním nibble, pokud je to relevantní
4X 7816-4 interindustry, 4 <= kanál <= 19, bez bezpečného zasílání zpráv
6X 7816-4 interindustry, 4 <= kanál <= 19, zabezpečené (hlavička není ověřena)
8X 102 221 rozšíření, 1<= kanál <= 3, kóduje zabezpečení v nízkém nibble, je-li to relevantní.
CX 102 221 rozšířené, 4 <= kanál <= 19, bez zabezpečeného zasílání zpráv
EX 102 221 rozšířeno, 4 <= kanál <= 19, zabezpečeno (hlavička není ověřena)

Funkce vrátí stav, SW1, SW2 a odpověď z UICC hostiteli.

Parametry

Operace Nastavit Dotaz Oznámení
Příkaz MBIM_MS_SET_UICC_APDU Nevztahuje se Nevztahuje se
Odpověď MBIM_MS_UICC_APDU_INFO Nepoužitelné Nepoužitelné

Dotaz

Nelze použít.

Nastavit

InformationBuffer MBIM_COMMAND_MSG obsahuje následující MBIM_MS_SET_UICC_APDU strukturu.

MBIM_MS_SET_UICC_APDU

Ofset Velikost Pole Typ Popis
0 4 Kanál UINT32(1..19) Určuje kanál, na kterém bude APDU odesláno.
4 4 Zabezpečené zasílání zpráv MBIM_MS_UICC_SECURE_MESSAGING Určuje, jestli se APDU vyměňuje pomocí zabezpečené komunikace.
8 4 Typ MBIM_MS_UICC_CLASS_BYTE_TYPE Určuje typ bajtové definice třídy.
12 4 Velikost příkazu UINT32(0..261) Délka příkazu v bajtech.
16 4 CommandOffset Kompenzace Posun v bajtech vypočítaný od začátku této struktury k bajtovému poli s názvem Command, které obsahuje APDU.
20 - Datový Pufr datový buffer Pole bajtů pro příkaz .

Struktura MBIM_MS_SET_UICC_APDU používá následující datové struktury MBIM_MS_UICC_SECURE_MESSAGING a MBIM_MS_UICC_CLASS_BYTE_TYPE.

MBIM_MS_UICC_BEZPEČNÉ_ZPRÁVY
Typ Hodnota Popis
MBIMSUiccSecureMessagingNone 0 Žádné zabezpečené zasílání zpráv.
MBIMSUiccSecureMessagingNoHdrAuth 1 Zabezpečené zasílání zpráv, hlavička příkazu není ověřena.
MBIM_MS_UICC_CLASS_BYTE_TYPE
Typ Hodnota Popis
MBIMsUiccInterindustry 0 Definováno podle první meziodvětvové definice v ISO 7816-4.
MBIMMsUiccExtended 1 Definováno podle rozšířené definice v ETSI 102 221.

Odpověď

InformationBuffer MBIM_COMMAND_DONE obsahuje následující MBIM_MS_UICC_APDU_INFO strukturu.

MBIM_MS_UICC_APDU_INFO

Posun Velikost Pole Typ Popis
0 4 Stav BYTE[2] Stavová slova SW1 a SW2 vyplývající z příkazu.
4 4 DélkaOdpovědi VELIKOST Délka odpovědi v bajtech.
8 4 Offset odpovědi OFFSET Posun (offset) v bajtech, vypočítaný od začátku této struktury, na bajtové pole s názvem Odpověď, které obsahuje odpověď z příkazu SELECT.
12 - DataBuffer DATABUFFER Pole bajtů odpovědi .

Nevyžádané události

Nelze použít.

Stavové kódy

Platí následující stavové kódy:

Stavový kód Popis
MBIM_STATUS_SUCCESS Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_BUSY Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_NEÚSPĚCH Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_NO_DEVICE_SUPPORT (Zařízení není podporováno) Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_SIM_NOT_INSERTED Operaci UICC nelze provést, protože chybí funkce UICC.
MBIM_STATUS_BAD_SIM Operaci UICC nelze provést, protože uiCC je ve stavu chyby.
MBIM_STATUS_NOT_INITIALIZED Operaci UICC nelze provést, protože funkce UICC ještě není plně inicializována.
MBIM_STATUS_MS_NEPLATNÝ_LOGICKÝ_KANÁL Číslo logického kanálu není platné (jinými slovy, nebyl otevřen pomocí MBIM_CID_MS_UICC_OPEN_CHANNEL).

Pokud může funkce odeslat APDU do UICC, vrátí MBIM_STATUS_SUCCESS spolu se stavovými slovy SW1 SW2 a odpovědí z UICC (pokud existuje). Hostitel musí zkontrolovat stav (SW1 SW2), aby zjistil, jestli příkaz APDU uspěl v UICC nebo důvod, proč selhal.

MBIM_CID_MS_UICC_TERMINAL_CAPABILITY

Hostitel odešle MBIM_CID_MS_UICC_TERMINAL_CAPABILITY, aby informoval modem o možnostech hostitele. TERMINÁLOVÉ FUNKČNOSTI APDU, uvedené v oddílu 11.1.19 technické specifikace ETSI TS 102 221, musí být odeslány na kartu předtím, než je vybrána první aplikace (pokud je podporována). Hostitel proto nemůže přímo odeslat APDU TERMINÁLNÍCH SCHOPNOSTÍ, ale místo toho odešle příkaz MBIM_CID_MS_UICC_TERMINAL_CAPABILITY obsahující jeden nebo více objektů terminálních schopností, které modem trvale uloží. Při dalším vložení karty nebo resetu po ATR by modem vybral MF a zkontroloval, jestli je schopnost TERMINÁLU podporovaná. Pokud ano, modem odešle TERMINAL CAPABILITY APDU s informacemi uvedenými příkazem MBIM_CID_MS_UICC_TERMINAL_CAPABILITY a také s případnými informacemi vygenerovanými modemem.

Parametry

Operace Nastavit Dotaz Oznámení
Příkaz MBIM_MS_SET_UICC_TERMINAL_CAPABILITY Prázdný Nepoužitelné
Odpověď Nepoužitelné MBIM_MS_TERMINAL_CAPABILITY_INFO Nevztahuje se

Dotaz

InformationBuffer musí být null a InformationBufferLength musí být nula.

Nastavit

InformationBuffer MBIM_COMMAND_MSG obsahuje následující MBIM_MS_SET_UICC_TERMINAL_CAPABILITY strukturu.

MBIM_MS_SET_UICC_TERMINAL_CAPABILITY

Ofset Velikost Pole Typ Popis
0 4 ElementCount UINT32 Počet prvků objektů funkcí terminálu.
4 8*EC Seznam schopností OL_PAIR_LIST Seznam párů posun-délka pro každý objekt funkce terminálu TLV.
4+8*EC - DataBuffer DATABUFFER Bajtové pole skutečného objektu funkce terminálu TLV.

Odpověď

Odpovědi budou obsahovat přesný příkaz SET s naposledy odeslanými objekty schopností terminálu do modemu. Proto je MBIM_MS_TERMINAL_CAPABILITY_INFO identický s MBIM_MS_SET_UICC_TERMINAL_CAPABILITY.

MBIM_MS_TERMINAL_CAPABILITY_INFO

Ofset Velikost Pole Typ Popis
0 4 ElementCount UINT32 Počet prvků objektů funkcí terminálu.
4 8*EC CapabilityList OL_PAIR_LIST Seznam párů posun-délka pro každý objekt funkce terminálu TLV.
4+8*EC - Datový buffer DATABUFFER Bajtové pole objektu skutečných schopností terminálu ve formátu TLV.

Nevyžádané události

Nelze použít.

Stavové kódy

Stavový kód Popis
MBIM_STATUS_SUCCESS Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_BUSY Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_FAILURE Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_NO_DEVICE_SUPPORT (Zařízení není podporováno) Základní stav MBIM definovaný pro všechny příkazy
MBIM_STATUS_SIM_NOT_INSERTED Operaci UICC nelze provést, protože chybí funkce UICC.
MBIM_STATUS_BAD_SIM (Špatná SIM karta) Operaci UICC nelze provést, protože uiCC je ve stavu chyby.
MBIM_STATUS_NOT_INITIALIZED (stav není inicializován) Operaci UICC nelze provést, protože funkce UICC ještě není plně inicializována.
MBIM_STATUS_MS_NEPLATNÝ_LOGICKÝ_KANÁL Číslo logického kanálu není platné (jinými slovy, nebyl otevřen s MBIM_CID_MS_UICC_OPEN_CHANNEL).

MBIM_CID_MS_UICC_RESET

Hostitel odešle do funkce MBIM příkaz MBIM_CID_MS_UICC_RESET, aby resetoval UICC nebo zjistil stav průchodnosti funkce.

Když hostitel požaduje, aby funkce resetuje UICC, určuje předávací akci.

Pokud hostitel zvolí akci MBIMMsUICCPassThroughEnable pro přeposílání, funkce resetuje UICC a po zapnutí napájení UICC s ním nakládá, jako by byl v režimu pro přeposílání, který umožňuje komunikaci mezi hostitelem a UICC (i v případě, že UICC nemá žádný souborový systém Telecom UICC). Funkce neodesílá na kartu žádné apDU a nezasahuje do komunikace mezi hostitelem a UICC.

Pokud hostitel určí předávací akci MBIMMsUICCPassThroughDisable, funkce resetuje UICC a po zapnutí UICC zachází s UICC jako se standardní telekomunikační UICC a očekává přítomnost systému souborů telekomunikační UICC.

Když hostitel dotáže funkci, aby určil stav režimu průchodu, pokud funkce odpoví stavem MBIMMsUICCPassThroughEnabled, znamená to, že režim předávání je povolen. Pokud funkce odpoví stavem MBIMMsUICCPassThroughDisabled, znamená to, že režim předávání je zakázaný.

Parametry

Typ Nastavit Dotaz Oznámení
Příkaz MBIM_MS_SET_UICC_RESET Prázdný Nevztahuje se
Odpověď MBIM_MS_UICC_RESET_INFO MBIM_MS_UICC_RESET_INFO Nevztahuje se

Dotaz

InformationBuffer musí být null a InformationBufferLength musí být nula.

Nastavit

MBIM_SET_MS_UICC_RESET

Struktura MBIM_SET_MS_UICC_RESET obsahuje předávací akci určenou hostitelem.

Ofset Velikost Pole Typ Popis
0 4 PassThroughAction MBIM_MS_UICC_PROSTUP_AKCE Další informace najdete v MBIM_MS_UICC_PASSTHROUGH_ACTION.

MBIM_MS_UICC_PRŮCHODNÁ_AKCE

Výčet MBIM_MS_UICC_PASSTHROUGH_ACTION definuje typy předávacích akcí, které může hostitel zadat do funkce MBIM.

Typy Hodnota
MBIMSUiccPassThroughDisable 0
MBIMSUiccPassThroughEnable 1

Odpověď

MBIM_MS_UICC_RESET_INFO

Struktura MBIM_MS_UICC_RESET_INFO obsahuje předávací stav funkce MBIM.

Ofset Velikost Pole Typ Popis
0 4 PassThroughStatus MBIM_MS_UICC_PASSTHROUGH_STATUS Další informace najdete v tématu MBIM_MS_UICC_PASSTHROUGH_STATUS.

MBIM_MS_UICC_PASSTHROUGH_STATUS

Výčet MBIM_MS_UICC_PASSTHROUGH_STATUS definuje typy předávacího stavu, které funkce MBIM určuje hostiteli.

Typy Hodnota
MBIMSUiccPassThroughDisabled 0
MBIMSUiccPassThroughEnabled 1

Nevyžádané události

Nelze použít.

Stavové kódy

Stavový kód Popis
MBIM_STATUS_SUCCESS Základní stav MBIM definovaný pro všechny příkazy
MBIM_STAV_OBSAZENÝ Zařízení je zaneprázdněné.
MBIM_STATUS_NEÚSPĚCH Operace se nezdařila.
Stav MBIM: Zařízení není podporováno Zařízení tuto operaci nepodporuje.

OID_WWAN_UICC_RESET

Ekvivalent NDIS pro MBIM_CID_MS_UICC_RESET je OID_WWAN_UICC_RESET.