| /** @file | |
| Root include file for Shell Package modules that utilize the SHELL_RETURN type | |
| Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR> | |
| This program and the accompanying materials | |
| are licensed and made available under the terms and conditions of the BSD License | |
| which accompanies this distribution. The full text of the license may be found at | |
| http://opensource.org/licenses/bsd-license.php | |
| THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, | |
| WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. | |
| **/ | |
| #ifndef _SHELL_BASE_ | |
| #define _SHELL_BASE_ | |
| typedef VOID *SHELL_FILE_HANDLE; | |
| #define SHELL_FREE_NON_NULL(Pointer) \ | |
| do { \ | |
| if ((Pointer) != NULL) { \ | |
| FreePool((Pointer)); \ | |
| (Pointer) = NULL; \ | |
| } \ | |
| } while(FALSE) | |
| typedef enum { | |
| /// | |
| /// The operation completed successfully. | |
| /// | |
| SHELL_SUCCESS = 0, | |
| /// | |
| /// The image failed to load. | |
| /// | |
| SHELL_LOAD_ERROR = 1, | |
| /// | |
| /// The parameter was incorrect. | |
| /// | |
| SHELL_INVALID_PARAMETER = 2, | |
| /// | |
| /// The operation is not supported. | |
| /// | |
| SHELL_UNSUPPORTED = 3, | |
| /// | |
| /// The buffer was not the proper size for the request. | |
| /// | |
| SHELL_BAD_BUFFER_SIZE = 4, | |
| /// | |
| /// The buffer was not large enough to hold the requested data. | |
| /// The required buffer size is returned in the appropriate | |
| /// parameter when this error occurs. | |
| /// | |
| SHELL_BUFFER_TOO_SMALL = 5, | |
| /// | |
| /// There is no data pending upon return. | |
| /// | |
| SHELL_NOT_READY = 6, | |
| /// | |
| /// The physical device reported an error while attempting the | |
| /// operation. | |
| /// | |
| SHELL_DEVICE_ERROR = 7, | |
| /// | |
| /// The device cannot be written to. | |
| /// | |
| SHELL_WRITE_PROTECTED = 8, | |
| /// | |
| /// The resource has run out. | |
| /// | |
| SHELL_OUT_OF_RESOURCES = 9, | |
| /// | |
| /// An inconsistency was detected on the file system causing the | |
| /// operation to fail. | |
| /// | |
| SHELL_VOLUME_CORRUPTED = 10, | |
| /// | |
| /// There is no more space on the file system. | |
| /// | |
| SHELL_VOLUME_FULL = 11, | |
| /// | |
| /// The device does not contain any medium to perform the | |
| /// operation. | |
| /// | |
| SHELL_NO_MEDIA = 12, | |
| /// | |
| /// The medium in the device has changed since the last | |
| /// access. | |
| /// | |
| SHELL_MEDIA_CHANGED = 13, | |
| /// | |
| /// The item was not found. | |
| /// | |
| SHELL_NOT_FOUND = 14, | |
| /// | |
| /// Access was denied. | |
| /// | |
| SHELL_ACCESS_DENIED = 15, | |
| // note the skipping of 16 and 17 | |
| /// | |
| /// A timeout time expired. | |
| /// | |
| SHELL_TIMEOUT = 18, | |
| /// | |
| /// The protocol has not been started. | |
| /// | |
| SHELL_NOT_STARTED = 19, | |
| /// | |
| /// The protocol has already been started. | |
| /// | |
| SHELL_ALREADY_STARTED = 20, | |
| /// | |
| /// The operation was aborted. | |
| /// | |
| SHELL_ABORTED = 21, | |
| // note the skipping of 22, 23, and 24 | |
| /// | |
| /// A function encountered an internal version that was | |
| /// incompatible with a version requested by the caller. | |
| /// | |
| SHELL_INCOMPATIBLE_VERSION = 25, | |
| /// | |
| /// The function was not performed due to a security violation. | |
| /// | |
| SHELL_SECURITY_VIOLATION = 26, | |
| /// | |
| /// The function was performed and resulted in an unequal | |
| /// comparison.. | |
| /// | |
| SHELL_NOT_EQUAL = 27 | |
| }SHELL_STATUS; | |
| #endif //__SHELL_BASE_ |