qaGobiApiUim.h File Reference

Uim Service API function prototypes. More...

Go to the source code of this file.

Data Structures

struct  UIMPowerDownReq
struct  fileInfo
struct  UIMRefreshEvent
struct  appStatus
struct  slotInfo
struct  cardStatus
struct  hotSwapStatus
struct  UIMGetCardStatusResp
struct  UIMSessionInformation
struct  setPINProtection
struct  UIMSetPinProtectionReq
struct  remainingRetries
struct  encryptedPIN1
struct  UIMPinResp
struct  verifyUIMPIN
struct  UIMVerifyPinReq
struct  changeUIMPIN
struct  UIMChangePinReq
struct  unblockUIMPIN
struct  UIMUnblockPinReq
struct  UIMEventRegisterReqResp
struct  UIMRefreshOKReq
struct  registerRefresh
struct  UIMRefreshRegisterReq
struct  UIMRefreshCompleteReq
struct  UIMRefreshGetLastEventResp
struct  UIMRefreshGetLastEventReq
struct  UIMGetFileAttributesReq
struct  cardResult
struct  fileAttributes
struct  UIMGetFileAttributesResp
struct  depersonalizationInformation
struct  UIMDepersonalizationReq
struct  UIMDepersonalizationResp
struct  authenticationData
struct  UIMAuthenticateReq
struct  authenticateResult
struct  UIMAuthenticateResp

Defines

#define MAX_DESCRIPTION_LENGTH   255
#define MAX_CONTENT_LENGTH   1024
#define MAX_NO_OF_APPLICATIONS   10
#define MAX_NO_OF_SLOTS   5
#define MAX_PUK_LENGTH   8
#define MAX_PATH_LENGTH   255

Functions

ULONG SLQSUIMReset ()
ULONG SLQSUIMPowerDown (UIMPowerDownReq *pUIMPowerDownReq)
ULONG SLQSUIMGetCardStatus (UIMGetCardStatusResp *pUIMGetCardStatusResp)
ULONG SLQSUIMSetPinProtection (UIMSetPinProtectionReq *pUIMSetPinProtectionReq, UIMPinResp *pUIMSetPinProtectionResp)
ULONG SLQSUIMVerifyPin (UIMVerifyPinReq *pUIMVerifyPinReq, UIMPinResp *pUIMVerifyPinResp)
ULONG SLQSUIMChangePin (UIMChangePinReq *pUIMChangePinReq, UIMPinResp *pUIMChangePinResp)
ULONG SLQSUIMUnblockPin (UIMUnblockPinReq *pUIMUnblockPinReq, UIMPinResp *pUIMUnblockPinResp)
ULONG SLQSUIMEventRegister (UIMEventRegisterReqResp *pUIMEventRegisterReqResp)
ULONG SLQSUIMRefreshOK (UIMRefreshOKReq *pUIMRefreshOKReq)
ULONG SLQSUIMRefreshRegister (UIMRefreshRegisterReq *pUIMRefreshRegisterReq)
ULONG SLQSUIMRefreshComplete (UIMRefreshCompleteReq *pUIMRefreshCompleteReq)
ULONG SLQSUIMRefreshGetLastEvent (UIMRefreshGetLastEventReq *pUIMRefreshGetLastEventReq, UIMRefreshGetLastEventResp *pUIMRefreshGetLastEventResp)
ULONG SLQSUIMGetFileAttributes (UIMGetFileAttributesReq *pUIMGetFileAttributesReq, UIMGetFileAttributesResp *pUIMGetFileAttributesResp)
ULONG SLQSUIMDepersonalization (UIMDepersonalizationReq *pUIMDepersonilizationReq, UIMDepersonalizationResp *pUIMDepersonilizationResp)
ULONG SLQSUIMAuthenticate (UIMAuthenticateReq *pUIMAuthenticateReq, UIMAuthenticateResp *pUIMAuthenticateResp)

Detailed Description

Uim Service API function prototypes.

Copyright: © 2012 Sierra Wireless, Inc. all rights reserved


Define Documentation

#define MAX_CONTENT_LENGTH   1024
#define MAX_DESCRIPTION_LENGTH   255
#define MAX_NO_OF_APPLICATIONS   10
#define MAX_NO_OF_SLOTS   5
#define MAX_PATH_LENGTH   255
#define MAX_PUK_LENGTH   8

Function Documentation

ULONG SLQSUIMAuthenticate ( UIMAuthenticateReq pUIMAuthenticateReq,
UIMAuthenticateResp pUIMAuthenticateResp 
)

This API executes the authentication algorithm on the card.

Parameters:
pUIMAuthenticateReq[IN] 
pUIMAuthenticateResp[OUT] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This API executes a security command on the card that depends on the card type. The response contains the status code received from the card (SW1 and SW2) when the card responded to the read request. The client can pass a token in the request to receive the result in a subsequent SLQSUIMAuthenticateCallback

ULONG SLQSUIMChangePin ( UIMChangePinReq pUIMChangePinReq,
UIMPinResp pUIMChangePinResp 
)

This API changes the value of the specified PIN.

Parameters:
pUIMChangePinReq[IN] 
pUIMChangePinResp[OUT] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This API changes the value of the specified PIN. The application must pass both the new and the old values of the PIN to complete the operation The same PIN can be used by multiple sessions (i.e., the PIN is shared between GSM and RUIM in an ICC card). The PIN is automatically set for all the sessions when the API is executed. The client can pass a token in the request to receive the result in a subsequent SLQSUIMChangePinCallback.

ULONG SLQSUIMDepersonalization ( UIMDepersonalizationReq pUIMDepersonilizationReq,
UIMDepersonalizationResp pUIMDepersonilizationResp 
)

This API de-activates or unblocks the personalization on the phone.

Parameters:
pUIMDepersonilizationReq[IN] 
pUIMDepersonilizationResp[OUT] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This API deactivates or unblocks the personalization on the phone. Each feature can be deactivated/unblocked independently of the other features.

ULONG SLQSUIMEventRegister ( UIMEventRegisterReqResp pUIMEventRegisterReqResp  ) 

This API Registers for event notifications from the card.

Parameters:
pUIMEventRegisterReqResp[IN/OUT] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This function registers for event notifications from the card. The client must verify the mask in the response to determine which events were registered successfully. Events not supported correctly are not registered. The client can deregister from all event notifications by passing "0x00000000" bitmask in the request.

ULONG SLQSUIMGetCardStatus ( UIMGetCardStatusResp pUIMGetCardStatusResp  ) 

This API retrieves the current status of the card.

Parameters:
pUIMGetCardStatusResp[OUT] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This function retrieves the current status of the card and the status of all applications available on the card. The function also returns support information for the hot-swap feature and the status of the switch used to detect a card removal/insertion.

ULONG SLQSUIMGetFileAttributes ( UIMGetFileAttributesReq pUIMGetFileAttributesReq,
UIMGetFileAttributesResp pUIMGetFileAttributesResp 
)

This API retrieves the file attributes for any Elementary File(EF) or Dedicated File(DF) in the card and provides access by the path.

Parameters:
pUIMGetFileAttributesReq[IN] 
pUIMGetFileAttributesResp[OUT] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This API retrieves the file attributes for any Elementary File(EF) or Dedicated File(DF) in the card and provides access by the path. The response contains the status code received from the card (SW1 and SW2) when the card responded to the select request. The client can pass a token in the request to receive the result in a subsequent SLQSUIMGetFileAttributesCallback.

ULONG SLQSUIMPowerDown ( UIMPowerDownReq pUIMPowerDownReq  ) 

This API power downs the SIM card.

Parameters:
pUIMPowerDownReq[IN] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This function powers down the card. This is usually performed when the phone is switched off or when it is set to Airplane mode.

ULONG SLQSUIMRefreshComplete ( UIMRefreshCompleteReq pUIMRefreshCompleteReq  ) 

This API invoked when the client has finished the Refresh procedure.

Parameters:
pUIMRefreshCompleteReq[IN] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This function is invoked when the client has finished the Refresh procedure (has reread all the cached files) and communicates this to the modem. This function enables the terminal response to be sent to the card

ULONG SLQSUIMRefreshGetLastEvent ( UIMRefreshGetLastEventReq pUIMRefreshGetLastEventReq,
UIMRefreshGetLastEventResp pUIMRefreshGetLastEventResp 
)

This API provides the ability to retrieve the last refresh event.

Parameters:
pUIMRefreshGetLastEventReq[IN] 
pUIMRefreshGetLastEventResp[OUT] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This function provides the ability to retrieve the last refresh event. The event information is usually passed in as an indication from the QMI to the application and is saved by the application at that time. If the event information is not saved, the client can retrieve the last refresh event. Details regarding the Refresh procedure (i.e., the stages and actions that an application must complete) are described in document: 80-VM566-1(NAA Refresh High Level Guide )

ULONG SLQSUIMRefreshOK ( UIMRefreshOKReq pUIMRefreshOKReq  ) 

This API Enables the client to indicate whether it is OK to start the Refresh procedure.

Parameters:
pUIMRefreshOKReq 
  • Consist of parameters for SLQSUIMRefreshOK. Please see /ref UIMRefreshOKReq for details.
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This function enables the client to indicate whether it is OK to start the Refresh procedure. This command is used only after a refresh event is received, which indicates the need to vote.

ULONG SLQSUIMRefreshRegister ( UIMRefreshRegisterReq pUIMRefreshRegisterReq  ) 

This API Registers for file change notifications triggered by the card.

Parameters:
pUIMRefreshRegisterReq[IN] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This function registers for file change notifications triggered by the card. The client can specify a list of files. The client is notified only when one of the files is modified by the Refresh procedure. This function can be invoked multiple times for each session type. If the function is invoked twice with the same session type, the new values overwrite the previous values. The client can also use this function to stop receiving indications of the refresh. This API should be invoked prior to the invocation of the SLQSUIMSetRefreshCallBack for the events to be registered.

ULONG SLQSUIMReset (  ) 

This API resets the issuing control points state kept by the service.

Parameters:
None 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

The list of events to which the client is registered is emptied. The client must register again using the SLQSUIMEventReg API to start receiving the events again. This would mean that the callback registrations would be reset after this API.

ULONG SLQSUIMSetPinProtection ( UIMSetPinProtectionReq pUIMSetPinProtectionReq,
UIMPinResp pUIMSetPinProtectionResp 
)

This API enables or disables the protection of the UIM contents by a specific PIN.

Parameters:
pUIMSetPinProtectionReq[IN] 
pUIMSetPinProtectionResp[OUT] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This API enables or disables the protection of UIM contents by a specific PIN. The same PIN can be used by multiple sessions (i.e., the PIN is shared between GSM and RUIM in an ICC card). The PIN is automatically set for all the sessions when the API is executed. The client can pass a token in the request to receive the result in a subsequent SLQSUIMSetPinProtectionCallback indication.

ULONG SLQSUIMUnblockPin ( UIMUnblockPinReq pUIMUnblockPinReq,
UIMPinResp pUIMUnblockPinResp 
)

This API unblocks a blocked PIN using the PUK code.

Parameters:
pUIMUnblockPinReq[IN] 
pUIMUnblockPinResp[OUT] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This API unblocks a blocked PIN using the PUK code. The client must pass PUK1 to unblock PIN1 or PUK2 to unblock PIN2. The same PIN can be used by multiple sessions (i.e., the PIN is shared between GSM and RUIM in an ICC card). The PIN is automatically set for all the sessions when the API is executed. The client can pass a token in the request to receive the result in a subsequent SLQSUIMUnblockPinCallback.

ULONG SLQSUIMVerifyPin ( UIMVerifyPinReq pUIMVerifyPinReq,
UIMPinResp pUIMVerifyPinResp 
)

This API verifies the PIN before the card content is accessed.

Parameters:
pUIMVerifyPinReq[IN] 
pUIMVerifyPinResp[OUT] 
Returns:
eQCWWAN_ERR_NONE on success, eQCWWAN_xxx error value otherwise
See also:
See qmerrno.h for eQCWWAN_xxx error values
Note:
Timeout: 30 Secs

This API verifies the PIN before the card content is accessed. The same PIN can be used by multiple sessions (i.e., the PIN is shared between GSM and RUIM in an ICC card). The PIN is automatically set for all the sessions when the API is executed. The client can pass a token in the request to receive the result in a subsequent SLQSUIMVerifyPinCallback.


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