]> git.proxmox.com Git - mirror_edk2.git/commitdiff
NetworkPkg: Replace UnicodeStrToAsciiStr/AsciiStrToUnicodeStr
authorStar Zeng <star.zeng@intel.com>
Wed, 15 Jun 2016 05:38:03 +0000 (13:38 +0800)
committerStar Zeng <star.zeng@intel.com>
Tue, 21 Jun 2016 04:46:24 +0000 (12:46 +0800)
It is the follow up of 3ab41b7a325ca11a12b42f5ad1661c4b6791cb49
to replace UnicodeStrToAsciiStr/AsciiStrToUnicodeStr with
UnicodeStrToAsciiStrS/AsciiStrToUnicodeStrS.

Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Siyuan Fu <siyuan.fu@intel.com>
Cc: Jiaxin Wu <jiaxin.wu@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
Reviewed-by: Jiaxin Wu <jiaxin.wu@intel.com>
Reviewed-by: Siyuan Fu <siyuan.fu@intel.com>
NetworkPkg/Application/IpsecConfig/PolicyEntryOperation.c
NetworkPkg/HttpBootDxe/HttpBootClient.c
NetworkPkg/HttpBootDxe/HttpBootConfig.c
NetworkPkg/HttpDxe/HttpImpl.c
NetworkPkg/HttpDxe/HttpProto.c
NetworkPkg/IScsiDxe/IScsiConfig.c
NetworkPkg/IScsiDxe/IScsiDriver.c
NetworkPkg/IScsiDxe/IScsiMisc.c

index 9bbc11490c5430cfb883c9c444b99e6414235a59..06eb30c091c957eba788c12f5fe68a973ec82358 100644 (file)
@@ -271,7 +271,7 @@ CreateSpdEntry (
   //\r
   ValueStr = ShellCommandLineGetValue (ParamPackage, L"--name");\r
   if (ValueStr != NULL) {\r
   //\r
   ValueStr = ShellCommandLineGetValue (ParamPackage, L"--name");\r
   if (ValueStr != NULL) {\r
-    UnicodeStrToAsciiStr (ValueStr, (CHAR8 *) (*Data)->Name);\r
+    UnicodeStrToAsciiStrS (ValueStr, (CHAR8 *) (*Data)->Name, sizeof ((*Data)->Name));\r
     *Mask |= NAME;\r
   }\r
 \r
     *Mask |= NAME;\r
   }\r
 \r
@@ -785,7 +785,7 @@ CreateSadEntry (
     (*Data)->AlgoInfo.EspAlgoInfo.EncKeyLength = EncKeyLength;\r
     AsciiStr = AllocateZeroPool (EncKeyLength + 1);\r
     ASSERT (AsciiStr != NULL);\r
     (*Data)->AlgoInfo.EspAlgoInfo.EncKeyLength = EncKeyLength;\r
     AsciiStr = AllocateZeroPool (EncKeyLength + 1);\r
     ASSERT (AsciiStr != NULL);\r
-    UnicodeStrToAsciiStr (ValueStr, AsciiStr);\r
+    UnicodeStrToAsciiStrS (ValueStr, AsciiStr, EncKeyLength + 1);\r
     CopyMem ((*Data)->AlgoInfo.EspAlgoInfo.EncKey,  AsciiStr, EncKeyLength);\r
     FreePool (AsciiStr);\r
     *Mask |= ENCRYPT_KEY;\r
     CopyMem ((*Data)->AlgoInfo.EspAlgoInfo.EncKey,  AsciiStr, EncKeyLength);\r
     FreePool (AsciiStr);\r
     *Mask |= ENCRYPT_KEY;\r
@@ -815,7 +815,7 @@ CreateSadEntry (
     (*Data)->AlgoInfo.EspAlgoInfo.AuthKeyLength = AuthKeyLength;\r
     AsciiStr = AllocateZeroPool (AuthKeyLength + 1);\r
     ASSERT (AsciiStr != NULL);\r
     (*Data)->AlgoInfo.EspAlgoInfo.AuthKeyLength = AuthKeyLength;\r
     AsciiStr = AllocateZeroPool (AuthKeyLength + 1);\r
     ASSERT (AsciiStr != NULL);\r
-    UnicodeStrToAsciiStr (ValueStr, AsciiStr);\r
+    UnicodeStrToAsciiStrS (ValueStr, AsciiStr, AuthKeyLength + 1);\r
     CopyMem ((*Data)->AlgoInfo.EspAlgoInfo.AuthKey, AsciiStr, AuthKeyLength);\r
     FreePool (AsciiStr);\r
     *Mask |= AUTH_KEY;\r
     CopyMem ((*Data)->AlgoInfo.EspAlgoInfo.AuthKey, AsciiStr, AuthKeyLength);\r
     FreePool (AsciiStr);\r
     *Mask |= AUTH_KEY;\r
index e543d9f883035a3adafd8ccaa865d005fce2f5e8..916f2375c98b907e33579dd12d84f181cc97dc9f 100644 (file)
@@ -255,6 +255,7 @@ HttpBootDhcp6ExtractUriInfo (
   EFI_DHCP6_PACKET_OPTION         *Option;\r
   EFI_IPv6_ADDRESS                IpAddr;\r
   CHAR8                           *HostName;\r
   EFI_DHCP6_PACKET_OPTION         *Option;\r
   EFI_IPv6_ADDRESS                IpAddr;\r
   CHAR8                           *HostName;\r
+  UINTN                           HostNameSize;\r
   CHAR16                          *HostNameStr;\r
   EFI_STATUS                      Status;\r
 \r
   CHAR16                          *HostNameStr;\r
   EFI_STATUS                      Status;\r
 \r
@@ -349,14 +350,15 @@ HttpBootDhcp6ExtractUriInfo (
     if (EFI_ERROR (Status)) {\r
       return Status;\r
     }\r
     if (EFI_ERROR (Status)) {\r
       return Status;\r
     }\r
-    \r
-    HostNameStr = AllocateZeroPool ((AsciiStrLen (HostName) + 1) * sizeof (CHAR16));\r
+\r
+    HostNameSize = AsciiStrSize (HostName);\r
+    HostNameStr = AllocateZeroPool (HostNameSize * sizeof (CHAR16));\r
     if (HostNameStr == NULL) {\r
       Status = EFI_OUT_OF_RESOURCES;\r
       goto Error;\r
     }\r
     \r
     if (HostNameStr == NULL) {\r
       Status = EFI_OUT_OF_RESOURCES;\r
       goto Error;\r
     }\r
     \r
-    AsciiStrToUnicodeStr (HostName, HostNameStr);\r
+    AsciiStrToUnicodeStrS (HostName, HostNameStr, HostNameSize);\r
     Status = HttpBootDns (Private, HostNameStr, &IpAddr);\r
     FreePool (HostNameStr);\r
     if (EFI_ERROR (Status)) {\r
     Status = HttpBootDns (Private, HostNameStr, &IpAddr);\r
     FreePool (HostNameStr);\r
     if (EFI_ERROR (Status)) {\r
@@ -752,6 +754,7 @@ HttpBootGetBootFile (
   UINTN                      ContentLength;\r
   HTTP_BOOT_CACHE_CONTENT    *Cache;\r
   UINT8                      *Block;\r
   UINTN                      ContentLength;\r
   HTTP_BOOT_CACHE_CONTENT    *Cache;\r
   UINT8                      *Block;\r
+  UINTN                      UrlSize;\r
   CHAR16                     *Url;\r
   BOOLEAN                    IdentityMode;\r
   UINTN                      ReceivedSize;\r
   CHAR16                     *Url;\r
   BOOLEAN                    IdentityMode;\r
   UINTN                      ReceivedSize;\r
@@ -770,11 +773,12 @@ HttpBootGetBootFile (
   //\r
   // First, check whether we already cached the requested Uri.\r
   //\r
   //\r
   // First, check whether we already cached the requested Uri.\r
   //\r
-  Url = AllocatePool ((AsciiStrLen (Private->BootFileUri) + 1) * sizeof (CHAR16));\r
+  UrlSize = AsciiStrSize (Private->BootFileUri);\r
+  Url = AllocatePool (UrlSize * sizeof (CHAR16));\r
   if (Url == NULL) {\r
     return EFI_OUT_OF_RESOURCES;\r
   }\r
   if (Url == NULL) {\r
     return EFI_OUT_OF_RESOURCES;\r
   }\r
-  AsciiStrToUnicodeStr (Private->BootFileUri, Url);\r
+  AsciiStrToUnicodeStrS (Private->BootFileUri, Url, UrlSize);\r
   if (!HeaderOnly) {\r
     Status = HttpBootGetFileFromCache (Private, Url, BufferSize, Buffer, ImageType);\r
     if (Status != EFI_NOT_FOUND) {\r
   if (!HeaderOnly) {\r
     Status = HttpBootGetFileFromCache (Private, Url, BufferSize, Buffer, ImageType);\r
     if (Status != EFI_NOT_FOUND) {\r
@@ -873,11 +877,6 @@ HttpBootGetBootFile (
   }\r
   RequestData->Method = HeaderOnly ? HttpMethodHead : HttpMethodGet;\r
   RequestData->Url = Url;\r
   }\r
   RequestData->Method = HeaderOnly ? HttpMethodHead : HttpMethodGet;\r
   RequestData->Url = Url;\r
-  if (RequestData->Url == NULL) {\r
-    Status = EFI_OUT_OF_RESOURCES;\r
-    goto ERROR_4;\r
-  }\r
-  AsciiStrToUnicodeStr (Private->BootFileUri, RequestData->Url);\r
 \r
   //\r
   // 2.3 Record the request info in a temp cache item.\r
 \r
   //\r
   // 2.3 Record the request info in a temp cache item.\r
index 04c2f3efd72da026d23d2bd8e7ce5d3a25ba09bb..7ae2ff61f200a4c1d097d5ff2d4c1f70ab721aa9 100644 (file)
@@ -104,7 +104,7 @@ HttpBootAddBootOption (
   //\r
   // Update the URI node with the input boot file URI.\r
   //\r
   //\r
   // Update the URI node with the input boot file URI.\r
   //\r
-  UnicodeStrToAsciiStr (Uri, AsciiUri);\r
+  UnicodeStrToAsciiStrS (Uri, AsciiUri, sizeof (AsciiUri));\r
   Length = sizeof (EFI_DEVICE_PATH_PROTOCOL) + AsciiStrSize (AsciiUri);\r
   Node = AllocatePool (Length);\r
   if (Node == NULL) {\r
   Length = sizeof (EFI_DEVICE_PATH_PROTOCOL) + AsciiStrSize (AsciiUri);\r
   Node = AllocatePool (Length);\r
   if (Node == NULL) {\r
index ad194dbe0e5556da82d703477302082d690ff3c6..6fcb0b7c6e27a0ddfa1fd64ac6bdb2cb16e24c8d 100644 (file)
@@ -236,6 +236,7 @@ EfiHttpRequest (
   VOID                          *UrlParser;\r
   EFI_STATUS                    Status;\r
   CHAR8                         *HostName;\r
   VOID                          *UrlParser;\r
   EFI_STATUS                    Status;\r
   CHAR8                         *HostName;\r
+  UINTN                         HostNameSize;\r
   UINT16                        RemotePort;\r
   HTTP_PROTOCOL                 *HttpInstance;\r
   BOOLEAN                       Configure;\r
   UINT16                        RemotePort;\r
   HTTP_PROTOCOL                 *HttpInstance;\r
   BOOLEAN                       Configure;\r
@@ -343,7 +344,7 @@ EfiHttpRequest (
     }\r
 \r
 \r
     }\r
 \r
 \r
-    UnicodeStrToAsciiStr (Request->Url, Url);\r
+    UnicodeStrToAsciiStrS (Request->Url, Url, UrlLen);\r
     UrlParser = NULL;\r
     Status = HttpParseUrl (Url, (UINT32) AsciiStrLen (Url), FALSE, &UrlParser);\r
     if (EFI_ERROR (Status)) {\r
     UrlParser = NULL;\r
     Status = HttpParseUrl (Url, (UINT32) AsciiStrLen (Url), FALSE, &UrlParser);\r
     if (EFI_ERROR (Status)) {\r
@@ -443,13 +444,14 @@ EfiHttpRequest (
     }\r
 \r
     if (EFI_ERROR (Status)) {\r
     }\r
 \r
     if (EFI_ERROR (Status)) {\r
-      HostNameStr = AllocateZeroPool ((AsciiStrLen (HostName) + 1) * sizeof (CHAR16));\r
+      HostNameSize = AsciiStrSize (HostName);\r
+      HostNameStr = AllocateZeroPool (HostNameSize * sizeof (CHAR16));\r
       if (HostNameStr == NULL) {\r
         Status = EFI_OUT_OF_RESOURCES;\r
         goto Error1;\r
       }\r
       \r
       if (HostNameStr == NULL) {\r
         Status = EFI_OUT_OF_RESOURCES;\r
         goto Error1;\r
       }\r
       \r
-      AsciiStrToUnicodeStr (HostName, HostNameStr);\r
+      AsciiStrToUnicodeStrS (HostName, HostNameStr, HostNameSize);\r
       if (!HttpInstance->LocalAddressIsIPv6) {\r
         Status = HttpDns4 (HttpInstance, HostNameStr, &HttpInstance->RemoteAddr);\r
       } else {\r
       if (!HttpInstance->LocalAddressIsIPv6) {\r
         Status = HttpDns4 (HttpInstance, HostNameStr, &HttpInstance->RemoteAddr);\r
       } else {\r
index 486b20304f5274be71b35026c09c3f715438914b..6373f07215569319b024d91a31799ec23c501182 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Miscellaneous routines for HttpDxe driver.\r
 \r
 /** @file\r
   Miscellaneous routines for HttpDxe driver.\r
 \r
-Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>\r
 (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>\r
 This program and the accompanying materials\r
 are licensed and made available under the terms and conditions of the BSD License\r
 (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>\r
 This program and the accompanying materials\r
 are licensed and made available under the terms and conditions of the BSD License\r
@@ -1489,6 +1489,7 @@ HttpTcpTransmit (
   EFI_STATUS                Status;\r
   CHAR8                     *RequestMsg;\r
   CHAR8                     *Url;\r
   EFI_STATUS                Status;\r
   CHAR8                     *RequestMsg;\r
   CHAR8                     *Url;\r
+  UINTN                     UrlSize;\r
   UINTN                     RequestMsgSize;\r
 \r
   ValueInItem = (HTTP_TOKEN_WRAP *) Item->Value;\r
   UINTN                     RequestMsgSize;\r
 \r
   ValueInItem = (HTTP_TOKEN_WRAP *) Item->Value;\r
@@ -1499,12 +1500,13 @@ HttpTcpTransmit (
   //\r
   // Parse the URI of the remote host.\r
   //\r
   //\r
   // Parse the URI of the remote host.\r
   //\r
-  Url = AllocatePool (StrLen (ValueInItem->HttpToken->Message->Data.Request->Url) + 1);\r
+  UrlSize = StrLen (ValueInItem->HttpToken->Message->Data.Request->Url) + 1;\r
+  Url = AllocatePool (UrlSize);\r
   if (Url == NULL) {\r
     return EFI_OUT_OF_RESOURCES;\r
   }\r
 \r
   if (Url == NULL) {\r
     return EFI_OUT_OF_RESOURCES;\r
   }\r
 \r
-  UnicodeStrToAsciiStr (ValueInItem->HttpToken->Message->Data.Request->Url, Url);\r
+  UnicodeStrToAsciiStrS (ValueInItem->HttpToken->Message->Data.Request->Url, Url, UrlSize);\r
 \r
   //\r
   // Create request message.\r
 \r
   //\r
   // Create request message.\r
index 69a400389dc5d57372b665ac1f0a2e3442dacdb6..a82ce231e8db26335d20ef24fde1d60729a229aa 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Helper functions for configuring or getting the parameters relating to iSCSI.\r
 \r
 /** @file\r
   Helper functions for configuring or getting the parameters relating to iSCSI.\r
 \r
-Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2004 - 2016, 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
 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
@@ -390,7 +390,11 @@ IScsiConvertAttemptConfigDataToIfrNvData (
     IScsiIpToStr (&Ip, TRUE, IfrNvData->TargetIp);\r
   }\r
 \r
     IScsiIpToStr (&Ip, TRUE, IfrNvData->TargetIp);\r
   }\r
 \r
-  AsciiStrToUnicodeStr (SessionConfigData->TargetName, IfrNvData->TargetName);\r
+  AsciiStrToUnicodeStrS (\r
+    SessionConfigData->TargetName,\r
+    IfrNvData->TargetName,\r
+    sizeof (IfrNvData->TargetName) / sizeof (IfrNvData->TargetName[0])\r
+    );\r
   IScsiLunToUnicodeStr (SessionConfigData->BootLun, IfrNvData->BootLun);\r
   IScsiConvertIsIdToString (IfrNvData->IsId, SessionConfigData->IsId);\r
 \r
   IScsiLunToUnicodeStr (SessionConfigData->BootLun, IfrNvData->BootLun);\r
   IScsiConvertIsIdToString (IfrNvData->IsId, SessionConfigData->IsId);\r
 \r
@@ -405,16 +409,36 @@ IScsiConvertAttemptConfigDataToIfrNvData (
   if (IfrNvData->AuthenticationType == ISCSI_AUTH_TYPE_CHAP) {\r
     AuthConfigData      = &Attempt->AuthConfigData.CHAP;\r
     IfrNvData->CHAPType = AuthConfigData->CHAPType;\r
   if (IfrNvData->AuthenticationType == ISCSI_AUTH_TYPE_CHAP) {\r
     AuthConfigData      = &Attempt->AuthConfigData.CHAP;\r
     IfrNvData->CHAPType = AuthConfigData->CHAPType;\r
-    AsciiStrToUnicodeStr (AuthConfigData->CHAPName, IfrNvData->CHAPName);\r
-    AsciiStrToUnicodeStr (AuthConfigData->CHAPSecret, IfrNvData->CHAPSecret);\r
-    AsciiStrToUnicodeStr (AuthConfigData->ReverseCHAPName, IfrNvData->ReverseCHAPName);\r
-    AsciiStrToUnicodeStr (AuthConfigData->ReverseCHAPSecret, IfrNvData->ReverseCHAPSecret);\r
+    AsciiStrToUnicodeStrS (\r
+      AuthConfigData->CHAPName,\r
+      IfrNvData->CHAPName,\r
+      sizeof (IfrNvData->CHAPName) / sizeof (IfrNvData->CHAPName[0])\r
+      );\r
+    AsciiStrToUnicodeStrS (\r
+      AuthConfigData->CHAPSecret,\r
+      IfrNvData->CHAPSecret,\r
+      sizeof (IfrNvData->CHAPSecret) / sizeof (IfrNvData->CHAPSecret[0])\r
+      );\r
+    AsciiStrToUnicodeStrS (\r
+      AuthConfigData->ReverseCHAPName,\r
+      IfrNvData->ReverseCHAPName,\r
+      sizeof (IfrNvData->ReverseCHAPName) / sizeof (IfrNvData->ReverseCHAPName[0])\r
+      );\r
+    AsciiStrToUnicodeStrS (\r
+      AuthConfigData->ReverseCHAPSecret,\r
+      IfrNvData->ReverseCHAPSecret,\r
+      sizeof (IfrNvData->ReverseCHAPSecret) / sizeof (IfrNvData->ReverseCHAPSecret[0])\r
+      );\r
   }\r
 \r
   //\r
   // Other parameters.\r
   //\r
   }\r
 \r
   //\r
   // Other parameters.\r
   //\r
-  AsciiStrToUnicodeStr (Attempt->AttemptName, IfrNvData->AttemptName);\r
+  AsciiStrToUnicodeStrS (\r
+    Attempt->AttemptName,\r
+    IfrNvData->AttemptName,\r
+    sizeof (IfrNvData->AttemptName) / sizeof (IfrNvData->AttemptName[0])\r
+    );\r
 }\r
 \r
 /**\r
 }\r
 \r
 /**\r
@@ -603,12 +627,12 @@ IScsiConvertIfrNvDataToAttemptConfigData (
         return EFI_OUT_OF_RESOURCES;\r
       }      \r
       \r
         return EFI_OUT_OF_RESOURCES;\r
       }      \r
       \r
-      AsciiStrToUnicodeStr (Attempt->AttemptName, AttemptName1);\r
+      AsciiStrToUnicodeStrS (Attempt->AttemptName, AttemptName1, ATTEMPT_NAME_MAX_SIZE);\r
       if (StrLen (AttemptName1) > ATTEMPT_NAME_SIZE) {\r
         CopyMem (&AttemptName1[ATTEMPT_NAME_SIZE], L"...", 4 * sizeof (CHAR16));\r
       }\r
 \r
       if (StrLen (AttemptName1) > ATTEMPT_NAME_SIZE) {\r
         CopyMem (&AttemptName1[ATTEMPT_NAME_SIZE], L"...", 4 * sizeof (CHAR16));\r
       }\r
 \r
-      AsciiStrToUnicodeStr (SameNicAttempt->AttemptName, AttemptName2);\r
+      AsciiStrToUnicodeStrS (SameNicAttempt->AttemptName, AttemptName2, ATTEMPT_NAME_MAX_SIZE);\r
       if (StrLen (AttemptName2) > ATTEMPT_NAME_SIZE) {\r
         CopyMem (&AttemptName2[ATTEMPT_NAME_SIZE], L"...", 4 * sizeof (CHAR16));\r
       }\r
       if (StrLen (AttemptName2) > ATTEMPT_NAME_SIZE) {\r
         CopyMem (&AttemptName2[ATTEMPT_NAME_SIZE], L"...", 4 * sizeof (CHAR16));\r
       }\r
@@ -663,7 +687,7 @@ IScsiConvertIfrNvDataToAttemptConfigData (
     return EFI_OUT_OF_RESOURCES;\r
   }\r
 \r
     return EFI_OUT_OF_RESOURCES;\r
   }\r
 \r
-  AsciiStrToUnicodeStr (Attempt->MacString, MacString);\r
+  AsciiStrToUnicodeStrS (Attempt->MacString, MacString, sizeof (MacString) / sizeof (MacString[0]));\r
 \r
   UnicodeSPrint (\r
     mPrivate->PortString,\r
 \r
   UnicodeSPrint (\r
     mPrivate->PortString,\r
@@ -1087,7 +1111,7 @@ IScsiConfigUpdateAttempt (
   NET_LIST_FOR_EACH (Entry, &mPrivate->AttemptConfigs) {\r
     AttemptConfigData = NET_LIST_USER_STRUCT (Entry, ISCSI_ATTEMPT_CONFIG_NVDATA, Link);\r
 \r
   NET_LIST_FOR_EACH (Entry, &mPrivate->AttemptConfigs) {\r
     AttemptConfigData = NET_LIST_USER_STRUCT (Entry, ISCSI_ATTEMPT_CONFIG_NVDATA, Link);\r
 \r
-    AsciiStrToUnicodeStr (AttemptConfigData->AttemptName, AttemptName);\r
+    AsciiStrToUnicodeStrS (AttemptConfigData->AttemptName, AttemptName, sizeof (AttemptName) / sizeof (AttemptName[0]));\r
     UnicodeSPrint (mPrivate->PortString, (UINTN) 128, L"Attempt %s", AttemptName);\r
     AttemptConfigData->AttemptTitleToken = HiiSetString (\r
                                              mCallbackInfo->RegisteredHandle,\r
     UnicodeSPrint (mPrivate->PortString, (UINTN) 128, L"Attempt %s", AttemptName);\r
     AttemptConfigData->AttemptTitleToken = HiiSetString (\r
                                              mCallbackInfo->RegisteredHandle,\r
@@ -1216,7 +1240,7 @@ IScsiConfigDeleteAttempts (
       mPrivate->SinglePathCount--;\r
     }\r
 \r
       mPrivate->SinglePathCount--;\r
     }\r
 \r
-    AsciiStrToUnicodeStr (AttemptConfigData->MacString, MacString);\r
+    AsciiStrToUnicodeStrS (AttemptConfigData->MacString, MacString, sizeof (MacString) / sizeof (MacString[0]));\r
 \r
     UnicodeSPrint (\r
       mPrivate->PortString,\r
 \r
     UnicodeSPrint (\r
       mPrivate->PortString,\r
@@ -1730,7 +1754,7 @@ IScsiConfigProcessDefault (
       MacString\r
       );\r
 \r
       MacString\r
       );\r
 \r
-    UnicodeStrToAsciiStr (MacString, AttemptConfigData->MacString);\r
+    UnicodeStrToAsciiStrS (MacString, AttemptConfigData->MacString, sizeof (AttemptConfigData->MacString));\r
     AttemptConfigData->NicIndex = NicIndex;\r
 \r
     //\r
     AttemptConfigData->NicIndex = NicIndex;\r
 \r
     //\r
@@ -1773,7 +1797,7 @@ IScsiConfigProcessDefault (
       L"%d",\r
       (UINTN) AttemptConfigData->AttemptConfigIndex\r
       );\r
       L"%d",\r
       (UINTN) AttemptConfigData->AttemptConfigIndex\r
       );\r
-    UnicodeStrToAsciiStr (mPrivate->PortString, AttemptConfigData->AttemptName);\r
+    UnicodeStrToAsciiStrS (mPrivate->PortString, AttemptConfigData->AttemptName, sizeof (AttemptConfigData->AttemptName));\r
 \r
     //\r
     // Save the created Attempt temporarily. If user does not save the attempt\r
 \r
     //\r
     // Save the created Attempt temporarily. If user does not save the attempt\r
@@ -1942,7 +1966,11 @@ IScsiFormExtractConfig (
   if (EFI_ERROR (Status)) {\r
     IfrNvData->InitiatorName[0] = L'\0';\r
   } else {\r
   if (EFI_ERROR (Status)) {\r
     IfrNvData->InitiatorName[0] = L'\0';\r
   } else {\r
-    AsciiStrToUnicodeStr (InitiatorName, IfrNvData->InitiatorName);\r
+    AsciiStrToUnicodeStrS (\r
+      InitiatorName,\r
+      IfrNvData->InitiatorName,\r
+      sizeof (IfrNvData->InitiatorName) / sizeof (IfrNvData->InitiatorName[0])\r
+      );\r
   }\r
 \r
   //\r
   }\r
 \r
   //\r
@@ -2210,7 +2238,7 @@ IScsiFormCallback (
   } else if (Action == EFI_BROWSER_ACTION_CHANGED) {  \r
     switch (QuestionId) {\r
     case KEY_INITIATOR_NAME:\r
   } else if (Action == EFI_BROWSER_ACTION_CHANGED) {  \r
     switch (QuestionId) {\r
     case KEY_INITIATOR_NAME:\r
-      UnicodeStrToAsciiStr (IfrNvData->InitiatorName, IScsiName);\r
+      UnicodeStrToAsciiStrS (IfrNvData->InitiatorName, IScsiName, ISCSI_NAME_MAX_SIZE);\r
       BufferSize  = AsciiStrSize (IScsiName);\r
 \r
       Status      = gIScsiInitiatorName.Set (&gIScsiInitiatorName, &BufferSize, IScsiName);\r
       BufferSize  = AsciiStrSize (IScsiName);\r
 \r
       Status      = gIScsiInitiatorName.Set (&gIScsiInitiatorName, &BufferSize, IScsiName);\r
@@ -2237,7 +2265,7 @@ IScsiFormCallback (
           );\r
       }\r
 \r
           );\r
       }\r
 \r
-      UnicodeStrToAsciiStr (IfrNvData->AttemptName, Private->Current->AttemptName);\r
+      UnicodeStrToAsciiStrS (IfrNvData->AttemptName, Private->Current->AttemptName, sizeof (Private->Current->AttemptName));\r
 \r
       IScsiConfigUpdateAttempt ();\r
 \r
 \r
       IScsiConfigUpdateAttempt ();\r
 \r
@@ -2366,7 +2394,7 @@ IScsiFormCallback (
       break;\r
 \r
     case KEY_TARGET_IP:\r
       break;\r
 \r
     case KEY_TARGET_IP:\r
-      UnicodeStrToAsciiStr (IfrNvData->TargetIp, IpString);\r
+      UnicodeStrToAsciiStrS (IfrNvData->TargetIp, IpString, sizeof (IpString));\r
       Status = IScsiAsciiStrToIp (IpString, IfrNvData->IpMode, &HostIp);\r
       if (EFI_ERROR (Status) || !IpIsUnicast (&HostIp, IfrNvData->IpMode)) {\r
         CreatePopUp (\r
       Status = IScsiAsciiStrToIp (IpString, IfrNvData->IpMode, &HostIp);\r
       if (EFI_ERROR (Status) || !IpIsUnicast (&HostIp, IfrNvData->IpMode)) {\r
         CreatePopUp (\r
@@ -2383,7 +2411,7 @@ IScsiFormCallback (
       break;\r
 \r
     case KEY_TARGET_NAME:\r
       break;\r
 \r
     case KEY_TARGET_NAME:\r
-      UnicodeStrToAsciiStr (IfrNvData->TargetName, IScsiName);\r
+      UnicodeStrToAsciiStrS (IfrNvData->TargetName, IScsiName, ISCSI_NAME_MAX_SIZE);\r
       Status = IScsiNormalizeName (IScsiName, AsciiStrLen (IScsiName));\r
       if (EFI_ERROR (Status)) {\r
         CreatePopUp (\r
       Status = IScsiNormalizeName (IScsiName, AsciiStrLen (IScsiName));\r
       if (EFI_ERROR (Status)) {\r
         CreatePopUp (\r
@@ -2406,7 +2434,7 @@ IScsiFormCallback (
       break;\r
 \r
     case KEY_BOOT_LUN:\r
       break;\r
 \r
     case KEY_BOOT_LUN:\r
-      UnicodeStrToAsciiStr (IfrNvData->BootLun, LunString);\r
+      UnicodeStrToAsciiStrS (IfrNvData->BootLun, LunString, sizeof (LunString));\r
       Status = IScsiAsciiStrToLun (LunString, (UINT8 *) &Lun);\r
       if (EFI_ERROR (Status)) {\r
         CreatePopUp (\r
       Status = IScsiAsciiStrToLun (LunString, (UINT8 *) &Lun);\r
       if (EFI_ERROR (Status)) {\r
         CreatePopUp (\r
@@ -2433,30 +2461,34 @@ IScsiFormCallback (
       break;\r
 \r
     case KEY_CHAP_NAME:\r
       break;\r
 \r
     case KEY_CHAP_NAME:\r
-      UnicodeStrToAsciiStr (\r
+      UnicodeStrToAsciiStrS (\r
         IfrNvData->CHAPName,\r
         IfrNvData->CHAPName,\r
-        Private->Current->AuthConfigData.CHAP.CHAPName\r
+        Private->Current->AuthConfigData.CHAP.CHAPName,\r
+        sizeof (Private->Current->AuthConfigData.CHAP.CHAPName)\r
         );\r
       break;\r
 \r
     case KEY_CHAP_SECRET:\r
         );\r
       break;\r
 \r
     case KEY_CHAP_SECRET:\r
-      UnicodeStrToAsciiStr (\r
+      UnicodeStrToAsciiStrS (\r
         IfrNvData->CHAPSecret,\r
         IfrNvData->CHAPSecret,\r
-        Private->Current->AuthConfigData.CHAP.CHAPSecret\r
+        Private->Current->AuthConfigData.CHAP.CHAPSecret,\r
+        sizeof (Private->Current->AuthConfigData.CHAP.CHAPSecret)\r
         );\r
       break;\r
 \r
     case KEY_REVERSE_CHAP_NAME:\r
         );\r
       break;\r
 \r
     case KEY_REVERSE_CHAP_NAME:\r
-      UnicodeStrToAsciiStr (\r
+      UnicodeStrToAsciiStrS (\r
         IfrNvData->ReverseCHAPName,\r
         IfrNvData->ReverseCHAPName,\r
-        Private->Current->AuthConfigData.CHAP.ReverseCHAPName\r
+        Private->Current->AuthConfigData.CHAP.ReverseCHAPName,\r
+        sizeof (Private->Current->AuthConfigData.CHAP.ReverseCHAPName)\r
         );\r
       break;\r
 \r
     case KEY_REVERSE_CHAP_SECRET:\r
         );\r
       break;\r
 \r
     case KEY_REVERSE_CHAP_SECRET:\r
-      UnicodeStrToAsciiStr (\r
+      UnicodeStrToAsciiStrS (\r
         IfrNvData->ReverseCHAPSecret,\r
         IfrNvData->ReverseCHAPSecret,\r
-        Private->Current->AuthConfigData.CHAP.ReverseCHAPSecret\r
+        Private->Current->AuthConfigData.CHAP.ReverseCHAPSecret,\r
+        sizeof (Private->Current->AuthConfigData.CHAP.ReverseCHAPSecret)\r
         );\r
       break;\r
 \r
         );\r
       break;\r
 \r
index 5a121ce9b37ad746c36426fdda239cad776a18e2..7e7eb39ee2304afac633916ffbf43c1fc51abfb6 100644 (file)
@@ -671,7 +671,7 @@ IScsiStart (
     Session->ConfigData = AttemptConfigData;\r
     Session->AuthType   = AttemptConfigData->AuthenticationType;\r
 \r
     Session->ConfigData = AttemptConfigData;\r
     Session->AuthType   = AttemptConfigData->AuthenticationType;\r
 \r
-    AsciiStrToUnicodeStr (AttemptConfigData->MacString, MacString);\r
+    AsciiStrToUnicodeStrS (AttemptConfigData->MacString, MacString, sizeof (MacString) / sizeof (MacString[0]));\r
     UnicodeSPrint (\r
       mPrivate->PortString,\r
       (UINTN) ISCSI_NAME_IFR_MAX_SIZE,\r
     UnicodeSPrint (\r
       mPrivate->PortString,\r
       (UINTN) ISCSI_NAME_IFR_MAX_SIZE,\r
index a1f2672f3709725a0fa79acddea07535b976f0b2..93c0d0c67294f32ef1b0f3c609fed8b6921ecc41 100644 (file)
@@ -1106,7 +1106,7 @@ IScsiGetConfigData (
           //\r
           // Refresh the state of this attempt to NVR.\r
           //\r
           //\r
           // Refresh the state of this attempt to NVR.\r
           //\r
-          AsciiStrToUnicodeStr (AttemptTmp->MacString, MacString);\r
+          AsciiStrToUnicodeStrS (AttemptTmp->MacString, MacString, sizeof (MacString) / sizeof (MacString[0]));\r
           UnicodeSPrint (\r
             mPrivate->PortString,\r
             (UINTN) ISCSI_NAME_IFR_MAX_SIZE,\r
           UnicodeSPrint (\r
             mPrivate->PortString,\r
             (UINTN) ISCSI_NAME_IFR_MAX_SIZE,\r
@@ -1145,7 +1145,7 @@ IScsiGetConfigData (
         //\r
         // Refresh the state of this attempt to NVR.\r
         //\r
         //\r
         // Refresh the state of this attempt to NVR.\r
         //\r
-        AsciiStrToUnicodeStr (AttemptTmp->MacString, MacString);\r
+        AsciiStrToUnicodeStrS (AttemptTmp->MacString, MacString, sizeof (MacString) / sizeof (MacString[0]));\r
         UnicodeSPrint (\r
           mPrivate->PortString,\r
           (UINTN) ISCSI_NAME_IFR_MAX_SIZE,\r
         UnicodeSPrint (\r
           mPrivate->PortString,\r
           (UINTN) ISCSI_NAME_IFR_MAX_SIZE,\r
@@ -1236,7 +1236,7 @@ IScsiGetConfigData (
       //\r
       // Refresh the state of this attempt to NVR.\r
       //\r
       //\r
       // Refresh the state of this attempt to NVR.\r
       //\r
-      AsciiStrToUnicodeStr (AttemptConfigData->MacString, MacString);\r
+      AsciiStrToUnicodeStrS (AttemptConfigData->MacString, MacString, sizeof (MacString) / sizeof (MacString[0]));\r
       UnicodeSPrint (\r
         mPrivate->PortString,\r
         (UINTN) ISCSI_NAME_IFR_MAX_SIZE,\r
       UnicodeSPrint (\r
         mPrivate->PortString,\r
         (UINTN) ISCSI_NAME_IFR_MAX_SIZE,\r