xref: /titanic_41/usr/src/cmd/lms/heci/StatusCodeDefinitions.h (revision cd997836b08639dc4d44a032cadd0c7d526f960c)
1 /*******************************************************************************
2  * Copyright (C) 2004-2008 Intel Corp. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions are met:
6  *
7  *  - Redistributions of source code must retain the above copyright notice,
8  *    this list of conditions and the following disclaimer.
9  *
10  *  - Redistributions in binary form must reproduce the above copyright notice,
11  *    this list of conditions and the following disclaimer in the documentation
12  *    and/or other materials provided with the distribution.
13  *
14  *  - Neither the name of Intel Corp. nor the names of its
15  *    contributors may be used to endorse or promote products derived from this
16  *    software without specific prior written permission.
17  *
18  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
19  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21  * ARE DISCLAIMED. IN NO EVENT SHALL Intel Corp. OR THE CONTRIBUTORS
22  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28  * POSSIBILITY OF SUCH DAMAGE.
29  *******************************************************************************/
30 
31 //----------------------------------------------------------------------------
32 //
33 //  File:       StatusCodeDefinitions.h
34 //
35 //  Notes:      This file contains the definitions of the status codes
36 //              as defined in the Intel� AMT Network Design Guide.
37 //
38 //----------------------------------------------------------------------------
39 
40 #ifndef STATUS_CODE_DEFINITIONS_H
41 #define STATUS_CODE_DEFINITIONS_H
42 
43 typedef unsigned int PT_STATUS;
44 typedef unsigned int AMT_STATUS;
45 
46 //Request succeeded
47 #define PT_STATUS_SUCCESS  0x0
48 #define AMT_STATUS_SUCCESS  0x0
49 
50 //An internal error in the Intel� AMT device has occurred
51 #define PT_STATUS_INTERNAL_ERROR  0x1
52 #define AMT_STATUS_INTERNAL_ERROR  0x1
53 
54 //Intel� AMT device has not progressed far enough in its
55 //initialization to process the command.
56 #define PT_STATUS_NOT_READY  0x2
57 #define AMT_STATUS_NOT_READY  0x2
58 
59 //Command is not permitted in current operating mode.
60 #define PT_STATUS_INVALID_PT_MODE  0x3
61 #define AMT_STATUS_INVALID_AMT_MODE  0x3
62 
63 //Length field of header is invalid.
64 #define PT_STATUS_INVALID_MESSAGE_LENGTH  0x4
65 #define AMT_STATUS_INVALID_MESSAGE_LENGTH  0x4
66 
67 //The requested hardware asset inventory table
68 //checksum is not available.
69 #define PT_STATUS_TABLE_FINGERPRINT_NOT_AVAILABLE  0x5
70 #define AMT_STATUS_TABLE_FINGERPRINT_NOT_AVAILABLE  0x5
71 
72 //The Integrity Check Value field of the request
73 //message sent by Intel� AMT enabled device is invalid.
74 #define PT_STATUS_INTEGRITY_CHECK_FAILED  0x6
75 #define AMT_STATUS_INTEGRITY_CHECK_FAILED  0x6
76 
77 //The specified ISV version is not supported
78 #define PT_STATUS_UNSUPPORTED_ISVS_VERSION  0x7
79 #define AMT_STATUS_UNSUPPORTED_ISVS_VERSION  0x7
80 
81 //The specified queried application is not registered.
82 #define PT_STATUS_APPLICATION_NOT_REGISTERED  0x8
83 #define AMT_STATUS_APPLICATION_NOT_REGISTERED  0x8
84 
85 //Either an invalid name or a not previously registered
86 //'Enterprise' name was specified
87 #define PT_STATUS_INVALID_REGISTRATION_DATA  0x9
88 #define AMT_STATUS_INVALID_REGISTRATION_DATA  0x9
89 
90 //The application handle provided in the request
91 //message has never been allocated.
92 #define PT_STATUS_APPLICATION_DOES_NOT_EXIST  0xA
93 #define AMT_STATUS_APPLICATION_DOES_NOT_EXIST  0xA
94 
95 //The requested number of bytes cannot be allocated in ISV storage.
96 #define PT_STATUS_NOT_ENOUGH_STORAGE  0xB
97 #define AMT_STATUS_NOT_ENOUGH_STORAGE  0xB
98 
99 //The specified name is invalid.
100 #define PT_STATUS_INVALID_NAME  0xC
101 #define AMT_STATUS_INVALID_NAME  0xC
102 
103 //The specified block does not exist.
104 #define PT_STATUS_BLOCK_DOES_NOT_EXIST  0xD
105 #define AMT_STATUS_BLOCK_DOES_NOT_EXIST  0xD
106 
107 //The specified byte offset is invalid.
108 #define PT_STATUS_INVALID_BYTE_OFFSET  0xE
109 #define AMT_STATUS_INVALID_BYTE_OFFSET  0xE
110 
111 //The specified byte count is invalid.
112 #define PT_STATUS_INVALID_BYTE_COUNT  0xF
113 #define AMT_STATUS_INVALID_BYTE_COUNT  0xF
114 
115 //The requesting application is not
116 //permitted to request execution of the specified operation.
117 #define PT_STATUS_NOT_PERMITTED  0x10
118 #define AMT_STATUS_NOT_PERMITTED  0x10
119 
120 //The requesting application is not the owner of the block
121 //as required for the requested operation.
122 #define PT_STATUS_NOT_OWNER  0x11
123 #define AMT_STATUS_NOT_OWNER  0x11
124 
125 //The specified block is locked by another application.
126 #define PT_STATUS_BLOCK_LOCKED_BY_OTHER  0x12
127 #define AMT_STATUS_BLOCK_LOCKED_BY_OTHER  0x12
128 
129 //The specified block is not locked.
130 #define PT_STATUS_BLOCK_NOT_LOCKED  0x13
131 #define AMT_STATUS_BLOCK_NOT_LOCKED  0x13
132 
133 //The specified group permission bits are invalid.
134 #define PT_STATUS_INVALID_GROUP_PERMISSIONS  0x14
135 #define AMT_STATUS_INVALID_GROUP_PERMISSIONS  0x14
136 
137 //The specified group does not exist.
138 #define PT_STATUS_GROUP_DOES_NOT_EXIST  0x15
139 #define AMT_STATUS_GROUP_DOES_NOT_EXIST  0x15
140 
141 //The specified member count is invalid.
142 #define PT_STATUS_INVALID_MEMBER_COUNT  0x16
143 #define AMT_STATUS_INVALID_MEMBER_COUNT  0x16
144 
145 //The request cannot be satisfied because a maximum
146 //limit associated with the request has been reached.
147 #define PT_STATUS_MAX_LIMIT_REACHED  0x17
148 #define AMT_STATUS_MAX_LIMIT_REACHED  0x17
149 
150 //specified key algorithm is invalid.
151 #define PT_STATUS_INVALID_AUTH_TYPE  0x18
152 #define AMT_STATUS_INVALID_AUTH_TYPE  0x18
153 
154 //Not Used
155 #define PT_STATUS_AUTHENTICATION_FAILED  0x19
156 #define AMT_STATUS_AUTHENTICATION_FAILED  0x19
157 
158 //The specified DHCP mode is invalid.
159 #define PT_STATUS_INVALID_DHCP_MODE  0x1A
160 #define AMT_STATUS_INVALID_DHCP_MODE  0x1A
161 
162 //The specified IP address is not a valid IP unicast address.
163 #define PT_STATUS_INVALID_IP_ADDRESS  0x1B
164 #define AMT_STATUS_INVALID_IP_ADDRESS  0x1B
165 
166 //The specified domain name is not a valid domain name.
167 #define PT_STATUS_INVALID_DOMAIN_NAME  0x1C
168 #define AMT_STATUS_INVALID_DOMAIN_NAME  0x1C
169 
170 //Not Used
171 #define PT_STATUS_UNSUPPORTED_VERSION  0x1D
172 #define AMT_STATUS_UNSUPPORTED_VERSION  0x1D
173 
174 //The requested operation cannot be performed because a
175 //prerequisite request message has not been received.
176 #define PT_STATUS_REQUEST_UNEXPECTED  0x1E
177 #define AMT_STATUS_REQUEST_UNEXPECTED  0x1E
178 
179 //Not Used
180 #define PT_STATUS_INVALID_TABLE_TYPE  0x1F
181 #define AMT_STATUS_INVALID_TABLE_TYPE  0x1F
182 
183 //The specified provisioning mode code is undefined.
184 #define PT_STATUS_INVALID_PROVISIONING_STATE  0x20
185 #define AMT_STATUS_INVALID_PROVISIONING_STATE  0x20
186 
187 //Not Used
188 #define PT_STATUS_UNSUPPORTED_OBJECT  0x21
189 #define AMT_STATUS_UNSUPPORTED_OBJECT  0x21
190 
191 //The specified time was not accepted by the Intel� AMT device
192 //since it is earlier than the baseline time set for the device.
193 #define PT_STATUS_INVALID_TIME  0x22
194 #define AMT_STATUS_INVALID_TIME  0x22
195 
196 //StartingIndex is invalid.
197 #define PT_STATUS_INVALID_INDEX  0x23
198 #define AMT_STATUS_INVALID_INDEX  0x23
199 
200 //A parameter is invalid.
201 #define PT_STATUS_INVALID_PARAMETER  0x24
202 #define AMT_STATUS_INVALID_PARAMETER  0x24
203 
204 //An invalid netmask was supplied
205 //(a valid netmask is an IP address in which all '1's are before
206 //the '0' - e.g. FFFC0000h is valid, FF0C0000h is invalid).
207 #define PT_STATUS_INVALID_NETMASK  0x25
208 #define AMT_STATUS_INVALID_NETMASK  0x25
209 
210 //The operation failed because the Flash wear-out
211 //protection mechanism prevented a write to an NVRAM sector.
212 #define PT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED  0x26
213 #define AMT_STATUS_FLASH_WRITE_LIMIT_EXCEEDED  0x26
214 
215 //ME FW did not receive the entire image file.
216 #define PT_STATUS_INVALID_IMAGE_LENGTH  0x27
217 #define AMT_STATUS_INVALID_IMAGE_LENGTH  0x27
218 
219 //ME FW received an image file with an invalid signature.
220 #define PT_STATUS_INVALID_IMAGE_SIGNATURE  0x28
221 #define AMT_STATUS_INVALID_IMAGE_SIGNATURE  0x28
222 
223 //LME can not support the requested version.
224 #define	PT_STATUS_PROPOSE_ANOTHER_VERSION  0x29
225 #define	AMT_STATUS_PROPOSE_ANOTHER_VERSION  0x29
226 
227 //The PID must be a 64 bit quantity made up of ASCII codes
228 //of some combination of 8 characters -
229 //capital alphabets (A-Z), and numbers (0-9).
230 #define	PT_STATUS_INVALID_PID_FORMAT  0x2A
231 #define	AMT_STATUS_INVALID_PID_FORMAT  0x2A
232 
233 //The PID must be a 256 bit quantity made up of ASCII codes
234 //of some combination of 8 characters -
235 //capital alphabets (A-Z), and numbers (0-9).
236 #define	PT_STATUS_INVALID_PPS_FORMAT  0x2B
237 #define	AMT_STATUS_INVALID_PPS_FORMAT  0x2B
238 
239 //Full BIST test has been blocked
240 #define PT_STATUS_BIST_COMMAND_BLOCKED  0x2C
241 #define AMT_STATUS_BIST_COMMAND_BLOCKED  0x2C
242 
243 //A TCP/IP connection could not be opened on with the selected port.
244 #define PT_STATUS_CONNECTION_FAILED  0x2D
245 #define AMT_STATUS_CONNECTION_FAILED  0x2D
246 
247 //Max number of connection reached.
248 //LME can not open the requested connection.
249 #define PT_STATUS_CONNECTION_TOO_MANY  0x2E
250 #define AMT_STATUS_CONNECTION_TOO_MANY  0x2E
251 
252 // A process rng generation  started.
253 #define PT_STATUS_RNG_GENERATION_IN_PROGRESS  0x002F
254 #define AMT_STATUS_RNG_GENERATION_IN_PROGRESS  0x002F
255 
256 //rng doesn't exist
257 #define PT_STATUS_RNG_NOT_READY  0x0030
258 #define AMT_STATUS_RNG_NOT_READY  0x0030
259 
260 //Certificate doesn't exist
261 #define PT_STATUS_CERTIFICATE_NOT_READY  0x0031
262 #define AMT_STATUS_CERTIFICATE_NOT_READY  0x0031
263 
264 //AMT doesn't grant remote access
265 //(AMT has a direct connection to enterprise network).
266 #define PT_STATUS_REMOTE_ACCESS_NOT_GRANTED 0x0200
267 #define AMT_STATUS_REMOTE_ACCESS_NOT_GRANTED 0x0200
268 
269 //VPN is disabled (via the AMT Network Interface)
270 #define PT_STATUS_REMOTE_ACCESS_HOST_VPN_IS_DISABLED 0x0201
271 #define AMT_STATUS_REMOTE_ACCESS_HOST_VPN_IS_DISABLED 0x0201
272 
273 //This code establishes a dividing line between
274 //status codes which are common to host interface and
275 //network interface and status codes which are used by
276 //network interface only.
277 #define PT_STATUS_NETWORK_IF_ERROR_BASE  0x800
278 #define AMT_STATUS_NETWORK_IF_ERROR_BASE  0x800
279 
280 //The OEM number specified in the remote control
281 //command is not supported by the Intel� AMT device
282 #define PT_STATUS_UNSUPPORTED_OEM_NUMBER  0x801
283 #define AMT_STATUS_UNSUPPORTED_OEM_NUMBER  0x801
284 
285 //The boot option specified in the remote control command
286 //is not supported by the Intel� AMT device
287 #define PT_STATUS_UNSUPPORTED_BOOT_OPTION  0x802
288 #define AMT_STATUS_UNSUPPORTED_BOOT_OPTION  0x802
289 
290 //The command specified in the remote control command
291 //is not supported by the Intel� AMT device
292 #define PT_STATUS_INVALID_COMMAND  0x803
293 #define AMT_STATUS_INVALID_COMMAND  0x803
294 
295 //The special command specified in the remote control command
296 //is not supported by the Intel� AMT device
297 #define PT_STATUS_INVALID_SPECIAL_COMMAND  0x804
298 #define AMT_STATUS_INVALID_SPECIAL_COMMAND  0x804
299 
300 //The handle specified in the command is invalid
301 #define PT_STATUS_INVALID_HANDLE  0x805
302 #define AMT_STATUS_INVALID_HANDLE  0x805
303 
304 //The password specified in the User ACL is invalid
305 #define PT_STATUS_INVALID_PASSWORD  0x806
306 #define AMT_STATUS_INVALID_PASSWORD  0x806
307 
308 //The realm specified in the User ACL is invalid
309 #define PT_STATUS_INVALID_REALM  0x807
310 #define AMT_STATUS_INVALID_REALM  0x807
311 
312 //The FPACL or EACL entry is used by an active
313 //registration and cannot be removed or modified.
314 #define PT_STATUS_STORAGE_ACL_ENTRY_IN_USE  0x808
315 #define AMT_STATUS_STORAGE_ACL_ENTRY_IN_USE  0x808
316 
317 //Essential data is missing on CommitChanges command.
318 #define PT_STATUS_DATA_MISSING  0x809
319 #define AMT_STATUS_DATA_MISSING  0x809
320 
321 //The parameter specified is a duplicate of an existing value.
322 //Returned for a case where duplicate entries are added to FPACL
323 //(Factory Partner Allocation Control List) or EACL
324 //(Enterprise Access Control List) lists.
325 #define PT_STATUS_DUPLICATE  0x80A
326 #define AMT_STATUS_DUPLICATE  0x80A
327 
328 //Event Log operation failed due to the current freeze status of the log.
329 #define PT_STATUS_EVENTLOG_FROZEN  0x80B
330 #define AMT_STATUS_EVENTLOG_FROZEN  0x80B
331 
332 //The device is missing private key material.
333 #define PT_STATUS_PKI_MISSING_KEYS  0x80C
334 #define AMT_STATUS_PKI_MISSING_KEYS  0x80C
335 
336 //The device is currently generating a keypair.
337 //Caller may try repeating this operation at a later time.
338 #define PT_STATUS_PKI_GENERATING_KEYS  0x80D
339 #define AMT_STATUS_PKI_GENERATING_KEYS  0x80D
340 
341 //An invalid Key was entered.
342 #define PT_STATUS_INVALID_KEY  0x80E
343 #define AMT_STATUS_INVALID_KEY  0x80E
344 
345 //An invalid X.509 certificate was entered.
346 #define PT_STATUS_INVALID_CERT  0x80F
347 #define AMT_STATUS_INVALID_CERT  0x80F
348 
349 //Certificate Chain and Private Key do not match.
350 #define PT_STATUS_CERT_KEY_NOT_MATCH  0x810
351 #define AMT_STATUS_CERT_KEY_NOT_MATCH  0x810
352 
353 //The request cannot be satisfied because the maximum
354 //number of allowed Kerberos domains has been reached.
355 //(The domain is determined by the first 24 Bytes of the SID.)
356 #define PT_STATUS_MAX_KERB_DOMAIN_REACHED 0x811
357 #define AMT_STATUS_MAX_KERB_DOMAIN_REACHED 0x811
358 
359 // The requested configuration is unsupported
360 #define PT_STATUS_UNSUPPORTED 0x812
361 #define AMT_STATUS_UNSUPPORTED 0x812
362 
363 // A profile with the requested priority already exists
364 #define PT_STATUS_INVALID_PRIORITY 0x813
365 #define AMT_STATUS_INVALID_PRIORITY 0x813
366 
367 // Unable to find specified element
368 #define PT_STATUS_NOT_FOUND 0x814
369 #define AMT_STATUS_NOT_FOUND 0x814
370 
371 // Invalid User credentials
372 #define PT_STATUS_INVALID_CREDENTIALS 0x815
373 #define AMT_STATUS_INVALID_CREDENTIALS 0x815
374 
375 // Passphrase is invalid
376 #define PT_STATUS_INVALID_PASSPHRASE 0x816
377 #define AMT_STATUS_INVALID_PASSPHRASE 0x816
378 
379 //The application has identified an internal error
380 #define PTSDK_STATUS_INTERNAL_ERROR  0x1000
381 
382 //An ISV operation was called while the library is not
383 //initialized
384 #define PTSDK_STATUS_NOT_INITIALIZED  0x1001
385 
386 //The requested library I/F is not supported by the current library
387 //implementation.
388 #define PTSDK_STATUS_LIB_VERSION_UNSUPPORTED  0x1002
389 
390 //One of the parameters is invalid (usually indicates a
391 //NULL pointer or an invalid session handle is specified)
392 #define PTSDK_STATUS_INVALID_PARAM  0x1003
393 
394 //The SDK could not allocate sufficient resources to complete the operation.
395 #define PTSDK_STATUS_RESOURCES  0x1004
396 
397 //The Library has identified a HW Internal error.
398 #define PTSDK_STATUS_HARDWARE_ACCESS_ERROR  0x1005
399 
400 //The application that sent the request message is not registered.
401 //Usually indicates the registration timeout has elapsed.
402 //The caller should reregister with the Intel AMT enabled device.
403 #define PTSDK_STATUS_REQUESTOR_NOT_REGISTERED  0x1006
404 
405 //A network error has occurred while processing the call.
406 #define PTSDK_STATUS_NETWORK_ERROR  0x1007
407 
408 //Specified container can not hold the requested string
409 #define PTSDK_STATUS_PARAM_BUFFER_TOO_SHORT  0x1008
410 
411 //For Windows only.
412 //ISVS_InitializeCOMinThread was not called by the current thread.
413 #define PTSDK_STATUS_COM_NOT_INITIALIZED_IN_THREAD  0x1009
414 
415 //The URL parameter was not optional in current configuration.
416 #define PTSDK_STATUS_URL_REQUIRED	 0x100A
417 
418 //Empty response from PTHI interface
419 #define PTHI_STATUS_EMPTY_RESPONSE  0x4000
420 
421 #endif
422