From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web10.1089.1600473685732613066 for ; Fri, 18 Sep 2020 17:01:26 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=tJHbI5YC; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: ray.ni@intel.com) IronPort-SDR: UcwMNwENJ7oyEmjgt2UjhOaDR/pcZv6mNxrRuFKoq5pv2j0P3E8jnpEQOiUh+qMUE4zKLZk5PX DHb8j+BXhqMQ== X-IronPort-AV: E=McAfee;i="6000,8403,9748"; a="160973680" X-IronPort-AV: E=Sophos;i="5.77,276,1596524400"; d="scan'208,217";a="160973680" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Sep 2020 17:01:19 -0700 IronPort-SDR: zwMhRfW7Sl5/S/xN/wQ0EaNkTm4CnswnN9uF62KlQy1IZRaFSQWDtlIFyNfCOb8A9icEPr4uYI WHMU0+2F+QrQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,276,1596524400"; d="scan'208,217";a="509096035" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by fmsmga005.fm.intel.com with ESMTP; 18 Sep 2020 17:01:18 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Fri, 18 Sep 2020 17:01:18 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Fri, 18 Sep 2020 17:01:17 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.174) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Fri, 18 Sep 2020 17:01:17 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eEz+dP9tMh8hN1WN7Uu26FDoqt6InlTItas1QV1bUqZj46ZWp1aV5xkeGfJSBcmBSby+2CCuwyl1VuubNTHQru24eEgrLT1sIjVL1ND9jhujeogCplfrWS1A61goVEgUcfkv1eVobrQjV0cWjNAzsjYxMx0kE+RzuwiCJ/spHOZnLdTFoCF6yo5JEVQXvdDO7648ScfnPrDvzExfso/cWtKQe2K+Ke84WrMYBKzU4b9rY0rgoj9sItArycRraR5m1CoPJXfn7NV6Hg8GhI6gIEGhzyPJLWDqpj0LwOSYEwsOy2QS35ybq8SSW67GAK2HV6VkRqG7tKum3ymVihzxOQ== 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=w3vaOwXBXus+v771qHUHTb0IAhkJu+sYyhRPUjTQF7Y=; b=Cq3rKZ2RM3GUJL8R4rX+OgLLLbkvz+rAv5Wq/i19n0VTg6GYgP7KyZIub3STKYyZi5AkMw+RaNHgr0VwwzIso+58bSfpybtrvbkwrvleod9aHDZoSBvFazyhUaTbkP2Bm1f7/KmwH0wQRJx5P+l2t4RcnPAXm9oEu5Rx84kLTMTlcUZ5DdDU9dSPS/RaduzkyS7YRATi+sDGujxaPbCJCWjipT+etjBEfwhPU5qGg0BnTEzOMeEpe/PhTD10KqukyNNUCM4krFtAFBdJWNiAcs5yYomqXIkoSMOl14mZd2hwIL9R0Bb1fpWA8D63zn6ymWXNsVvH4zZyVTfXvYeGRA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=w3vaOwXBXus+v771qHUHTb0IAhkJu+sYyhRPUjTQF7Y=; b=tJHbI5YCnHN2eGGjJIy0YZKBnf9tVvXcBX2WwUXb0Mv3vQCZR8+sxWHTVh4poJlrNPYEAEcZ1X9tfKpHOHtG1u0n7TuyUD/IOTznGWuA7mjNRHGpTYPOMEgXpb2rHMjvM7c5HhycG4hhs0y+6wXg99Bc8Z645KVD4Y60Gp5lP18= Received: from BY5PR11MB4007.namprd11.prod.outlook.com (2603:10b6:a03:189::28) by BYAPR11MB3765.namprd11.prod.outlook.com (2603:10b6:a03:f6::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3391.11; Sat, 19 Sep 2020 00:01:15 +0000 Received: from BY5PR11MB4007.namprd11.prod.outlook.com ([fe80::1533:4053:1c45:3596]) by BY5PR11MB4007.namprd11.prod.outlook.com ([fe80::1533:4053:1c45:3596%6]) with mapi id 15.20.3370.019; Sat, 19 Sep 2020 00:01:15 +0000 From: "Ni, Ray" To: "Wadhawan, Divneil R" , "devel@edk2.groups.io" CC: gaoliming , 'Andrew Fish' , "Justen, Jordan L" , "Kinney, Michael D" , "Wadhawan, Divneil R" Subject: Re: [edk2-devel] [PATCH v2] EmulatorPkg: Enable support for Secure Boot Thread-Topic: [edk2-devel] [PATCH v2] EmulatorPkg: Enable support for Secure Boot Thread-Index: AdaMQS9sqEhJ/RVOQYWR22UtRyYHlAAgXCCgAABlWnAAAbCaMAA5kd/AAABiu/AAEB2wkAAI+WFD Date: Sat, 19 Sep 2020 00:01:15 +0000 Message-ID: References: <1635DEE2A50DFCCF.13985@groups.io>, In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [180.171.153.78] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: db08e7f1-ba04-482b-e4bd-08d85c2f2097 x-ms-traffictypediagnostic: BYAPR11MB3765: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6430; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 3zUglfV00aYjqbBvy1nwbLm/tJnS/nzTFTew5+3yor42lsiuD4OoUCdAuA8XgE7D+d5GRsriqQEDSdumeIVcnM7LI9MnnwF3YcqEes1hbxf3z4FcyRpLVo0kmudle+U1yCMM3BCuj6tEIET7jQscKroNrHyjKKdJBucSGx+uWnlDxGlijMutbhbuBAB6OTL1nQpoNiFeGu4coVU5A1jhgv2N4+IOjeIwhAZzMm2IUWmcvdVoohZyDOG8EDrAfXlDK3ZYPySVxtyNSD88WSBcGQv2r8hLeCdwp7ttFv9QJU5hgu/TBh8gJhjjG8FfXAFn6o3FA+wOQT72t4mFhs0qNbwOCyJwYJUcuhvw03y9iIaQiH2jyW1bOT4p0B96OOzKU/NXd0FtNLkkd5c08/P0NQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BY5PR11MB4007.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(396003)(366004)(376002)(136003)(39860400002)(346002)(19627235002)(52536014)(86362001)(8936002)(30864003)(316002)(33656002)(8676002)(186003)(7696005)(83380400001)(55016002)(76116006)(2906002)(166002)(91956017)(9686003)(5660300002)(4326008)(66946007)(110136005)(107886003)(64756008)(54906003)(6506007)(966005)(26005)(76236003)(66476007)(66446008)(71200400001)(53546011)(66556008)(478600001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: wwSdPOJOxkRP+hSPmIzV0Fl9+lWHum94nwMgbeMNVb/DfCThjjHK992xbSeH3CG+eD0zJaDoVVI88iv24j8uKIXULcAidVKAb6Z/jBw2BeTmgp2Aozl9TpOVGXjnWGv5wCmG3fyVFX2ydRyHN4z55XwKfhWMBwfrbkb2z/k8rFPKa91yA6U3wUrU7MjJjYq+fq6VNn/uTwLJKVwn+Gbs3gtmqS2Jh9cF+yLTFhpq75tL8n3KpMlPakEby3aIxYSHBu664lJ0gmxFyxwadBs2b9egiMBRmIfZ24h91C9pMkqeVb6mT+Sfuj7uMbxH4njuGmvH/KHDYvUxAoKy3bJTAMUGbwkts0JKN/d8UXcpY3Xa7c7PSLk1hp86zNfyN9leFJCa+pQV+3i94QNWV9uq49XQiqTWzXjJ2ufnXX4ieG4k9Mv9XHZpaq43LC7f8A1LosG7RdfHww6kcUKc1CkCjY++hPdlnxqzbQtAJEhtMjU3wmY17JBr0V/mUErJSnX5+ZWZ4d/CdAjb/VZXHledFb+hA+rc0dwmP05vhSDz2R05cJ1Q8vv6hspPKR4LJjbYIxkX0SEJwcDObAvMaq/3eC+3kpD+/Nw6V+b38fvUAv5zX/NBzoxvl1+yhadNTQzSbTYPe2YCs4qJDpSoKci2Kw== MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BY5PR11MB4007.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: db08e7f1-ba04-482b-e4bd-08d85c2f2097 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Sep 2020 00:01:15.1209 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: hmLAQhfyD/G7r4VsKxtnYyxb77Ss+mWwVs5NT2LtLCD05hWosYWn6ukqddfASQJNrR2Q+oZAWmQXaSZnBClPTg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR11MB3765 Return-Path: ray.ni@intel.com X-OriginatorOrg: intel.com Content-Language: zh-CN Content-Type: multipart/alternative; boundary="_000_BY5PR11MB4007DBA3EA9D133F953120F68C3F0BY5PR11MB4007namp_" --_000_BY5PR11MB4007DBA3EA9D133F953120F68C3F0BY5PR11MB4007namp_ Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 SXShr3MgdmVyeSBzdHJhbmdlIHRoYXQgdGhlIGJ1aWxkIHRlc3QgY2Fubm90IGRldGVjdCB0aGlz Lg0KVG8gZm9sbG93IHRvZGF5oa9zIHByb2Nlc3MsIHlvdSBuZWVkIHRvIHNlbmQgYW5vdGhlciBw YXRjaCBmb3IgcmV2aWV3Lg0KDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0Kt6K8 /sjLOiBXYWRoYXdhbiwgRGl2bmVpbCBSIDxkaXZuZWlsLnIud2FkaGF3YW5AaW50ZWwuY29tPg0K t6LLzcqxvOQ6IFNhdHVyZGF5LCBTZXB0ZW1iZXIgMTksIDIwMjAgMzo0MToxMSBBTQ0KytW8/sjL OiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+OyBXYWRoYXdhbiwg RGl2bmVpbCBSIDxkaXZuZWlsLnIud2FkaGF3YW5AaW50ZWwuY29tPjsgTmksIFJheSA8cmF5Lm5p QGludGVsLmNvbT4NCrOty806IGdhb2xpbWluZyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsg J0FuZHJldyBGaXNoJyA8YWZpc2hAYXBwbGUuY29tPjsgSnVzdGVuLCBKb3JkYW4gTCA8am9yZGFu LmwuanVzdGVuQGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5 QGludGVsLmNvbT47IFdhZGhhd2FuLCBEaXZuZWlsIFIgPGRpdm5laWwuci53YWRoYXdhbkBpbnRl bC5jb20+DQrW98ziOiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSCB2Ml0gRW11bGF0b3JQa2c6IEVu YWJsZSBzdXBwb3J0IGZvciBTZWN1cmUgQm9vdA0KDQoNCkhpIFJheSwNCg0KDQoNCkkgc2F3IHRo YXQgYSBwYXRjaCBtZXJnZWQgZmV3IGhvdXJzIGFnbyBiZWZvcmUgbXkgcGF0Y2ggYWRkZWQgUm5n TGliIGluIFtMaWJyYXJ5Q2xhc3Nlc10gc2VjdGlvbiBvZiBPcGVuc3NsTGliLg0KDQpUaGlzIGNh dXNlZCB0aGUgRW11bGF0b3JQa2cgU2VjdXJlIGJvb3QgZW5hYmxlIGJ1aWxkIHRvIGZhaWwuDQoN CkkgaGF2ZSBnZW5lcmF0ZWQgYSBQUiBmb3IgZml4aW5nIGl0OiBodHRwczovL2dpdGh1Yi5jb20v dGlhbm9jb3JlL2VkazIvcHVsbC85NDINCg0KDQoNClJlZ2FyZHMsDQoNCkRpdm5laWwNCg0KDQoN CkZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVo YWxmIE9mIFdhZGhhd2FuLCBEaXZuZWlsIFINClNlbnQ6IEZyaWRheSwgU2VwdGVtYmVyIDE4LCAy MDIwIDU6MjggUE0NClRvOiBOaSwgUmF5IDxyYXkubmlAaW50ZWwuY29tPjsgZGV2ZWxAZWRrMi5n cm91cHMuaW8NCkNjOiBnYW9saW1pbmcgPGdhb2xpbWluZ0BieW9zb2Z0LmNvbS5jbj47ICdBbmRy ZXcgRmlzaCcgPGFmaXNoQGFwcGxlLmNvbT47IEp1c3RlbiwgSm9yZGFuIEwgPGpvcmRhbi5sLmp1 c3RlbkBpbnRlbC5jb20+OyBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRl bC5jb20+OyBXYWRoYXdhbiwgRGl2bmVpbCBSIDxkaXZuZWlsLnIud2FkaGF3YW5AaW50ZWwuY29t Pg0KU3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBbUEFUQ0ggdjJdIEVtdWxhdG9yUGtnOiBFbmFi bGUgc3VwcG9ydCBmb3IgU2VjdXJlIEJvb3QNCg0KDQoNCkhpIFJheSwNCg0KDQoNClRoYW5rcyBm b3IgeW91ciBoZWxwLg0KDQpJIHNlZSB0aGUgcGF0Y2ggaXMgbWVyZ2VkIG5vdy4gOikNCg0KDQoN ClJlZ2FyZHMsDQoNCkRpdm5laWwNCg0KDQoNCkZyb206IE5pLCBSYXkgPHJheS5uaUBpbnRlbC5j b208bWFpbHRvOnJheS5uaUBpbnRlbC5jb20+Pg0KU2VudDogRnJpZGF5LCBTZXB0ZW1iZXIgMTgs IDIwMjAgNToxNyBQTQ0KVG86IFdhZGhhd2FuLCBEaXZuZWlsIFIgPGRpdm5laWwuci53YWRoYXdh bkBpbnRlbC5jb208bWFpbHRvOmRpdm5laWwuci53YWRoYXdhbkBpbnRlbC5jb20+PjsgZGV2ZWxA ZWRrMi5ncm91cHMuaW88bWFpbHRvOmRldmVsQGVkazIuZ3JvdXBzLmlvPg0KQ2M6IGdhb2xpbWlu ZyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPG1haWx0bzpnYW9saW1pbmdAYnlvc29mdC5jb20u Y24+PjsgJ0FuZHJldyBGaXNoJyA8YWZpc2hAYXBwbGUuY29tPG1haWx0bzphZmlzaEBhcHBsZS5j b20+PjsgSnVzdGVuLCBKb3JkYW4gTCA8am9yZGFuLmwuanVzdGVuQGludGVsLmNvbTxtYWlsdG86 am9yZGFuLmwuanVzdGVuQGludGVsLmNvbT4+OyBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5k Lmtpbm5leUBpbnRlbC5jb208bWFpbHRvOm1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPj4NClN1 YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BBVENIIHYyXSBFbXVsYXRvclBrZzogRW5hYmxlIHN1 cHBvcnQgZm9yIFNlY3VyZSBCb290DQoNCg0KDQpEaXZuZWlsLA0KDQpwdWxsIHJlcXVlc3QgaXMg Y3JlYXRlZDogaHR0cHM6Ly9naXRodWIuY29tL3RpYW5vY29yZS9lZGsyL3B1bGwvOTQxDQoNCg0K DQpJZiBpdCBzdWNjZWVkcywgdGhlIHBhdGNoIHdpbGwgYmUgbWVyZ2VkIGF1dG9tYXRpY2FsbHku DQoNCklmIGl0IGZhaWxzLCBwbGVhc2UgY2hlY2sgdGhlIHNwZWNpZmljIGZhaWx1cmUgbWVzc2Fn ZSBhbmQgcHJvdmlkZSB1cGRhdGVkIHBhdGNoLg0KDQoNCg0KVGhhbmtzLA0KDQpSYXkNCg0KDQoN CkZyb206IE5pLCBSYXkNClNlbnQ6IFRodXJzZGF5LCBTZXB0ZW1iZXIgMTcsIDIwMjAgNDoxOSBQ TQ0KVG86IFdhZGhhd2FuLCBEaXZuZWlsIFIgPGRpdm5laWwuci53YWRoYXdhbkBpbnRlbC5jb208 bWFpbHRvOmRpdm5laWwuci53YWRoYXdhbkBpbnRlbC5jb20+PjsgZGV2ZWxAZWRrMi5ncm91cHMu aW88bWFpbHRvOmRldmVsQGVkazIuZ3JvdXBzLmlvPg0KQ2M6IGdhb2xpbWluZyA8Z2FvbGltaW5n QGJ5b3NvZnQuY29tLmNuPG1haWx0bzpnYW9saW1pbmdAYnlvc29mdC5jb20uY24+PjsgJ0FuZHJl dyBGaXNoJyA8YWZpc2hAYXBwbGUuY29tPG1haWx0bzphZmlzaEBhcHBsZS5jb20+PjsgSnVzdGVu LCBKb3JkYW4gTCA8am9yZGFuLmwuanVzdGVuQGludGVsLmNvbTxtYWlsdG86am9yZGFuLmwuanVz dGVuQGludGVsLmNvbT4+OyBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRl bC5jb208bWFpbHRvOm1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPj4NClN1YmplY3Q6IFJFOiBb ZWRrMi1kZXZlbF0gW1BBVENIIHYyXSBFbXVsYXRvclBrZzogRW5hYmxlIHN1cHBvcnQgZm9yIFNl Y3VyZSBCb290DQoNCg0KDQpSZXZpZXdlZC1ieTogUmF5IE5pIDxyYXkubmlAaW50ZWwuY29tPG1h aWx0bzpyYXkubmlAaW50ZWwuY29tPj4NCg0KDQoNCkZyb206IFdhZGhhd2FuLCBEaXZuZWlsIFIg PGRpdm5laWwuci53YWRoYXdhbkBpbnRlbC5jb208bWFpbHRvOmRpdm5laWwuci53YWRoYXdhbkBp bnRlbC5jb20+Pg0KU2VudDogVGh1cnNkYXksIFNlcHRlbWJlciAxNywgMjAyMCAzOjQzIFBNDQpU bzogTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbTxtYWlsdG86cmF5Lm5pQGludGVsLmNvbT4+OyBk ZXZlbEBlZGsyLmdyb3Vwcy5pbzxtYWlsdG86ZGV2ZWxAZWRrMi5ncm91cHMuaW8+DQpDYzogZ2Fv bGltaW5nIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY248bWFpbHRvOmdhb2xpbWluZ0BieW9zb2Z0 LmNvbS5jbj4+OyAnQW5kcmV3IEZpc2gnIDxhZmlzaEBhcHBsZS5jb208bWFpbHRvOmFmaXNoQGFw cGxlLmNvbT4+OyBKdXN0ZW4sIEpvcmRhbiBMIDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPG1h aWx0bzpqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPj47IEtpbm5leSwgTWljaGFlbCBEIDxtaWNo YWVsLmQua2lubmV5QGludGVsLmNvbTxtYWlsdG86bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+ PjsgV2FkaGF3YW4sIERpdm5laWwgUiA8ZGl2bmVpbC5yLndhZGhhd2FuQGludGVsLmNvbTxtYWls dG86ZGl2bmVpbC5yLndhZGhhd2FuQGludGVsLmNvbT4+DQpTdWJqZWN0OiBSRTogW2VkazItZGV2 ZWxdIFtQQVRDSCB2Ml0gRW11bGF0b3JQa2c6IEVuYWJsZSBzdXBwb3J0IGZvciBTZWN1cmUgQm9v dA0KDQoNCg0KSGkgUmF5LA0KDQoNCg0KWWVzLCBJIGhhdmUgdGVzdGVkIHRoZSBmb2xsb3dpbmc6 DQoNCg0KDQogIDEuICBTRUNVUkVfQk9PVF9FTkFCTEU9dHJ1ZQ0KDQogICogICBLZXkgRW5yb2xs bWVudCAoUEssIEtFSywgZGIpIHZpYSBjdXN0b20gbW9kZQ0KICAqICAgRXhlY3V0aW9uIG9mIHVu aXQgdGVzdCBzaGVsbCBhcHBsaWNhdGlvbiAoc2lnbmVkIG9uZSB3b3JrcyBva2F5LCB1bnNpZ25l ZCBnaXZlcyBhbiBBY2Nlc3MgZGVuaWVkKQ0KDQoNCg0KICAxLiAgU0VDVVJFX0JPT1RfRU5BQkxF PWZhbHNlIChkZWZhdWx0IGNhc2UpDQoNCiAgKiAgIFNlY3VyZSBCb290IENvbmZpZ3VyYXRpb24g bWVudSBpcyBub3QgdmlzaWJsZSAoU2FtZSBhcyBleGlzdGluZyBkZWZhdWx0IGNhc2UpDQogICog ICBFeGVjdXRpb24gb2YgVW5pdCBUZXN0IEFwcGxpY2F0aW9uIChTaWduZWQvVW5zaWduZWQgYm90 aCB3b3JrcyBva2F5KQ0KDQoNCg0KSSBhbSBwbGFubmluZyB0byBwb3N0IHRoZSBzY3JpcHQgaW4g Qlo6IGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjk0OSBp biBhIGRheSBvciB0b28uDQoNClRoZSBzY3JpcHQgZ2VuZXJhdGVzIHRoZSBmdWxsIGtleSBoaWVy YXJjaHkgdGhhdCBtYWtlcyBpdCBlYXN5IHRvIHRlc3QgdGhpcyBwYXRjaC4NCg0KVGhlIHBhdGNo IGluIEJaIHJlcXVpcmVzIG1vZGlmaWNhdGlvbnMgYXMgcGVyIE1pa2Whr3MgY29tbWVudCwgc28s IHlvdSBjYW4gc2tpcCB0aGUgcGF0Y2hlcyBpbiBCWiBmb3Igbm93Lg0KDQoNCg0KUmVnYXJkcywN Cg0KRGl2bmVpbA0KDQoNCg0KRnJvbTogTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbTxtYWlsdG86 cmF5Lm5pQGludGVsLmNvbT4+DQpTZW50OiBUaHVyc2RheSwgU2VwdGVtYmVyIDE3LCAyMDIwIDEy OjQ5IFBNDQpUbzogV2FkaGF3YW4sIERpdm5laWwgUiA8ZGl2bmVpbC5yLndhZGhhd2FuQGludGVs LmNvbTxtYWlsdG86ZGl2bmVpbC5yLndhZGhhd2FuQGludGVsLmNvbT4+OyBkZXZlbEBlZGsyLmdy b3Vwcy5pbzxtYWlsdG86ZGV2ZWxAZWRrMi5ncm91cHMuaW8+DQpDYzogZ2FvbGltaW5nIDxnYW9s aW1pbmdAYnlvc29mdC5jb20uY248bWFpbHRvOmdhb2xpbWluZ0BieW9zb2Z0LmNvbS5jbj4+OyAn QW5kcmV3IEZpc2gnIDxhZmlzaEBhcHBsZS5jb208bWFpbHRvOmFmaXNoQGFwcGxlLmNvbT4+OyBK dXN0ZW4sIEpvcmRhbiBMIDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPG1haWx0bzpqb3JkYW4u bC5qdXN0ZW5AaW50ZWwuY29tPj47IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5 QGludGVsLmNvbTxtYWlsdG86bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+Pg0KU3ViamVjdDog UkU6IFtlZGsyLWRldmVsXSBbUEFUQ0ggdjJdIEVtdWxhdG9yUGtnOiBFbmFibGUgc3VwcG9ydCBm b3IgU2VjdXJlIEJvb3QNCg0KDQoNCkRpdm5laWwsDQoNCkp1c3Qgd2FudCB0byBkb3VibGUgY29u ZmlybTogZGlkIHlvdSB0ZXN0IHRoZSBzZWN1cmUgYm9vdCBhbmQgbm9uLXNlY3VyZSBib290Pw0K DQoNCg0KVGhhbmtzLA0KDQpSYXkNCg0KDQoNCkZyb206IFdhZGhhd2FuLCBEaXZuZWlsIFIgPGRp dm5laWwuci53YWRoYXdhbkBpbnRlbC5jb208bWFpbHRvOmRpdm5laWwuci53YWRoYXdhbkBpbnRl bC5jb20+Pg0KU2VudDogV2VkbmVzZGF5LCBTZXB0ZW1iZXIgMTYsIDIwMjAgMTE6NTMgUE0NClRv OiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzxtYWlsdG86ZGV2ZWxAZWRrMi5ncm91cHMuaW8+DQpDYzog TmksIFJheSA8cmF5Lm5pQGludGVsLmNvbTxtYWlsdG86cmF5Lm5pQGludGVsLmNvbT4+OyBnYW9s aW1pbmcgPGdhb2xpbWluZ0BieW9zb2Z0LmNvbS5jbjxtYWlsdG86Z2FvbGltaW5nQGJ5b3NvZnQu Y29tLmNuPj47ICdBbmRyZXcgRmlzaCcgPGFmaXNoQGFwcGxlLmNvbTxtYWlsdG86YWZpc2hAYXBw bGUuY29tPj47IEp1c3RlbiwgSm9yZGFuIEwgPGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb208bWFp bHRvOmpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+PjsgS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hh ZWwuZC5raW5uZXlAaW50ZWwuY29tPG1haWx0bzptaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4+ OyBXYWRoYXdhbiwgRGl2bmVpbCBSIDxkaXZuZWlsLnIud2FkaGF3YW5AaW50ZWwuY29tPG1haWx0 bzpkaXZuZWlsLnIud2FkaGF3YW5AaW50ZWwuY29tPj4NClN1YmplY3Q6IFtlZGsyLWRldmVsXSBb UEFUQ0ggdjJdIEVtdWxhdG9yUGtnOiBFbmFibGUgc3VwcG9ydCBmb3IgU2VjdXJlIEJvb3QNCg0K DQoNClNFQ1VSRV9CT09UX0VOQUJMRSBmZWF0dXJlIGZsYWcgaXMgaW50cm9kdWNlZCB0byBlbmFi bGUgU2VjdXJlIEJvb3QuDQoNClRoZSBmb2xsb3dpbmcgZ2V0cyBlbmFibGVkIHdpdGggdGhpcyBw YXRjaDoNCg0KbyBTZWN1cmUgQm9vdCBNZW51IGluICJEZXZpY2UgTWFuYWdlciIgZm9yIGVucm9s bGluZyBrZXlzDQoNCm8gU3RvcmFnZSBzcGFjZSBmb3IgQXV0aGVudGljYXRlZCBWYXJpYWJsZXMN Cg0KbyBBdXRoZW50aWNhdGVkIGV4ZWN1dGlvbiBvZiAzcmQgcGFydHkgaW1hZ2VzDQoNCg0KDQpT aWduZWQtb2ZmLWJ5OiBEaXZuZWlsIFJhaSBXYWRoYXdhbiA8ZGl2bmVpbC5yLndhZGhhd2FuQGlu dGVsLmNvbTxtYWlsdG86ZGl2bmVpbC5yLndhZGhhd2FuQGludGVsLmNvbT4+DQoNCi0tLQ0KDQpF bXVsYXRvclBrZy9FbXVsYXRvclBrZy5kc2MgfCAzNyArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKy0tDQoNCkVtdWxhdG9yUGtnL0VtdWxhdG9yUGtnLmZkZiB8IDE0ICsrKysrKysr KysrKysrDQoNCjIgZmlsZXMgY2hhbmdlZCwgNDkgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMo LSkNCg0KDQoNCmRpZmYgLS1naXQgYS9FbXVsYXRvclBrZy9FbXVsYXRvclBrZy5kc2MgYi9FbXVs YXRvclBrZy9FbXVsYXRvclBrZy5kc2MNCg0KaW5kZXggODZhNjI3MTczNS4uYzZlMjVjNzQ1ZSAx MDA2NDQNCg0KLS0tIGEvRW11bGF0b3JQa2cvRW11bGF0b3JQa2cuZHNjDQoNCisrKyBiL0VtdWxh dG9yUGtnL0VtdWxhdG9yUGtnLmRzYw0KDQpAQCAtMzIsNiArMzIsNyBAQA0KDQogICBERUZJTkUg TkVUV09SS19UTFNfRU5BQkxFICAgICAgID0gRkFMU0UNCg0KICAgREVGSU5FIE5FVFdPUktfSFRU UF9CT09UX0VOQUJMRSA9IEZBTFNFDQoNCiAgIERFRklORSBORVRXT1JLX0lTQ1NJX0VOQUJMRSAg ICAgPSBGQUxTRQ0KDQorICBERUZJTkUgU0VDVVJFX0JPT1RfRU5BQkxFICAgICAgID0gRkFMU0UN Cg0KDQoNCiBbU2t1SWRzXQ0KDQogICAwfERFRkFVTFQNCg0KQEAgLTEwNiwxMiArMTA3LDIwIEBA DQoNCiAgIExvY2tCb3hMaWJ8TWRlTW9kdWxlUGtnL0xpYnJhcnkvTG9ja0JveE51bGxMaWIvTG9j a0JveE51bGxMaWIuaW5mDQoNCiAgIENwdUV4Y2VwdGlvbkhhbmRsZXJMaWJ8TWRlTW9kdWxlUGtn L0xpYnJhcnkvQ3B1RXhjZXB0aW9uSGFuZGxlckxpYk51bGwvQ3B1RXhjZXB0aW9uSGFuZGxlckxp Yk51bGwuaW5mDQoNCiAgIFRwbU1lYXN1cmVtZW50TGlifE1kZU1vZHVsZVBrZy9MaWJyYXJ5L1Rw bU1lYXN1cmVtZW50TGliTnVsbC9UcG1NZWFzdXJlbWVudExpYk51bGwuaW5mDQoNCi0gIEF1dGhW YXJpYWJsZUxpYnxNZGVNb2R1bGVQa2cvTGlicmFyeS9BdXRoVmFyaWFibGVMaWJOdWxsL0F1dGhW YXJpYWJsZUxpYk51bGwuaW5mDQoNCiAgIFZhckNoZWNrTGlifE1kZU1vZHVsZVBrZy9MaWJyYXJ5 L1ZhckNoZWNrTGliL1ZhckNoZWNrTGliLmluZg0KDQogICBTb3J0TGlifE1kZU1vZHVsZVBrZy9M aWJyYXJ5L0Jhc2VTb3J0TGliL0Jhc2VTb3J0TGliLmluZg0KDQogICBTaGVsbExpYnxTaGVsbFBr Zy9MaWJyYXJ5L1VlZmlTaGVsbExpYi9VZWZpU2hlbGxMaWIuaW5mDQoNCiAgIEZpbGVIYW5kbGVM aWJ8TWRlUGtnL0xpYnJhcnkvVWVmaUZpbGVIYW5kbGVMaWIvVWVmaUZpbGVIYW5kbGVMaWIuaW5m DQoNCg0KDQorIWlmICQoU0VDVVJFX0JPT1RfRU5BQkxFKSA9PSBUUlVFDQoNCisgIEludHJpbnNp Y0xpYnxDcnlwdG9Qa2cvTGlicmFyeS9JbnRyaW5zaWNMaWIvSW50cmluc2ljTGliLmluZg0KDQor ICBPcGVuc3NsTGlifENyeXB0b1BrZy9MaWJyYXJ5L09wZW5zc2xMaWIvT3BlbnNzbExpYkNyeXB0 by5pbmYNCg0KKyAgUGxhdGZvcm1TZWN1cmVMaWJ8U2VjdXJpdHlQa2cvTGlicmFyeS9QbGF0Zm9y bVNlY3VyZUxpYk51bGwvUGxhdGZvcm1TZWN1cmVMaWJOdWxsLmluZg0KDQorICBBdXRoVmFyaWFi bGVMaWJ8U2VjdXJpdHlQa2cvTGlicmFyeS9BdXRoVmFyaWFibGVMaWIvQXV0aFZhcmlhYmxlTGli LmluZg0KDQorIWVsc2UNCg0KKyAgQXV0aFZhcmlhYmxlTGlifE1kZU1vZHVsZVBrZy9MaWJyYXJ5 L0F1dGhWYXJpYWJsZUxpYk51bGwvQXV0aFZhcmlhYmxlTGliTnVsbC5pbmYNCg0KKyFlbmRpZg0K DQorDQoNCltMaWJyYXJ5Q2xhc3Nlcy5jb21tb24uU0VDXQ0KDQogICBQZWlTZXJ2aWNlc0xpYnxF bXVsYXRvclBrZy9MaWJyYXJ5L1NlY1BlaVNlcnZpY2VzTGliL1NlY1BlaVNlcnZpY2VzTGliLmlu Zg0KDQogICBQY2RMaWJ8TWRlUGtnL0xpYnJhcnkvQmFzZVBjZExpYk51bGwvQmFzZVBjZExpYk51 bGwuaW5mDQoNCkBAIC0xNjIsNiArMTcxLDE2IEBADQoNCiAgIFRpbWVyTGlifEVtdWxhdG9yUGtn L0xpYnJhcnkvRHhlQ29yZVRpbWVyTGliL0R4ZUNvcmVUaW1lckxpYi5pbmYNCg0KICBFbXVUaHVu a0xpYnxFbXVsYXRvclBrZy9MaWJyYXJ5L0R4ZUVtdUxpYi9EeGVFbXVMaWIuaW5mDQoNCg0KDQor W0xpYnJhcnlDbGFzc2VzLmNvbW1vbi5EWEVfRFJJVkVSLCBMaWJyYXJ5Q2xhc3Nlcy5jb21tb24u VUVGSV9EUklWRVIsIExpYnJhcnlDbGFzc2VzLmNvbW1vbi5VRUZJX0FQUExJQ0FUSU9OXQ0KDQor IWlmICQoU0VDVVJFX0JPT1RfRU5BQkxFKSA9PSBUUlVFDQoNCisgIEJhc2VDcnlwdExpYnxDcnlw dG9Qa2cvTGlicmFyeS9CYXNlQ3J5cHRMaWIvQmFzZUNyeXB0TGliLmluZg0KDQorIWVuZGlmDQoN CisNCg0KK1tMaWJyYXJ5Q2xhc3Nlcy5jb21tb24uRFhFX1JVTlRJTUVfRFJJVkVSXQ0KDQorIWlm ICQoU0VDVVJFX0JPT1RfRU5BQkxFKSA9PSBUUlVFDQoNCisgIEJhc2VDcnlwdExpYnxDcnlwdG9Q a2cvTGlicmFyeS9CYXNlQ3J5cHRMaWIvUnVudGltZUNyeXB0TGliLmluZg0KDQorIWVuZGlmDQoN CisNCg0KW0xpYnJhcnlDbGFzc2VzLmNvbW1vbi5EWEVfUlVOVElNRV9EUklWRVIsIExpYnJhcnlD bGFzc2VzLmNvbW1vbi5VRUZJX0RSSVZFUiwgTGlicmFyeUNsYXNzZXMuY29tbW9uLkRYRV9EUklW RVIsIExpYnJhcnlDbGFzc2VzLmNvbW1vbi5VRUZJX0FQUExJQ0FUSU9OXQ0KDQogICBIb2JMaWJ8 TWRlUGtnL0xpYnJhcnkvRHhlSG9iTGliL0R4ZUhvYkxpYi5pbmYNCg0KICAgUGNkTGlifE1kZVBr Zy9MaWJyYXJ5L0R4ZVBjZExpYi9EeGVQY2RMaWIuaW5mDQoNCkBAIC0xOTAsNiArMjA5LDEwIEBA DQoNCiAgIGdFbXVsYXRvclBrZ1Rva2VuU3BhY2VHdWlkLlBjZEVtdUZpcm13YXJlRmRTaXplfDB4 MDAyYTAwMDANCg0KICAgZ0VtdWxhdG9yUGtnVG9rZW5TcGFjZUd1aWQuUGNkRW11RmlybXdhcmVC bG9ja1NpemV8MHgxMDAwMA0KDQogICBnRW11bGF0b3JQa2dUb2tlblNwYWNlR3VpZC5QY2RFbXVG aXJtd2FyZVZvbHVtZXxMIi4uL0ZWL0ZWX1JFQ09WRVJZLmZkIg0KDQorIWlmICQoU0VDVVJFX0JP T1RfRU5BQkxFKSA9PSBUUlVFDQoNCisgIGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5Q Y2RNYXhBdXRoVmFyaWFibGVTaXplfDB4MjgwMA0KDQorICBnRWZpU2VjdXJpdHlQa2dUb2tlblNw YWNlR3VpZC5QY2RVc2VyUGh5c2ljYWxQcmVzZW5jZXxUUlVFDQoNCishZW5kaWYNCg0KDQoNCiAg IGdFbXVsYXRvclBrZ1Rva2VuU3BhY2VHdWlkLlBjZEVtdU1lbW9yeVNpemV8TCI2NCE2NCINCg0K DQoNCkBAIC0zMDYsNyArMzI5LDE0IEBADQoNCiAgIEVtdWxhdG9yUGtnL1Jlc2V0UnVudGltZUR4 ZS9SZXNldC5pbmYNCg0KICAgTWRlTW9kdWxlUGtnL0NvcmUvUnVudGltZUR4ZS9SdW50aW1lRHhl LmluZg0KDQogICBFbXVsYXRvclBrZy9GdmJTZXJ2aWNlc1J1bnRpbWVEeGUvRnZiU2VydmljZXNS dW50aW1lRHhlLmluZg0KDQotICBNZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1NlY3VyaXR5U3R1YkR4 ZS9TZWN1cml0eVN0dWJEeGUuaW5mDQoNCisNCg0KKyAgTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9T ZWN1cml0eVN0dWJEeGUvU2VjdXJpdHlTdHViRHhlLmluZiB7DQoNCisgICAgPExpYnJhcnlDbGFz c2VzPg0KDQorIWlmICQoU0VDVVJFX0JPT1RfRU5BQkxFKSA9PSBUUlVFDQoNCisgICAgICBOVUxM fFNlY3VyaXR5UGtnL0xpYnJhcnkvRHhlSW1hZ2VWZXJpZmljYXRpb25MaWIvRHhlSW1hZ2VWZXJp ZmljYXRpb25MaWIuaW5mDQoNCishZW5kaWYNCg0KKyAgfQ0KDQorDQoNCiAgIE1kZU1vZHVsZVBr Zy9Vbml2ZXJzYWwvRWJjRHhlL0ViY0R4ZS5pbmYNCg0KICAgTWRlTW9kdWxlUGtnL1VuaXZlcnNh bC9NZW1vcnlUZXN0L051bGxNZW1vcnlUZXN0RHhlL051bGxNZW1vcnlUZXN0RHhlLmluZg0KDQog ICBFbXVsYXRvclBrZy9FbXVUaHVua0R4ZS9FbXVUaHVuay5pbmYNCg0KQEAgLTMxNSw2ICszNDUs OSBAQA0KDQogICBFbXVsYXRvclBrZy9QbGF0Zm9ybVNtYmlvc0R4ZS9QbGF0Zm9ybVNtYmlvc0R4 ZS5pbmYNCg0KICAgRW11bGF0b3JQa2cvVGltZXJEeGUvVGltZXIuaW5mDQoNCg0KDQorIWlmICQo U0VDVVJFX0JPT1RfRU5BQkxFKSA9PSBUUlVFDQoNCisgIFNlY3VyaXR5UGtnL1ZhcmlhYmxlQXV0 aGVudGljYXRlZC9TZWN1cmVCb290Q29uZmlnRHhlL1NlY3VyZUJvb3RDb25maWdEeGUuaW5mDQoN CishZW5kaWYNCg0KDQoNCiAgIE1kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvVmFyaWFibGUvUnVudGlt ZUR4ZS9WYXJpYWJsZVJ1bnRpbWVEeGUuaW5mIHsNCg0KICAgICA8TGlicmFyeUNsYXNzZXM+DQoN CmRpZmYgLS1naXQgYS9FbXVsYXRvclBrZy9FbXVsYXRvclBrZy5mZGYgYi9FbXVsYXRvclBrZy9F bXVsYXRvclBrZy5mZGYNCg0KaW5kZXggMjk1ZjZmMWRiOC4uYjI1NmFhOTM5NyAxMDA2NDQNCg0K LS0tIGEvRW11bGF0b3JQa2cvRW11bGF0b3JQa2cuZmRmDQoNCisrKyBiL0VtdWxhdG9yUGtnL0Vt dWxhdG9yUGtnLmZkZg0KDQpAQCAtNDYsMTAgKzQ2LDE3IEBAIERBVEEgPSB7DQoNCiAgICMgQmxv Y2ttYXBbMV06IEVuZA0KDQogICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAw eDAwLCAweDAwLA0KDQogICAjIyBUaGlzIGlzIHRoZSBWQVJJQUJMRV9TVE9SRV9IRUFERVINCg0K KyFpZiAkKFNFQ1VSRV9CT09UX0VOQUJMRSkgPT0gRkFMU0UNCg0KICAgI1NpZ25hdHVyZTogZ0Vm aVZhcmlhYmxlR3VpZCA9DQoNCiAgICMgIHsgMHhkZGNmMzYxNiwgMHgzMjc1LCAweDQxNjQsIHsg MHg5OCwgMHhiNiwgMHhmZSwgMHg4NSwgMHg3MCwgMHg3ZiwgMHhmZSwgMHg3ZCB9fQ0KDQogICAw eDE2LCAweDM2LCAweGNmLCAweGRkLCAweDc1LCAweDMyLCAweDY0LCAweDQxLA0KDQogICAweDk4 LCAweGI2LCAweGZlLCAweDg1LCAweDcwLCAweDdmLCAweGZlLCAweDdkLA0KDQorIWVsc2UNCg0K KyAgIyBTaWduYXR1cmU6IGdFZmlBdXRoZW50aWNhdGVkVmFyaWFibGVHdWlkID0NCg0KKyAgIyAg eyAweGFhZjMyYzc4LCAweDk0N2IsIDB4NDM5YSwgeyAweGExLCAweDgwLCAweDJlLCAweDE0LCAw eDRlLCAweGMzLCAweDc3LCAweDkyIH19DQoNCisgIDB4NzgsIDB4MmMsIDB4ZjMsIDB4YWEsIDB4 N2IsIDB4OTQsIDB4OWEsIDB4NDMsDQoNCisgIDB4YTEsIDB4ODAsIDB4MmUsIDB4MTQsIDB4NGUs IDB4YzMsIDB4NzcsIDB4OTIsDQoNCishZW5kaWYNCg0KICAgI1NpemU6IDB4YzAwMCAoZ0VmaU1k ZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZEZsYXNoTnZTdG9yYWdlVmFyaWFibGVTaXplKSAt IDB4NDggKHNpemUgb2YgRUZJX0ZJUk1XQVJFX1ZPTFVNRV9IRUFERVIpID0gMHhCRkI4DQoNCiAg ICMgVGhpcyBjYW4gc3BlZWQgdXAgdGhlIFZhcmlhYmxlIERpc3BhdGNoIGEgYml0Lg0KDQogICAw eEI4LCAweEJGLCAweDAwLCAweDAwLA0KDQpAQCAtMTg2LDYgKzE5MywxMyBAQCBJTkYgIFJ1bGVP dmVycmlkZSA9IFVJIE1kZU1vZHVsZVBrZy9BcHBsaWNhdGlvbi9VaUFwcC9VaUFwcC5pbmYNCg0K SU5GICBNZGVNb2R1bGVQa2cvQXBwbGljYXRpb24vQm9vdE1hbmFnZXJNZW51QXBwL0Jvb3RNYW5h Z2VyTWVudUFwcC5pbmYNCg0KSU5GICBNZGVNb2R1bGVQa2cvVW5pdmVyc2FsL0RyaXZlclNhbXBs ZUR4ZS9Ecml2ZXJTYW1wbGVEeGUuaW5mDQoNCg0KDQorIw0KDQorIyBTZWN1cmUgQm9vdCBLZXkg RW5yb2xsDQoNCisjDQoNCishaWYgJChTRUNVUkVfQk9PVF9FTkFCTEUpID09IFRSVUUNCg0KK0lO RiBTZWN1cml0eVBrZy9WYXJpYWJsZUF1dGhlbnRpY2F0ZWQvU2VjdXJlQm9vdENvbmZpZ0R4ZS9T ZWN1cmVCb290Q29uZmlnRHhlLmluZg0KDQorIWVuZGlmDQoNCisNCg0KIw0KDQojIE5ldHdvcmsg c3RhY2sgZHJpdmVycw0KDQojDQoNCi0tDQoNCjIuMjQuMS53aW5kb3dzLjINCg0KDQo= --_000_BY5PR11MB4007DBA3EA9D133F953120F68C3F0BY5PR11MB4007namp_ Content-Type: text/html; charset="gb2312" Content-Transfer-Encoding: quoted-printable
It=A1=AFs very strange that the build test ca= nnot detect this.
To follow today=A1=AFs process, you need to send another = patch for review.


=B7=A2=BC=FE=C8=CB: Wadhaw= an, Divneil R <divneil.r.wadhawan@intel.com>
=B7=A2=CB=CD=CA=B1=BC=E4: Saturday, September 19, 2020 3:41:11 AM =CA=D5=BC=FE=C8=CB: devel@edk2.groups.io <devel@edk2.groups.io&g= t;; Wadhawan, Divneil R <divneil.r.wadhawan@intel.com>; Ni, Ray <r= ay.ni@intel.com>
=B3=AD=CB=CD: gaoliming <gaoliming@byosoft.com.cn>; 'Andrew F= ish' <afish@apple.com>; Justen, Jordan L <jordan.l.justen@intel.co= m>; Kinney, Michael D <michael.d.kinney@intel.com>; Wadhawan, Divn= eil R <divneil.r.wadhawan@intel.com>
=D6=F7=CC=E2: RE: [edk2-devel] [PATCH v2] EmulatorPkg: Enable suppo= rt for Secure Boot
 

Hi Ray,

 

I saw that a patch merged few hours ago before my= patch added RngLib in [LibraryClasses] section of OpensslLib.

This caused the EmulatorPkg Secure boot enable bu= ild to fail.

I have generated a PR for fixing it: https://github.com/tianocore/edk2/pull/942

 

Regards,

Divneil

 

From: devel@edk2.groups.io <devel@edk2.= groups.io> On Behalf Of Wadhawan, Divneil R
Sent: Friday, September 18, 2020 5:28 PM
To: Ni, Ray <ray.ni@intel.com>; devel@edk2.groups.io
Cc: gaoliming <gaoliming@byosoft.com.cn>; 'Andrew Fish' <a= fish@apple.com>; Justen, Jordan L <jordan.l.justen@intel.com>; Kin= ney, Michael D <michael.d.kinney@intel.com>; Wadhawan, Divneil R <= divneil.r.wadhawan@intel.com>
Subject: Re: [edk2-devel] [PATCH v2] EmulatorPkg: Enable support fo= r Secure Boot

 

Hi Ray,

 

Thanks for your help.

I see the patch is merged now. :)

 

Regards,

Divneil

 

From: Ni, Ray <ray.ni@intel.com>
Sent: Friday, September 18, 2020 5:17 PM
To: Wadhawan, Divneil R <divneil.r.wadhawan@intel.com>; devel@edk2.groups.io
Cc: gaoliming <gaoli= ming@byosoft.com.cn>; 'Andrew Fish' <afish@apple.com>; Justen, Jordan L <jordan.l.justen@intel.com>; Kinney, Michael D <micha= el.d.kinney@intel.com>
Subject: RE: [edk2-devel] [PATCH v2] EmulatorPkg: Enable support fo= r Secure Boot

 

Divneil,

pull request is created: https://github.com/tianocore/edk2/pull/941

 

If it succeeds, the patch will be merged automati= cally.

If it fails, please check the specific failure me= ssage and provide updated patch.

 

Thanks,

Ray

 

From: Ni, Ray
Sent: Thursday, September 17, 2020 4:19 PM
To: Wadhawan, Divneil R <divneil.r.wadhawan@intel.com>; devel@edk2.groups.io
Cc: gaoliming <gaoli= ming@byosoft.com.cn>; 'Andrew Fish' <afish@apple.com>; Justen, Jordan L <jordan.l.justen@intel.com>; Kinney, Michael D <micha= el.d.kinney@intel.com>
Subject: RE: [edk2-devel] [PATCH v2] EmulatorPkg: Enable support fo= r Secure Boot

 

Reviewed-by: Ray Ni <ray.ni@intel.com>

 

From: Wadhawan, Divneil R <divneil.r.wadhawan@intel.com>
Sent: Thursday, September 17, 2020 3:43 PM
To: Ni, Ray <ray.ni@intel.co= m>; devel@edk2.groups.io
Cc: gaoliming <gaoli= ming@byosoft.com.cn>; 'Andrew Fish' <afish@apple.com>; Justen, Jordan L <jordan.l.justen@intel.com>; Kinney, Michael D <micha= el.d.kinney@intel.com>; Wadhawan, Divneil R <divneil.r.wadhawan@intel.com>
Subject: RE: [edk2-devel] [PATCH v2] EmulatorPkg: Enable support fo= r Secure Boot

 

Hi Ray,

 

Yes, I have tested the following:

 

  1. SECURE_= BOOT_ENABLE=3Dtrue
  • Key Enrollment (PK, KEK, db) via custom mode
  • Executi= on of unit test shell application (signed one works okay, unsigned gives an= Access denied)

 

  1. SECURE_= BOOT_ENABLE=3Dfalse (default case)
  • Secure Boot Configuration menu is not visible (Same as existing d= efault case)
  • Execution of Unit Test Application (Signed/Unsign= ed both works okay)

 

I am planning to post the script in BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D2949 in a day or too.=

The script generates the full key hierarchy that = makes it easy to test this patch.

The patch in BZ requires modifications as per Mik= e=A1=AFs comment, so, you can skip the patches in BZ for now.

 

Regards,

Divneil

 

From: Ni, Ray <ray.ni@intel.com>
Sent: Thursday, September 17, 2020 12:49 PM
To: Wadhawan, Divneil R <divneil.r.wadhawan@intel.com>; devel@edk2.groups.io
Cc: gaoliming <gaoli= ming@byosoft.com.cn>; 'Andrew Fish' <afish@apple.com>; Justen, Jordan L <jordan.l.justen@intel.com>; Kinney, Michael D <micha= el.d.kinney@intel.com>
Subject: RE: [edk2-devel] [PATCH v2] EmulatorPkg: Enable support fo= r Secure Boot

 

Divneil,

Just want to double confirm: did you test the sec= ure boot and non-secure boot?

 

Thanks,

Ray

 

From: Wadhawan, Divneil R <divneil.r.wadhawan@intel.com>
Sent: Wednesday, September 16, 2020 11:53 PM
To: devel@edk2.groups.io
Cc: Ni, Ray <
ray.ni@intel.co= m>; gaoliming <gaolim= ing@byosoft.com.cn>; 'Andrew Fish' <afish@apple.com>; Justen, Jordan L <jordan.l.justen@intel.com>; Kinney, Michael D <micha= el.d.kinney@intel.com>; Wadhawan, Divneil R <divneil.r.wadhawan@intel.com>
Subject: [edk2-devel] [PATCH v2] EmulatorPkg: Enable support for Se= cure Boot

 

SECURE_BOOT_ENABLE feature flag is introduced to = enable Secure Boot.

The following gets enabled with this patch:

o Secure Boot Menu in "Device Manager" = for enrolling keys

o Storage space for Authenticated Variables

o Authenticated execution of 3rd party images

 

Signed-off-by: Divneil Rai Wadhawan <divneil.r.wadhawan@intel.com&= gt;

---

EmulatorPkg/EmulatorPkg.dsc | 37 ++++++++++++++++= +++++++++++++++++++--

EmulatorPkg/EmulatorPkg.fdf | 14 ++++++++++++++

2 files changed, 49 insertions(+), 2 deletions(-)=

 

diff --git a/EmulatorPkg/EmulatorPkg.dsc b/Emulat= orPkg/EmulatorPkg.dsc

index 86a6271735..c6e25c745e 100644

--- a/EmulatorPkg/EmulatorPkg.dsc

+++ b/EmulatorPkg/EmulatorPkg.dsc

@@ -32,6 +32,7 @@

   DEFINE NETWORK_TLS_ENABLE  = ;     =3D FALSE

   DEFINE NETWORK_HTTP_BOOT_ENABLE =3D = FALSE

   DEFINE NETWORK_ISCSI_ENABLE &nb= sp;   =3D FALSE

+  DEFINE SECURE_BOOT_ENABLE  &nbs= p;    =3D FALSE

 

 [SkuIds]

   0|DEFAULT

@@ -106,12 +107,20 @@

   LockBoxLib|MdeModulePkg/Library/Lock= BoxNullLib/LockBoxNullLib.inf

   CpuExceptionHandlerLib|MdeModulePkg/= Library/CpuExceptionHandlerLibNull/CpuExceptionHandlerLibNull.inf

   TpmMeasurementLib|MdeModulePkg/Libra= ry/TpmMeasurementLibNull/TpmMeasurementLibNull.inf

-  AuthVariableLib|MdeModulePkg/Library/Auth= VariableLibNull/AuthVariableLibNull.inf

   VarCheckLib|MdeModulePkg/Library/Var= CheckLib/VarCheckLib.inf

   SortLib|MdeModulePkg/Library/BaseSor= tLib/BaseSortLib.inf

   ShellLib|ShellPkg/Library/UefiShellL= ib/UefiShellLib.inf

   FileHandleLib|MdePkg/Library/UefiFil= eHandleLib/UefiFileHandleLib.inf

 

+!if $(SECURE_BOOT_ENABLE) =3D=3D TRUE

+  IntrinsicLib|CryptoPkg/Library/IntrinsicL= ib/IntrinsicLib.inf

+  OpensslLib|CryptoPkg/Library/OpensslLib/O= pensslLibCrypto.inf

+  PlatformSecureLib|SecurityPkg/Library/Pla= tformSecureLibNull/PlatformSecureLibNull.inf

+  AuthVariableLib|SecurityPkg/Library/AuthV= ariableLib/AuthVariableLib.inf

+!else

+  AuthVariableLib|MdeModulePkg/Library/Auth= VariableLibNull/AuthVariableLibNull.inf

+!endif

+

[LibraryClasses.common.SEC]

   PeiServicesLib|EmulatorPkg/Library/S= ecPeiServicesLib/SecPeiServicesLib.inf

   PcdLib|MdePkg/Library/BasePcdLibNull= /BasePcdLibNull.inf

@@ -162,6 +171,16 @@

   TimerLib|EmulatorPkg/Library/DxeCore= TimerLib/DxeCoreTimerLib.inf

  EmuThunkLib|EmulatorPkg/Library/DxeEm= uLib/DxeEmuLib.inf

 

+[LibraryClasses.common.DXE_DRIVER, LibraryClasse= s.common.UEFI_DRIVER, LibraryClasses.common.UEFI_APPLICATION]

+!if $(SECURE_BOOT_ENABLE) =3D=3D TRUE

+  BaseCryptLib|CryptoPkg/Library/BaseCryptL= ib/BaseCryptLib.inf

+!endif

+

+[LibraryClasses.common.DXE_RUNTIME_DRIVER]

+!if $(SECURE_BOOT_ENABLE) =3D=3D TRUE

+  BaseCryptLib|CryptoPkg/Library/BaseCryptL= ib/RuntimeCryptLib.inf

+!endif

+

[LibraryClasses.common.DXE_RUNTIME_DRIVER, Librar= yClasses.common.UEFI_DRIVER, LibraryClasses.common.DXE_DRIVER, LibraryClass= es.common.UEFI_APPLICATION]

   HobLib|MdePkg/Library/DxeHobLib/DxeH= obLib.inf

   PcdLib|MdePkg/Library/DxePcdLib/DxeP= cdLib.inf

@@ -190,6 +209,10 @@

   gEmulatorPkgTokenSpaceGuid.PcdEmuFir= mwareFdSize|0x002a0000

   gEmulatorPkgTokenSpaceGuid.PcdEmuFir= mwareBlockSize|0x10000

   gEmulatorPkgTokenSpaceGuid.PcdEmuFir= mwareVolume|L"../FV/FV_RECOVERY.fd"

+!if $(SECURE_BOOT_ENABLE) =3D=3D TRUE

+  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuth= VariableSize|0x2800

+  gEfiSecurityPkgTokenSpaceGuid.PcdUserPhys= icalPresence|TRUE

+!endif

 

   gEmulatorPkgTokenSpaceGuid.PcdE= muMemorySize|L"64!64"

 

@@ -306,7 +329,14 @@

   EmulatorPkg/ResetRuntimeDxe/Reset.in= f

   MdeModulePkg/Core/RuntimeDxe/Runtime= Dxe.inf

   EmulatorPkg/FvbServicesRuntimeDxe/Fv= bServicesRuntimeDxe.inf

-  MdeModulePkg/Universal/SecurityStubDxe/Se= curityStubDxe.inf

+

+  MdeModulePkg/Universal/SecurityStubDxe/Se= curityStubDxe.inf {

+    <LibraryClasses>

+!if $(SECURE_BOOT_ENABLE) =3D=3D TRUE

+      NULL|SecurityPkg/= Library/DxeImageVerificationLib/DxeImageVerificationLib.inf

+!endif

+  }

+

   MdeModulePkg/Universal/EbcDxe/EbcDxe= .inf

   MdeModulePkg/Universal/MemoryTest/Nu= llMemoryTestDxe/NullMemoryTestDxe.inf

   EmulatorPkg/EmuThunkDxe/EmuThunk.inf=

@@ -315,6 +345,9 @@

   EmulatorPkg/PlatformSmbiosDxe/Platfo= rmSmbiosDxe.inf

   EmulatorPkg/TimerDxe/Timer.inf

 

+!if $(SECURE_BOOT_ENABLE) =3D=3D TRUE

+  SecurityPkg/VariableAuthenticated/SecureB= ootConfigDxe/SecureBootConfigDxe.inf

+!endif

 

   MdeModulePkg/Universal/Variable= /RuntimeDxe/VariableRuntimeDxe.inf {

     <LibraryClasses>

diff --git a/EmulatorPkg/EmulatorPkg.fdf b/Emulat= orPkg/EmulatorPkg.fdf

index 295f6f1db8..b256aa9397 100644

--- a/EmulatorPkg/EmulatorPkg.fdf

+++ b/EmulatorPkg/EmulatorPkg.fdf

@@ -46,10 +46,17 @@ DATA =3D {

   # Blockmap[1]: End

   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, = 0x00, 0x00,

   ## This is the VARIABLE_STORE_HEADER=

+!if $(SECURE_BOOT_ENABLE) =3D=3D FALSE

   #Signature: gEfiVariableGuid =3D

   #  { 0xddcf3616, 0x3275, 0x4164= , { 0x98, 0xb6, 0xfe, 0x85, 0x70, 0x7f, 0xfe, 0x7d }}

   0x16, 0x36, 0xcf, 0xdd, 0x75, 0x32, = 0x64, 0x41,

   0x98, 0xb6, 0xfe, 0x85, 0x70, 0x7f, = 0xfe, 0x7d,

+!else

+  # Signature: gEfiAuthenticatedVariableGui= d =3D

+  #  { 0xaaf32c78, 0x947b, 0x439a, { 0= xa1, 0x80, 0x2e, 0x14, 0x4e, 0xc3, 0x77, 0x92 }}

+  0x78, 0x2c, 0xf3, 0xaa, 0x7b, 0x94, 0x9a,= 0x43,

+  0xa1, 0x80, 0x2e, 0x14, 0x4e, 0xc3, 0x77,= 0x92,

+!endif

   #Size: 0xc000 (gEfiMdeModulePkgToken= SpaceGuid.PcdFlashNvStorageVariableSize) - 0x48 (size of EFI_FIRMWARE_VOLUM= E_HEADER) =3D 0xBFB8

   # This can speed up the Variable Dis= patch a bit.

   0xB8, 0xBF, 0x00, 0x00,

@@ -186,6 +193,13 @@ INF  RuleOverride =3D U= I MdeModulePkg/Application/UiApp/UiApp.inf

INF  MdeModulePkg/Application/BootManagerMen= uApp/BootManagerMenuApp.inf

INF  MdeModulePkg/Universal/DriverSampleDxe/= DriverSampleDxe.inf

 

+#

+# Secure Boot Key Enroll

+#

+!if $(SECURE_BOOT_ENABLE) =3D=3D TRUE

+INF SecurityPkg/VariableAuthenticated/SecureBoot= ConfigDxe/SecureBootConfigDxe.inf

+!endif

+

#

# Network stack drivers

#

--

2.24.1.windows.2

--_000_BY5PR11MB4007DBA3EA9D133F953120F68C3F0BY5PR11MB4007namp_--