extern EFI_COMPONENT_NAME2_PROTOCOL gIScsiComponentName2;\r
extern EFI_COMPONENT_NAME_PROTOCOL gIScsiComponentName;\r
\r
+extern EFI_ISCSI_INITIATOR_NAME_PROTOCOL gIScsiInitiatorName;\r
+\r
\r
extern EFI_GUID mIScsiPrivateGuid;\r
\r
IN CHAR8 *Language,\r
OUT CHAR16 **ControllerName\r
);\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
+ IN VOID *Buffer\r
+ );\r
\r
#endif\r