summaryrefslogtreecommitdiffstats
path: root/NetworkPkg/Application
diff options
context:
space:
mode:
authorZhang Lubo <lubo.zhang@intel.com>2015-07-08 12:17:11 +0000
committerluobozhang <luobozhang@Edk2>2015-07-08 12:17:11 +0000
commitc960bdc2dcfad4ececbe208fbe3a25adea6dceea (patch)
tree1284c5f5461e2f0f376d4562898217e2a5d812ab /NetworkPkg/Application
parente0f74cea66e64e8f12462fce4f6580800592417a (diff)
downloadedk2-c960bdc2dcfad4ececbe208fbe3a25adea6dceea.tar.gz
edk2-c960bdc2dcfad4ececbe208fbe3a25adea6dceea.tar.bz2
edk2-c960bdc2dcfad4ececbe208fbe3a25adea6dceea.zip
NetworkPkg:Replace unsafe string functions.
Replace unsafe string functions with new added safe string functions. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Zhang Lubo <lubo.zhang@intel.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com> Reviewed-by: Qiu Shumin <shumin.qiu@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17887 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'NetworkPkg/Application')
-rw-r--r--NetworkPkg/Application/IfConfig6/IfConfig6.c15
-rw-r--r--NetworkPkg/Application/IpsecConfig/Indexer.c4
-rw-r--r--NetworkPkg/Application/IpsecConfig/PolicyEntryOperation.c6
3 files changed, 10 insertions, 15 deletions
diff --git a/NetworkPkg/Application/IfConfig6/IfConfig6.c b/NetworkPkg/Application/IfConfig6/IfConfig6.c
index 9e228ca7bc..4cec44f8d5 100644
--- a/NetworkPkg/Application/IfConfig6/IfConfig6.c
+++ b/NetworkPkg/Application/IfConfig6/IfConfig6.c
@@ -1,7 +1,7 @@
/** @file
The implementation for Shell application IfConfig6.
- Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
@@ -127,16 +127,15 @@ SplitStrToList (
ARG_LIST *ArgList;
ARG_LIST *ArgNode;
- if (*String == L'\0') {
+ if (*String == L'\0' || *String == NULL) {
return NULL;
}
//
// Copy the CONST string to a local copy.
//
- Str = (CHAR16 *) AllocateZeroPool (StrSize (String));
+ Str = AllocateCopyPool (StrSize (String), String);
ASSERT (Str != NULL);
- Str = StrnCpy (Str, String, StrLen (String));
ArgStr = Str;
//
@@ -1717,10 +1716,8 @@ IfConfig6Initialize (
Private->OpCode = IfConfig6OpList;
ValueStr = ShellCommandLineGetValue (ParamPackage, L"-l");
if (ValueStr != NULL) {
- Str = (CHAR16 *) AllocateZeroPool (StrSize (ValueStr));
+ Str = AllocateCopyPool (StrSize (ValueStr), ValueStr);
ASSERT (Str != NULL);
-
- Str = StrnCpy (Str, ValueStr, StrLen (ValueStr));
Private->IfName = Str;
}
}
@@ -1731,10 +1728,8 @@ IfConfig6Initialize (
Private->OpCode = IfConfig6OpClear;
ValueStr = ShellCommandLineGetValue (ParamPackage, L"-r");
if (ValueStr != NULL) {
- Str = (CHAR16 *) AllocateZeroPool (StrSize (ValueStr));
+ Str = AllocateCopyPool (StrSize (ValueStr), ValueStr);
ASSERT (Str != NULL);
-
- Str = StrnCpy (Str, ValueStr, StrLen (ValueStr));
Private->IfName = Str;
}
}
diff --git a/NetworkPkg/Application/IpsecConfig/Indexer.c b/NetworkPkg/Application/IpsecConfig/Indexer.c
index 9e066b1cb5..83ceda4b57 100644
--- a/NetworkPkg/Application/IpsecConfig/Indexer.c
+++ b/NetworkPkg/Application/IpsecConfig/Indexer.c
@@ -1,7 +1,7 @@
/** @file
The implementation of construct ENTRY_INDEXER in IpSecConfig application.
- Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
@@ -235,7 +235,7 @@ ConstructPadIndexer (
Indexer->PadId.PeerIdValid = TRUE;
ZeroMem (Indexer->PadId.Id.PeerId, MAX_PEERID_LEN);
- StrnCpy ((CHAR16 *) Indexer->PadId.Id.PeerId, ValueStr, ARRAY_SIZE (Indexer->PadId.Id.PeerId) - 1);
+ StrnCpyS ((CHAR16 *) Indexer->PadId.Id.PeerId, MAX_PEERID_LEN / sizeof (CHAR16), ValueStr, MAX_PEERID_LEN / sizeof (CHAR16) - 1);
}
}
diff --git a/NetworkPkg/Application/IpsecConfig/PolicyEntryOperation.c b/NetworkPkg/Application/IpsecConfig/PolicyEntryOperation.c
index 7e04573022..970caa16ca 100644
--- a/NetworkPkg/Application/IpsecConfig/PolicyEntryOperation.c
+++ b/NetworkPkg/Application/IpsecConfig/PolicyEntryOperation.c
@@ -1,7 +1,7 @@
/** @file
The implementation of policy entry operation function in IpSecConfig application.
- Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
@@ -1104,7 +1104,7 @@ CreatePadEntry (
ValueStr = ShellCommandLineGetValue (ParamPackage, L"--peer-id");
if (ValueStr != NULL) {
(*PadId)->PeerIdValid = TRUE;
- StrnCpy ((CHAR16 *) (*PadId)->Id.PeerId, ValueStr, ARRAY_SIZE ((*PadId)->Id.PeerId) - 1);
+ StrnCpyS ((CHAR16 *) (*PadId)->Id.PeerId, MAX_PEERID_LEN / sizeof (CHAR16), ValueStr, MAX_PEERID_LEN / sizeof (CHAR16) - 1);
*Mask |= PEER_ID;
}
@@ -1399,7 +1399,7 @@ CombineSpdEntry (
// Process Data
//
if ((Mask & NAME) != 0) {
- AsciiStrCpy ((CHAR8 *) OldData->Name, (CHAR8 *) NewData->Name);
+ AsciiStrCpyS ((CHAR8 *) OldData->Name, MAX_PEERID_LEN, (CHAR8 *) NewData->Name);
}
if ((Mask & PACKET_FLAG) != 0) {