/** @file\r
The implementation of EFI_EXT_SCSI_PASS_THRU_PROTOCOL.\r
\r
-Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>\r
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
/**\r
Sends a SCSI Request Packet to a SCSI device that is attached to the SCSI channel.\r
This function supports both blocking I/O and nonblocking I/O. The blocking I/O\r
- functionality is required, and the nonblocking I/O functionality is optional. \r
+ functionality is required, and the nonblocking I/O functionality is optional.\r
\r
@param[in] This A pointer to the EFI_EXT_SCSI_PASS_THRU_PROTOCOL instance.\r
@param[in] Target The Target is an array of size TARGET_MAX_BYTES and it\r
represents the id of the SCSI device to send the SCSI\r
Request Packet. Each transport driver may choose to\r
utilize a subset of this size to suit the needs\r
- of transport target representation. For example, a \r
+ of transport target representation. For example, a\r
Fibre Channel driver may use only 8 bytes (WWN)\r
to represent an FC target.\r
@param[in] Lun The LUN of the SCSI device to send the SCSI Request Packet.\r
@param[in, out] Packet A pointer to the SCSI Request Packet to send to the\r
- SCSI device specified by Target and Lun. \r
+ SCSI device specified by Target and Lun.\r
@param[in] Event If nonblocking I/O is not supported then Event is ignored,\r
and blocking I/O is performed. If Event is NULL, then\r
blocking I/O is performed. If Event is not NULL and non\r
completes.\r
\r
@retval EFI_SUCCESS The SCSI Request Packet was sent by the host. For\r
- bi-directional commands, InTransferLength bytes \r
+ bi-directional commands, InTransferLength bytes\r
were transferred from InDataBuffer.\r
For write and bi-directional commands, OutTransferLength\r
bytes were transferred by OutDataBuffer.\r
there are too many SCSI Request Packets already\r
queued. The caller may retry later.\r
@retval EFI_DEVICE_ERROR A device error occurred while attempting to send\r
- the SCSI Request Packet. \r
+ the SCSI Request Packet.\r
@retval EFI_INVALID_PARAMETER Target, Lun, or the contents of ScsiRequestPacket,\r
are invalid.\r
@retval EFI_UNSUPPORTED The command described by the SCSI Request Packet\r
{\r
EFI_STATUS Status;\r
ISCSI_DRIVER_DATA *Private;\r
- \r
+\r
if (Target[0] != 0) {\r
return EFI_INVALID_PARAMETER;\r
}\r
Used to retrieve the list of legal Target IDs and LUNs for SCSI devices on\r
a SCSI channel. These can either be the list SCSI devices that are actually\r
present on the SCSI channel, or the list of legal Target Ids and LUNs for the\r
- SCSI channel. Regardless, the caller of this function must probe the Target ID \r
- and LUN returned to see if a SCSI device is actually present at that location \r
- on the SCSI channel. \r
+ SCSI channel. Regardless, the caller of this function must probe the Target ID\r
+ and LUN returned to see if a SCSI device is actually present at that location\r
+ on the SCSI channel.\r
\r
@param[in] This The EFI_EXT_SCSI_PASS_THRU_PROTOCOL instance.\r
@param[in, out] Target On input, a pointer to the Target ID of a SCSI\r
EFI_DEV_PATH *Node;\r
UINTN DevPathNodeLen;\r
\r
- if ((DevicePath == NULL)) {\r
+ if (DevicePath == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
\r
CopyMem (&Node->Iscsi.Lun, ConfigNvData->BootLun, sizeof (UINT64));\r
Node->Iscsi.TargetPortalGroupTag = Session->TargetPortalGroupTag;\r
- AsciiStrCpy ((CHAR8 *) Node + sizeof (ISCSI_DEVICE_PATH), ConfigNvData->TargetName);\r
+ AsciiStrCpyS ((CHAR8 *) Node + sizeof (ISCSI_DEVICE_PATH), AsciiStrLen (ConfigNvData->TargetName) + 1, ConfigNvData->TargetName);\r
\r
*DevicePath = (EFI_DEVICE_PATH_PROTOCOL *) Node;\r
\r
@retval EFI_INVALID_PARAMETER DevicePath/Target/Lun is NULL.\r
@retval EFI_UNSUPPORTED This driver does not support the device path node\r
type in DevicePath.\r
- @retval EFI_NOT_FOUND A valid translation does not exist from DevicePath \r
+ @retval EFI_NOT_FOUND A valid translation does not exist from DevicePath\r
to a TargetID and LUN.\r
\r
**/\r
}\r
\r
/**\r
- Retrieve the list of legal Target IDs for SCSI devices on a SCSI channel. \r
+ Retrieve the list of legal Target IDs for SCSI devices on a SCSI channel.\r
\r
@param[in] This A pointer to the EFI_EXT_SCSI_PASS_THRU_PROTOCOL\r
instance.\r
next SCSI device present on a SCSI channel.\r
An input value of 0xF(all bytes in the array are 0xF)\r
in the Target array retrieves the Target ID of the\r
- first SCSI device present on a SCSI channel. \r
+ first SCSI device present on a SCSI channel.\r
\r
@retval EFI_SUCCESS The Target ID of the next SCSI device on the SCSI\r
channel was returned in Target.\r