From nobody Fri May 3 04:27:11 2024 Delivered-To: importer@patchew.org Received-SPF: none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) client-ip=198.145.21.10; envelope-from=edk2-devel-bounces@lists.01.org; helo=ml01.01.org; Authentication-Results: mx.zoho.com; spf=none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) smtp.mailfrom=edk2-devel-bounces@lists.01.org; Return-Path: Received: from ml01.01.org (ml01.01.org [198.145.21.10]) by mx.zohomail.com with SMTPS id 1488527033420470.31745655524173; Thu, 2 Mar 2017 23:43:53 -0800 (PST) Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id DC00B82216; Thu, 2 Mar 2017 23:43:51 -0800 (PST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 7B07182215 for ; Thu, 2 Mar 2017 23:43:50 -0800 (PST) Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 02 Mar 2017 23:43:50 -0800 Received: from jiaxinwu-mobl2.ccr.corp.intel.com ([10.239.196.74]) by orsmga005.jf.intel.com with ESMTP; 02 Mar 2017 23:43:48 -0800 X-Original-To: edk2-devel@lists.01.org X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.35,235,1484035200"; d="scan'208";a="71143308" From: Jiaxin Wu To: edk2-devel@lists.01.org Date: Fri, 3 Mar 2017 15:43:47 +0800 Message-Id: <1488527027-182460-1-git-send-email-jiaxin.wu@intel.com> X-Mailer: git-send-email 1.9.5.msysgit.1 Subject: [edk2] [Patch] NetworkPkg/Dhcp6Dxe: Handle the Nil UUID case X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Ye Ting , Fu Siyuan , Wu Jiaxin MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" X-ZohoMail: RSF_4 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Nil UUID is a special case with all zeros value. This patch is to handle this case to avoid the invalid DUID. Cc: Naveen Santhapur Cc: Ye Ting Cc: Fu Siyuan Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Wu Jiaxin Reviewed-by: Fu Siyuan Reviewed-by: Ye Ting =20 --- NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf | 4 +++- NetworkPkg/Dhcp6Dxe/Dhcp6Impl.h | 3 ++- NetworkPkg/Dhcp6Dxe/Dhcp6Utility.c | 4 ++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf b/NetworkPkg/Dhcp6Dxe/Dhcp6Dx= e.inf index 24cb9a9..40a6ee7 100644 --- a/NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf +++ b/NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf @@ -3,11 +3,11 @@ # =20 # This driver produces EFI DHCPv6 Protocol which is used to get IPv6 addr= esses # and other configuration parameters from DHCPv6 servers. # # (C) Copyright 2015 Hewlett-Packard Development Company, L.P.
-# Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.
+# Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.
# # This program and the accompanying materials # are licensed and made available under the terms and conditions of the B= SD License # which accompanies this distribution. The full text of the license may b= e found at # http://opensource.org/licenses/bsd-license.php. @@ -72,10 +72,12 @@ gEfiUdp6ProtocolGuid ## TO_START gEfiDhcp6ServiceBindingProtocolGuid ## BY_START gEfiDhcp6ProtocolGuid ## BY_START gEfiIp6ConfigProtocolGuid ## TO_START =20 +[Guids] =20 + gZeroGuid ## SOMETIMES_CONSUMES ## GUID =20 [Pcd] gEfiNetworkPkgTokenSpaceGuid.PcdDhcp6UidType ## SOMETIMES_CONSUMES =20 [UserExtensions.TianoCore."ExtraFiles"] diff --git a/NetworkPkg/Dhcp6Dxe/Dhcp6Impl.h b/NetworkPkg/Dhcp6Dxe/Dhcp6Imp= l.h index 86ef8af..06780b6 100644 --- a/NetworkPkg/Dhcp6Dxe/Dhcp6Impl.h +++ b/NetworkPkg/Dhcp6Dxe/Dhcp6Impl.h @@ -1,9 +1,9 @@ /** @file Dhcp6 internal data structure and definition declaration. =20 - Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.
+ Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.
=20 This program and the accompanying materials are licensed and made available under the terms and conditions of the BS= D License which accompanies this distribution. The full text of the license may b= e found at http://opensource.org/licenses/bsd-license.php. @@ -35,10 +35,11 @@ #include #include #include #include #include +#include =20 =20 typedef struct _DHCP6_IA_CB DHCP6_IA_CB; typedef struct _DHCP6_INF_CB DHCP6_INF_CB; typedef struct _DHCP6_TX_CB DHCP6_TX_CB; diff --git a/NetworkPkg/Dhcp6Dxe/Dhcp6Utility.c b/NetworkPkg/Dhcp6Dxe/Dhcp6= Utility.c index 2525a32..a65ed6d 100644 --- a/NetworkPkg/Dhcp6Dxe/Dhcp6Utility.c +++ b/NetworkPkg/Dhcp6Dxe/Dhcp6Utility.c @@ -1,10 +1,10 @@ /** @file Dhcp6 support functions implementation. =20 (C) Copyright 2015 Hewlett-Packard Development Company, L.P.
- Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.
+ Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.
=20 This program and the accompanying materials are licensed and made available under the terms and conditions of the BS= D License which accompanies this distribution. The full text of the license may b= e found at http://opensource.org/licenses/bsd-license.php. @@ -62,11 +62,11 @@ Dhcp6GenerateClientId ( // =20 // // If System UUID is found from SMBIOS Table, use DUID-UUID type. // - if ((PcdGet8 (PcdDhcp6UidType) =3D=3D Dhcp6DuidTypeUuid) && !EFI_ERROR (= NetLibGetSystemGuid (&Uuid))) { + if ((PcdGet8 (PcdDhcp6UidType) =3D=3D Dhcp6DuidTypeUuid) && !EFI_ERROR (= NetLibGetSystemGuid (&Uuid)) && !CompareGuid (&Uuid, &gZeroGuid)) { // // // The format of DUID-UUID: // =20 // 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 --=20 1.9.5.msysgit.1 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel