libpack  SLQS03.03.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
uim.h
Go to the documentation of this file.
1 
6 #include "common.h"
7 #include <stdint.h>
8 
9 #define UIM_UINT8_MAX_STRING_SZ 255
10 #define UIM_MAX_DESCRIPTION_LENGTH 255
11 #define UIM_MAX_NO_OF_SLOTS 5
12 #define UIM_MAX_NO_OF_APPLICATIONS 10
13 #define MAX_NO_OF_SLOTS 5
14 #define MAX_NO_OF_APPLICATIONS 10
15 #define MAX_DESCRIPTION_LENGTH 255
16 #define MAX_SLOTS_STATUS 255
17 #define MAX_ICCID_LENGTH 255
18 
19 
122 typedef struct
123 {
124  uint8_t appType;
125  uint8_t appState;
126  uint8_t persoState;
127  uint8_t persoFeature;
128  uint8_t persoRetries;
130  uint8_t aidLength;
131  uint8_t aidVal[UIM_MAX_DESCRIPTION_LENGTH];
132  uint8_t univPin;
133  uint8_t pin1State;
134  uint8_t pin1Retries;
135  uint8_t puk1Retries;
136  uint8_t pin2State;
137  uint8_t pin2Retries;
138  uint8_t puk2Retries;
139 } uim_appStatus;
140 
141 
193 typedef struct
194 {
195  uint8_t cardState;
196  uint8_t upinState;
197  uint8_t upinRetries;
198  uint8_t upukRetries;
199  uint8_t errorState;
200  uint8_t numApp;
202 } uim_slotInfo;
203 
204 
245 typedef struct
246 {
247  uint16_t indexGwPri;
248  uint16_t index1xPri;
249  uint16_t indexGwSec;
250  uint16_t index1xSec;
251  uint8_t numSlot;
254 
270 typedef struct
271 {
272  uint8_t hotSwapLength;
273  uint8_t hotSwap[UIM_MAX_DESCRIPTION_LENGTH];
275 
289 typedef struct{
292  uint16_t Tlvresult;
294 
309 typedef struct
310 {
311  uint8_t pin1Len;
312  uint8_t pin1Val[UIM_MAX_DESCRIPTION_LENGTH];
314 
331 typedef struct
332 {
333  uint8_t verifyLeft;
334  uint8_t unblockLeft;
336 
362 typedef struct
363 {
364  uint8_t sessionType;
365  uint8_t aidLength;
368 
388 typedef struct{
389  uint8_t pinID;
390  uint8_t pinLen;
391  uint8_t pinVal[UIM_MAX_DESCRIPTION_LENGTH];
393 
418 typedef struct{
419  uint8_t pinID;
420  uint8_t pukLen;
421  uint8_t pukVal[UIM_MAX_DESCRIPTION_LENGTH];
422  uint8_t newPINLen;
423  uint8_t newPINVal[UIM_MAX_DESCRIPTION_LENGTH];
425 
436 typedef struct
437 {
438  uint8_t sw1;
439  uint8_t sw2;
441 
466 typedef struct
467 {
468  uint8_t pinID;
469  uint8_t pinOperation;
470  uint8_t pinLength;
471  uint8_t pinValue[UIM_MAX_DESCRIPTION_LENGTH];
473 
500 typedef struct{
501  uint8_t pinID;
502  uint8_t oldPINLen;
503  uint8_t oldPINVal[UIM_MAX_DESCRIPTION_LENGTH];
504  uint8_t pinLen;
505  uint8_t pinVal[UIM_MAX_DESCRIPTION_LENGTH];
507 
523 typedef struct {
524  uint16_t fileID;
525  uint8_t pathLen;
526  uint16_t path[UIM_UINT8_MAX_STRING_SZ];
527 } uim_fileInfo;
528 
529 
555 typedef struct
556 {
557  uint8_t sessionType;
558  uint8_t aidLength;
559  uint8_t aid[255];
561 
573 typedef struct
574 {
575  uint16_t offset;
576  uint16_t length;
578 
579 
590 typedef struct
591 {
592  uint16_t contentLen;
593  uint8_t content[UIM_UINT8_MAX_STRING_SZ];
595 
596 
609  pack_qmi_t *pCtx,
610  uint8_t *pReqBuf,
611  uint16_t *pLen,
612  void *reqArg
613 );
614 
626  uint8_t *pResp,
627  uint16_t respLen,
629 );
630 
663 typedef struct{
665  uint32_t *pIndicationToken;
666  uint8_t *pKeyReferenceID;
669  uint16_t Tlvresult;
671 
691 typedef struct{
694  uint32_t *pIndicationToken;
695  uint16_t Tlvresult;
697 
698 
711  pack_qmi_t *pCtx,
712  uint8_t *pReqBuf,
713  uint16_t *pLen,
714  pack_uim_VerifyPin_t *reqArg
715 );
716 
728  uint8_t *pResp,
729  uint16_t respLen,
730  unpack_uim_VerifyPin_t *pOutput
731 );
732 
763 typedef struct{
765  uint32_t *pIndicationToken;
766  uint8_t *pKeyReferenceID;
769  uint16_t Tlvresult;
771 
789 typedef struct{
792  uint32_t *pIndicationToken;
793  uint16_t Tlvresult;
795 
796 
809  pack_qmi_t *pCtx,
810  uint8_t *pReqBuf,
811  uint16_t *pLen,
812  pack_uim_UnblockPin_t *reqArg
813 );
814 
826  uint8_t *pResp,
827  uint16_t respLen,
828  unpack_uim_UnblockPin_t *pOutput
829 );
830 
860 typedef struct{
862  uint32_t *pIndicationToken;
863  uint8_t *pKeyReferenceID;
866  uint16_t Tlvresult;
868 
888 typedef struct{
891  uint32_t *pIndicationToken;
892  uint16_t Tlvresult;
894 
895 
908  pack_qmi_t *pCtx,
909  uint8_t *pReqBuf,
910  uint16_t *pLen,
912 );
913 
925  uint8_t *pResp,
926  uint16_t respLen,
928 );
929 
959 typedef struct{
961  uint32_t *pIndicationToken;
962  uint8_t *pKeyReferenceID;
965  uint16_t Tlvresult;
967 
987 typedef struct{
990  uint32_t *pIndicationToken;
991  uint16_t Tlvresult;
993 
994 
1006 int pack_uim_ChangePin(
1007  pack_qmi_t *pCtx,
1008  uint8_t *pReqBuf,
1009  uint16_t *pLen,
1010  pack_uim_ChangePin_t *reqArg
1011 );
1012 
1024  uint8_t *pResp,
1025  uint16_t respLen,
1026  unpack_uim_ChangePin_t *pOutput
1027 );
1028 
1029 
1059 typedef struct{
1063  uint32_t *pIndicationToken;
1064  uint8_t *pEncryptData;
1065  uint16_t Tlvresult;
1067 
1090 typedef struct{
1093  uint32_t *pIndicationToken;
1094  uint8_t *pEncryptedData;
1095  uint16_t Tlvresult;
1097 
1098 
1111  pack_qmi_t *pCtx,
1112  uint8_t *pReqBuf,
1113  uint16_t *pLen,
1115 );
1116 
1128  uint8_t *pResp,
1129  uint16_t respLen,
1131 );
1132 
1137 typedef struct{
1138  uint32_t eventMask;
1140 
1153  pack_qmi_t *pCtx,
1154  uint8_t *pReqBuf,
1155  uint16_t *pLen,
1157 );
1158 
1162 typedef struct{
1163  uint32_t eventMask;
1165 
1177  uint8_t *pResp,
1178  uint16_t respLen,
1180 );
1181 
1284 typedef struct
1285 {
1286  uint8_t appType;
1287  uint8_t appState;
1288  uint8_t persoState;
1289  uint8_t persoFeature;
1290  uint8_t persoRetries;
1292  uint8_t aidLength;
1293  uint8_t aidVal[MAX_DESCRIPTION_LENGTH];
1294  uint8_t univPin;
1295  uint8_t pin1State;
1296  uint8_t pin1Retries;
1297  uint8_t puk1Retries;
1298  uint8_t pin2State;
1299  uint8_t pin2Retries;
1300  uint8_t puk2Retries;
1301 } appStats;
1302 
1354 typedef struct
1355 {
1356  uint8_t cardState;
1357  uint8_t upinState;
1358  uint8_t upinRetries;
1359  uint8_t upukRetries;
1360  uint8_t errorState;
1361  uint8_t numApp;
1363 } slotInf;
1371 typedef struct{
1374 
1387  uint8_t *pResp,
1388  uint16_t respLen,
1390 );
1391 
1402  pack_qmi_t *pCtx,
1403  uint8_t *pReqBuf,
1404  uint16_t *pLen
1405 );
1406 
1437 typedef struct
1438 {
1439  uint32_t uPhyCardStatus;
1440  uint32_t uPhySlotStatus;
1441  uint8_t bLogicalSlot;
1442  uint8_t bICCIDLength;
1443  uint8_t bICCID[MAX_ICCID_LENGTH];
1444 }slot_t;
1445 
1446 typedef struct
1447 {
1448  slot_t uimSlotStatus[MAX_SLOTS_STATUS];
1449 }slots_t;
1450 
1461 typedef struct{
1465 
1477  uint8_t *pResp,
1478  uint16_t respLen,
1480 );
1481 
1502 typedef struct{
1503  uint8_t bLogicalSlot;
1504  uint32_t ulPhysicalSlot;
1506 
1519  pack_qmi_t *pCtx,
1520  uint8_t *pReqBuf,
1521  uint16_t *pLen,
1523 );
1524 
1535  uint8_t *pResp,
1536  uint16_t respLen
1537 );
1538 
1548 typedef struct{
1552 
1565  uint8_t *pResp,
1566  uint16_t respLen,
1568 );
uint8_t pathLen
Definition: uim.h:525
Definition: uim.h:959
uint8_t pin2Retries
Definition: uim.h:1299
uint8_t pinID
Definition: uim.h:389
Definition: uim.h:789
Definition: uim.h:523
uint8_t * pEncryptedData
Definition: uim.h:1094
uim_changeUIMPIN changePIN
Definition: uim.h:964
Definition: uim.h:270
Definition: uim.h:663
uint8_t hotSwapLength
Definition: uim.h:272
uint8_t numApp
Definition: uim.h:200
uint8_t upukRetries
Definition: uim.h:198
uim_remainingRetries * pRemainingRetries
Definition: uim.h:790
Definition: uim.h:122
#define UIM_MAX_NO_OF_APPLICATIONS
Definition: uim.h:12
uint8_t pin2State
Definition: uim.h:136
Definition: uim.h:691
Definition: uim.h:418
slots_t slotsstatusChange
Definition: uim.h:1549
uint16_t offset
Definition: uim.h:575
Definition: uim.h:193
uint8_t upinRetries
Definition: uim.h:197
uint8_t puk2Retries
Definition: uim.h:1300
uint8_t pinID
Definition: uim.h:501
uint16_t indexGwSec
Definition: uim.h:249
uint8_t errorState
Definition: uim.h:1360
#define MAX_DESCRIPTION_LENGTH
Definition: uim.h:15
uint8_t bICCIDLength
Definition: uim.h:1442
uim_encryptedPIN1 EncryptedPIN1
Definition: uim.h:861
Definition: uim.h:1446
uint8_t persoUnblockRetries
Definition: uim.h:129
#define UIM_MAX_DESCRIPTION_LENGTH
Definition: uim.h:10
uint16_t index1xPri
Definition: uim.h:248
uint8_t pinID
Definition: uim.h:468
uint8_t appType
Definition: uim.h:1286
int unpack_uim_GetCardStatus(uint8_t *pResp, uint16_t respLen, unpack_uim_GetCardStatus_t *pOutput)
uint32_t eventMask
Definition: uim.h:1138
uim_encryptedPIN1 * pEncryptedPIN1
Definition: uim.h:989
uint32_t * pIndicationToken
Definition: uim.h:694
Definition: uim.h:500
uint32_t * pIndicationToken
Definition: uim.h:665
uint8_t pinLen
Definition: uim.h:390
uint8_t puk1Retries
Definition: uim.h:1297
uint8_t numSlot
Definition: uim.h:251
uint8_t persoState
Definition: uim.h:126
uint8_t pin1Retries
Definition: uim.h:1296
int pack_uim_VerifyPin(pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen, pack_uim_VerifyPin_t *reqArg)
uint8_t pin2State
Definition: uim.h:1298
uint16_t index1xSec
Definition: uim.h:250
uim_sessionInformation sessionInfo
Definition: uim.h:667
slots_t * pUimSlotsStatus
Definition: uim.h:1463
uint16_t Tlvresult
Definition: uim.h:965
uint8_t pukLen
Definition: uim.h:420
uint8_t unblockLeft
Definition: uim.h:334
Definition: uim.h:245
uint16_t fileID
Definition: uim.h:524
uint8_t upinState
Definition: uim.h:1357
uim_hotSwapStatus * pHotSwapStatus
Definition: uim.h:291
int unpack_uim_SLQSUIMSwitchSlot(uint8_t *pResp, uint16_t respLen)
uint8_t univPin
Definition: uim.h:132
uint8_t errorState
Definition: uim.h:199
uim_encryptedPIN1 * pEncryptedPIN1
Definition: uim.h:890
int pack_uim_SLQSUIMSwitchSlot(pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen, pack_uim_SLQSUIMSwitchSlot_t *reqArg)
uint16_t Tlvresult
Definition: uim.h:991
uint8_t * pNumberOfPhySlot
Definition: uim.h:1462
uint16_t contentLen
Definition: uim.h:592
uim_cardResult * pCardResult
Definition: uim.h:1091
uint16_t indexGwPri
Definition: uim.h:247
uim_encryptedPIN1 * pEncryptedPIN1
Definition: uim.h:791
#define UIM_MAX_NO_OF_SLOTS
Definition: uim.h:11
uint16_t Tlvresult
Definition: uim.h:695
Definition: uim.h:1162
Definition: uim.h:555
uint8_t persoState
Definition: uim.h:1288
uint8_t * pKeyReferenceID
Definition: uim.h:863
uint8_t pinLength
Definition: uim.h:470
uint8_t pin1State
Definition: uim.h:133
int unpack_uim_ReadTransparent(uint8_t *pResp, uint16_t respLen, unpack_uim_ReadTransparent_t *pOutput)
uim_remainingRetries * pRemainingRetries
Definition: uim.h:889
int unpack_uim_UnblockPin(uint8_t *pResp, uint16_t respLen, unpack_uim_UnblockPin_t *pOutput)
int unpack_uim_SLQSUIMGetSlotsStatus(uint8_t *pResp, uint16_t respLen, unpack_uim_SLQSUIMGetSlotsStatus_t *pOutput)
uint32_t ulPhysicalSlot
Definition: uim.h:1504
uim_fileInfo fileIndex
Definition: uim.h:1061
Definition: uim.h:1059
Definition: uim.h:1354
uint8_t numApp
Definition: uim.h:1361
uim_sessionInformation sessionInfo
Definition: uim.h:864
int unpack_uim_SLQSUIMSetStatusChangeCallBack_ind(uint8_t *pResp, uint16_t respLen, unpack_uim_SLQSUIMSetStatusChangeCallBack_ind_t *pOutput)
uint8_t univPin
Definition: uim.h:1294
uint8_t upinRetries
Definition: uim.h:1358
int pack_uim_ChangePin(pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen, pack_uim_ChangePin_t *reqArg)
uint16_t Tlvresult
Definition: uim.h:769
Definition: uim.h:362
uint8_t appType
Definition: uim.h:124
Definition: uim.h:763
int unpack_uim_VerifyPin(uint8_t *pResp, uint16_t respLen, unpack_uim_VerifyPin_t *pOutput)
uim_sessionInformation sessionInfo
Definition: uim.h:963
uim_encryptedPIN1 * pEncryptedPIN1
Definition: uim.h:693
uim_cardStatus * pCardStatus
Definition: uim.h:290
uint8_t persoFeature
Definition: uim.h:1289
uint8_t aidLength
Definition: uim.h:1292
Definition: uim.h:573
uint16_t Tlvresult
Definition: uim.h:669
int pack_uim_SLQSUIMEventRegister(pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen, pack_uim_SLQSUIMEventRegister_t *reqArg)
uint8_t pin1State
Definition: uim.h:1295
uint32_t * pIndicationToken
Definition: uim.h:1063
uim_encryptedPIN1 EncryptedPIN1
Definition: uim.h:960
uint8_t pinLen
Definition: uim.h:504
uint16_t Tlvresult
Definition: uim.h:866
uint8_t persoRetries
Definition: uim.h:1290
uint8_t aidLength
Definition: uim.h:558
uim_encryptedPIN1 EncryptedPIN1
Definition: uim.h:764
uint8_t persoRetries
Definition: uim.h:128
Definition: uim.h:388
Definition: uim.h:860
uim_unblockUIMPIN pinProtection
Definition: uim.h:768
#define MAX_SLOTS_STATUS
Definition: uim.h:16
uim_readResult * pReadResult
Definition: uim.h:1092
uint32_t * pIndicationToken
Definition: uim.h:990
uint8_t pinOperation
Definition: uim.h:469
uint8_t * pKeyReferenceID
Definition: uim.h:766
int pack_uim_SLQSUIMGetSlotsStatus(pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen)
uim_readTransparentInfo readTransparent
Definition: uim.h:1062
uint8_t * pKeyReferenceID
Definition: uim.h:666
uint16_t Tlvresult
Definition: uim.h:1095
int pack_uim_ReadTransparent(pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen, pack_uim_ReadTransparent_t *reqArg)
uint8_t pin1Len
Definition: uim.h:311
uint16_t Tlvresult
Definition: uim.h:793
uint8_t aidLength
Definition: uim.h:130
uim_remainingRetries * pRemainingRetries
Definition: uim.h:692
uint8_t upukRetries
Definition: uim.h:1359
uint8_t persoUnblockRetries
Definition: uim.h:1291
int pack_uim_GetCardStatus(pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen, void *reqArg)
int unpack_uim_SLQSUIMEventRegister(uint8_t *pResp, uint16_t respLen, unpack_uim_SLQSUIMEventRegister_t *pOutput)
uint8_t bNumberOfPhySlots
Definition: uim.h:1550
Definition: uim.h:289
Definition: uim.h:987
uint8_t puk2Retries
Definition: uim.h:138
uint8_t puk1Retries
Definition: uim.h:135
int pack_uim_SetPinProtection(pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen, pack_uim_SetPinProtection_t *reqArg)
Definition: uim.h:1137
uint32_t uPhyCardStatus
Definition: uim.h:1439
uint8_t * pEncryptData
Definition: uim.h:1064
uint8_t appState
Definition: uim.h:1287
uim_encryptedPIN1 * pEncryptedPIN1
Definition: uim.h:664
Definition: uim.h:1090
uint32_t * pIndicationToken
Definition: uim.h:891
uint8_t aidLength
Definition: uim.h:365
uint8_t sw2
Definition: uim.h:439
uint16_t Tlvresult
Definition: uim.h:1065
Definition: uim.h:1502
uim_cardStatus * pCardStatus
Definition: uim.h:1372
uint8_t oldPINLen
Definition: uim.h:502
uint8_t upinState
Definition: uim.h:196
int pack_uim_UnblockPin(pack_qmi_t *pCtx, uint8_t *pReqBuf, uint16_t *pLen, pack_uim_UnblockPin_t *reqArg)
uint32_t * pIndicationToken
Definition: uim.h:792
uim_sessionInformation sessionInfo
Definition: uim.h:1060
uint8_t verifyLeft
Definition: uim.h:333
uint8_t cardState
Definition: uim.h:1356
uint16_t length
Definition: uim.h:576
uint8_t newPINLen
Definition: uim.h:422
uim_remainingRetries * pRemainingRetries
Definition: uim.h:988
Definition: uim.h:1284
#define UIM_UINT8_MAX_STRING_SZ
Definition: uim.h:9
uint8_t cardState
Definition: uim.h:195
uint8_t pin1Retries
Definition: uim.h:134
Definition: uim.h:436
int unpack_uim_ChangePin(uint8_t *pResp, uint16_t respLen, unpack_uim_ChangePin_t *pOutput)
uint32_t eventMask
Definition: uim.h:1163
uint8_t persoFeature
Definition: uim.h:127
uint8_t * pKeyReferenceID
Definition: uim.h:962
uim_sessionInformation sessionInfo
Definition: uim.h:767
Definition: uim.h:888
uint8_t pinID
Definition: uim.h:419
Definition: common.h:89
uint32_t uPhySlotStatus
Definition: uim.h:1440
Definition: uim.h:309
uim_verifyUIMPIN verifyPIN
Definition: uim.h:668
uint8_t bLogicalSlot
Definition: uim.h:1441
uint8_t sessionType
Definition: uim.h:557
uint32_t * pIndicationToken
Definition: uim.h:961
uint32_t * pIndicationToken
Definition: uim.h:1093
int unpack_uim_SetUimSlotStatusChangeCallback_ind(uint8_t *pResp, uint16_t respLen, unpack_uim_SetUimSlotStatusChangeCallback_ind_t *pOutput)
#define MAX_NO_OF_APPLICATIONS
Definition: uim.h:14
uint8_t pin2Retries
Definition: uim.h:137
int unpack_uim_SetPinProtection(uint8_t *pResp, uint16_t respLen, unpack_uim_SetPinProtection_t *pOutput)
uint32_t * pIndicationToken
Definition: uim.h:765
Definition: uim.h:590
uint32_t * pIndicationToken
Definition: uim.h:862
uim_setPINProtection pinProtection
Definition: uim.h:865
uint8_t bLogicalSlot
Definition: uim.h:1503
Definition: uim.h:331
uint16_t Tlvresult
Definition: uim.h:292
uint8_t sessionType
Definition: uim.h:364
uint8_t appState
Definition: uim.h:125
Definition: uim.h:466
Definition: uim.h:1437
uint16_t Tlvresult
Definition: uim.h:892
#define MAX_ICCID_LENGTH
Definition: uim.h:17
uint8_t sw1
Definition: uim.h:438

Copyright (c) 2011-2015 Sierra Wireless, Inc. All rights reserved