Go to the documentation of this file.
22 #ifndef OPGP_GLOBALPLATFORM_H
23 #define OPGP_GLOBALPLATFORM_H
36 #define max(a,b) (((a)>(b))?(a):(b))
49 #define APDU_COMMAND_LEN 261
50 #define APDU_RESPONSE_LEN 258
53 static const BYTE OPGP_VISA_DEFAULT_KEY[16] = { 0x40, 0x41, 0x42, 0x43, 0x44,
54 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F };
57 static const BYTE OPGP_GEMXPRESSO_DEFAULT_KEY[16] = { 0x47, 0x45, 0x4d, 0x58,
58 0x50, 0x52, 0x45, 0x53, 0x53, 0x4f, 0x53, 0x41, 0x4d, 0x50, 0x4c, 0x45 };
60 static const BYTE GP211_CARD_MANAGER_AID[7] = { 0xA0, 0x00, 0x00, 0x01, 0x51,
65 static const BYTE GP231_ISD_AID[8] = { 0xA0, 0x00, 0x00, 0x01, 0x51, 0x00, 0x00,
68 static const BYTE GP211_CARD_MANAGER_AID_ALT1[8] = { 0xA0, 0x00, 0x00, 0x00,
69 0x03, 0x00, 0x00, 0x00 };
71 #define GP211_LIFE_CYCLE_LOAD_FILE_LOADED 0x01
72 #define GP211_LIFE_CYCLE_CARD_OP_READY 0x01
73 #define GP211_LIFE_CYCLE_CARD_INITIALIZED 0x07
74 #define GP211_LIFE_CYCLE_CARD_SECURED 0x0f
75 #define GP211_LIFE_CYCLE_CARD_LOCKED 0x7f
76 #define GP211_LIFE_CYCLE_CARD_TERMINATED 0xff
77 #define GP211_LIFE_CYCLE_APPLICATION_INSTALLED 0x03
78 #define GP211_LIFE_CYCLE_APPLICATION_SELECTABLE 0x07
79 #define GP211_LIFE_CYCLE_APPLICATION_LOCKED 0xff
80 #define GP211_LIFE_CYCLE_SECURITY_DOMAIN_INSTALLED 0x03
81 #define GP211_LIFE_CYCLE_SECURITY_DOMAIN_SELECTABLE 0x07
82 #define GP211_LIFE_CYCLE_SECURITY_DOMAIN_PERSONALIZED 0xff
83 #define GP211_LIFE_CYCLE_SECURITY_DOMAIN_LOCKED 0xff
87 #define GP211_MANAGE_CHANNEL_OPEN 0x00
88 #define GP211_MANAGE_CHANNEL_CLOSE 0x80
118 #define GP211_STATUS_APPLICATIONS 0x40
119 #define GP211_STATUS_ISSUER_SECURITY_DOMAIN 0x80
120 #define GP211_STATUS_LOAD_FILES 0x20
121 #define GP211_STATUS_LOAD_FILES_AND_EXECUTABLE_MODULES 0x10
123 #define GP211_STATUS_FORMAT_NEW 0x02
124 #define GP211_STATUS_FORMAT_DEPRECATED 0x00
129 static const BYTE GP211_GET_DATA_ISSUER_IDENTIFICATION_NUMBER[2] = {0x00, 0x42};
130 static const BYTE GP211_GET_DATA_APPLICATION_PROVIDER_IDENTIFICATION_NUMBER[2] = {0x00, 0x42};
132 static const BYTE GP211_GET_DATA_CARD_IMAGE_NUMBER[2] = {0x00, 0x45};
133 static const BYTE GP211_GET_DATA_SECURITY_DOMAIN_IMAGE_NUMBER[2] = {0x00, 0x45};
135 static const BYTE GP211_GET_DATA_ISSUER_SECURITY_DOMAIN_AID[2] = {0x00, 0x4F};
136 static const BYTE GP211_GET_DATA_SECURITY_DOMAIN_AID[2] = {0x00, 0x4F};
137 static const BYTE GP211_GET_DATA_LIST_OF_APPLICATIONS[2] = {0x2F, 0x00};
138 static const BYTE GP211_GET_DATA_EXTENDED_CARD_RESOURCES[2] = {0xFF, 0x21};
140 static const BYTE GP211_GET_DATA_CARD_DATA[2] = {0x00, 0x66};
141 static const BYTE GP211_GET_DATA_SECURITY_DOMAIN_MANAGEMENT_DATA[2] = {0x00, 0x66};
142 static const BYTE GP211_GET_DATA_SEQUENCE_COUNTER_DEFAULT_KEY_VERSION[2] = {0x00, 0xC1};
143 static const BYTE GP211_GET_DATA_CONFIRMATION_COUNTER[2] = {0x00, 0xC2};
144 static const BYTE GP211_GET_DATA_FREE_EEPROM_MEMORY_SPACE[2] = {0x00, 0xC6};
145 static const BYTE GP211_GET_DATA_FREE_COR_RAM[2] = {0x00, 0xC7};
146 static const BYTE GP211_GET_DATA_DIVERSIFICATION_DATA[2] = {0x00, 0xCF};
152 static const BYTE GP211_GET_DATA_KEY_INFORMATION_TEMPLATE[2] = {0x00, 0xE0};
154 static const BYTE GP211_GET_DATA_CPLC_PERSONALIZATION_DATE[2] = {0x9F, 0x66};
155 static const BYTE GP211_GET_DATA_CPLC_PRE_PERSONALIZATION_DATE[2] = {0x9F, 0x67};
156 static const BYTE GP211_GET_DATA_CPLC_ICC_MANUFACTURER_EMBEDDING_DATE[2] = {0x9F, 0x68};
157 static const BYTE GP211_GET_DATA_CPLC_MODULE_FABRICATOR_PACKAGING_DATE[2] = {0x9F, 0x69};
158 static const BYTE GP211_GET_DATA_CPLC_FABRICATION_DATE_SERIAL_NUMBER_BATCH_IDENTIFIER[2] = {0x9F, 0x6A};
183 static const BYTE GP211_GET_DATA_CPLC_WHOLE_CPLC[2] = {0x9F, 0x7F};
185 static const BYTE GP211_GET_DATA_FCI_DATA[2] = {0xBF, 0x0C};
187 static const BYTE GP211_GET_DATA_PROTOCOL[2] = {0xDF, 0x70};
188 static const BYTE GP211_GET_DATA_ATR_HISTRORICAL_BYTES[2] = {0xDF, 0x71};
190 static const BYTE GP211_GET_DATA_EF_PROD_DATA_INITIALIZATION_FINGERPRINT[2] = {0xDF, 0x76};
191 static const BYTE GP211_GET_DATA_EF_PROD_DATA_INITIALIZATION_DATA[2] = {0xDF, 0x77};
192 static const BYTE GP211_GET_DATA_EF_PROD_DATA_PRODUCTION_KEY_INDEX[2] = {0xDF, 0x78};
193 static const BYTE GP211_GET_DATA_EF_PROD_DATA_PROTOCOL_VERSION[2] = {0xDF, 0x79};
194 static const BYTE GP211_GET_DATA_EF_PROD_DATA_CHECKSUM[2] = {0xDF, 0x7A};
195 static const BYTE GP211_GET_DATA_EF_PROD_DATA_SOFTWARE_VERSION[2] = {0xDF, 0x7B};
196 static const BYTE GP211_GET_DATA_EF_PROD_DATA_RFU[2] = {0xDF, 0x7C};
197 static const BYTE GP211_GET_DATA_EF_PROD_DATA_PROFILE_WITH_PROFILE_VERSION[2] = {0xDF, 0x7D};
198 static const BYTE GP211_GET_DATA_EF_PROD_DATA_LOCATION_MACHINE_DATE_TIME[2] = {0xDF, 0x7E};
200 static const BYTE GP211_GET_DATA_WHOLE_EF_PROD[2] = {0xDF, 0x7F};
202 static const BYTE GP211_GET_DATA_KEY_DIVERSIFICATION[2] = {0x00, 0xCF};
206 static const BYTE OP201_CARD_MANAGER_AID[7] = {0xA0, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00};
208 #define OP201_LIFE_CYCLE_LOAD_FILE_LOGICALLY_DELETED 0x00
209 #define OP201_LIFE_CYCLE_LOAD_FILE_LOADED 0x01
210 #define OP201_LIFE_CYCLE_CARD_MANAGER_OP_READY 0x01
211 #define OP201_LIFE_CYCLE_CARD_MANAGER_INITIALIZED 0x07
212 #define OP201_LIFE_CYCLE_CARD_MANAGER_SECURED 0x0f
213 #define OP201_LIFE_CYCLE_CARD_MANAGER_CM_LOCKED 0x7f
214 #define OP201_LIFE_CYCLE_CARD_MANAGER_TERMINATED 0xff
215 #define OP201_LIFE_CYCLE_APPLICATION_LOGICALLY_DELETED 0x00
216 #define OP201_LIFE_CYCLE_APPLICATION_INSTALLED 0x03
217 #define OP201_LIFE_CYCLE_APPLICATION_SELECTABLE 0x07
218 #define OP201_LIFE_CYCLE_APPLICATION_PERSONALIZED 0x0f
219 #define OP201_LIFE_CYCLE_APPLICATION_BLOCKED 0x7f
220 #define OP201_LIFE_CYCLE_APPLICATION_LOCKED 0xff
236 #define OP201_STATUS_APPLICATIONS 0x40
237 #define OP201_STATUS_CARD_MANAGER 0x80
238 #define OP201_STATUS_LOAD_FILES 0x20
242 static const BYTE OP201_GET_DATA_ISSUER_BIN[2] = {0x00, 0x42};
243 static const BYTE OP201_GET_DATA_APPLICATION_PROVIDER_IDENTIFICATION_NUMBER[2] = {0x00, 0x42};
245 static const BYTE OP201_GET_DATA_ISSUER_DATA[2] = {0x00, 0x45};
246 static const BYTE OP201_GET_DATA_SECURITY_DOMAIN_IMAGE_NUMBER[2] = {0x00, 0x45};
248 static const BYTE OP201_GET_DATA_CARD_MANAGER_AID[2] = {0x00, 0x4F};
249 static const BYTE OP201_GET_DATA_SECURITY_DOMAIN_AID[2] = {0x00, 0x4F};
251 static const BYTE OP201_GET_DATA_CARD_RECOGNITION_DATA[2] = {0x00, 0x66};
252 static const BYTE OP201_GET_DATA_SEQUENCE_COUNTER_DEFAULT_KEY_VERSION[2] = {0x00, 0xC1};
253 static const BYTE OP201_GET_DATA_CONFIRMATION_COUNTER[2] = {0x00, 0xC2};
254 static const BYTE OP201_GET_DATA_FREE_EEPROM_MEMORY_SPACE[2] = {0x00, 0xC6};
255 static const BYTE OP201_GET_DATA_FREE_COR_RAM[2] = {0x00, 0xC7};
256 static const BYTE OP201_GET_DATA_DIVERSIFICATION_DATA[2] = {0x00, 0xCF};
262 static const BYTE OP201_GET_DATA_KEY_INFORMATION_TEMPLATE[2] = {0x00, 0xE0};
264 static const BYTE OP201_GET_DATA_CPLC_PERSONALIZATION_DATE[2] = {0x9F, 0x66};
265 static const BYTE OP201_GET_DATA_CPLC_PRE_PERSONALIZATION_DATE[2] = {0x9F, 0x67};
266 static const BYTE OP201_GET_DATA_CPLC_ICC_MANUFACTURER_EMBEDDING_DATE[2] = {0x9F, 0x68};
267 static const BYTE OP201_GET_DATA_CPLC_MODULE_FABRICATOR_PACKAGING_DATE[2] = {0x9F, 0x69};
268 static const BYTE OP201_GET_DATA_CPLC_FABRICATION_DATE_SERIAL_NUMBER_BATCH_IDENTIFIER[2] = {0x9F, 0x6A};
269 static const BYTE OP201_GET_DATA_CPLC_WHOLE_CPLC[2] = {0x9F, 0x7F};
271 static const BYTE OP201_GET_DATA_FCI_DATA[2] = {0xBF, 0x0C};
273 static const BYTE OP201_GET_DATA_PROTOCOL[2] = {0xDF, 0x70};
274 static const BYTE OP201_GET_DATA_ATR_HISTRORICAL_BYTES[2] = {0xDF, 0x71};
276 static const BYTE OP201_GET_DATA_EF_PROD_DATA_INITIALIZATION_FINGERPRINT[2] = {0xDF, 0x76};
277 static const BYTE OP201_GET_DATA_EF_PROD_DATA_INITIALIZATION_DATA[2] = {0xDF, 0x77};
278 static const BYTE OP201_GET_DATA_EF_PROD_DATA_PRODUCTION_KEY_INDEX[2] = {0xDF, 0x78};
279 static const BYTE OP201_GET_DATA_EF_PROD_DATA_PROTOCOL_VERSION[2] = {0xDF, 0x79};
280 static const BYTE OP201_GET_DATA_EF_PROD_DATA_CHECKSUM[2] = {0xDF, 0x7A};
281 static const BYTE OP201_GET_DATA_EF_PROD_DATA_SOFTWARE_VERSION[2] = {0xDF, 0x7B};
282 static const BYTE OP201_GET_DATA_EF_PROD_DATA_RFU[2] = {0xDF, 0x7C};
283 static const BYTE OP201_GET_DATA_EF_PROD_DATA_PROFILE_WITH_PROFILE_VERSION[2] = {0xDF, 0x7D};
284 static const BYTE OP201_GET_DATA_EF_PROD_DATA_LOCATION_MACHINE_DATE_TIME[2] = {0xDF, 0x7E};
286 static const BYTE OP201_GET_DATA_WHOLE_EF_PROD[2] = {0xDF, 0x7F};
288 #define OPGP_DERIVATION_METHOD_NONE 0
289 #define OPGP_DERIVATION_METHOD_VISA2 1
290 #define OPGP_DERIVATION_METHOD_EMV_CPS11 2
291 #define OPGP_DERIVATION_METHOD_VISA1 3
293 #define OPGP_WORK_UNKNOWN -1
294 #define OPGP_TASK_FINISHED 1
296 #define INIT_PROGRESS_CALLBACK_PARAMETERS(callbackParameters, callback) if (callback != NULL) {callbackParameters.parameters = callback->parameters; \
297 callbackParameters.finished = !OPGP_TASK_FINISHED;}
407 BYTE keyIndex,
BYTE secureChannelProtocol,
408 BYTE secureChannelProtocolImpl,
415 BYTE secureChannelProtocolImpl,
BYTE sequenceCounter[2],
434 BYTE *secureChannelProtocol,
BYTE *secureChannelProtocolImpl);
439 BYTE sequenceCounter[2]);
464 BYTE keySetVersion,
BYTE keyIndex,
BYTE newKeySetVersion,
BYTE _3DESKey[16]);
474 BYTE keySetVersion,
BYTE newKeySetVersion,
BYTE baseKey[16],
485 BYTE keyInformationTemplate,
497 PBYTE executableLoadFileAID,
DWORD executableLoadFileAIDLength,
498 PBYTE securityDomainAID,
499 DWORD securityDomainAIDLength,
BYTE loadFileDataBlockHash[20],
BYTE loadToken[128],
500 DWORD nonVolatileCodeSpaceLimit,
DWORD volatileDataSpaceLimit,
501 DWORD nonVolatileDataSpaceLimit);
506 DWORD securityDomainAIDLength,
507 PBYTE applicationAID,
DWORD applicationAIDLength,
508 PBYTE extraditionTokenSignatureData,
509 PDWORD extraditionTokenSignatureDataLength);
514 PBYTE securityDomainAID,
515 DWORD securityDomainAIDLength,
BYTE loadFileDataBlockHash[20],
516 DWORD nonVolatileCodeSpaceLimit,
DWORD volatileDataSpaceLimit,
517 DWORD nonVolatileDataSpaceLimit,
PBYTE loadTokenSignatureData,
518 PDWORD loadTokenSignatureDataLength);
523 DWORD executableLoadFileAIDLength,
524 PBYTE executableModuleAID,
DWORD executableModuleAIDLength,
525 PBYTE applicationAID,
DWORD applicationAIDLength,
526 BYTE applicationPrivileges,
DWORD volatileDataSpaceLimit,
527 DWORD nonVolatileDataSpaceLimit,
PBYTE installParameters,
528 DWORD installParametersLength,
PBYTE installTokenSignatureData,
529 PDWORD installTokenSignatureDataLength);
534 PBYTE securityDomainAID,
535 DWORD securityDomainAIDLength,
BYTE loadFileDataBlockHash[20],
536 DWORD nonVolatileCodeSpaceLimit,
DWORD volatileDataSpaceLimit,
537 DWORD nonVolatileDataSpaceLimit,
BYTE loadToken[128],
543 PBYTE executableModuleAID,
544 DWORD executableModuleAIDLength,
PBYTE applicationAID,
545 DWORD applicationAIDLength,
BYTE applicationPrivileges,
546 DWORD volatileDataSpaceLimit,
DWORD nonVolatileDataSpaceLimit,
547 PBYTE installParameters,
DWORD installParametersLength,
553 BYTE hash[32],
BYTE secureChannelProtocol);
571 PBYTE executableLoadFileAID,
DWORD executableLoadFileAIDLength,
PBYTE executableModuleAID,
572 DWORD executableModuleAIDLength,
PBYTE applicationAID,
DWORD applicationAIDLength,
573 BYTE applicationPrivileges,
DWORD volatileDataSpaceLimit,
DWORD nonVolatileDataSpaceLimit,
574 PBYTE installParameters,
DWORD installParametersLength,
580 PBYTE applicationAID,
DWORD applicationAIDLength,
581 BYTE applicationPrivileges,
BYTE installToken[128],
587 PBYTE executableLoadFileAID,
DWORD executableLoadFileAIDLength,
PBYTE executableModuleAID,
588 DWORD executableModuleAIDLength,
PBYTE applicationAID,
589 DWORD applicationAIDLength,
BYTE applicationPrivileges,
590 DWORD volatileDataSpaceLimit,
DWORD nonVolatileDataSpaceLimit,
591 PBYTE installParameters,
DWORD installParametersLength,
598 PBYTE applicationAID,
599 DWORD applicationAIDLength);
604 PBYTE securityDomainAID,
605 DWORD securityDomainAIDLength,
PBYTE applicationAID,
606 DWORD applicationAIDLength,
608 PDWORD receiptDataAvailable);
614 BYTE newKeySetVersion,
616 BYTE receiptKey[16]);
627 PBYTE securityDomainAID,
628 DWORD securityDomainAIDLength,
640 DWORD cardUniqueDataLength,
647 DWORD cardUniqueDataLength,
649 PBYTE executableLoadFileAID,
DWORD executableLoadFileAIDLength,
650 PBYTE applicationAID,
DWORD applicationAIDLength,
BYTE secureChannelProtocol);
655 DWORD cardUniqueDataLength,
657 PBYTE executableLoadFileAID,
DWORD executableLoadFileAIDLength,
658 PBYTE securityDomainAID,
DWORD securityDomainAIDLength,
BYTE secureChannelProtocol);
662 DWORD cardUniqueDataLength,
664 PBYTE oldSecurityDomainAID,
DWORD oldSecurityDomainAIDLength,
665 PBYTE newSecurityDomainAID,
DWORD newSecurityDomainAIDLength,
666 PBYTE applicationOrExecutableLoadFileAID,
667 DWORD applicationOrExecutableLoadFileAIDLength,
BYTE secureChannelProtocol);
672 BYTE openClose,
BYTE channelNumberToClose,
673 BYTE *channelNumberOpened);
696 BYTE kekKey[16],
BYTE keySetVersion,
697 BYTE keyIndex,
BYTE securityLevel,
BYTE derivationMethod,
718 BYTE keySetVersion,
BYTE keyIndex,
BYTE newKeySetVersion,
BYTE _3desKey[16]);
728 BYTE keySetVersion,
BYTE newKeySetVersion,
729 BYTE new_encKey[16],
BYTE new_macKey[16],
BYTE new_KEK[16]);
739 BYTE keyInformationTemplate,
751 PBYTE executableLoadFileAID,
DWORD executableLoadFileAIDLength,
PBYTE securityDomainAID,
752 DWORD securityDomainAIDLength,
BYTE loadFileDAP[20],
BYTE loadToken[128],
753 DWORD nonVolatileCodeSpaceLimit,
DWORD volatileDataSpaceLimit,
754 DWORD nonVolatileDataSpaceLimit);
759 PBYTE securityDomainAID,
DWORD securityDomainAIDLength,
760 BYTE loadFileDAP[20],
DWORD nonVolatileCodeSpaceLimit,
761 DWORD volatileDataSpaceLimit,
DWORD nonVolatileDataSpaceLimit,
762 PBYTE loadTokenSignatureData,
PDWORD loadTokenSignatureDataLength);
767 PBYTE AIDWithinLoadFileAID,
DWORD AIDWithinLoadFileAIDLength,
768 PBYTE applicationInstanceAID,
DWORD applicationInstanceAIDLength,
769 BYTE applicationPrivileges,
DWORD volatileDataSpaceLimit,
770 DWORD nonVolatileDataSpaceLimit,
PBYTE applicationInstallParameters,
771 DWORD applicationInstallParametersLength,
PBYTE installTokenSignatureData,
772 PDWORD installTokenSignatureDataLength);
777 DWORD securityDomainAIDLength,
BYTE loadFileDAP[20],
778 DWORD nonVolatileCodeSpaceLimit,
DWORD volatileDataSpaceLimit,
779 DWORD nonVolatileDataSpaceLimit,
BYTE loadToken[128],
785 DWORD AIDWithinLoadFileAIDLength,
PBYTE applicationInstanceAID,
786 DWORD applicationInstanceAIDLength,
BYTE applicationPrivileges,
787 DWORD volatileDataSpaceLimit,
DWORD nonVolatileDataSpaceLimit,
788 PBYTE applicationInstallParameters,
DWORD applicationInstallParametersLength,
794 OPGP_STRING executableLoadFileName,
unsigned char hash[20]);
812 PBYTE executableLoadFileAID,
DWORD executableLoadFileAIDLength,
PBYTE AIDWithinLoadFileAID,
813 DWORD AIDWithinLoadFileAIDLength,
PBYTE applicationInstanceAID,
DWORD applicationInstanceAIDLength,
814 BYTE applicationPrivileges,
DWORD volatileDataSpaceLimit,
DWORD nonVolatileDataSpaceLimit,
815 PBYTE applicationInstallParameters,
DWORD applicationInstallParametersLength,
821 PBYTE applicationInstanceAID,
DWORD applicationInstanceAIDLength,
822 BYTE applicationPrivileges,
BYTE installToken[128],
828 DWORD AIDWithinLoadFileAIDLength,
PBYTE applicationInstanceAID,
829 DWORD applicationInstanceAIDLength,
BYTE applicationPrivileges,
830 DWORD volatileDataSpaceLimit,
DWORD nonVolatileDataSpaceLimit,
831 PBYTE applicationInstallParameters,
DWORD applicationInstallParametersLength,
838 BYTE newKeySetVersion,
840 BYTE receiptGenerationKey[16]);
868 PBYTE executableLoadFileAID,
DWORD executableLoadFileAIDLength,
869 PBYTE applicationInstanceAID,
DWORD applicationInstanceAIDLength);
875 PBYTE executableLoadFileAID,
DWORD executableLoadFileAIDLength,
876 PBYTE securityDomainAID,
DWORD securityDomainAIDLength);
unsigned long * PDWORD
A Microsoft LPDWORD/Muscle pointer to a DWORD.
Definition: types.h:50
Definition: globalplatform.h:351
unsigned char * PBYTE
A Microsoft/Muscle LPBYTE, pointer to unsigned char.
Definition: types.h:48
Definition: connection.h:69
DWORD currentWork
The current work which is done. If not known this contains OPGP_WORK_UNKNOWN.
Definition: globalplatform.h:303
BYTE numAppletAIDs
The number of applets contained in the Load File.
Definition: globalplatform.h:342
OPGP_AID loadFileAID
The AID of the Load File.
Definition: globalplatform.h:341
unsigned char BYTE
A Microsoft/Muscle BYTE definition.
Definition: types.h:51
PVOID callback
The callback function. The must accept a OPGP_PROGRESS_CALLBACK_PARAMETERS parameter and return void,...
Definition: globalplatform.h:313
Definition: security.h:203
Definition: globalplatform.h:339
DWORD loadFileSize
The size of the Load File.
Definition: globalplatform.h:340
Definition: security.h:231
Definition: globalplatform.h:312
OPGP_AID associatedSecurityDomainAID
The associated Security Domain's AID.
Definition: globalplatform.h:368
Definition: globalplatform.h:329
OPGP_AID aid
The Executable Load File AID.
Definition: globalplatform.h:363
void * PVOID
Pointer definition.
Definition: types.h:36
unsigned long DWORD
A Microsoft/Muscle DWORD definition.
Definition: types.h:52
DWORD totalWork
The total work which needs to be done. If not known this contains OPGP_WORK_UNKNOWN.
Definition: globalplatform.h:304
BYTE numExecutableModules
Number of associated Executable Modules.
Definition: globalplatform.h:366
PVOID parameters
Proprietary parameters for the callback function. Passed in when the function is called.
Definition: globalplatform.h:314
PVOID parameters
Proprietary parameters for the function passed in with OPGP_PROGRESS_CALLBACK.
Definition: globalplatform.h:306
Definition: globalplatform.h:320
Definition: security.h:280
const typedef char * OPGP_CSTRING
A Microsoft/Muscle LPCTSTR.
Definition: types.h:47
OPGP_AID aid
The AID.
Definition: globalplatform.h:352
Definition: globalplatform.h:302
Definition: security.h:188
char * OPGP_STRING
A Microsoft/Muscle LPTSTR.
Definition: types.h:46
BYTE AIDLength
The length of the AID.
Definition: globalplatform.h:321
Definition: security.h:243
OP201_APPLICATION_PRIVILEGES privileges
The Card Manager or application privileges.
Definition: globalplatform.h:332
Definition: globalplatform.h:362
Definition: connection.h:80
BYTE lifeCycleState
The Issuer Security Domain, Security Domains, Executable Load Files and Application life cycle state.
Definition: globalplatform.h:353
Definition: security.h:269
BYTE lifeCycleState
The Executable Load File life cycle state.
Definition: globalplatform.h:364
GP211_APPLICATION_PRIVILEGES privileges
The Issuer Security Domain, Security Domains or Application privileges. Has no meaning for Executable...
Definition: globalplatform.h:354
BYTE lifeCycleState
The Card Manager, Executable Load File or application life cycle state.
Definition: globalplatform.h:331
DWORD finished
Task is finished. If finished contains OPGP_TASK_FINISHED.
Definition: globalplatform.h:305
OPGP_AID aid
The AID.
Definition: globalplatform.h:330
OPGP_AID associatedSecurityDomainAID
The associated Security Domain's AID.
Definition: globalplatform.h:356