From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (NAM10-MW2-obe.outbound.protection.outlook.com [40.107.94.137]) by mx.groups.io with SMTP id smtpd.web10.508.1586561811416912816 for ; Fri, 10 Apr 2020 16:36:51 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@microsoft.com header.s=selector2 header.b=DQbRjGR/; spf=pass (domain: microsoft.com, ip: 40.107.94.137, mailfrom: bret.barkelew@microsoft.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IOvYRdv0q71vKdeeyMp/V5k/RYyqtspSNN45bx5X/IEQY36vTEgMH8WoDGNCeksy6e8OzLbsliW144UiU+e4QZQ4J1Vu7k9x8wP640HxG7ZHT60rq8AX2WFoY0yyLzuVEr4xMJNfL2cNenj+WSYf3YZsWNdjOZ9adXz/2EJ6lwDV0V8CrP5MkOpbZgHL7ctsFvtt9GKyyeZgjRb9dS/coIT8iSu2glqnaJJv4RUPOX7a6trjf3tYdNMgmhQYKkgsk5eOHqkigls50/RwWaa+svomsJFuf7JUehff2G1VeMAMs1IJc4Vc1DudF29bwA2egb4wJoNCV4c7a3bYSjgUkA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZM5XTSzGyeAeVvrABhVubMzloZ2NZuw7427G8wJ+6qE=; b=H2V96cjthI80a7yMJL6bgakkWOaaXxGR5WOIye5RisQanj/nPi9iXCrTFuDGpeWwQ8wp2t7AwSSb3qt1PBqKlD+as1mySN0T2INjjydSTqrXLmVD9ImgsZJPsoLt0Qy0s3pKiLWWuYpTKF5CTsw4aH3KMZZfU8Idq7T4yEjokshOz0eoRIYqhNRsE15wbMIrIUwJK3jb7X/5cg4NDkngDg8XGMMycJknunhA/sY97r44DmtLarbujxrA9qZaDB8/W7l8zUl38THhxmUmWj6Zw9uftiLU3NhBusqu9D4Hppig+7r+TjB5T2zMROwcJAgwJ0LvslX+3YPIJwKEdiiKkw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=microsoft.com; dmarc=pass action=none header.from=microsoft.com; dkim=pass header.d=microsoft.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZM5XTSzGyeAeVvrABhVubMzloZ2NZuw7427G8wJ+6qE=; b=DQbRjGR/1pBKLPRBMytNsmnXauBtXzFIBAM3FYTbxuWJTVPQZY7uCpcouuyLr4iGDCUfwcOiQ1DW9dcOuJW2k+JUaci+6bqRBEhTrKtDy5RCA7jkKf51m3PjOYkU9LLigI2HkYIRlo9vE/cpRVbX3motqXRLKeWcA8663+qRC1Y= Received: from CY4PR21MB0743.namprd21.prod.outlook.com (2603:10b6:903:b2::9) by CY4PR21MB0790.namprd21.prod.outlook.com (2603:10b6:903:13b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.2; Fri, 10 Apr 2020 23:36:48 +0000 Received: from CY4PR21MB0743.namprd21.prod.outlook.com ([fe80::90d:10d9:c5bc:5318]) by CY4PR21MB0743.namprd21.prod.outlook.com ([fe80::90d:10d9:c5bc:5318%12]) with mapi id 15.20.2921.009; Fri, 10 Apr 2020 23:36:48 +0000 From: "Bret Barkelew" To: "devel@edk2.groups.io" , "michael.kubacki@outlook.com" CC: Chao Zhang , Hao A Wu , Jian J Wang , Jiewen Yao , Sean Brogan Subject: Re: [EXTERNAL] [edk2-devel] [PATCH v2 7/7] SecurityPkg/HddPassword: Use BaseLib linked list iteration macros Thread-Topic: [EXTERNAL] [edk2-devel] [PATCH v2 7/7] SecurityPkg/HddPassword: Use BaseLib linked list iteration macros Thread-Index: AQHWD3MKnyPSgrh21EOLgO5AgWC3K6hzAuK9 Date: Fri, 10 Apr 2020 23:36:48 +0000 Message-ID: References: <20200410200218.24992-1-michael.kubacki@outlook.com>, In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=True;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2020-04-10T23:36:43.3293375Z;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ContentBits=0;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Method=Privileged authentication-results: spf=none (sender IP is ) smtp.mailfrom=Bret.Barkelew@microsoft.com; x-originating-ip: [71.212.145.195] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: e3d48e4a-68d9-4e16-2339-08d7dda809d9 x-ms-traffictypediagnostic: CY4PR21MB0790:|CY4PR21MB0790: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6430; x-forefront-prvs: 0369E8196C x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CY4PR21MB0743.namprd21.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(10019020)(4636009)(136003)(39860400002)(376002)(396003)(366004)(346002)(15650500001)(7696005)(8990500004)(76116006)(66946007)(8676002)(26005)(186003)(82950400001)(33656002)(91956017)(8936002)(53546011)(82960400001)(6506007)(71200400001)(66476007)(4326008)(52536014)(478600001)(5660300002)(107886003)(54906003)(966005)(10290500003)(2906002)(316002)(66446008)(81156014)(66556008)(55016002)(64756008)(86362001)(110136005)(9686003);DIR:OUT;SFP:1102; received-spf: None (protection.outlook.com: microsoft.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Hde5FdQrhFOYfEi270BWhk2BlrpIZnzdlon+52dRDL83F4cYt+lgPZLSkGYZv/zNv5hmsaTBvTxb8j3hZNMEDHTNVCswuRs+cSWEELJObstssTnhVScIcPCZ+uz1z2UaLA11D0t3xkrTwUjS2JLyjCI4C3DhzagFXehkehJX+D9sep4uCB03bUBwcDIR1KHmallDaz+b+Yx5thIejPLMQYIWocGJd3Irkq15ADbnLZ9jYJSo5aAEfasT7U0rbDdF485Ys1l4JAwNxdmjd7WmOGYDJkrMaPeo1t4lIxXSh8dwPukMGJ++zJi82a4X1ZLY7xMc4vclZNILynNGwK1G5fGk2NME32eT22z1VhxXSoBkGkK3cz94Xm/x8oNUDuXPGxslRjC1ChjKTABDQD1J/ADWOZ1s8gNW/Vkt6aydwfcayVBWuLo+/V0pk78NUR3EK7YaL7UN/cNk+C5Spt7WcRH+CF0LcYieCpZbMZV2cq36gKxmVJ/WRvn/t2dBS6XoRt+a9Kfz+DZ81K6o86cBzg== x-ms-exchange-antispam-messagedata: YgvKpCDXiFlTd9MeJp2vKhep3WOLag9iNeZbcmFjVQlAYlYTySwLuEvPNkFwKLYjJ+mseKj5hX/4tefy9C2L2BWK6Otqol97fk4qDCd9dT9rt8ihmTYMuBfNNUvyc5g0O57+cfy24mSfYmH5TSjsDg== MIME-Version: 1.0 X-OriginatorOrg: microsoft.com X-MS-Exchange-CrossTenant-Network-Message-Id: e3d48e4a-68d9-4e16-2339-08d7dda809d9 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Apr 2020 23:36:48.3075 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: TOmlFKmxRpUwFF5X4RcFf5qJPJ9IBmlIsnPJsix8sx40m09CL5C5oUybK6592ljSsb8Z8BUZIDaT8xKG1vzxbw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR21MB0790 Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_CY4PR21MB0743DDD978EEF6292439E82DEFDE0CY4PR21MB0743namp_" --_000_CY4PR21MB0743DDD978EEF6292439E82DEFDE0CY4PR21MB0743namp_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Bret Barkelew - Bret ________________________________ From: devel@edk2.groups.io on behalf of Michael Kub= acki via groups.io Sent: Friday, April 10, 2020 1:02:18 PM To: devel@edk2.groups.io Cc: Chao Zhang ; Hao A Wu ; Ji= an J Wang ; Jiewen Yao ; Sean = Brogan Subject: [EXTERNAL] [edk2-devel] [PATCH v2 7/7] SecurityPkg/HddPassword: U= se BaseLib linked list iteration macros From: Michael Kubacki REF:https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fbu= gzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D1959&data=3D02%7C01%7CBret.B= arkelew%40microsoft.com%7C0cb7a3e5e3ef4f9c776808d7dd8a2c7e%7C72f988bf86f141= af91ab2d7cd011db47%7C1%7C0%7C637221457829007406&sdata=3DTzvNo4r7FXEx%2B= LEifMTR8HHL%2BGGpl8WkOiABJS1IqF8%3D&reserved=3D0 Replaces usage of the linked list iteration macros defined in HddPasswordDxe.h with the common definition in BaseLib.h. Cc: Chao Zhang Cc: Hao A Wu Cc: Jian J Wang Cc: Jiewen Yao Cc: Sean Brogan Signed-off-by: Michael Kubacki Reviewed-by: Jiewen Yao --- SecurityPkg/HddPassword/HddPasswordDxe.c | 13 +++++++------ SecurityPkg/HddPassword/HddPasswordDxe.h | 7 +------ 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/SecurityPkg/HddPassword/HddPasswordDxe.c b/SecurityPkg/HddPas= sword/HddPasswordDxe.c index a25b3471d073..32b55a6a8b72 100644 --- a/SecurityPkg/HddPassword/HddPasswordDxe.c +++ b/SecurityPkg/HddPassword/HddPasswordDxe.c @@ -2,6 +2,7 @@ HDD password driver which is used to support HDD security feature. Copyright (c) 2019, Intel Corporation. All rights reserved.
+ Copyright (c) Microsoft Corporation.
SPDX-License-Identifier: BSD-2-Clause-Patent @@ -115,7 +116,7 @@ BuildHddPasswordDeviceInfo ( // Build HDD password device info and save them to LockBox. // DevInfoLength =3D 0; - EFI_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) { + BASE_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) { ConfigFormEntry =3D BASE_CR (Entry, HDD_PASSWORD_CONFIG_FORM_ENTRY, L= ink); // @@ -164,7 +165,7 @@ BuildHddPasswordDeviceInfo ( ASSERT (DevInfo !=3D NULL); TempDevInfo =3D DevInfo; - EFI_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) { + BASE_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) { ConfigFormEntry =3D BASE_CR (Entry, HDD_PASSWORD_CONFIG_FORM_ENTRY, L= ink); if ((!PasswordIsFullZero (ConfigFormEntry->Password)) || @@ -472,7 +473,7 @@ HddPasswordEndOfDxeEventNotify ( // // Zero passsword and freeze lock device. // - EFI_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) { + BASE_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) { ConfigFormEntry =3D BASE_CR (Entry, HDD_PASSWORD_CONFIG_FORM_ENTRY, L= ink); ZeroMem (ConfigFormEntry->Password, HDD_PASSWORD_MAX_LENGTH); @@ -2026,7 +2027,7 @@ HddPasswordGetConfigFormEntryByIndex ( CurrentIndex =3D 0; ConfigFormEntry =3D NULL; - EFI_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) { + BASE_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) { if (CurrentIndex =3D=3D Index) { ConfigFormEntry =3D BASE_CR (Entry, HDD_PASSWORD_CONFIG_FORM_ENTRY,= Link); break; @@ -2408,7 +2409,7 @@ HddPasswordConfigUpdateForm ( ConfigFormEntry =3D NULL; EntryExisted =3D FALSE; - EFI_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) { + BASE_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) { ConfigFormEntry =3D BASE_CR (Entry, HDD_PASSWORD_CONFIG_FORM_ENTRY, L= ink); if ((ConfigFormEntry->Bus =3D=3D Bus) && @@ -2503,7 +2504,7 @@ HddPasswordConfigUpdateForm ( EndLabel->Number =3D HDD_DEVICE_LABEL_END; mNumberOfHddDevices =3D 0; - EFI_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) { + BASE_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) { ConfigFormEntry =3D BASE_CR (Entry, HDD_PASSWORD_CONFIG_FORM_ENTRY,= Link); HiiCreateGotoOpCode ( diff --git a/SecurityPkg/HddPassword/HddPasswordDxe.h b/SecurityPkg/HddPas= sword/HddPasswordDxe.h index 87db587eb6f0..a6c87169dc59 100644 --- a/SecurityPkg/HddPassword/HddPasswordDxe.h +++ b/SecurityPkg/HddPassword/HddPasswordDxe.h @@ -1,6 +1,7 @@ /** @file Copyright (c) 2019, Intel Corporation. All rights reserved.
+ Copyright (c) Microsoft Corporation.
SPDX-License-Identifier: BSD-2-Clause-Patent @@ -87,12 +88,6 @@ typedef struct _HDD_PASSWORD_DXE_PRIVATE_DATA { #define HDD_PASSWORD_DXE_PRIVATE_FROM_THIS(a) CR (a, HDD_PASSWORD_DXE_PR= IVATE_DATA, ConfigAccess, HDD_PASSWORD_DXE_PRIVATE_SIGNATURE) -// -//Iterate through the double linked list. NOT delete safe -// -#define EFI_LIST_FOR_EACH(Entry, ListHead) \ - for (Entry =3D (ListHead)->ForwardLink; Entry !=3D (ListHead); Entry = =3D Entry->ForwardLink) - #define PASSWORD_SALT_SIZE 32 #define HDD_PASSWORD_REQUEST_VARIABLE_NAME L"HddPasswordRequest" -- 2.16.3.windows.1 --_000_CY4PR21MB0743DDD978EEF6292439E82DEFDE0CY4PR21MB0743namp_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

Reviewed-by: Bret Barkelew <bret.barkelew@micros= oft.com>

 

- Bret

 


From: devel@edk2.groups.io= <devel@edk2.groups.io> on behalf of Michael Kubacki via groups.io &l= t;michael.kubacki=3Doutlook.com@groups.io>
Sent: Friday, April 10, 2020 1:02:18 PM
To: devel@edk2.groups.io <devel@edk2.groups.io>
Cc: Chao Zhang <chao.b.zhang@intel.com>; Hao A Wu <hao.a.w= u@intel.com>; Jian J Wang <jian.j.wang@intel.com>; Jiewen Yao <= jiewen.yao@intel.com>; Sean Brogan <sean.brogan@microsoft.com>
Subject: [EXTERNAL] [edk2-devel] [PATCH v2 7/7] SecurityPkg/HddPass= word: Use BaseLib linked list iteration macros
 
From: Michael Kubacki <michael.kubacki@microso= ft.com>

REF:https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fbu= gzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D1959&amp;data=3D02%7C01%7CBr= et.Barkelew%40microsoft.com%7C0cb7a3e5e3ef4f9c776808d7dd8a2c7e%7C72f988bf86= f141af91ab2d7cd011db47%7C1%7C0%7C637221457829007406&amp;sdata=3DTzvNo4r= 7FXEx%2BLEifMTR8HHL%2BGGpl8WkOiABJS1IqF8%3D&amp;reserved=3D0

Replaces usage of the linked list iteration macros defined in
HddPasswordDxe.h with the common definition in BaseLib.h.

Cc: Chao Zhang <chao.b.zhang@intel.com>
Cc: Hao A Wu <hao.a.wu@intel.com>
Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Sean Brogan <sean.brogan@microsoft.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
---
 SecurityPkg/HddPassword/HddPasswordDxe.c | 13 ++++&#= 43;++------
 SecurityPkg/HddPassword/HddPasswordDxe.h |  7 +------
 2 files changed, 8 insertions(+), 12 deletions(-)

diff --git a/SecurityPkg/HddPassword/HddPasswordDxe.c b/SecurityPkg/HddPas= sword/HddPasswordDxe.c
index a25b3471d073..32b55a6a8b72 100644
--- a/SecurityPkg/HddPassword/HddPasswordDxe.c
+++ b/SecurityPkg/HddPassword/HddPasswordDxe.c
@@ -2,6 +2,7 @@
   HDD password driver which is used to support HDD security fea= ture.
 
   Copyright (c) 2019, Intel Corporation. All rights reserved.&l= t;BR>
+  Copyright (c) Microsoft Corporation.<BR>
 
   SPDX-License-Identifier: BSD-2-Clause-Patent
 
@@ -115,7 +116,7 @@ BuildHddPasswordDeviceInfo (
   // Build HDD password device info and save them to LockBox.    //
   DevInfoLength =3D 0;
-  EFI_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) {
+  BASE_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) {<= br>      ConfigFormEntry =3D BASE_CR (Entry, HDD_PASSWORD_= CONFIG_FORM_ENTRY, Link);
 
     //
@@ -164,7 +165,7 @@ BuildHddPasswordDeviceInfo (
   ASSERT (DevInfo !=3D NULL);
 
   TempDevInfo =3D DevInfo;
-  EFI_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) {
+  BASE_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) {<= br>      ConfigFormEntry =3D BASE_CR (Entry, HDD_PASSWORD_= CONFIG_FORM_ENTRY, Link);
 
     if ((!PasswordIsFullZero (ConfigFormEntry->Pas= sword)) ||
@@ -472,7 +473,7 @@ HddPasswordEndOfDxeEventNotify (
   //
   // Zero passsword and freeze lock device.
   //
-  EFI_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) {
+  BASE_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) {<= br>      ConfigFormEntry =3D BASE_CR (Entry, HDD_PASSWORD_= CONFIG_FORM_ENTRY, Link);
 
     ZeroMem (ConfigFormEntry->Password, HDD_PASSWO= RD_MAX_LENGTH);
@@ -2026,7 +2027,7 @@ HddPasswordGetConfigFormEntryByIndex (
   CurrentIndex    =3D 0;
   ConfigFormEntry =3D NULL;
 
-  EFI_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) {
+  BASE_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) {<= br>      if (CurrentIndex =3D=3D Index) {
       ConfigFormEntry =3D BASE_CR (Entry, H= DD_PASSWORD_CONFIG_FORM_ENTRY, Link);
       break;
@@ -2408,7 +2409,7 @@ HddPasswordConfigUpdateForm (
   ConfigFormEntry =3D NULL;
   EntryExisted    =3D FALSE;
 
-  EFI_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) {
+  BASE_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormList) {<= br>      ConfigFormEntry =3D BASE_CR (Entry, HDD_PASSWORD_= CONFIG_FORM_ENTRY, Link);
 
     if ((ConfigFormEntry->Bus =3D=3D Bus) &&am= p;
@@ -2503,7 +2504,7 @@ HddPasswordConfigUpdateForm (
     EndLabel->Number     =   =3D HDD_DEVICE_LABEL_END;
 
     mNumberOfHddDevices =3D 0;
-    EFI_LIST_FOR_EACH (Entry, &mHddPasswordConfigFormL= ist) {
+    BASE_LIST_FOR_EACH (Entry, &mHddPasswordConfig= FormList) {
       ConfigFormEntry =3D BASE_CR (Entry, H= DD_PASSWORD_CONFIG_FORM_ENTRY, Link);
 
       HiiCreateGotoOpCode (
diff --git a/SecurityPkg/HddPassword/HddPasswordDxe.h b/SecurityPkg/HddPas= sword/HddPasswordDxe.h
index 87db587eb6f0..a6c87169dc59 100644
--- a/SecurityPkg/HddPassword/HddPasswordDxe.h
+++ b/SecurityPkg/HddPassword/HddPasswordDxe.h
@@ -1,6 +1,7 @@
 /** @file
 
   Copyright (c) 2019, Intel Corporation. All rights reserved.&l= t;BR>
+  Copyright (c) Microsoft Corporation.<BR>
 
   SPDX-License-Identifier: BSD-2-Clause-Patent
 
@@ -87,12 +88,6 @@ typedef struct _HDD_PASSWORD_DXE_PRIVATE_DATA {
 
 #define HDD_PASSWORD_DXE_PRIVATE_FROM_THIS(a)  CR (a, HDD_PASSW= ORD_DXE_PRIVATE_DATA, ConfigAccess, HDD_PASSWORD_DXE_PRIVATE_SIGNATURE)
 
-//
-//Iterate through the double linked list. NOT delete safe
-//
-#define EFI_LIST_FOR_EACH(Entry, ListHead)    \
-  for (Entry =3D (ListHead)->ForwardLink; Entry !=3D (ListHead); = Entry =3D Entry->ForwardLink)
-
 #define PASSWORD_SALT_SIZE       =            32
 
 #define HDD_PASSWORD_REQUEST_VARIABLE_NAME  L"HddPasswordR= equest"
--
2.16.3.windows.1




--_000_CY4PR21MB0743DDD978EEF6292439E82DEFDE0CY4PR21MB0743namp_--