16 NO_PKCS15_APP = 0x6200,
18 PIN_DEACTIVATED = 0x6283,
19 FCI_NO_ISO7816_4 = 0x6284,
20 VERIFICATION_FAILED = 0x6300,
21 INPUT_TIMEOUT = 0x6400,
22 INPUT_CANCELLED = 0x6401,
23 PASSWORDS_DIFFER = 0x6402,
24 PASSWORD_OUTOF_RANGE = 0x6403,
25 CARD_EJECTED_AND_REINSERTED = 0x64A2,
26 EEPROM_CELL_DEFECT = 0x6581,
27 SECURITY_ENVIRONMENT = 0x6600,
29 NO_BINARY_FILE = 0x6981,
30 LAST_CHAIN_CMD_EXPECTED = 0x6883,
31 ACCESS_DENIED = 0x6982,
32 PASSWORD_COUNTER_EXPIRED = 0x6983,
33 DIRECTORY_OR_PASSWORD_LOCKED_OR_NOT_ALLOWED = 0x6984,
34 NO_PARENT_FILE = 0x6985,
35 NOT_YET_INITIALIZED = 0x6985,
36 NO_CURRENT_DIRECTORY_SELECTED = 0x6986,
37 DATAFIELD_EXPECTED = 0x6987,
38 INVALID_SM_OBJECTS = 0x6988,
39 COMMAND_NOT_ALLOWED = 0x69F0,
40 INVALID_DATAFIELD = 0x6A80,
41 ALGORITHM_ID = 0x6A81,
42 FILE_NOT_FOUND = 0x6A82,
43 RECORD_NOT_FOUND = 0x6A83,
44 INVALID_PARAMETER = 0x6A86,
45 LC_INCONSISTANT = 0x6A87,
46 PASSWORD_NOT_FOUND = 0x6A88,
47 ILLEGAL_OFFSET = 0x6B00,
48 UNSUPPORTED_CLA = 0x6E00,
49 CANT_DISPLAY = 0x6410,
50 INVALID_P1P2 = 0x6A00,
51 UNSUPPORTED_INS = 0x6D00,
53 PIN_SUSPENDED = 0x63C1,
54 PIN_RETRY_COUNT_2 = 0x63C2,
55 INITIAL_PIN_BLOCKED = 0x63D0,
56 INITIAL_PIN_RETRY_COUNT_1 = 0x63D1,
57 INITIAL_PIN_RETRY_COUNT_2 = 0x63D2,
58 INITIAL_PIN_RETRY_COUNT_3 = 0x63D3
82 class ResponseApdu final
89 explicit ResponseApdu(StatusCode pStatusCode,
const QByteArray& pData = QByteArray());
90 explicit ResponseApdu(
const QByteArray& pBuffer = QByteArray());
92 [[nodiscard]]
bool isEmpty()
const;
93 [[nodiscard]]
const QByteArray& getData()
const;
94 [[nodiscard]] StatusCode getStatusCode()
const;
95 [[nodiscard]] QByteArray getStatusBytes()
const;
96 [[nodiscard]] SW1 getSW1()
const;
97 [[nodiscard]]
char getSW2()
const;
99 operator QByteArray()
const;
103 inline QDebug
operator<<(QDebug pDbg,
const ResponseApdu& pResponseApdu)
105 QDebugStateSaver saver(pDbg);
106 pDbg << QByteArray(pResponseApdu).toHex();
121 inline bool operator==(
const ResponseApdu& pLeft,
const ResponseApdu& pRight)
123 return QByteArray(pLeft) == QByteArray(pRight);
A simple template renderer.
Definition: ActivationContext.h:15
quint8
Definition: ResponseApdu.h:62
UNKNOWN
Definition: ResponseApdu.h:63
WRONG_PARAMETERS_P1_P2_NO_INFO
Definition: ResponseApdu.h:74
WRONG_LENGTH
Definition: ResponseApdu.h:70
MORE_DATA_AVAILABLE
Definition: ResponseApdu.h:64
defineTypedEnumType(Ins, uchar, UNKNOWN=0x00, DEACTIVATE=0x04, MSE_SET=0x22, ACTIVATE=0x44, EXTERNAL_AUTHENTICATE=0x82, GET_CHALLENGE=0x84, GENERAL_AUTHENTICATE=0x86, PSO_VERIFY=0x2A, PSO_COMPUTE=0x2B, RESET_RETRY_COUNTER=0x2C, SELECT=0xA4, READ_BINARY=0xB0, GET_RESPONSE=0xC0, UPDATE_BINARY=0xD6) class CommandApdu
Definition: CommandApdu.h:17
WRONG_PARAMETERS_P1_P2
Definition: ResponseApdu.h:73
FUNCTIONS_IN_CLASS_NOT_SUPPORTED
Definition: ResponseApdu.h:71
NONVOLATILE_MEMORY_CHANGED_2
Definition: ResponseApdu.h:68
SECURITY_ISSUE
Definition: ResponseApdu.h:69
WRONG_LE_FIELD
Definition: ResponseApdu.h:75
NONVOLATILE_MEMORY_UNCHANGED_1
Definition: ResponseApdu.h:65
ERROR_COMMAND_NOT_ALLOWED
Definition: ResponseApdu.h:72
INSTRUCTION_CODE_INVALID
Definition: ResponseApdu.h:76
QDebug operator<<(QDebug pDbg, const CommandApdu &pCommandApdu)
Definition: CommandApdu.h:91
NO_PRECISE_DIAGNOSIS
Definition: ResponseApdu.h:78
NONVOLATILE_MEMORY_UNCHANGED_2
Definition: ResponseApdu.h:67
NONVOLATILE_MEMORY_CHANGED_1
Definition: ResponseApdu.h:66
char * toString(const CommandApdu &pCommandApdu)
CLASS_NOT_SUPPORTED
Definition: ResponseApdu.h:77
bool operator==(const CommandApdu &pLeft, const CommandApdu &pRight)
Definition: CommandApdu.h:102
SUCCESS
Definition: ResponseApdu.h:79
Definition: ResponseApdu.h:115
CardReturnCode mReturnCode
Definition: ResponseApdu.h:116
ResponseApdu mResponseApdu
Definition: ResponseApdu.h:117