-
Notifications
You must be signed in to change notification settings - Fork 26
/
Copy pathstatus.H
187 lines (174 loc) · 12.5 KB
/
status.H
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
#ifndef STATUS_H
#define STATUS_H
#define STAT_OK 0 // OK
#define STAT_NOT_IMPLEMENTED_YET 1 // REQUESTED BEHAVIOUR NOT IMPLEMENTED YET
#define STAT_SESSION_NOT_OPEN 2 // SESSION IS NOT OPEN, TRY TO OPEN SESSION BEFORE CALLING THIS FUNCTION
#define STAT_NOT_ENOUGHT_MEMORY 3 // NOT ENOUGHT MEMORY TO COMPLETE REQUESTED OPERATION, TRY TO INCREASE GIVEN MEMORY BUFFER SIZE
#define STAT_CHANNEL_SECURITY_NOT_ACHIEVED 4 // LOGICAL CHANNEL SECURITY NOT ACHIVED TO REQUESTED LEVEL
#define STAT_CHANNEL_DESTROY_FAIL 5 // FAIL TO DESTROY LOGICAL CHANNEL
#define STAT_CHANNEL_NOT_EXISTS 6 // LOGICAL CHANNEL NOT EXIST YET, TRY TO CREATE CHANNEL BEFORE CALLING THIS FUNCTION
#define STAT_INCORRECT_HWT 7 // INCORRECT TARGET HARDWARE TOKEN
#define STAT_INCORRECT_SWA 8 // INCORRECT TARGET SOFTWARE AGENT
#define STAT_DATA_CORRUPTED 10 // GIVEN DATA ARE NOT IN EXPECTED FORMAT
#define STAT_DATA_INCORRECT_LENGTH 11 // LENGTH OF GIVEN DATA IS INCORRECT
#define STAT_KEY_SCHEDULE_FAIL 12 // FAIL TO SCHEDULE CIPHER KEY MATERIAL
#define STAT_CIPHER_INIT_FAIL 13 // FAIL TO INICIALIZE CIPHER ENGINE
#define STAT_ENCRYPT_FAIL 14 // FAIL TO COMPLETE ENCRYPTION OPERATION
#define STAT_DECRYPT_FAIL 15 // FAIL TO COMPLETE DECRYPTION OPERATION
#define STAT_FILE_OPEN_FAIL 16 // FAIL TO OPEN TARGET FILE
#define STAT_SEAUT_FRESHNESS_FAIL 17 // MESSAGE RECIEVED DURING SEAUT PROTOCOL IS NOT FRESH, ACCIDENTAL DAMAGE OF DATA OR REPLAY ATTACK DETECTED
#define STAT_NO_CONNECTION 18 // NO EXISTING CONNECTION, TRY TO ESTABILISH CONNECTION BEFORE CALLING THIS FUNCTION
#define STAT_NOT_ENOUGHT_DATA_TYPE 20 // GIVEN DATA VARIABLE IS UNABLE TO CONTAIN RETURN VALUE
#define STAT_LICENCE_TOO_LONG 21 // LICENCE LENGTH IS BIGGER THAN MAX. ALLOWED
#define STAT_RESPONSE_DATA_LENGTH_BAD 22 // RESPONSE DATA LENGTH DIFFERS FROM EXPECTED
#define STAT_USERDATA_BAD 23 // DATA OBTAINED FROM USER INPUT ARE INVALID
#define STAT_KEY_LENGTH_BAD 24 // KEY LENGTH DIFFERS FROM EXPECTED
#define STAT_DATA_TOO_LONG 25 // DATA LENGTH IS BIGGER THAN MAX. ALLOWED
#define STAT_INI_DATA_WRITE_FAIL 26 // FAIL TO WRITE DATA INTO INI FILE
#define STAT_INI_DATA_READ_FAIL 27 // FAIL TO READ DATA FROM INI FILE
#define STAT_CODING_NOT_BIJECT 28
#define STAT_CODING_ALREADY_ASSIGNED 29
#define STAT_CONFIG_SCRIPT_INCOMPLETE 30 // MISSING ITEMS IN CONFIGURATION SCRIPT
#define STAT_IOC_CORRUPTED 31 // I/O CODINGS FORMAT INCORRECT
#define STAT_LOAD_AUTH_FNC_FAIL 32
#define STAT_LOAD_LIBRARY_FAIL 33
#define STAT_SCARD_ERROR 34 // SCARD FUNCTIONS ERROR OCCURED. ERROR VALUE SHOULD BE STORED SOMEWHERE IN OBJECT (::GetLastSCardError())
#define STAT_FULL_PATH_FAIL 35 // FAIL TO CREATE FULL FILE PATH
#define STAT_UNKNOWN_SCARD_PROTOCOL 36
#define STAT_OPERATION_CANCELED 37 // OPERATION WAS CANCELED BY USER
#define STAT_STRING_NOT_FOUND 38
#define STAT_COORDINATES_EXCEEDS 39 // COORDINATES EXCEEDS INTERNAL BOUNDS
#define STAT_NODE_NOT_EXISTS 40
#define STAT_NO_SUCH_NEIGHBOUR 41
#define STAT_PORT_DRIVER_INIT_FAIL 42 // FAIL TO INITIALIZE PORT DRIVER
#define STAT_SOFT_KILLED 43 // FUNCTION INTERRUPTED BY SOFT KILL SIGNAL
#define STAT_DEPLOY_INTEGRITY_BAD 44
#define STAT_BS_SELECTRULEUNKNOWN 45 // UNKNOWN SELECTION RULE FOR ACTIVE BASE STATION
#define STAT_BS_ROUTESTRATEGYUNKNOWN 46 // UNKNOWN ROUTING STRATEGY
#define STAT_WRONG_PADDING 47
#define STAT_WRONG_NONCE 48
#define STAT_DATA_NOT_ALIGNED 100 // DATA TO PROCESSING ARE NOT ALLIGNED TO EXPECTED LENGTH
#define STAT_INTERNAL_ERROR 101 // UNSPECIFIC INTERNAL ERROR, SEE ERROR MESSAGES
#define STAT_DIVISION_BY_ZERO 102
#define STAT_DATA_INCORRECT_LIMITS 103
#define STAT_VALUE_NOT_READ 104
#define STAT_VALUE_NOT_SET 105
#define STAT_UNKNOWN_VALUE 106
#define STAT_DLG_NOT_EXISTS 107 // DIALOG DO NOT EXISTS
#define STAT_CAP_UPLOAD_FAILED 108
#define STAT_NOT_HEXA_CHARACTER 109
#define STAT_VALUE_NOT_FOUND 110
#define STAT_CANCEL 200 // USER CANCEL
// MY OWN APPLET ERRORS
#define SW_SECURITY_NOT_SATISFIED 0x6680 // PIN IS BLOCKED NOW
#define SW_USAGE_UPDATE_FAIL 0x6681 // FAIL TO UPDATE ALGORITHM USAGE COUNTER
#define SW_USAGE_NOT_ALLOWED 0x6682 // UPDATE OF ALGORITHM USAGE COUNTER IS NOT ALLOWED
#define SW_ALG_UUID_NOT_UNIQUE 0x6683 // ALGORITHM WITH GIVEN UUID ALREADY EXISTS
#define SW_ALG_CONTAINER_FULL 0x6684 // NO MORE ALGORITHMS CAN BE CREATED
#define SW_ALG_UUID_NOT_FOUND 0x6685 // ALGORITHM WITH GIVEN UUID NOT EXISTS
#define SW_SWA_UUID_NOT_UNIQUE 0x6686 // SOFTWARE AGENT'S PROFILE WITH GIVEN UUID ALREADY EXISTS
#define SW_SWA_CONTAINER_FULL 0x6687 // NO MORE SOFTWARE AGENT PROFILES CAN BE CREATED
#define SW_BAD_KEY 0x6688 // INCORRECT KEY
#define SW_ALG_TYPE_UNKNOWN 0x6689 // UNKNOWN TYPE OF NEW ALGORITHM (GIVEN IN MASTER LICENCE)
#define SW_ALG_UUID_BAD_LENGTH 0x6690 // BAD LENGTH OF ALGORITHM UUID
#define SW_SWA_UUID_BAD_LENGTH 0x6691 // BAD LENGTH OF SOFTWARE AGENT PROFILE UUID
#define SW_HWT_UUID_BAD 0x6692 // GIVEN HARDWARE TOKEN UUID IS INCORRECT
#define SW_SWA_UUID_BAD 0x6693 // GIVEN SOFTWARE AGENT UUID IS INCORRECT
#define SW_XML_UNEXPECTED_ELEM 0x6694 // UNEXPECTED XML ELEMENT FOUND DURING LICENCE PARSING
#define SW_XML_UNEXPECTED_END 0x6695 // UNEXPECTED END OF XML ELEMENT FOUND DURING LICENCE PARSING
#define SW_LICENCE_OUTDATED 0x6696 // LICENCE WITH GIVEN ORDINARY NUMBER IS OUTDATED
#define SW_SWA_PERMIT_ALG_FULL 0x6697 // NO AVAILABLE FREE SLOTS FOR SWA WHICH CAN BE PERMITED TO ALGORITHM
#define SW_ALG_SWA_NOT_PERMITED 0x6698 // USAGE OF ALGORITHM IS NOT PERMITED FOR GIVEN SOFTWARE AGENT
#define SW_LICENCE_OUTOFORDER 0x6699 // GIVEN LICENCE IS OUT OF ORDER (NOT DIRECT SUCCESSOR OF LAST ACCEPTED LICENCE), USE SPECIAL FLAG TO PARSE THIS LICENCE
#define SW_BAD_PIN 0x6900 // BAD PIN SUPPLLIED TO VERIFICATION RUTINE
// 0x6700 RESERVED ISO7816 ERROR
#define SW_SWA_AUTH_REQUIRED 0x6701 // AUTHENTIZATION OF SWA IS REQUIRED FOR REQUESTED OPERATION
#define SW_ENCRYPT_FAIL 0x6702 // FAIL TO COMPLETE ENCRYPTION OPERATION
#define SW_DECRYPT_FAIL 0x6703 // FAIL TO COMPLETE DECRYPTION OPERATION
#define SW_SWA_NOT_FOUND 0x6704 // FAIL TO FOUND SOFTWARE AGENT PROFILE BY GIVEN UUID
#define SW_ALG_NOT_FOUND 0x6705 // FAIL TO FOUND ALGORITHM BY GIVEN UUID
#define SW_XMLPARSER_INSUFFICIENT_DATA 0x6706 // NOT ALL REQUIRED INFORMATION OBTAINED WHEN END OF LICENCE REACHED
#define SW_XMLPARSER_INVALID_DATA 0x6707 // INVALID DATA FORMAT FOUND DURING LICENCE PARSING
#define SW_XMLPARSER_UNKNOWN_ERROR 0x6708 // UNKNOWN ERROR OCCURED DURING LICENCE PARSING
#define SW_IV_BAD 0x6709 // BAD INICIALIZATION VECTOR
#define SW_CIPHER_DATA_LENGTH_BAD 0x6710 // BAD LENGTH OF DATA USED DURING CIPHER OPERATION
#define SW_MESSAGE_LENGTH_BAD 0x6711 // BAD LENGTH OF MESSAGE OBTAINED DURING PROTOCOl (SEAUT)
#define SW_SEAUT_STEP_BAD 0x6712 // INCORRECT MESSAGE ORDER OF AUTHENTICATION PART OF SEAUT
#define SW_SEAUT_FRESHNESS_FAIL 0x6713 // MESSAGE RECIEVED DURING SEAUT PROTOCOL IS NOT FRESH, ACCIDENTAL DAMAGE OF DATA OR REPLAY ATTACK DETECTED
#define SW_SEAUT_STOP_MESSAGE_BAD 0x6714 // BAD STOP MESSAGE USED TO FINALIZE SEAUT PROTOCOL
#define SW_KEY_LENGTH_BAD 0x6715 // BAD KEY LENGTH
#define SW_ALG_INPUT_BAD 0x6716 // FORMAT OF INPUT DATA FOR ALGORITHM IS BAD
#define SW_BAD_TEST_DATA_LEN 0x6717
#define SW_SENSITIVE_ATTEMPTS_BLOCKED 0x6720
#define SW_SENSITIVE_ATTEMPTS_TOO_HIGH 0x6721
#define SW_INVALID_ACTIVE_STATE 0x6722
#define SW_WRONG_MAGIC_VALUE 0x6723
#define SW_UNKNOWN_OPERATION 0x6724
#define SW_NOT_IMPLEMENTED_YET 0x6725
#define SW_UNKNOWN_INTERNAL_STATE 0x6726
#define SW_WRONG_INTERNAL_STATE 0x6727
#define SW_RSA_DECRYPT_BAD 0x6728
#define SW_WRONG_HASH_LENGTH 0x6729
#define SW_HASH_DIFFERS 0x6730
#define SW_UNKNOWN_LICENCE_TYPE 0x6731
#define SW_WRONG_APPLET_SN 0x6732
#define SW_LICENCE_ALREADY_USED 0x6734
#define SW_LICENCE_LENGTH_BAD 0x6735
#define SW_NO_CREDIT_LEFT 0x6736
#define SW_WRONG_LICENCE_TAG 0x6737
#define SW_LICENCE_PREVIOUS_EXPECTED 0x6738
#define SW_NO_SUCH_APPLICATION_PROFILE 0x6739
#define SW_WRONG_MAC 0x6740
#define SW_WRONG_PADDING 0x6741
#define SW_INTERNAL_LENGTH_WRONG 0x6742
#define SW_MASTER_BOARD_SLOT_BAD 0x6743
#define SW_LICENCE_MAX_COUNTER_REACHED 0x6744
#define SW_HASH_DIFFERS2 0x6745
// ISO7816 ERRORS
#define SW_FILE_FULL 0x6A84
#define SW_UNKNOWN 0x6F00
#define SW_CLA_NOT_SUPPORTED 0x6E00
#define SW_INS_NOT_SUPPORTED 0x6D00
#define SW_CORRECT_LENGTH_00 0x6C00
#define SW_WRONG_P1P2 0x6B00
#define SW_LC_INCONSISTENT_WITH_P1P2 0x6A87
#define SW_INCORRECT_P1P2 0x6A86
#define SW_RECORD_NOT_FOUND 0x6A83
#define SW_FILE_NOT_FOUND 0x6A82
#define SW_FUNC_NOT_SUPPORTED 0x6A81
#define SW_WRONG_DATA 0x6A80
#define SW_APPLET_SELECT_FAILED 0x6999
#define SW_COMMAND_NOT_ALLOWED 0x6986
#define SW_CONDITIONS_NOT_SATISFIED 0x6985
#define SW_DATA_INVALID 0x6984
#define SW_FILE_INVALID 0x6983
#define SW_SECURITY_STATUS_NOT_SATISFIED 0x6982
#define SW_WRONG_LENGTH 0x6700
#define SW_BYTES_REMAINING_00 0x6100
#define SW_NO_ERROR 0x9000
// JCSTATUS (used in OpenPlatform cards)
#define SW_JCDOMAIN_ALGORITHM_NOT_SUPPORTED 0x9484
#define SW_JCDOMAIN_APPLET_INVALIDATED 0x6283
#define SW_JCDOMAIN_AUTHENTICATION_FAILED 0x6300
#define SW_JCDOMAIN_AUTHORIZATION_FAILED 0x9482
#define SW_JCDOMAIN_CHECKSUM_FAILED 0x9584
#define SW_JCDOMAIN_DECRYPTION_FAILED 0x9583
#define SW_JCDOMAIN_INSTALLATION_FAILED 0x9585
#define SW_JCDOMAIN_INVALID_STATE 0x9481
#define SW_JCDOMAIN_NO_SPECIFIC_DIAGNOSIS 0x6400
#define SW_JCDOMAIN_REFERENCE_DATA_NOT_FOUND 0x6A88
#define SW_JCDOMAIN_REGISTRATION_FAILED 0x9586
#define SW_JCDOMAIN_SIGNATURE_CHECK_FAILED 0x9582
#define SW_JCDOMAIN_SM_INCORRECT 0x6988
#define SW_JCDOMAIN_SM_MISSING 0x6987
// GEMPLUS CARDCOMM ERRORS
#define STAT_CCR_UNKNOWN 0x1000
#define STAT_CCR_INVALID_HANDLE 0x1001
#define STAT_CCR_CARD_NOT_PRESENT 0x1002
#define STAT_CCR_SESSION_NOT_OPENED 0x1003
#define STAT_CCR_INVALID_SLOT_ID 0x1004
#define STAT_CCR_FUNCTION_FAILED 0x1005
#define STAT_CCR_CANCELLED 0x1006
const char* ErrorToString(int error);
#define ERROR_TO_STRING(x) ErrorToString(x)
#endif