X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/53d5dc643f592124676b4290c8f81e6039e9abc7..00baf27097ca945936d52afde1f8da831decbe59:/armsrc/emvdataels.h diff --git a/armsrc/emvdataels.h b/armsrc/emvdataels.h index ad46e9f4..cb714791 100644 --- a/armsrc/emvdataels.h +++ b/armsrc/emvdataels.h @@ -4,16 +4,20 @@ #include -typedef struct tagdescription tagdescription; +//Known AIDs +typedef struct { + uint8_t tag[2]; + char description[255]; +} __attribute__((__packed__)) tagdescription_t; //Known AIDs extern const uint8_t AID_VISA[5]; -extern const uint8_t AID_VISA_DB[7] ; -extern const uint8_t AID_VISA_C[8] ; -extern const uint8_t AID_VISA_D[8] ; -extern const uint8_t AID_VISA_E[7] ; -extern const uint8_t AID_VISA_I[7] ; -extern const uint8_t AID_VISA_P[7] ; +extern const uint8_t AID_VISA_DB[7]; +extern const uint8_t AID_VISA_C[8]; +extern const uint8_t AID_VISA_D[8]; +extern const uint8_t AID_VISA_E[7]; +extern const uint8_t AID_VISA_I[7]; +extern const uint8_t AID_VISA_P[7]; extern const uint8_t AID_VISA_ATM[8]; extern const uint8_t AID_MASTERCARD[7]; extern const uint8_t AID_MAESTRO[7]; @@ -21,22 +25,23 @@ extern const uint8_t AID_MAESTRO_UK[7]; extern const uint8_t AID_MAESTRO_TEST[5]; extern const uint8_t AID_SELF_SERVICE[6]; extern const uint8_t AID_AMEX[5]; -extern const uint8_t AID_EXPRESSPAY[]; +extern const uint8_t AID_EXPRESSPAY[8]; extern const uint8_t AID_LINK[7]; extern const uint8_t AID_ALIAS[7]; //Master data file for PSE -extern const uint8_t DF_PSE[]; -extern const tagdescription EMV_TAG_LIST[62]; //SW1 return values -extern const uint8_t SW1_RESPONSE_BYTES[]; -extern const uint8_t SW1_WRONG_LENGTH[] ; -extern const uint8_t SW12_OK[]; -extern const uint8_t SW12_NOT_SUPPORTED[] ; -extern const uint8_t SW12_NOT_FOUND[]; -extern const uint8_t SW12_COND_NOT_SAT[]; -extern const uint8_t PIN_BLOCKED[] ; -extern const uint8_t PIN_BLOCKED2[] ; -extern const uint8_t PIN_WRONG[] ; +extern const uint8_t DF_PSE[14]; +extern const uint8_t SW1_RESPONSE_BYTES[1]; +extern const uint8_t SW1_WRONG_LENGTH[1]; +extern const uint8_t SW12_OK[2]; +extern const uint8_t SW12_NOT_SUPPORTED[2]; +extern const uint8_t SW12_NOT_FOUND[2]; +extern const uint8_t SW12_COND_NOT_SAT[2]; +extern const uint8_t PIN_BLOCKED[2]; +extern const uint8_t PIN_BLOCKED2[2]; +extern const uint8_t PIN_WRONG[1]; + +extern const tagdescription_t EMV_TAG_LIST[62]; //SW1 return values //AIP bitmasks details #define AIP_CHIP_SUPPORTED 0x80