/** @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_ |