-/** @file\r
- The header file of IScsi initiator name protocol.\r
-\r
-Copyright (c) 2004 - 2008, Intel Corporation.<BR>\r
-All rights reserved. This program and the accompanying materials\r
-are licensed and made available under the terms and conditions of the BSD License\r
-which accompanies this distribution. The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php\r
-\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
-\r
-**/\r
-\r
-#ifndef _ISCSI_INITIATORNAME_H_\r
-#define _ISCSI_INITIATORNAME_H_\r
-\r
-#include <Protocol/IScsiInitiatorName.h>\r
-\r
-extern EFI_ISCSI_INITIATOR_NAME_PROTOCOL gIScsiInitiatorName;\r
-\r
-//\r
-// EFI IScsi Initiator Name Protocol for IScsi driver.\r
-//\r
-/**\r
- Retrieves the current set value of iSCSI Initiator Name. \r
-\r
- @param This[in] Pointer to the EFI_ISCSI_INITIATOR_NAME_PROTOCOL instance.\r
-\r
- @param BufferSize[in][out] Size of the buffer in bytes pointed to by Buffer / Actual\r
- size of the variable data buffer.\r
-\r
- @param Buffer[out] Pointer to the buffer for data to be read.\r
-\r
- @retval EFI_SUCCESS Data was successfully retrieved into the provided \r
- buffer and the BufferSize was sufficient to handle the\r
- iSCSI initiator name.\r
- @retval EFI_BUFFER_TOO_SMALL BufferSize is too small for the result. BufferSize will\r
- be updated with the size required to complete the request.\r
- Buffer will not be affected.\r
-\r
- @retval EFI_INVALID_PARAMETER BufferSize is NULL. BufferSize and Buffer will not be\r
- affected.\r
-\r
- @retval EFI_INVALID_PARAMETER Buffer is NULL. BufferSize and Buffer will not be\r
- affected.\r
-\r
- @retval EFI_DEVICE_ERROR The iSCSI initiator name could not be retrieved due to\r
- a hardware error.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-IScsiGetInitiatorName (\r
- IN EFI_ISCSI_INITIATOR_NAME_PROTOCOL *This,\r
- IN OUT UINTN *BufferSize,\r
- OUT VOID *Buffer\r
- );\r
-\r
-/**\r
- Sets the iSCSI Initiator Name. \r
-\r
- @param This[in] Pointer to the EFI_ISCSI_INITIATOR_NAME_PROTOCOL instance.\r
-\r
- @param BufferSize[in][out] Size of the buffer in bytes pointed to by Buffer.\r
-\r
- @param Buffer[out] Pointer to the buffer for data to be written.\r
- \r
- @retval EFI_SUCCESS Data was successfully stored by the protocol.\r
-\r
- @retval EFI_UNSUPPORTED Platform policies do not allow for data to be written.\r
-\r
- @retval EFI_INVALID_PARAMETER BufferSize exceeds the maximum allowed limit.\r
- BufferSize will be updated with the maximum size\r
- required to complete the request.\r
-\r
- @retval EFI_INVALID_PARAMETER Buffersize is NULL. BufferSize and Buffer will not be\r
- affected.\r
-\r
- @retval EFI_INVALID_PARAMETER Buffer is NULL. BufferSize and Buffer will not be affected.\r
-\r
- @retval EFI_DEVICE_ERROR The data could not be stored due to a hardware error.\r
-\r
- @retval EFI_OUT_OF_RESOURCES Not enough storage is available to hold the data.\r
-\r
- @retval EFI_PROTOCOL_ERROR Input iSCSI initiator name does not adhere to RFC 3720.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-IScsiSetInitiatorName (\r
- IN EFI_ISCSI_INITIATOR_NAME_PROTOCOL *This,\r
- IN OUT UINTN *BufferSize,\r
- OUT VOID *Buffer\r
- );\r
- \r
-#endif
\ No newline at end of file