From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mx.groups.io with SMTP id smtpd.web08.42.1616016584844576207 for ; Wed, 17 Mar 2021 14:29:45 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=NUlu/pyi; spf=pass (domain: intel.com, ip: 192.55.52.136, mailfrom: ianx.kuo@intel.com) IronPort-SDR: gvHvDtZ2JmVOzU49LyoW5hMVpzbS5MKyXzCDncfBycscPy9Z6N7yRz4ff2+TBINN5U6/kuRYu8 Nmsoet0ewF8g== X-IronPort-AV: E=McAfee;i="6000,8403,9926"; a="168826079" X-IronPort-AV: E=Sophos;i="5.81,257,1610438400"; d="scan'208";a="168826079" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Mar 2021 14:29:43 -0700 IronPort-SDR: /8N7CIVCX+OTEmf6ZZE932bPv18sUpYOaAWH+KWGzAn4NEeFmyiDAkVEeGNLCJmILtRgpOhtjj E2QiT4GxwkMw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,257,1610438400"; d="scan'208";a="450242146" Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18]) by orsmga001.jf.intel.com with ESMTP; 17 Mar 2021 14:29:43 -0700 Received: from orsmsx605.amr.corp.intel.com (10.22.229.18) by ORSMSX605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Wed, 17 Mar 2021 14:29:42 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2 via Frontend Transport; Wed, 17 Mar 2021 14:29:42 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.105) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2106.2; Wed, 17 Mar 2021 14:29:41 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BWPQonr5FjhayccChy2VTYa5Vpa25Zr9iThWLy00VESPhCi6vDwcSDCSDKAAB1JAaAd+mPjrdMJo+Ypx7VPuB1abkWFwBTMb4/hZE6vd+RHUGXTfapCAUSdsDIR7QZAyr9SDLjWlVEDgRPxOqH+tnl42VSAZaqZ8gksJjcirlWGpuQtrEiqrdj26Jid4awztFN//DXBlA2Hfyr0UKM8bCQtktU+eLO47wtgjEWpDMdFSnbJdhYnhh4C6qtIrK9mdXrYWChK5oxku17cURbvWDlSgsevEZE4Umn24ua00FcO/wlOs6M//N4kLMbPnzbMiznpCe8v4+8UTttxnV5L6+A== 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=jO1Y+d5k6o+9g6/IOt1kYDRfYeMwB7aWQu6bcQgw7h8=; b=RXuUkEtQYAvY8RHp2Ggi0FQqYKXOsH2Ii3xdn6Rr/vFoxAssYw4Mxn7Hu1CkYg2jvB3PeUdk1raASCI4W+3YWi9M0CwMT8hJKFUhndfLial/WGDduqMi+TNnmgWwWN7VnKExcfUSSe9KpCkycrDc6Z2qlJ+pvf5mnC27rjpLofp//U47d3vwiGiQmcXD3Cw+2yz8dpvBPUeLEJZRrDRQPPN6eq59JXACn9lR6d4dpkS8fwCWfzxzmDQuW/KPLfQHicV5Ns5y67v4mB3rSOp7xkOoq7BZryp5iOzNWIGtbAmZzYcmgTzz8jDxdbF1vXP0+DG0UciVCRQpZE/TTRZGQw== 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=jO1Y+d5k6o+9g6/IOt1kYDRfYeMwB7aWQu6bcQgw7h8=; b=NUlu/pyioJcBo3ufya2Vb9j2lHzKTly+VVtAtiTgQakhkaRDm50/eD6LcLpzQRi5aOqbD7MEIkpy7noFwc4t+VRziaHPAL87WkKipxWex1Zp58PhOaLa8wfKQbhQl+IgAK8ms7OWVU8BUXTN042JyhqvSd5U4npa1n26kO4AlV4= Received: from PH0PR11MB5174.namprd11.prod.outlook.com (2603:10b6:510:3b::12) by PH0PR11MB4869.namprd11.prod.outlook.com (2603:10b6:510:41::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3933.31; Wed, 17 Mar 2021 21:29:40 +0000 Received: from PH0PR11MB5174.namprd11.prod.outlook.com ([fe80::3c61:9375:b146:c3f0]) by PH0PR11MB5174.namprd11.prod.outlook.com ([fe80::3c61:9375:b146:c3f0%7]) with mapi id 15.20.3955.018; Wed, 17 Mar 2021 21:29:40 +0000 From: "IanX Kuo" To: Laszlo Ersek , "devel@edk2.groups.io" CC: "Ke, VincentX" Subject: Re: [edk2-devel] [PATCH] ShellPkg/Pci: Add valid check for PCI extended config space parser Thread-Topic: [edk2-devel] [PATCH] ShellPkg/Pci: Add valid check for PCI extended config space parser Thread-Index: AQHXG3CoR3wAfIpe0kC06GGLa0GerKqIsfxw Date: Wed, 17 Mar 2021 21:29:40 +0000 Message-ID: References: <568b955d98de0cc3dc52467bf394324e391d4b7c.1615954984.git.vincentx.ke@intel.com> <0779c9e3-4e08-20dc-a2fc-c9b99b594c80@redhat.com> In-Reply-To: <0779c9e3-4e08-20dc-a2fc-c9b99b594c80@redhat.com> Accept-Language: en-AS, zh-TW, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.55.52.197] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c8a5a6e8-573d-48a3-0ecf-08d8e98bc625 x-ms-traffictypediagnostic: PH0PR11MB4869: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: sxHipmHA+To5kqK7EpTRscMA0+Lwka0G+sC9EIzEkgsosmqmPnsjq7pzxO3R9EbHdi8JNmX5ljUyjLxxvKBtytA3i2+PCV37+uiCFa3EZuyhY264xHuHTnDUuTtfq2iFmTCMKGZuCjxoKEKp+GZhEtvPWNVF0khCeWxf/BvkLq2Pmim87ztNgpbxrW4Ic2NmmQgpiCRWNjiFicntWOuNmrX3+B/NepdgLWEQ8SwgDLmQuNUR3+Kf/XaCX4pg1bcvt67ut9Yhk7gtuu0Hat3uFFznxOqh2KE5kR9rTJNe+o9Mwiva6NL3swFTZJhn8PpZTmnV4/UlhfXzf/HKKKZHOSzEUIaas4kWeRAujNLCnARA6UFx9s7d/WKKRAs3xfggkA5886x8x2XkX/28UtLLMLoentwtznKB0YY3VEaaB6s1CJAUfn4O5CGY2rk5g7979Mx9IwQcgm+V4abYm0pGawcrQz9+yRn7i/eR4kx53yE4vEFo38LZ2hl74uOHcv2mjHFaXySZ7IG577xH+7itVeCyGEjCANrnVhfCvjPPDmJuykS5eqn47fyvcoy/XuMiGauNUFvxyv8c3L/bgjG0D7FTPi+/cVbF69037Tttbpl3IvJWpTnFlNTONGxW59wxjuqCyXtOrgm2GdUXzI49vA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR11MB5174.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(376002)(39860400002)(346002)(366004)(396003)(136003)(5660300002)(107886003)(55016002)(86362001)(83380400001)(8676002)(66556008)(478600001)(33656002)(9686003)(4326008)(66946007)(316002)(966005)(52536014)(64756008)(53546011)(8936002)(66446008)(2906002)(26005)(110136005)(6506007)(19627235002)(186003)(76116006)(66476007)(71200400001)(7696005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?a3MySUFqdFVEazhSTnEvZHlibm9uU2luMDlROTBSZUgxRVRhNjQ2NGRGUDNi?= =?utf-8?B?VnZoNHVya0x6QmF3eUpyaFpOSHp1Z1lUQWxUbmtMa1NNTVdqNnRMWkpsaWlD?= =?utf-8?B?TFZZN2RwaGQyanRkUmMwc2xiL2lXaGh5YjFSMi9TNkYxeUxDWDhhdmRteFpH?= =?utf-8?B?UjUvSjBtUkVoams1cWc1bW5nRnNhWjRFNHpZV1NBMVpnZVg0T1hlU2JTS29R?= =?utf-8?B?bTZ5VElzYUlNT1c1QlgyTUtuMUNFTVpFNEtBaUFGN0FvMUdFeWd4Zk1WV1BY?= =?utf-8?B?MTV6YzZaVHdZSlBFUzVMemdKK1dDSDB6MU5ySHlyQjZBd01DS1NXRm9UOHZZ?= =?utf-8?B?bUk2N3RmOVVnNmRNZThNVnhiZFUzcGIweWdQWExkUVhBS1BqSjB4TTBLU2kr?= =?utf-8?B?NjdYekp0NDd1WFJRdFFjaVRzNTEzSnZKUFVkRlFodlJoTEJyb0xkTndldUlI?= =?utf-8?B?S28zU21CTzBweDdVNFVJdnJlcFhaR21XS0trbFA0S3JFTFFXcVVCU3pDWDlR?= =?utf-8?B?Z3hBcjlHRHFpUytYNHBQQkxkWEJIN3lhZ2hhOVhFOG1MeEV5QndIR0xkUWFq?= =?utf-8?B?aWZJaXdjZGdaakxNWE1JOURXMWZzZmFBeU11SVFLWHdBUWFHQlFKVjh1RGRI?= =?utf-8?B?Q0NBQmFwMDFtbkZDMGpESDNXRXlqdE9jSmtqdFhibTU5UzlmM3UwWFhPbkt6?= =?utf-8?B?OFZsdVJrM09QZVd6dDhRQkdlQVdGZWtMM001bDRSdTB2WXg0c1FZcUZSbWNL?= =?utf-8?B?Q25WVmRyVVU0MVFOaGJGNmtGc0lyK1dSZ2pRNmUvTGljeUZvY2NHOU5KdUdh?= =?utf-8?B?UTVuakE1ZG0rVStPcTArUWVGK1pKNUpSZmJvQnBweVNuNmE3QWluUm52bzBi?= =?utf-8?B?OFpzMHAzOElqT2RBbXcyaW1WSGtCZnJ3SkFtbkNLdE1NcEcvS1hBM2Z4aHZE?= =?utf-8?B?QWZvZVB3NU12eEd2RXpRSnVlcFMzSEF5dVlGaGVZbkRyT3lqc0ExUzE5bFVn?= =?utf-8?B?ZGVWenlpY204SkFkdm1RYUhoUU1LVVJkeE5ybjBVR0ZOOTZQblAvbDhNeGhY?= =?utf-8?B?Sjd4cVZCaVp6eitmL2gyaEhZYVlFekNtKzNqeW5zMlZVdXZQU2greEFTa0FT?= =?utf-8?B?N3RhZWxvRFBPTW1raDRLdUVLM2dQQWlta2VXU3QyUUNiSFdTTGJuTUxBdE80?= =?utf-8?B?aFY0VFF0MHF5d0s2YUFoMTZtVDFRc3JIbFl1T2NMTU9yTUlOL1ByVVl6bVIz?= =?utf-8?B?N3hHcEZ6ck5VSXY0b0lwWmk4WVg2M2dBNExvY2xSbG9vQ2lxSjhJakdyQlVz?= =?utf-8?B?Y3k3ckNFejFYaDh4L2RwRTJ3Qmd0WEs4YUl5STh2SnU2QkE2bDRYRXlOWmpZ?= =?utf-8?B?UmwrTUZDeFJKWkoxa2RVcWVST0Jzd2VCZWphZHk0L041OXdHK2drMzhvQnp5?= =?utf-8?B?YXNlWmxCaEZHQ0p0eWZwb2tiejl6M3pQMzJiV0JNczFoekptaHNnRlRGaXMw?= =?utf-8?B?eE9KSkhFN3hlcVlKWEZaQ0tRTnRXcVd4UDM2Z0kzc2JQbmFVckpnNjlCc2hl?= =?utf-8?B?bHpLQk1kanZVTlY5K240aThRM05SMU9IZjBiWnZzVEdTWHFKZitMbTA0MlFj?= =?utf-8?B?T0ZsbCtlaXovMDhhc1dsdGYyOGZCUW9vQ2VVaFpPMHZUdURJd2ZuUFVhZ3JL?= =?utf-8?B?UzN3T21LRVIzdVEyU1NLb3k3Smc1SjBTRVgzY0hOTEFTMU8rcDNXdDNjZmxO?= =?utf-8?Q?r7j3aHLZzZlwN+ypziitjE46VagklGglmGsJ20H?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR11MB5174.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c8a5a6e8-573d-48a3-0ecf-08d8e98bc625 X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Mar 2021 21:29:40.6271 (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: iXwdivSOYRGTDaGzunWqvFAngWFjzaJ1Deg2sOaeEbXm/G78UcbjyZ53hVAdWcEYAvDIf9FOHIeoJNwsffVadA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB4869 Return-Path: ianx.kuo@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgTGFzemxvDQoNClRoYW5rcyBmb3IgdGhlIHJlbWluZC4gSSB3aWxsIHRha2UgY2FyZSB0aGUg ZGF0ZSBhbmQgUGF0Y2ggdjQgaW4gb3VyIG5leHQgcGF0Y2guDQoNClRoYW5rcywNCklhbiBLdW8N Ci0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBMYXN6bG8gRXJzZWsgPGxlcnNla0By ZWRoYXQuY29tPiANClNlbnQ6IFRodXJzZGF5LCBNYXJjaCAxOCwgMjAyMSA1OjAxIEFNDQpUbzog ZGV2ZWxAZWRrMi5ncm91cHMuaW87IEt1bywgSWFuWCA8aWFueC5rdW9AaW50ZWwuY29tPg0KQ2M6 IEtlLCBWaW5jZW50WCA8dmluY2VudHgua2VAaW50ZWwuY29tPg0KU3ViamVjdDogUmU6IFtlZGsy LWRldmVsXSBbUEFUQ0hdIFNoZWxsUGtnL1BjaTogQWRkIHZhbGlkIGNoZWNrIGZvciBQQ0kgZXh0 ZW5kZWQgY29uZmlnIHNwYWNlIHBhcnNlcg0KDQpWaW5jZW50LCBJYW46DQoNCnNvbWV0aGluZyBp cyBzZXJpb3VzbHkgYnJva2VuIGluIHlvdXIgZW1haWwgc2V0dXAuIEkgaGF2ZSBzZWVuIHRocmVl IG1lc3NhZ2VzIGZyb20geW91IGd1eXMgb24gdGhlIGxpc3QsIGFuZCBlYWNoIG9uZSBvZiB0aG9z ZSBpcyAiZnJvbSB0aGUgZnV0dXJlIi4gSGVyZSBhcmUgdGhlIERhdGUgaGVhZGVycyBmcm9tIHRo ZSBtZXNzYWdlczoNCg0KLSBEYXRlOiBUaHUsICA4IEFwciAyMDIxIDA1OjUwOjIxICswODAwDQog IGh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC9tZXNzYWdlLzcyNzQ4DQoNCi0gRGF0ZTog U2F0LCAxMCBBcHIgMjAyMSAwMTozNDo0NSArMDgwMA0KICBodHRwczovL2VkazIuZ3JvdXBzLmlv L2cvZGV2ZWwvbWVzc2FnZS83Mjg2Mg0KDQotIERhdGU6IFNhdCwgMTAgQXByIDIwMjEgMjI6MTU6 MDkgKzA4MDANCiAgaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL21lc3NhZ2UvNzI5NTMN Cg0KUGxlYXNlIGZpeCB5b3VyIGNsb2NrIHNldHVwLCBhbmQgcG9zdCBhIG5ldyB2ZXJzaW9uLg0K DQpUaGlzIGlzIHdoeSBJIGFtIGFza2luZzogdGhlIGdpdC1hbSBtYW51YWwgc2F5cywNCg0KICAg ICAgIC0taWdub3JlLWRhdGUNCiAgICAgICAgICAgQnkgZGVmYXVsdCB0aGUgY29tbWFuZCByZWNv cmRzIHRoZSBkYXRlIGZyb20gdGhlIGUtbWFpbA0KICAgICAgICAgICBtZXNzYWdlIGFzIHRoZSBj b21taXQgYXV0aG9yIGRhdGUsIGFuZCB1c2VzIHRoZSB0aW1lIG9mDQogICAgICAgICAgIGNvbW1p dCBjcmVhdGlvbiBhcyB0aGUgY29tbWl0dGVyIGRhdGUuIFsuLi5dDQoNCldoZW4gd2UgbWVyZ2Ug YSBwYXRjaCB1c2luZyBhIGdpdGh1Yi5jb20gUHVsbCBSZXF1ZXN0LCB0aGUgIm1lcmdpZnkgYm90 Ig0KcHJlc2VydmVzIHRoZSBBdXRob3IgRGF0ZSBmaWVsZC4gVGhhdCdzIGEgZ29vZCB0aGluZyBp biBpdHNlbGYsIGJ1dCBpdCBtZWFucyB0aGF0IHRoZSBlZGsyIGNvbW1pdCBoaXN0b3J5IHdvdWxk IGhhdmUgYSBwYXRjaCBmcm9tIHRoZSBmdXR1cmUgLS0gYSBwYXRjaCBjb21taXR0ZWQgaW4gTWFy Y2gsIGJ1dCAiYXV0aG9yZWQiIGluIEFwcmlsLiBUaGF0J3MgYm9ndXMuDQoNCldob2V2ZXIgYWN0 dWFsbHkgYXBwbGllcyB0aGUgcGF0Y2ggKHByb2JhYmx5IHRoZSBTaGVsbFBrZyBtYWludGFpbmVy KSBjYW4gd29yayBhcm91bmQgdGhlIGlzc3VlLCBieSBzcGVjaWZ5aW5nIHRoZSAiLS1pZ25vcmUt ZGF0ZSIgZmxhZyBmb3IgImdpdC1hbSIuIEJ1dCB0aGF0J3MgZWFzeSB0byBmb3JnZXQsIGFuZCBu b3QgdGhlIHJpZ2h0IHRoaW5nIGFueXdheS4NCg0KU28gcGxlYXNlIGp1c3QgZml4IHlvdXIgYnJv a2VuIGNsb2NrLCBhbmQgcG9zdCBhIG5ldyB2ZXJzaW9uLg0KDQpBbHNvOiB5b3Ugc2hvdWxkIGhh dmUgdXNlZCB2MSwgdjIsIHYzIGluIHRoZSBzdWJqZWN0IHByZWZpeGVzIChqdXN0IHBhc3MgLXYx LCAtdjIsIC12MyB0byBnaXQtZm9ybWF0LXBhdGNoKS4gVGhlIG5leHQgdmVyc2lvbiB0aGF0IHlv dSBwb3N0IHNob3VsZCBiZSBtYXJrZWQgInY0Ii4NCg0KVGhhbmtzDQpMYXN6bG8NCg0KDQpPbiAw NC8xMC8yMSAxNjoxNSwgSWFuWCBLdW8gd3JvdGU6DQo+IEZyb206IFZpbmNlbnRYIEtlIDx2aW5j ZW50eC5rZUBpbnRlbC5jb20+DQo+IA0KPiBCdWd6aWxsYTogMzI2MiAoaHR0cHM6Ly9idWd6aWxs YS50aWFub2NvcmUub3JnL3Nob3dfYnVnLmNnaT9pZD0zMjYyKQ0KPiANCj4gTm8gbmVlZCB0byBw cmludCBQQ0llIGRldGFpbHMgd2hpbGUgQ2FwYWJpbGl0eUlkIGlzIDB4RkZGRi4NCj4gTGltaXQg dGhlIE5leHRDYXBhYmlsaXR5T2Zmc2V0IHRvIFBDSSBjb25maWd1cmF0aW9uIHNwYWNlLg0KPiAN Cj4gU2lnbmVkLW9mZi1ieTogVmluY2VudFggS2UgPHZpbmNlbnR4LmtlQGludGVsLmNvbT4NCj4g LS0tDQo+ICBTaGVsbFBrZy9MaWJyYXJ5L1VlZmlTaGVsbERlYnVnMUNvbW1hbmRzTGliL1BjaS5j IHwgMTAgKysrKysrKystLQ0KPiAgMSBmaWxlIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkNCj4gDQo+IGRpZmYgLS1naXQgYS9TaGVsbFBrZy9MaWJyYXJ5L1VlZmlTaGVs bERlYnVnMUNvbW1hbmRzTGliL1BjaS5jIA0KPiBiL1NoZWxsUGtnL0xpYnJhcnkvVWVmaVNoZWxs RGVidWcxQ29tbWFuZHNMaWIvUGNpLmMNCj4gaW5kZXggYTJmMDRkOGRiNS4uMWU1ZGM3NWUyNyAx MDA2NDQNCj4gLS0tIGEvU2hlbGxQa2cvTGlicmFyeS9VZWZpU2hlbGxEZWJ1ZzFDb21tYW5kc0xp Yi9QY2kuYw0KPiArKysgYi9TaGVsbFBrZy9MaWJyYXJ5L1VlZmlTaGVsbERlYnVnMUNvbW1hbmRz TGliL1BjaS5jDQo+IEBAIC0yMDM4LDEyICsyMDM4LDE0IEBAIExvY2F0ZVBjaUNhcGFiaWxpdHkg KA0KPiAgDQo+ICAgIEBwYXJhbVtpbl0gUGNpRXhwcmVzc0NhcCAgICAgICBQQ0kgRXhwcmVzcyBj YXBhYmlsaXR5IGJ1ZmZlci4NCj4gICAgQHBhcmFtW2luXSBFeHRlbmRlZENvbmZpZ1NwYWNlIFBD SSBFeHByZXNzIGV4dGVuZGVkIGNvbmZpZ3VyYXRpb24gc3BhY2UuDQo+ICsgIEBwYXJhbVtpbl0g RXh0ZW5kZWRDb25maWdTaXplICBQQ0kgRXhwcmVzcyBleHRlbmRlZCBjb25maWd1cmF0aW9uIHNp emUuDQo+ICAgIEBwYXJhbVtpbl0gRXh0ZW5kZWRDYXBhYmlsaXR5ICBQQ0kgRXhwcmVzcyBleHRl bmRlZCBjYXBhYmlsaXR5IElEIHRvIGV4cGxhaW4uDQo+ICAqKi8NCj4gIFZPSUQNCj4gIFBjaUV4 cGxhaW5QY2lFeHByZXNzICgNCj4gICAgSU4gIFBDSV9DQVBBQklMSVRZX1BDSUVYUCAgICAgICAg ICAgICAgICAgICpQY2lFeHByZXNzQ2FwLA0KPiAgICBJTiAgVUlOVDggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKkV4dGVuZGVkQ29uZmlnU3BhY2UsDQo+ICsgIElOICBVSU5UTiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRlbmRlZENvbmZpZ1NpemUsDQo+ICAg IElOIENPTlNUIFVJTlQxNiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFeHRlbmRlZENhcGFi aWxpdHkNCj4gICAgKTsNCj4gIA0KPiBAQCAtMjkyMSw2ICsyOTIzLDcgQEAgU2hlbGxDb21tYW5k UnVuUGNpICgNCj4gICAgICAgICAgUGNpRXhwbGFpblBjaUV4cHJlc3MgKA0KPiAgICAgICAgICAg IChQQ0lfQ0FQQUJJTElUWV9QQ0lFWFAgKikgKChVSU5UOCAqKSAmQ29uZmlnU3BhY2UgKyBQY2ll Q2FwYWJpbGl0eVB0ciksDQo+ICAgICAgICAgICAgRXh0ZW5kZWRDb25maWdTcGFjZSwNCj4gKyAg ICAgICAgICBFeHRlbmRlZENvbmZpZ1NpemUsDQo+ICAgICAgICAgICAgRXh0ZW5kZWRDYXBhYmls aXR5DQo+ICAgICAgICAgICAgKTsNCj4gICAgICAgIH0NCj4gQEAgLTU2OTgsMTIgKzU3MDEsMTQg QEAgUHJpbnRQY2lFeHRlbmRlZENhcGFiaWxpdHlEZXRhaWxzKA0KPiAgDQo+ICAgIEBwYXJhbVtp bl0gUGNpRXhwcmVzc0NhcCAgICAgICBQQ0kgRXhwcmVzcyBjYXBhYmlsaXR5IGJ1ZmZlci4NCj4g ICAgQHBhcmFtW2luXSBFeHRlbmRlZENvbmZpZ1NwYWNlIFBDSSBFeHByZXNzIGV4dGVuZGVkIGNv bmZpZ3VyYXRpb24gc3BhY2UuDQo+ICsgIEBwYXJhbVtpbl0gRXh0ZW5kZWRDb25maWdTaXplICBQ Q0kgRXhwcmVzcyBleHRlbmRlZCBjb25maWd1cmF0aW9uIHNpemUuDQo+ICAgIEBwYXJhbVtpbl0g RXh0ZW5kZWRDYXBhYmlsaXR5ICBQQ0kgRXhwcmVzcyBleHRlbmRlZCBjYXBhYmlsaXR5IElEIHRv IGV4cGxhaW4uDQo+ICAqKi8NCj4gIFZPSUQNCj4gIFBjaUV4cGxhaW5QY2lFeHByZXNzICgNCj4g ICAgSU4gIFBDSV9DQVBBQklMSVRZX1BDSUVYUCAgICAgICAgICAgICAgICAgICpQY2lFeHByZXNz Q2FwLA0KPiAgICBJTiAgVUlOVDggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKkV4 dGVuZGVkQ29uZmlnU3BhY2UsDQo+ICsgIElOICBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBFeHRlbmRlZENvbmZpZ1NpemUsDQo+ICAgIElOIENPTlNUIFVJTlQxNiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBFeHRlbmRlZENhcGFiaWxpdHkNCj4gICAgKQ0KPiAgew0K PiBAQCAtNTc4Niw3ICs1NzkxLDcgQEAgUGNpRXhwbGFpblBjaUV4cHJlc3MgKA0KPiAgICB9DQo+ ICANCj4gICAgRXh0SGRyID0gKFBDSV9FWFBfRVhUX0hEUiopRXh0ZW5kZWRDb25maWdTcGFjZTsN Cj4gLSAgd2hpbGUgKEV4dEhkci0+Q2FwYWJpbGl0eUlkICE9IDAgJiYgRXh0SGRyLT5DYXBhYmls aXR5VmVyc2lvbiAhPSAwKSANCj4gew0KPiArICB3aGlsZSAoRXh0SGRyLT5DYXBhYmlsaXR5SWQg IT0gMCAmJiBFeHRIZHItPkNhcGFiaWxpdHlWZXJzaW9uICE9IDAgDQo+ICsgJiYgRXh0SGRyLT5D YXBhYmlsaXR5SWQgIT0gMHhGRkZGKSB7DQo+ICAgICAgLy8NCj4gICAgICAvLyBQcm9jZXNzIHRo aXMgaXRlbQ0KPiAgICAgIC8vDQo+IEBAIC01ODAwLDcgKzU4MDUsOCBAQCBQY2lFeHBsYWluUGNp RXhwcmVzcyAoDQo+ICAgICAgLy8NCj4gICAgICAvLyBBZHZhbmNlIHRvIHRoZSBuZXh0IGl0ZW0g aWYgaXQgZXhpc3RzDQo+ICAgICAgLy8NCj4gLSAgICBpZiAoRXh0SGRyLT5OZXh0Q2FwYWJpbGl0 eU9mZnNldCAhPSAwKSB7DQo+ICsgICAgaWYgKEV4dEhkci0+TmV4dENhcGFiaWxpdHlPZmZzZXQg IT0gMCAmJg0KPiArICAgICAgIChFeHRIZHItPk5leHRDYXBhYmlsaXR5T2Zmc2V0IDw9IChVSU5U MzIpIChFeHRlbmRlZENvbmZpZ1NpemUgDQo+ICsgKyBFRklfUENJRV9DQVBBQklMSVRZX0JBU0Vf T0ZGU0VUIC0gc2l6ZW9mIChQQ0lfRVhQX0VYVF9IRFIpKSkpIHsNCj4gICAgICAgIEV4dEhkciA9 IChQQ0lfRVhQX0VYVF9IRFIqKShFeHRlbmRlZENvbmZpZ1NwYWNlICsgRXh0SGRyLT5OZXh0Q2Fw YWJpbGl0eU9mZnNldCAtIEVGSV9QQ0lFX0NBUEFCSUxJVFlfQkFTRV9PRkZTRVQpOw0KPiAgICAg IH0gZWxzZSB7DQo+ICAgICAgICBicmVhazsNCj4gDQoNCg==