diff options
author | Fu Siyuan <siyuan.fu@intel.com> | 2014-04-10 02:25:49 +0000 |
---|---|---|
committer | sfu5 <sfu5@6f19259b-4bc3-4df7-8a09-765794883524> | 2014-04-10 02:25:49 +0000 |
commit | cc0b145e0f828a26715d4b483abee9b0a56ad6f7 (patch) | |
tree | 74e56dbbb0ec4961f8a78b7dcd2585d3030995a2 | |
parent | 734b6c33ba6ec210eef3642e07479a5b9d445ef1 (diff) | |
download | edk2-cc0b145e0f828a26715d4b483abee9b0a56ad6f7.tar.gz edk2-cc0b145e0f828a26715d4b483abee9b0a56ad6f7.tar.bz2 edk2-cc0b145e0f828a26715d4b483abee9b0a56ad6f7.zip |
Fix a bug in IP driver that the fragment overlap check may be skipped incorrectly.
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye, Ting <ting.ye@intel.com>
Reviewed-by: Jin, Eric <eric.jin@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15443 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r-- | MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Input.c | 4 | ||||
-rw-r--r-- | NetworkPkg/Ip6Dxe/Ip6Input.c | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Input.c b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Input.c index 62163f4c57..38ad1c39da 100644 --- a/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Input.c +++ b/MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Input.c @@ -1,7 +1,7 @@ /** @file
IP4 input process.
-Copyright (c) 2005 - 2012, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2005 - 2014, 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
which accompanies this distribution. The full text of the license may be found at
@@ -292,7 +292,7 @@ Ip4Reassemble ( // check whether THIS.Start < PREV.End for overlap. If two fragments
// overlaps, trim the overlapped part off THIS fragment.
//
- if ((Cur != Head) && ((Prev = Cur->BackLink) != Head)) {
+ if ((Prev = Cur->BackLink) != Head) {
Fragment = NET_LIST_USER_STRUCT (Prev, NET_BUF, List);
Node = IP4_GET_CLIP_INFO (Fragment);
diff --git a/NetworkPkg/Ip6Dxe/Ip6Input.c b/NetworkPkg/Ip6Dxe/Ip6Input.c index 3f0dce7343..cf88884e38 100644 --- a/NetworkPkg/Ip6Dxe/Ip6Input.c +++ b/NetworkPkg/Ip6Dxe/Ip6Input.c @@ -1,7 +1,7 @@ /** @file
IP6 internal functions to process the incoming packets.
- Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2009 - 2014, 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
@@ -243,7 +243,7 @@ Ip6Reassemble ( // check whether THIS.Start < PREV.End for overlap. If two fragments
// overlaps, trim the overlapped part off THIS fragment.
//
- if ((Cur != ListHead) && ((Prev = Cur->BackLink) != ListHead)) {
+ if ((Prev = Cur->BackLink) != ListHead) {
Fragment = NET_LIST_USER_STRUCT (Prev, NET_BUF, List);
Node = IP6_GET_CLIP_INFO (Fragment);
|