]> git.proxmox.com Git - mirror_edk2.git/blobdiff - NetworkPkg/IScsiDxe/IScsiConfig.c
NetworkPkg: iSCSI should allow to set 6 or 12 length of ISID keyword.
[mirror_edk2.git] / NetworkPkg / IScsiDxe / IScsiConfig.c
index a588403017355547b8ce0d61830a456e3a2802af..498221a33969a11013f37ef0dd48d77cbf0180e6 100644 (file)
@@ -205,11 +205,11 @@ IScsiParseIsIdFromString (
 \r
   IsIdStr = (CHAR16 *) String;\r
 \r
-  if (StrLen (IsIdStr) != 6) {\r
+  if (StrLen (IsIdStr) != 6 && StrLen (IsIdStr) != 12) {\r
     UnicodeSPrint (\r
       PortString,\r
       (UINTN) ISCSI_NAME_IFR_MAX_SIZE,\r
-      L"Error! Input is incorrect, please input 6 hex numbers!\n"\r
+      L"Error! Only last 3 bytes are configurable, please input 6 hex numbers for last 3 bytes only or 12 hex numbers for full SSID!\n"\r
       );\r
 \r
     CreatePopUp (\r
@@ -222,6 +222,10 @@ IScsiParseIsIdFromString (
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
+  if (StrLen (IsIdStr) == 12) {\r
+    IsIdStr += 6;\r
+  }\r
+\r
   for (Index = 3; Index < 6; Index++) {\r
     CopyMem (TempStr, IsIdStr, sizeof (TempStr));\r
     TempStr[2] = L'\0';\r