From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 1D783D81164 for ; Thu, 11 Jan 2024 15:18:53 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=6bp4sE7JJzcswAtTmsFEsEEZGvH/wl2Dc3uXBAoRZik=; c=relaxed/simple; d=groups.io; h=ARC-Seal:ARC-Message-Signature:ARC-Authentication-Results:From:To:CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To:Accept-Language:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type:Content-Transfer-Encoding; s=20140610; t=1704986332; v=1; b=VsLK3nuQIozGGB/H0rYKWJ6Pm+SPDowYinpxpdEoy9tRdM0Ldw3F09j4CWWRQiVlnaOkmui+ LrUPhisyYfWJqbrdMFYv+EHsiwvMT2u80omHEx85wlAF0Wjgz6BYLc+weJayRazot6niOoj50lb hn88kSniCT0WuaecGE/7z3jE= X-Received: by 127.0.0.2 with SMTP id PVBeYY7687511xZTXzogDT0Y; Thu, 11 Jan 2024 07:18:52 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.43]) by mx.groups.io with SMTP id smtpd.web10.13806.1704986331935281705 for ; Thu, 11 Jan 2024 07:18:52 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10950"; a="485046913" X-IronPort-AV: E=Sophos;i="6.04,186,1695711600"; d="scan'208";a="485046913" X-Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Jan 2024 07:14:32 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10950"; a="758791024" X-IronPort-AV: E=Sophos;i="6.04,186,1695711600"; d="scan'208";a="758791024" X-Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orsmga006.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 11 Jan 2024 07:14:32 -0800 X-Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Thu, 11 Jan 2024 07:14:31 -0800 X-Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Thu, 11 Jan 2024 07:14:31 -0800 X-Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.169) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Thu, 11 Jan 2024 07:14:31 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=WcvrcUAdxDsVYwobZqbzr3nnRSWW9ty3fYu8yfUAd7FZItcL8edlk4FTgE/B2H2k17r6AhYr2rTcBSsyW7AqmWNZR2rLxjPSWCGIl8/kPjikdRwTtlEloIx6IDgM4VVSSqFhR2uWR1mpWewAsG93NzijQi44hILdNiDiMVtXXACQ/mtdSBcNnxd909qGjdoRKeZgxVNIBRFwDYaDPqOisXeJ1iQdr2Gib/PA0DsfOwteY23UdoWCCh5wUoQqaVSWLFFxKSDSI7BhFzUnXz33t90jlNTTu53/CVO6VCzcFT3sZOh62IrXR+LGZUxjbkbSeVmHZUGPEkL/3e0GEd3peg== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=anGXZhuVCu+zCN8Lz+y5ALxjgcWf6+p1s266yhqXtEQ=; b=brpIUy4Zn8sCIHq6NVVgR5s4UpmJmUnEBfZy6xXJ/6F4x6nqN+T7otrLC3ZBPvfcjjYjQRBk/+EmE7czqrvkJim338jd2sxUgL0vAfOJvJDvYspBZFFOm98vcl5tYkdq0p9IeyEM5ET/los0p0bSBUvX1oNL9ZBTmUguMT5A1vbDLOIkODKeVLqS+PSIUzXVPS96HwJyOynCvstOzq7WoNKY/QJAym2uZznb0HJm6vlL1JL9GA9887CKFchwg23Snaehg1AW7/1Ol4CofAE1PaXZ5+uInosHogw++uFAkW1nJFSPAbkZQkVB3PJ1pZEgppcp77TIUye2BByCA6bA5Q== 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 X-Received: from BL1PR11MB5478.namprd11.prod.outlook.com (2603:10b6:208:31d::12) by IA0PR11MB7813.namprd11.prod.outlook.com (2603:10b6:208:402::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7159.23; Thu, 11 Jan 2024 15:14:28 +0000 X-Received: from BL1PR11MB5478.namprd11.prod.outlook.com ([fe80::1732:8b4d:9f8b:3e2f]) by BL1PR11MB5478.namprd11.prod.outlook.com ([fe80::1732:8b4d:9f8b:3e2f%6]) with mapi id 15.20.7181.015; Thu, 11 Jan 2024 15:14:28 +0000 From: "Guo, Gua" To: Sami Mujawar , "devel@edk2.groups.io" CC: Marc Beatove , Ard Biesheuvel , "Ni, Ray" , "Mathews, John" , Gerd Hoffmann , nd Subject: Re: [edk2-devel] [PATCH v2 2/4] StandaloneMmPkg/Hob: Integer Overflow in CreateHob() Thread-Topic: [PATCH v2 2/4] StandaloneMmPkg/Hob: Integer Overflow in CreateHob() Thread-Index: AQHaRG6lrVEdZYobJk+Nmgi29J+jLbDUpdyAgAAC2YCAAAzMgIAAAmqA Date: Thu, 11 Jan 2024 15:14:28 +0000 Message-ID: References: <20240111091439.1767-1-gua.guo@intel.com> <20240111091439.1767-3-gua.guo@intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BL1PR11MB5478:EE_|IA0PR11MB7813:EE_ x-ms-office365-filtering-correlation-id: eb1f6a85-c45c-47e1-4c27-08dc12b8018a x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: hFKQ6GaXArCTJU+aAOZSV366tEofa1oYF9QJKPc2uebMFO5hmV6RY28+YTSeSKyay0mapUa23tGnSWFsuiMirpUlfK1+73hGeE1SI2qJaRnaCwhUkPDv2uzRrOKjJCqKAxwnC7smvPYejY6x1D1C039zFodZG64Gbqo194R5qK+1r5F8Yt7oRO6M7iNt8GZzPHpZSXT9EjBpi+A1EeMXO6FPEwEVmOrpl4pioMuUx/wI7KJxetXi5U81McvBXNcXnVcAmOHwgTGwgaETAo2b7PvmOgj+TKF0HbxDsMsAButlGw7UdgedyajpepjolGAb9O2Bfl4A95CqoajmGtMp8LHk3dOwzjmYy3VXXWWMu5HmqQJMfKAlwBjQEiHP0XEd6Vo39KbY34t56nYSum8XwDCkiJgDEPsnTriTA8GTnrm6nG/01u860mmx12VhsxVPC5KE1YqmSrFB3n9U1N0imgQwELA571y7k27iPLT3mpu1chV0Xew42Ids7Eeb0E0QEQkiNbsAy30LQnp1jzjuA3zbjJYY07i2hkzxgg2L4SYcTyrMfIXVeGLJDSEGQuNbpo9gRgshE+NynaCW4JT3V2cgePc90HLJfcKfk0pRNrGgzzocQZQpzyU4gZJWXA1EddOrOeAAuRnO2DlmBSOQdg== x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cFZGYmo0V21RQTRVQlYxMU4zMkdiTXloVGMrLytURm9QWkw2YjNhdnVianM2?= =?utf-8?B?dnRDK2F5aERPMEExeGNuSlE3Wk5iU1NVTElXaVVHSnMwNHJSN3RCRjcyMDNE?= =?utf-8?B?WGU4SVlSUzMzQ3JpaWZHNlRmSkFWbnRYNUY1dk1nR2NNNlozWWVjNWgra3lz?= =?utf-8?B?NWJhaU1kSFkvdExFd0FsaEhSbnZaSHp2bEFlejcreW8zcDMyanFhQWxXYnJL?= =?utf-8?B?QUVOdXdCTlBGTUNPMWUyNURNNDRHT0ZNRnVlVXFqK2Q3VHlpa0ExcWJkTEdu?= =?utf-8?B?OWRnSk9qNWNNN1Z2MVdSMmFVa2pzZ3FYMzFUcU1LV1VlVXpzTTNXdnNVSmRM?= =?utf-8?B?UDF0WnJmQVdCblFTelpZRFRKWEx6VGdXa2VsakZ1a2Z2ejdlSmo4T0pWT2t1?= =?utf-8?B?aS9xZlJVM0JlcWRnUlRZRng2blNpcUVrN2ppNU5KSWhyNnEzQlpIcVFOcFhJ?= =?utf-8?B?NFJONGtDV0NtRnpIVnE2NUZPaElUa1p6aXNGRWE3UHhnbmNwZ1Z5aEJ2RVhO?= =?utf-8?B?M2l6b3B6bzFuRkZkaW5oZVZ5QlhEckx1YnkweVcrdGNWNXQrOTNJS0FiWStm?= =?utf-8?B?WXN2dm53VUY4cktSSktCYVliTkVtZHMxdlZOTTdRWVExc0t1VE1FeTZhS2pq?= =?utf-8?B?V1BEQWJTc1pYZlk2aUlIWWkzb1R3THVheGpyUDZMTVd5R3BGTjBmOStpZjRu?= =?utf-8?B?OVVoVXgwOW9rNFYyem5MZFhKQ3NyanA4SGJzZG8wMUxGd3pzYWpUeHpocmFu?= =?utf-8?B?azJCNDJDb0RDVEZsQ3U0VG8vZUZ4NEZtSHgvMkJnS3RUTmlBSVZzbjVyMGd3?= =?utf-8?B?Z05CSTYxa3BubmhrMU0xVVh5djJZekEyZmM2N3RRdGZrZFVjT2hEL2hmemxi?= =?utf-8?B?RGNoY1JMamg2OVlVbXlzTThrS0hnZVBuMTNJWE1kSU9QYkc3N0NjSUJtNDRn?= =?utf-8?B?UElBZHJYZkpndENzYVZLZ1puQkh1ODFyNlQrSkxRYmc1TjhrK0V3RmQ2OGJk?= =?utf-8?B?S2VnSVFPZ1QvcjNhcU40RWVhMy9LRkJ1ZVppZ1N4MzNyTEVRNER0R3RBSFNJ?= =?utf-8?B?NU5uKzkzcDhVUEZUV3F0VzMybHIybmZpTzNKS2dobmtVa3RTcC90MWRjdjNN?= =?utf-8?B?Z0pEVFNYSUYydjJvZXREWjJ4Ty81MXNubjJWQ2JWaGNabTlvcmZETnlvaVRl?= =?utf-8?B?SUF5T0dkSU04eHFsL3RuaUE1eVlxWmpwQVFIN1JtNU52L2hRV2hjYWdGSzBt?= =?utf-8?B?SzZ0c1NJQytXcnQ3ODF4clBhaWx6VTI5MFdKZ2xtVkhzUGlRcDNwVzlGajMr?= =?utf-8?B?eFFjQUJQc1BMYzFLOERCWUl1MGNudXBrVDBFUjNEZXBibFA3N0U5OWI3S0Nh?= =?utf-8?B?bmZmTzU5Q3NWWDR6WDBDbEh6UDRFOHhUblduVjZzUk15RWJURTFTVGxCRUps?= =?utf-8?B?anBHaXhFSXRmSU1zS3VGWWI5SXduSWVwdmV2S1RqVExmRngvc0JsY3NJTFdi?= =?utf-8?B?UUZ5NGRwMW1ma0RCbXBkbXM2Q3JvTmNnOU9Wb3d5SXJoVitiZ2UyZkhvUEc1?= =?utf-8?B?ZHBIVzlLWDFoc3JUeEh6dlR3RGd1eGRlbnJkOGFrTDBUN0h0UHdTS3dVdDdl?= =?utf-8?B?OVFxWG01dnZ3b0FZRHh4TE5tYmVPVDhTN2dRNzViWklVUnE3cVVlQTZESiti?= =?utf-8?B?dmlsQmJhK1FWQjZlTmV1MFV0S2FFcUpiOWEwR1NNWXBpc3pUbmcyTG5xeTZv?= =?utf-8?B?U0ZNOHF4RjVqRGRscTlHeVIvRHdDOXpJVi9EVG5nQm9taGY1Z2dGLzlmQXpU?= =?utf-8?B?eGhlSXlIWlhBd05BNElTVGJPYWl3U2RBRHRZQ3pENThScnRqMUpSbXFSUUVD?= =?utf-8?B?QjJkTUFLY0VIL0pLeUhuVDVKcHNwZnQrbjh0RlFoOTVsOTlNTUVPcGxBQXVq?= =?utf-8?B?RW5yVnJHRDhTdVExeDJEYUVVSUgvaDBhVnM0SC8vOXd5MGpPNzIrN1FNelcv?= =?utf-8?B?bnVmNGpzV09Cam15L0FMeE5nZW51N1hHVUQ5eGlZcEVrdEpXbndWNnZEYjVr?= =?utf-8?B?and0UTJMWjJMamE1emYvSTVEYUxHdXNmU1g5NUdwTkR6aS9EbVExN1VIczNa?= =?utf-8?Q?nNAc=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL1PR11MB5478.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: eb1f6a85-c45c-47e1-4c27-08dc12b8018a X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Jan 2024 15:14:28.8615 (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: dKuOY7pNTVkPoTA5Z9EDJqffOB5CuSsggeqEmWz20JeXPeUpHvh9JaWXzIlLiOw9vCZydpLVbzEYXyDACSfWAw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR11MB7813 X-OriginatorOrg: intel.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,gua.guo@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: kjtjn11dMVz226oKFWKAPRr8x7686176AA= Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=VsLK3nuQ; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") TWF5YmUgSSBjYW4gYWRkIGVycm9yIGhhbmRsZSBidXQgdGhleSB3aWxsIGhhdmUgc2V2ZXJhbCBj YXNlIG5lZWQgdG8gZG8gaWYgaXQncyBmaW5lLg0KSXQgbWF5YmUgaW5jcmVhc2luZyBzb21lIEJJ T1Mgc2l6ZS4NCg0KICAgIEVycm9yIEhhbmRsZSAgICAgRXJyb3IgSGFuZGxlICAgICAgICBFcnJv ciBIYW5kbGUgICAgICAgICAgICAgICAgICAgICAgIEVycm9yIEhhbmRsZQ0KQSAtLS0tLS0tLS0t LS0tLS0tPiBCIC0tLS0tLS0tLS0tLS0tLS0tPiBDIC0tLS0tLS0tLS0tLS0tLS0tLT4gQ3JlYXRl SG9iIC0tLS0tLS0tLS0tLS0tLS0+IHJldHVybiBOVUxMDQoNCkFsbCBjYWxsZXIgY2hhaW4gbWF5 IG5lZWQgdG8gYWRkIGl0IGlmIHdlIHJlYWxseSB3YW50IHRvIHByZXZlbnQgaXQgb24gcmVsZWFz ZS4NCg0KVGhhbmtzLA0KR3VhDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogU2Ft aSBNdWphd2FyIDxTYW1pLk11amF3YXJAYXJtLmNvbT4gDQpTZW50OiBUaHVyc2RheSwgSmFudWFy eSAxMSwgMjAyNCAxMTowMiBQTQ0KVG86IEd1bywgR3VhIDxndWEuZ3VvQGludGVsLmNvbT47IGRl dmVsQGVkazIuZ3JvdXBzLmlvDQpDYzogTWFyYyBCZWF0b3ZlIDxtYmVhdG92ZUBnb29nbGUuY29t PjsgQXJkIEJpZXNoZXV2ZWwgPGFyZGIrdGlhbm9jb3JlQGtlcm5lbC5vcmc+OyBOaSwgUmF5IDxy YXkubmlAaW50ZWwuY29tPjsgTWF0aGV3cywgSm9obiA8am9obi5tYXRoZXdzQGludGVsLmNvbT47 IEdlcmQgSG9mZm1hbm4gPGtyYXhlbEByZWRoYXQuY29tPjsgbmQgPG5kQGFybS5jb20+DQpTdWJq ZWN0OiBSZTogW1BBVENIIHYyIDIvNF0gU3RhbmRhbG9uZU1tUGtnL0hvYjogSW50ZWdlciBPdmVy ZmxvdyBpbiBDcmVhdGVIb2IoKQ0KDQpIaSBHdWEsDQoNClBsZWFzZSBmaW5kIG15IHJlc3BvbnNl IGlubGluZSBtYXJrZWQgW1NBTUldLg0KDQpSZWdhcmRzLA0KDQpTYW1pIE11amF3YXINCu+7v09u IDExLzAxLzIwMjQsIDE0OjE5LCAiR3VvLCBHdWEiIDxndWEuZ3VvQGludGVsLmNvbSA8bWFpbHRv Omd1YS5ndW9AaW50ZWwuY29tPj4gd3JvdGU6DQoNCg0KWW91IG1lYW4gd2UgbmVlZCB0byBhZGQg YmVsb3cgZXJyb3IgaGFuZGxlIGFmdGVyIGFsbCBjYWxsZXJzID8NCg0KDQpIb2IgPSBDcmVhdGVI b2IgKC4uLikNCkFTU0VSVCAoSG9iICE9IE5VTEwpOyA8LS0tLS0tLS0tLS0tLS0tLSBIZXJlIFtT QU1JXSBUaGF0IHdvdWxkIGNlcnRhaW5seSBoZWxwIGNhdGNoIGlzc3VlcyBpbiB0aGUgZGVidWcg YnVpbGRzLiBCdXQgdGhlIHByb2JsZW0gd2l0aCBhc3NlcnRzIGlzLCB0aGV5IHZhbmlzaCBpbiBy ZWxlYXNlIGJ1aWxkcy4gDQpJIHRoaW5rIHdlIHNob3VsZCBjb25zaWRlciBhZGRpbmcgYXBwcm9w cmlhdGUgZXJyb3IgaGFuZGxpbmcgaW4gdGhlIGNhbGxpbmcgZnVuY3Rpb25zIHRvIG1ha2Ugc3Vy ZSB0aGF0IHRoZXkgZG8gbm90IHJlc3VsdCBpbiBhIGNyYXNoLg0KWy9TQU1JXQ0KDQoNCg0KDQpU aGFua3MsDQpHdWENCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBTYW1pIE11amF3 YXIgPFNhbWkuTXVqYXdhckBhcm0uY29tIDxtYWlsdG86U2FtaS5NdWphd2FyQGFybS5jb20+Pg0K U2VudDogVGh1cnNkYXksIEphbnVhcnkgMTEsIDIwMjQgMTA6MDYgUE0NClRvOiBHdW8sIEd1YSA8 Z3VhLmd1b0BpbnRlbC5jb20gPG1haWx0bzpndWEuZ3VvQGludGVsLmNvbT4+OyBkZXZlbEBlZGsy Lmdyb3Vwcy5pbyA8bWFpbHRvOmRldmVsQGVkazIuZ3JvdXBzLmlvPg0KQ2M6IE1hcmMgQmVhdG92 ZSA8bWJlYXRvdmVAZ29vZ2xlLmNvbSA8bWFpbHRvOm1iZWF0b3ZlQGdvb2dsZS5jb20+PjsgQXJk IEJpZXNoZXV2ZWwgPGFyZGIrdGlhbm9jb3JlQGtlcm5lbC5vcmcgPG1haWx0bzphcmRiK3RpYW5v Y29yZUBrZXJuZWwub3JnPj47IE5pLCBSYXkgPHJheS5uaUBpbnRlbC5jb20gPG1haWx0bzpyYXku bmlAaW50ZWwuY29tPj47IE1hdGhld3MsIEpvaG4gPGpvaG4ubWF0aGV3c0BpbnRlbC5jb20gPG1h aWx0bzpqb2huLm1hdGhld3NAaW50ZWwuY29tPj47IEdlcmQgSG9mZm1hbm4gPGtyYXhlbEByZWRo YXQuY29tIDxtYWlsdG86a3JheGVsQHJlZGhhdC5jb20+PjsgbmQgPG5kQGFybS5jb20gPG1haWx0 bzpuZEBhcm0uY29tPj4NClN1YmplY3Q6IFJlOiBbUEFUQ0ggdjIgMi80XSBTdGFuZGFsb25lTW1Q a2cvSG9iOiBJbnRlZ2VyIE92ZXJmbG93IGluIENyZWF0ZUhvYigpDQoNCg0KSGkgR3VhLA0KDQoN ClRoYW5rIHlvdSBmb3IgdGhpcyBwYXRjaC4NClBsZWFzZSBzZWUgbXkgcmVzcG9uc2UgaW5saW5l IG1hcmtlZCBbU0FNSV0uDQoNCg0KUmVnYXJkcywNCg0KDQpTYW1pIE11amF3YXINCg0KDQpPbiAx MS8wMS8yMDI0LCAwOToxNSwgImd1YS5ndW9AaW50ZWwuY29tIDxtYWlsdG86Z3VhLmd1b0BpbnRl bC5jb20+IDxtYWlsdG86Z3VhLmd1b0BpbnRlbC5jb20gPG1haWx0bzpndWEuZ3VvQGludGVsLmNv bT4+IiA8Z3VhLmd1b0BpbnRlbC5jb20gPG1haWx0bzpndWEuZ3VvQGludGVsLmNvbT4gPG1haWx0 bzpndWEuZ3VvQGludGVsLmNvbSA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tPj4+IHdyb3RlOg0K DQoNCg0KDQpGcm9tOiBHdWEgR3VvIDxndWEuZ3VvQGludGVsLmNvbSA8bWFpbHRvOmd1YS5ndW9A aW50ZWwuY29tPiA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tIDxtYWlsdG86Z3VhLmd1b0BpbnRl bC5jb20+Pj4NCg0KDQoNCg0KUkVGOiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hv d19idWcuY2dpP2lkPTQxNjYgPGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1 Zy5jZ2k/aWQ9NDE2Nj4gPGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5j Z2k/aWQ9NDE2Nj4gPGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/ aWQ9NDE2NiZndDs+DQoNCg0KDQoNCkZpeCBpbnRlZ2VyIG92ZXJmbG93IGluIHZhcmlvdXMgQ3Jl YXRlSG9iIGluc3RhbmNlcy4NCkZpeGVzOiBDVkUtMjAyMi0zNjc2NQ0KDQoNCg0KDQpUaGUgQ3Jl YXRlSG9iKCkgZnVuY3Rpb24gYWxpZ25zIHRoZSByZXF1ZXN0ZWQgc2l6ZSB0byA4IHBlcmZvcm1p bmcgdGhlIGZvbGxvd2luZyBvcGVyYXRpb246DQpgYGANCkhvYkxlbmd0aCA9IChVSU5UMTYpKChI b2JMZW5ndGggKyAweDcpICYgKH4weDcpKTsgYGBgDQoNCg0KDQoNCk5vIGNoZWNrcyBhcmUgcGVy Zm9ybWVkIHRvIGVuc3VyZSB0aGlzIHZhbHVlIGRvZXNuJ3Qgb3ZlcmZsb3csIGFuZCBjb3VsZCBs ZWFkIHRvIENyZWF0ZUhvYigpIHJldHVybmluZyBhIHNtYWxsZXIgSE9CIHRoYW4gcmVxdWVzdGVk LCB3aGljaCBjb3VsZCBsZWFkIHRvIE9PQiBIT0IgYWNjZXNzZXMuDQoNCg0KDQoNClJlcG9ydGVk LWJ5OiBNYXJjIEJlYXRvdmUgPG1iZWF0b3ZlQGdvb2dsZS5jb20gPG1haWx0bzptYmVhdG92ZUBn b29nbGUuY29tPiA8bWFpbHRvOm1iZWF0b3ZlQGdvb2dsZS5jb20gPG1haWx0bzptYmVhdG92ZUBn b29nbGUuY29tPj4+DQpSZXZpZXdlZC1ieTogQXJkIEJpZXNoZXV2ZWwgPGFyZGIrdGlhbm9jb3Jl QGtlcm5lbC5vcmcgPG1haWx0bzphcmRiK3RpYW5vY29yZUBrZXJuZWwub3JnPiA8bWFpbHRvOmFy ZGIrdGlhbm9jb3JlQGtlcm5lbC5vcmcgPG1haWx0bzphcmRiK3RpYW5vY29yZUBrZXJuZWwub3Jn Pj4+DQpDYzogU2FtaSBNdWphd2FyIDxzYW1pLm11amF3YXJAYXJtLmNvbSA8bWFpbHRvOnNhbWku bXVqYXdhckBhcm0uY29tPiA8bWFpbHRvOnNhbWkubXVqYXdhckBhcm0uY29tIDxtYWlsdG86c2Ft aS5tdWphd2FyQGFybS5jb20+Pj4NCkNjOiBSYXkgTmkgPHJheS5uaUBpbnRlbC5jb20gPG1haWx0 bzpyYXkubmlAaW50ZWwuY29tPiA8bWFpbHRvOnJheS5uaUBpbnRlbC5jb20gPG1haWx0bzpyYXku bmlAaW50ZWwuY29tPj4+DQpDYzogSm9obiBNYXRoZXcgPGpvaG4ubWF0aGV3c0BpbnRlbC5jb20g PG1haWx0bzpqb2huLm1hdGhld3NAaW50ZWwuY29tPiA8bWFpbHRvOmpvaG4ubWF0aGV3c0BpbnRl bC5jb20gPG1haWx0bzpqb2huLm1hdGhld3NAaW50ZWwuY29tPj4+DQpBdXRob3JlZC1ieTogR2Vy ZCBIb2ZmbWFubiA8a3JheGVsQHJlZGhhdC5jb20gPG1haWx0bzprcmF4ZWxAcmVkaGF0LmNvbT4g PG1haWx0bzprcmF4ZWxAcmVkaGF0LmNvbSA8bWFpbHRvOmtyYXhlbEByZWRoYXQuY29tPj4+DQpT aWduZWQtb2ZmLWJ5OiBHdWEgR3VvIDxndWEuZ3VvQGludGVsLmNvbSA8bWFpbHRvOmd1YS5ndW9A aW50ZWwuY29tPiA8bWFpbHRvOmd1YS5ndW9AaW50ZWwuY29tIDxtYWlsdG86Z3VhLmd1b0BpbnRl bC5jb20+Pj4NCi0tLQ0KLi4uL1N0YW5kYWxvbmVNbUNvcmVIb2JMaWIvQXJtL1N0YW5kYWxvbmVN bUNvcmVIb2JMaWIuYyB8IDcgKysrKysrKw0KMSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygr KQ0KDQoNCg0KDQpkaWZmIC0tZ2l0IGEvU3RhbmRhbG9uZU1tUGtnL0xpYnJhcnkvU3RhbmRhbG9u ZU1tQ29yZUhvYkxpYi9Bcm0vU3RhbmRhbG9uZU1tQ29yZUhvYkxpYi5jIGIvU3RhbmRhbG9uZU1t UGtnL0xpYnJhcnkvU3RhbmRhbG9uZU1tQ29yZUhvYkxpYi9Bcm0vU3RhbmRhbG9uZU1tQ29yZUhv YkxpYi5jDQppbmRleCAxNTUwZTFiYWJjLi5iYjg0MjZkYzBhIDEwMDY0NA0KLS0tIGEvU3RhbmRh bG9uZU1tUGtnL0xpYnJhcnkvU3RhbmRhbG9uZU1tQ29yZUhvYkxpYi9Bcm0vU3RhbmRhbG9uZU1t Q29yZUhvYkxpYi5jDQorKysgYi9TdGFuZGFsb25lTW1Qa2cvTGlicmFyeS9TdGFuZGFsb25lTW1D b3JlSG9iTGliL0FybS9TdGFuZGFsb25lTW1Db3INCisrKyBlSG9iTGliLmMNCkBAIC0zNCw2ICsz NCwxMyBAQCBDcmVhdGVIb2IgKA0KDQoNCg0KDQoNCg0KDQoNCkhhbmRPZmZIb2IgPSBHZXRIb2JM aXN0ICgpOw0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KKyAvLw0KDQoNCg0KDQorIC8vIENoZWNr IExlbmd0aCB0byBhdm9pZCBkYXRhIG92ZXJmbG93Lg0KDQoNCg0KDQorIC8vDQoNCg0KDQoNCisg aWYgKEhvYkxlbmd0aCA+IE1BWF9VSU5UMTYgLSAweDcpIHsNCg0KDQoNCg0KKyByZXR1cm4gTlVM TDsNCltTQU1JXSBBbHRob3VnaCB0aGlzIGZpeCBpcyBjb3JyZWN0LCBJIHRoaW5rIGl0IHNoaWZ0 cyB0aGUgcHJvYmxlbSBzb21ld2hlcmUgZWxzZS4gDQpJZiB0aGUgYWJvdmUgY29uZGl0aW9uIG9j Y3VycywgYSBOVUxMIGlzIHJldHVybmVkLiBBIHF1aWNrIHNjYW4gcmV2ZWFscyB0aGF0IHRoZSBj YWxsaW5nIGZ1bmN0aW9ucyBkbyBub3QgY2hlY2sgdGhlIHJldHVybmVkIHZhbHVlIGJlZm9yZSB1 c2UuDQplLmcuIGh0dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUvZWRrMi9ibG9iL21hc3Rlci9T dGFuZGFsb25lTW1Qa2cvTGlicmFyeS9TdGFuZGFsb25lTW1Db3JlSG9iTGliL0FybS9TdGFuZGFs b25lTW1Db3JlSG9iTGliLmMjTDE2Ny1MMTcwIDxodHRwczovL2dpdGh1Yi5jb20vdGlhbm9jb3Jl L2VkazIvYmxvYi9tYXN0ZXIvU3RhbmRhbG9uZU1tUGtnL0xpYnJhcnkvU3RhbmRhbG9uZU1tQ29y ZUhvYkxpYi9Bcm0vU3RhbmRhbG9uZU1tQ29yZUhvYkxpYi5jI0wxNjctTDE3MD4NClRoZXJlIGFy ZSBtdWx0aXBsZSBzdWNoIHBsYWNlcyB3aGVyZSB0aGUgY2FsbGluZyBmdW5jdGlvbnMgZG8gbm90 IGNoZWNrIHRoZSBwb2ludGVyIHJldHVybmVkIGJ5IENyZWF0ZUhvYigpLiANCkkgYmVsaWV2ZSBh IHNpbWlsYXIgc2l0dWF0aW9uIGNhbiBoYXBwZW4gZm9yIHRoZSBvdGhlciBwYXRjaGVzIGluIHRo aXMgc2VyaWVzLg0KWy9TQU1JXQ0KDQoNCisgfQ0KDQoNCg0KDQorDQoNCg0KDQoNCkhvYkxlbmd0 aCA9IChVSU5UMTYpKChIb2JMZW5ndGggKyAweDcpICYgKH4weDcpKTsNCg0KDQoNCg0KDQoNCg0K DQoNCg0KDQoNCkZyZWVNZW1vcnkgPSBIYW5kT2ZmSG9iLT5FZmlGcmVlTWVtb3J5VG9wIC0gSGFu ZE9mZkhvYi0+RWZpRnJlZU1lbW9yeUJvdHRvbTsNCg0KDQoNCg0KLS0NCjIuMzkuMi53aW5kb3dz LjENCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoKLT0tPS09LT0tPS09LT0tPS09LT0tPS0K R3JvdXBzLmlvIExpbmtzOiBZb3UgcmVjZWl2ZSBhbGwgbWVzc2FnZXMgc2VudCB0byB0aGlzIGdy b3VwLgpWaWV3L1JlcGx5IE9ubGluZSAoIzExMzYyMyk6IGh0dHBzOi8vZWRrMi5ncm91cHMuaW8v Zy9kZXZlbC9tZXNzYWdlLzExMzYyMwpNdXRlIFRoaXMgVG9waWM6IGh0dHBzOi8vZ3JvdXBzLmlv L210LzEwMzY1ODk2MC83Njg2MTc2Ckdyb3VwIE93bmVyOiBkZXZlbCtvd25lckBlZGsyLmdyb3Vw cy5pbwpVbnN1YnNjcmliZTogaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL3Vuc3ViIFty ZWJlY2NhQG9wZW5mdy5pb10KLT0tPS09LT0tPS09LT0tPS09LT0tPS0KCg0K