From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id SOSQC25eXGdEiRUAWB0awg (envelope-from ) for ; Fri, 13 Dec 2024 11:18:54 -0500 Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=B+VLtj7z; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 2C6841E097; Fri, 13 Dec 2024 11:18:54 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-6.3 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,URIBL_SBL_A autolearn=unavailable autolearn_force=no version=4.0.0 Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id E6B2E1E091 for ; Fri, 13 Dec 2024 11:18:52 -0500 (EST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 95B2D3858C51 for ; Fri, 13 Dec 2024 16:18:52 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 95B2D3858C51 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=B+VLtj7z Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.16]) by sourceware.org (Postfix) with ESMTPS id 858213858406 for ; Fri, 13 Dec 2024 16:01:43 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 858213858406 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 858213858406 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=192.198.163.16 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734105703; cv=none; b=Yk75l+RfTyOjVDxILquHN49PQevLYESeyuLcJwXruoljLhWc0YNFNcwBUWz9K4xOoOoYi9HEm8ypavDRFJCukjQ45/5kG4SCVHpk0ZffqSdUJEPdH1+5Js2g5VeCv+HE8BUnYZlluRYmmrj+oLjwCWbdoBNQ1nOxe4SstaPIoKA= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734105703; c=relaxed/simple; bh=k+3V3zS46cgjboA/G/uRLDBjWmUJUPH0yxF1lPNeURw=; h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version; b=Z7lT6JHvfRwa2pyPr/YwzNPU+7njOk61lqRP3zITKJ98pBSBzZ63p/paFCSz8e6lvKHZUGPRHsAlq53tHjIv91nJ/dwBOxFTeTu3Li3cm3d00t+ejyybz3sbFJUCKFHKq/29TrpYJ6mk2Gk0KBuPk16OKx/5M0LHDs89AdxH4OE= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 858213858406 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1734105704; x=1765641704; h=from:to:subject:date:message-id:in-reply-to:references: mime-version:content-transfer-encoding; bh=k+3V3zS46cgjboA/G/uRLDBjWmUJUPH0yxF1lPNeURw=; b=B+VLtj7zfDj0x8dM4DcxUAUSRmjWI2Bdsp8MfiKZCvzXQoeDyviSBXd9 ZQWx0nb57cmGpon3sErWJiQLOoh3eGR2XNxOLcf/TtFeU7YGFI5552BnT kFrvKTxPSHFc4vJSfGna9w3knOxvoRVViyRvPPG3Vaa0xXqp/HIrX1Te1 0bb6h1op+WKt7KT8IC8/erhGG4b6t/6b8TZRvTdJZK2w99qKQ98xGW/Im e/w9GZkJ7vR3y02+IB3L8lwb9b+z2kEhoEnr4NQgOvsif8njXumlo+aCE 51HfWLu+oK2t/4NRTfHN4+2FRFWc2ueBEOCWgKFx7HHGCPVNniZw+tutB w==; X-CSE-ConnectionGUID: HBPazkaKQsevtKLQEUjl3A== X-CSE-MsgGUID: ziDrxd5sTWqrMrk0f1DhAw== X-IronPort-AV: E=McAfee;i="6700,10204,11285"; a="22149514" X-IronPort-AV: E=Sophos;i="6.12,231,1728975600"; d="scan'208";a="22149514" Received: from fmviesa004.fm.intel.com ([10.60.135.144]) by fmvoesa110.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Dec 2024 08:01:43 -0800 X-CSE-ConnectionGUID: 7rIgX0XhTiWIM7PUtKXFRQ== X-CSE-MsgGUID: PkKTLJosQWiKvuDFFDF3Lg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,231,1728975600"; d="scan'208";a="101412043" Received: from gkldtt-dev-004.igk.intel.com (HELO localhost) ([10.123.221.202]) by fmviesa004-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Dec 2024 08:01:41 -0800 From: Tankut Baris Aktemur To: gdb-patches@sourceware.org, Markus Metzger Subject: [PATCH v2 10/47] gdb, gdbserver, ze: in-memory libraries Date: Fri, 13 Dec 2024 16:59:27 +0100 Message-Id: <20241213-upstream-intelgt-mvp-v2-10-5c4caeb7b33d@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241213-upstream-intelgt-mvp-v2-0-5c4caeb7b33d@intel.com> References: <20241213-upstream-intelgt-mvp-v2-0-5c4caeb7b33d@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Mailer: b4 0.14.2 Content-Transfer-Encoding: base64 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org RnJvbTogTWFya3VzIE1ldHpnZXIgPG1hcmt1cy50Lm1ldHpnZXJAaW50ZWwuY29tPgoKRm9yIElu dGVsIEdQVSBkZXZpY2VzLCBkZXZpY2UgbGlicmFyaWVzIGxpdmUgaW4gdGhlIGhvc3QgbWVtb3J5 IGFuZCBhcmUKbG9hZGVkIG9udG8gdGhlIGRldmljZSBmcm9tIHRoZXJlLgoKQWRkIHN1cHBvcnQg Zm9yIHJlcG9ydGluZyBzdWNoIGluLW1lbW9yeSBzaGFyZWQgbGlicmFyaWVzIHZpYQoKICAgIHFY ZmVyOmxpYnJhcmllczpyZWFkCgphbmQgaGF2ZSBHREIgcmVhZCB0aGVtIGZyb20gdGFyZ2V0IG1l bW9yeS4KClJldmlld2VkLUJ5OiBFbGkgWmFyZXRza2lpIDxlbGl6QGdudS5vcmc+Ci0tLQogZ2Ri L05FV1MgICAgICAgICAgICAgICAgICAgICAgfCAgIDYgKysrCiBnZGIvZG9jL2dkYi50ZXhpbmZv ICAgICAgICAgICB8ICA0MCArKysrKysrKysrKy0tLS0tCiBnZGIvZmVhdHVyZXMvbGlicmFyeS1s aXN0LmR0ZCB8ICAgOCArKystCiBnZGIvcmVtb3RlLmMgICAgICAgICAgICAgICAgICB8ICAgMyAr KwogZ2RiL3NvbGliLXRhcmdldC5jICAgICAgICAgICAgfCAgODUgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKy0tCiBnZGIvc29saWIuYyAgICAgICAgICAgICAgICAgICB8ICAyNyArKysr KysrKystLQogZ2RiL3NvbGlzdC5oICAgICAgICAgICAgICAgICAgfCAgMTMgKysrKystCiBnZGJz ZXJ2ZXIvZGxsLmNjICAgICAgICAgICAgICB8ICA1OSArKysrKysrKysrKysrKysrKysrKysrKwog Z2Ric2VydmVyL2RsbC5oICAgICAgICAgICAgICAgfCAgMTkgKysrKysrKy0KIGdkYnNlcnZlci9z ZXJ2ZXIuY2MgICAgICAgICAgIHwgMTA2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKy0tLQogZ2Ric2VydmVyL3NlcnZlci5oICAgICAgICAgICAgfCAgIDMgKysKIDExIGZp bGVzIGNoYW5nZWQsIDM0MCBpbnNlcnRpb25zKCspLCAyOSBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9nZGIvTkVXUyBiL2dkYi9ORVdTCmluZGV4IDhmOGFhMTQ2MmY1Zjc1N2JkYTNkMjVjYTYw ZTJlYmE4MDY2MGJjYjYuLmI2MGY2NjQwMzExNmU3M2I0YzVkMmIyYjRkODQ3NTc4ZGE2ZTcwMWEg MTAwNjQ0Ci0tLSBhL2dkYi9ORVdTCisrKyBiL2dkYi9ORVdTCkBAIC0xNzQsNiArMTc0LDEyIEBA IHZGaWxlOnN0YXQKICAgdkZpbGU6ZnN0YXQgYnV0IHRha2VzIGEgZmlsZW5hbWUgcmF0aGVyIHRo YW4gYW4gb3BlbiBmaWxlCiAgIGRlc2NyaXB0b3IuCiAKK3FYZmVyOmxpYnJhcmllczpyZWFkJ3Mg cmVzcG9uc2UKKworICBUaGUgcVhmZXI6bGlicmFyaWVzOnJlYWQgcXVlcnkgc3VwcG9ydHMgcmVw b3J0aW5nIGluLW1lbW9yeSBsaWJyYXJpZXMuICBHREIKKyAgaW5kaWNhdGVzIHN1cHBvcnQgYnkg c3VwcGx5aW5nIHFYZmVyOmxpYnJhcmllczpyZWFkOmluLW1lbW9yeS1saWJyYXJ5KyBpbiB0aGUK KyAgcVN1cHBvcnRlZCBwYWNrZXQuCisKICogQ2hhbmdlZCByZW1vdGUgcGFja2V0cwogCiBxWGZl cjpmZWF0dXJlczpyZWFkOnRhcmdldC54bWwKZGlmZiAtLWdpdCBhL2dkYi9kb2MvZ2RiLnRleGlu Zm8gYi9nZGIvZG9jL2dkYi50ZXhpbmZvCmluZGV4IGRkZDQxNDY1OWZjYzU1NDgxM2ZjMmExMmE3 OWU1ODFhZDdhMTg4YjkuLmM4NGE4MzcyYzIyM2U3MjRlMzA0MjMyMmE4YmVlMDdiMTI0MjMwNTAg MTAwNjQ0Ci0tLSBhL2dkYi9kb2MvZ2RiLnRleGluZm8KKysrIGIvZ2RiL2RvYy9nZGIudGV4aW5m bwpAQCAtNDgwMjYsOSArNDgwMjYsMTAgQEAgcXVlcmllcyB0aGUgdGFyZ2V0J3Mgb3BlcmF0aW5n IHN5c3RlbSBhbmQgcmVwb3J0cyB3aGljaCBsaWJyYXJpZXMKIGFyZSBsb2FkZWQuCiAKIFRoZSBA c2FtcHtxWGZlcjpsaWJyYXJpZXM6cmVhZH0gcGFja2V0IHJldHVybnMgYW4gWE1MIGRvY3VtZW50 IHdoaWNoCi1saXN0cyBsb2FkZWQgbGlicmFyaWVzIGFuZCB0aGVpciBvZmZzZXRzLiAgRWFjaCBs aWJyYXJ5IGhhcyBhbgotYXNzb2NpYXRlZCBuYW1lIGFuZCBvbmUgb3IgbW9yZSBzZWdtZW50IG9y IHNlY3Rpb24gYmFzZSBhZGRyZXNzZXMsCi13aGljaCByZXBvcnQgd2hlcmUgdGhlIGxpYnJhcnkg d2FzIGxvYWRlZCBpbiBtZW1vcnkuCitsaXN0cyBsb2FkZWQgbGlicmFyaWVzIGFuZCB0aGVpciBv ZmZzZXRzLiAgRWFjaCBsaWJyYXJ5IGhhcyBlaXRoZXIgYW4KK2Fzc29jaWF0ZWQgbmFtZSBvciBi ZWdpbiBhbmQgZW5kIGFkZHJlc3NlcyBhbmQgb25lIG9yIG1vcmUgc2VnbWVudCBvcgorc2VjdGlv biBiYXNlIGFkZHJlc3Nlcywgd2hpY2ggcmVwb3J0IHdoZXJlIHRoZSBsaWJyYXJ5IHdhcyBsb2Fk ZWQgaW4KK21lbW9yeS4KIAogRm9yIHRoZSBjb21tb24gY2FzZSBvZiBsaWJyYXJpZXMgdGhhdCBh cmUgZnVsbHkgbGlua2VkIGJpbmFyaWVzLCB0aGUKIGxpYnJhcnkgc2hvdWxkIGhhdmUgYSBsaXN0 IG9mIHNlZ21lbnRzLiAgSWYgdGhlIHRhcmdldCBzdXBwb3J0cwpAQCAtNDgwNDAsNiArNDgwNDEs MTAgQEAgZGVwZW5kIG9uIHRoZSBsaWJyYXJ5J3MgbGluay10aW1lIGJhc2UgYWRkcmVzc2VzLgog QHZhbHVle0dEQk59IG11c3QgYmUgbGlua2VkIHdpdGggdGhlIEV4cGF0IGxpYnJhcnkgdG8gc3Vw cG9ydCBYTUwKIGxpYnJhcnkgbGlzdHMuICBAeHJlZntFeHBhdH0uCiAKK0B2YWx1ZXtHREJOfSBp bmRpY2F0ZXMgc3VwcG9ydCBmb3IgaW4tbWVtb3J5IGxpYnJhcnkgZWxlbWVudHMgYnkKK3N1cHBs eWluZyB0aGUgQGNvZGV7cVhmZXI6bGlicmFyaWVzOnJlYWQ6aW4tbWVtb3J5LWxpYnJhcnkrfQor QHNhbXB7cVN1cHBvcnRlZH0gZmVhdHVyZSAoQHB4cmVme3FTdXBwb3J0ZWR9KS4KKwogQSBzaW1w bGUgbWVtb3J5IG1hcCwgd2l0aCBvbmUgbG9hZGVkIGxpYnJhcnkgcmVsb2NhdGVkIGJ5IGEgc2lu Z2xlCiBvZmZzZXQsIGxvb2tzIGxpa2UgdGhpczoKIApAQCAtNDgwNTEsNiArNDgwNTYsMTYgQEAg b2Zmc2V0LCBsb29rcyBsaWtlIHRoaXM6CiA8L2xpYnJhcnktbGlzdD4KIEBlbmQgc21hbGxleGFt cGxlCiAKK0EgY29ycmVzcG9uZGluZyBtZW1vcnkgbWFwIGZvciBhbiBpbi1tZW1vcnkgbGlicmFy eSBsb29rcyBsaWtlIHRoaXM6CisKK0BzbWFsbGV4YW1wbGUKKzxsaWJyYXJ5LWxpc3Q+CisgIDxp bi1tZW1vcnktbGlicmFyeSBiZWdpbj0iMHhhMDAwMDAwIiBlbmQ9IjB4YTAwMTAwMCI+CisgICAg PHNlZ21lbnQgYWRkcmVzcz0iMHgxMDAwMDAwMCIvPgorICA8L2xpYnJhcnk+Cis8L2xpYnJhcnkt bGlzdD4KK0BlbmQgc21hbGxleGFtcGxlCisKIEFub3RoZXIgc2ltcGxlIG1lbW9yeSBtYXAsIHdp dGggb25lIGxvYWRlZCBsaWJyYXJ5IHdpdGggdGhyZWUKIGFsbG9jYXRlZCBzZWN0aW9ucyAoLnRl eHQsIC5kYXRhLCAuYnNzKSwgbG9va3MgbGlrZSB0aGlzOgogCkBAIC00ODA2OCwxNCArNDgwODMs MTcgQEAgVGhlIGZvcm1hdCBvZiBhIGxpYnJhcnkgbGlzdCBpcyBkZXNjcmliZWQgYnkgdGhpcyBE VEQ6CiAKIEBzbWFsbGV4YW1wbGUKIDwhLS0gbGlicmFyeS1saXN0OiBSb290IGVsZW1lbnQgd2l0 aCB2ZXJzaW9uaW5nIC0tPgotPCFFTEVNRU5UIGxpYnJhcnktbGlzdCAgKGxpYnJhcnkpKj4KLTwh QVRUTElTVCBsaWJyYXJ5LWxpc3QgIHZlcnNpb24gQ0RBVEEgICAjRklYRUQgICIxLjAiPgotPCFF TEVNRU5UIGxpYnJhcnkgICAgICAgKHNlZ21lbnQqLCBzZWN0aW9uKik+Ci08IUFUVExJU1QgbGli cmFyeSAgICAgICBuYW1lICAgIENEQVRBICAgI1JFUVVJUkVEPgotPCFFTEVNRU5UIHNlZ21lbnQg ICAgICAgRU1QVFk+Ci08IUFUVExJU1Qgc2VnbWVudCAgICAgICBhZGRyZXNzIENEQVRBICAgI1JF UVVJUkVEPgotPCFFTEVNRU5UIHNlY3Rpb24gICAgICAgRU1QVFk+Ci08IUFUVExJU1Qgc2VjdGlv biAgICAgICBhZGRyZXNzIENEQVRBICAgI1JFUVVJUkVEPgorPCFFTEVNRU5UIGxpYnJhcnktbGlz dCAgICAgICAgICAgIChsaWJyYXJ5IHwgaW4tbWVtb3J5LWxpYnJhcnkpKj4KKzwhQVRUTElTVCBs aWJyYXJ5LWxpc3QgICAgICAgICAgICB2ZXJzaW9uIENEQVRBICAgI0ZJWEVEICAiMS4xIj4KKzwh RUxFTUVOVCBsaWJyYXJ5ICAgICAgICAgICAgICAgICAoc2VnbWVudCosIHNlY3Rpb24qKT4KKzwh QVRUTElTVCBsaWJyYXJ5ICAgICAgICAgICAgICAgICBuYW1lICAgIENEQVRBICAgI1JFUVVJUkVE PgorPCFFTEVNRU5UIGluLW1lbW9yeS1saWJyYXJ5ICAgICAgIChzZWdtZW50Kiwgc2VjdGlvbiop PgorPCFBVFRMSVNUIGluLW1lbW9yeS1saWJyYXJ5ICAgICAgIGJlZ2luICAgIENEQVRBICAgI1JF UVVJUkVECisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW5kICAgICAgQ0RBVEEg ICAjUkVRVUlSRUQ+Cis8IUVMRU1FTlQgc2VnbWVudCAgICAgICAgICAgICAgICAgRU1QVFk+Cis8 IUFUVExJU1Qgc2VnbWVudCAgICAgICAgICAgICAgICAgYWRkcmVzcyBDREFUQSAgICNSRVFVSVJF RD4KKzwhRUxFTUVOVCBzZWN0aW9uICAgICAgICAgICAgICAgICBFTVBUWT4KKzwhQVRUTElTVCBz ZWN0aW9uICAgICAgICAgICAgICAgICBhZGRyZXNzIENEQVRBICAgI1JFUVVJUkVEPgogQGVuZCBz bWFsbGV4YW1wbGUKIAogSW4gYWRkaXRpb24sIHNlZ21lbnRzIGFuZCBzZWN0aW9uIGRlc2NyaXB0 b3JzIGNhbm5vdCBiZSBtaXhlZCB3aXRoaW4gYQpkaWZmIC0tZ2l0IGEvZ2RiL2ZlYXR1cmVzL2xp YnJhcnktbGlzdC5kdGQgYi9nZGIvZmVhdHVyZXMvbGlicmFyeS1saXN0LmR0ZAppbmRleCA5OGVk N2JjMjhkY2M0NTYyZWY0MjU5ZmRkNzgxMzhmZTY5ZDY5ZDI5Li5mNTUwNzFjOGU5MDZmMDkxNzUy ZThjYTc4ZWMyOWJjZDc2MDI4NDMzIDEwMDY0NAotLS0gYS9nZGIvZmVhdHVyZXMvbGlicmFyeS1s aXN0LmR0ZAorKysgYi9nZGIvZmVhdHVyZXMvbGlicmFyeS1saXN0LmR0ZApAQCAtNSwxMiArNSwx NiBAQAogICAgICBub3RpY2UgYW5kIHRoaXMgbm90aWNlIGFyZSBwcmVzZXJ2ZWQuICAtLT4KIAog PCEtLSBsaWJyYXJ5LWxpc3Q6IFJvb3QgZWxlbWVudCB3aXRoIHZlcnNpb25pbmcgLS0+Ci08IUVM RU1FTlQgbGlicmFyeS1saXN0ICAobGlicmFyeSkqPgotPCFBVFRMSVNUIGxpYnJhcnktbGlzdCAg dmVyc2lvbiBDREFUQSAgICNGSVhFRCAgIjEuMCI+Cis8IUVMRU1FTlQgbGlicmFyeS1saXN0ICAo bGlicmFyeSB8IGluLW1lbW9yeS1saWJyYXJ5KSo+Cis8IUFUVExJU1QgbGlicmFyeS1saXN0ICB2 ZXJzaW9uIENEQVRBICAgI0ZJWEVEICAiMS4xIj4KIAogPCFFTEVNRU5UIGxpYnJhcnkgICAgICAg KHNlZ21lbnQqLCBzZWN0aW9uKik+CiA8IUFUVExJU1QgbGlicmFyeSAgICAgICBuYW1lICAgIENE QVRBICAgI1JFUVVJUkVEPgogCis8IUVMRU1FTlQgaW4tbWVtb3J5LWxpYnJhcnkgICAgICAgKHNl Z21lbnQqLCBzZWN0aW9uKik+Cis8IUFUVExJU1QgaW4tbWVtb3J5LWxpYnJhcnkgICAgICAgYmVn aW4gICAgQ0RBVEEgICAjUkVRVUlSRUQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBlbmQgICAgICBDREFUQSAgICNSRVFVSVJFRD4KKwogPCFFTEVNRU5UIHNlZ21lbnQgICAgICAg RU1QVFk+CiA8IUFUVExJU1Qgc2VnbWVudCAgICAgICBhZGRyZXNzIENEQVRBICAgI1JFUVVJUkVE PgogCmRpZmYgLS1naXQgYS9nZGIvcmVtb3RlLmMgYi9nZGIvcmVtb3RlLmMKaW5kZXggZjQxMTI5 OTE1NjgzMTk0MjM3ZDFiYmE1NmQxN2RmNjFhZTg5YzA2My4uN2QwNzRhNWRmMzIyZDY4ZGVkOGY5 NmM0ODMyYmM4YzI0NzQzNWE0ZiAxMDA2NDQKLS0tIGEvZ2RiL3JlbW90ZS5jCisrKyBiL2dkYi9y ZW1vdGUuYwpAQCAtNTk1Niw2ICs1OTU2LDkgQEAgcmVtb3RlX3RhcmdldDo6cmVtb3RlX3F1ZXJ5 X3N1cHBvcnRlZCAoKQogCSAgIT0gQVVUT19CT09MRUFOX0ZBTFNFKQogCXJlbW90ZV9xdWVyeV9z dXBwb3J0ZWRfYXBwZW5kICgmcSwgIm1lbW9yeS10YWdnaW5nKyIpOwogCisgICAgICByZW1vdGVf cXVlcnlfc3VwcG9ydGVkX2FwcGVuZAorCSgmcSwgInFYZmVyOmxpYnJhcmllczpyZWFkOmluLW1l bW9yeS1saWJyYXJ5KyIpOworCiAgICAgICAvKiBLZWVwIHRoaXMgb25lIGxhc3QgdG8gd29yayBh cm91bmQgYSBnZGJzZXJ2ZXIgPD0gNy4xMCBidWcgaW4KIAkgdGhlIHFTdXBwb3J0ZWQ6eG1sUmVn aXN0ZXJzPWkzODYgaGFuZGxpbmcuICAqLwogICAgICAgaWYgKHJlbW90ZV9zdXBwb3J0X3htbCAh PSBOVUxMCmRpZmYgLS1naXQgYS9nZGIvc29saWItdGFyZ2V0LmMgYi9nZGIvc29saWItdGFyZ2V0 LmMKaW5kZXggOGY3M2Q1ZGY1NWJkZGNjMzI3MDhmN2Y5NmYzNWFlNDJlMDczMDA1My4uNzE2NWFl ZDdlMjJmODdjOTZhMzcxNjM5N2U5MzgwYWZmMDNhMmE2MSAxMDA2NDQKLS0tIGEvZ2RiL3NvbGli LXRhcmdldC5jCisrKyBiL2dkYi9zb2xpYi10YXJnZXQuYwpAQCAtMjMsMTYgKzIzLDM2IEBACiAj aW5jbHVkZSAic3ltZmlsZS5oIgogI2luY2x1ZGUgInRhcmdldC5oIgogI2luY2x1ZGUgInNvbGli LXRhcmdldC5oIgorI2luY2x1ZGUgImdkYnN1cHBvcnQvZmlsZXN0dWZmLmgiCisjaW5jbHVkZSAi Z2RiX2JmZC5oIgogI2luY2x1ZGUgPHZlY3Rvcj4KICNpbmNsdWRlICJpbmZlcmlvci5oIgogCisv KiBUaGUgbG9jYXRpb24gb2YgYSBsb2FkZWQgbGlicmFyeS4gICovCisKK2VudW0gbG1fbG9jYXRp b25fdAoreworICBsbV9vbl9kaXNrLAorICBsbV9pbl9tZW1vcnkKK307CisKIC8qIFByaXZhdGUg ZGF0YSBmb3IgZWFjaCBsb2FkZWQgbGlicmFyeS4gICovCiBzdHJ1Y3QgbG1faW5mb190YXJnZXQg ZmluYWwgOiBwdWJsaWMgbG1faW5mbwogeworICAvKiBUaGUgbGlicmFyeSdzIGxvY2F0aW9uLiAg Ki8KKyAgbG1fbG9jYXRpb25fdCBsb2NhdGlvbjsKKwogICAvKiBUaGUgbGlicmFyeSdzIG5hbWUu ICBUaGUgbmFtZSBpcyBub3JtYWxseSBrZXB0IGluIHRoZSBzdHJ1Y3QKLSAgICAgc29fbGlzdDsg aXQgaXMgb25seSBoZXJlIGR1cmluZyBYTUwgcGFyc2luZy4gICovCisgICAgIHNvX2xpc3Q7IGl0 IGlzIG9ubHkgaGVyZSBkdXJpbmcgWE1MIHBhcnNpbmcuCisKKyAgICAgVGhpcyBpcyBvbmx5IHZh bGlkIGlmIGxvY2F0aW9uID09IGxtX29uX2Rpc2suICAqLwogICBzdGQ6OnN0cmluZyBuYW1lOwog CisgIC8qIFRoZSBsaWJyYXJ5J3MgYmVnaW4gYW5kIGVuZCBtZW1vcnkgYWRkcmVzc2VzLgorCisg ICAgIFRoaXMgaXMgb25seSB2YWxpZCBpZiBsb2NhdGlvbiA9PSBsbV9pbl9tZW1vcnkuICAqLwor ICBDT1JFX0FERFIgYmVnaW4gPSAwdWxsLCBlbmQgPSAwdWxsOworCiAgIC8qIFRoZSB0YXJnZXQg Y2FuIGVpdGhlciBzcGVjaWZ5IHNlZ21lbnQgYmFzZXMgb3Igc2VjdGlvbiBiYXNlcywgbm90CiAg ICAgIGJvdGguICAqLwogCkBAIC0xMjIsMTIgKzE0MiwzMiBAQCBsaWJyYXJ5X2xpc3Rfc3RhcnRf bGlicmFyeSAoc3RydWN0IGdkYl94bWxfcGFyc2VyICpwYXJzZXIsCiB7CiAgIGF1dG8gKmxpc3Qg PSAoc3RkOjp2ZWN0b3I8bG1faW5mb190YXJnZXRfdXA+ICopIHVzZXJfZGF0YTsKICAgbG1faW5m b190YXJnZXQgKml0ZW0gPSBuZXcgbG1faW5mb190YXJnZXQ7CisgIGl0ZW0tPmxvY2F0aW9uID0g bG1fb25fZGlzazsKICAgaXRlbS0+bmFtZQogICAgID0gKGNvbnN0IGNoYXIgKikgeG1sX2ZpbmRf YXR0cmlidXRlIChhdHRyaWJ1dGVzLCAibmFtZSIpLT52YWx1ZS5nZXQgKCk7CiAKICAgbGlzdC0+ ZW1wbGFjZV9iYWNrIChpdGVtKTsKIH0KIAorLyogSGFuZGxlIHRoZSBzdGFydCBvZiBhIDxpbi1t ZW1vcnktbGlicmFyeT4gZWxlbWVudC4gICovCisKK3N0YXRpYyB2b2lkCitpbl9tZW1vcnlfbGli cmFyeV9saXN0X3N0YXJ0X2xpYnJhcnkgKHN0cnVjdCBnZGJfeG1sX3BhcnNlciAqcGFyc2VyLAor CQkJCSAgICAgIGNvbnN0IHN0cnVjdCBnZGJfeG1sX2VsZW1lbnQgKmVsZW1lbnQsCisJCQkJICAg ICAgdm9pZCAqdXNlcl9kYXRhLAorCQkJCSAgICAgIHN0ZDo6dmVjdG9yPGdkYl94bWxfdmFsdWU+ ICZhdHRyaWJ1dGVzKQoreworICBhdXRvICpsaXN0ID0gKHN0ZDo6dmVjdG9yPGxtX2luZm9fdGFy Z2V0X3VwPiAqKSB1c2VyX2RhdGE7CisgIGxtX2luZm9fdGFyZ2V0ICppdGVtID0gbmV3IGxtX2lu Zm9fdGFyZ2V0OworICBpdGVtLT5sb2NhdGlvbiA9IGxtX2luX21lbW9yeTsKKyAgaXRlbS0+YmVn aW4gPSAoQ09SRV9BRERSKSAqKFVMT05HRVNUICopCisgICAgeG1sX2ZpbmRfYXR0cmlidXRlIChh dHRyaWJ1dGVzLCAiYmVnaW4iKS0+dmFsdWUuZ2V0ICgpOworICBpdGVtLT5lbmQgPSAoQ09SRV9B RERSKSAqKFVMT05HRVNUICopCisgICAgeG1sX2ZpbmRfYXR0cmlidXRlIChhdHRyaWJ1dGVzLCAi ZW5kIiktPnZhbHVlLmdldCAoKTsKKworICBsaXN0LT5lbXBsYWNlX2JhY2sgKGl0ZW0pOworfQor CiBzdGF0aWMgdm9pZAogbGlicmFyeV9saXN0X2VuZF9saWJyYXJ5IChzdHJ1Y3QgZ2RiX3htbF9w YXJzZXIgKnBhcnNlciwKIAkJCSAgY29uc3Qgc3RydWN0IGdkYl94bWxfZWxlbWVudCAqZWxlbWVu dCwKQEAgLTE1Niw3ICsxOTYsNyBAQCBsaWJyYXJ5X2xpc3Rfc3RhcnRfbGlzdCAoc3RydWN0IGdk Yl94bWxfcGFyc2VyICpwYXJzZXIsCiAgICAgewogICAgICAgY29uc3QgY2hhciAqc3RyaW5nID0g KGNvbnN0IGNoYXIgKikgdmVyc2lvbi0+dmFsdWUuZ2V0ICgpOwogCi0gICAgICBpZiAoc3RyY21w IChzdHJpbmcsICIxLjAiKSAhPSAwKQorICAgICAgaWYgKChzdHJjbXAgKHN0cmluZywgIjEuMCIp ICE9IDApICYmIChzdHJjbXAgKHN0cmluZywgIjEuMSIpICE9IDApKQogCWdkYl94bWxfZXJyb3Ig KHBhcnNlciwKIAkJICAgICAgIF8oIkxpYnJhcnkgbGlzdCBoYXMgdW5zdXBwb3J0ZWQgdmVyc2lv biBcIiVzXCIiKSwKIAkJICAgICAgIHN0cmluZyk7CkBAIC0xOTEsMTAgKzIzMSwxOSBAQCBzdGF0 aWMgY29uc3Qgc3RydWN0IGdkYl94bWxfYXR0cmlidXRlIGxpYnJhcnlfYXR0cmlidXRlc1tdID0g ewogICB7IE5VTEwsIEdEQl9YTUxfQUZfTk9ORSwgTlVMTCwgTlVMTCB9CiB9OwogCitzdGF0aWMg Y29uc3Qgc3RydWN0IGdkYl94bWxfYXR0cmlidXRlIGluX21lbW9yeV9saWJyYXJ5X2F0dHJpYnV0 ZXNbXSA9IHsKKyAgeyAiYmVnaW4iLCBHREJfWE1MX0FGX05PTkUsIGdkYl94bWxfcGFyc2VfYXR0 cl91bG9uZ2VzdCwgTlVMTCB9LAorICB7ICJlbmQiLCBHREJfWE1MX0FGX05PTkUsIGdkYl94bWxf cGFyc2VfYXR0cl91bG9uZ2VzdCwgTlVMTCB9LAorICB7IE5VTEwsIEdEQl9YTUxfQUZfTk9ORSwg TlVMTCwgTlVMTCB9Cit9OworCiBzdGF0aWMgY29uc3Qgc3RydWN0IGdkYl94bWxfZWxlbWVudCBs aWJyYXJ5X2xpc3RfY2hpbGRyZW5bXSA9IHsKICAgeyAibGlicmFyeSIsIGxpYnJhcnlfYXR0cmli dXRlcywgbGlicmFyeV9jaGlsZHJlbiwKICAgICBHREJfWE1MX0VGX1JFUEVBVEFCTEUgfCBHREJf WE1MX0VGX09QVElPTkFMLAogICAgIGxpYnJhcnlfbGlzdF9zdGFydF9saWJyYXJ5LCBsaWJyYXJ5 X2xpc3RfZW5kX2xpYnJhcnkgfSwKKyAgeyAiaW4tbWVtb3J5LWxpYnJhcnkiLCBpbl9tZW1vcnlf bGlicmFyeV9hdHRyaWJ1dGVzLCBsaWJyYXJ5X2NoaWxkcmVuLAorICAgIEdEQl9YTUxfRUZfUkVQ RUFUQUJMRSB8IEdEQl9YTUxfRUZfT1BUSU9OQUwsCisgICAgaW5fbWVtb3J5X2xpYnJhcnlfbGlz dF9zdGFydF9saWJyYXJ5LCBsaWJyYXJ5X2xpc3RfZW5kX2xpYnJhcnkgfSwKICAgeyBOVUxMLCBO VUxMLCBOVUxMLCBHREJfWE1MX0VGX05PTkUsIE5VTEwsIE5VTEwgfQogfTsKIApAQCAtMjQ2LDEw ICsyOTUsMzUgQEAgc29saWJfdGFyZ2V0X2N1cnJlbnRfc29zICh2b2lkKQogICBmb3IgKGxtX2lu Zm9fdGFyZ2V0X3VwICZpbmZvIDogbGlicmFyeV9saXN0KQogICAgIHsKICAgICAgIGF1dG8gJm5l d19zb2xpYiA9IHNvcy5lbXBsYWNlX2JhY2sgKCk7CisgICAgICBzd2l0Y2ggKGluZm8tPmxvY2F0 aW9uKQorCXsKKwljYXNlIGxtX29uX2Rpc2s6CisJICAvKiBXZSBkb24ndCBuZWVkIGEgY29weSBv ZiB0aGUgbmFtZSBpbiBJTkZPIGFueW1vcmUuICAqLworCSAgbmV3X3NvbGliLnNvX25hbWUgPSBz dGQ6Om1vdmUgKGluZm8tPm5hbWUpOworCSAgbmV3X3NvbGliLnNvX29yaWdpbmFsX25hbWUgPSBu ZXdfc29saWIuc29fbmFtZTsKKwkgIGJyZWFrOworCisJY2FzZSBsbV9pbl9tZW1vcnk6CisJICB7 CisJICAgIGlmIChpbmZvLT5lbmQgPD0gaW5mby0+YmVnaW4pCisJICAgICAgZXJyb3IgKF8oImJh ZCBpbi1tZW1vcnktbGlicmFyeSBsb2NhdGlvbjogYmVnaW49JXMsIGVuZD0lcyIpLAorCQkgICAg IGNvcmVfYWRkcl90b19zdHJpbmdfbnogKGluZm8tPmJlZ2luKSwKKwkJICAgICBjb3JlX2FkZHJf dG9fc3RyaW5nX256IChpbmZvLT5lbmQpKTsKKworCSAgICAvKiBHaXZlIGl0IGEgbmFtZSBhbHRo b3VnaCB0aGlzIGlzbid0IHJlYWxseSBuZWVkZWQuICAqLworCSAgICBzdGQ6OnN0cmluZyBvcmln X25hbWUKKwkgICAgICA9IHN0ZDo6c3RyaW5nICgiaW4tbWVtb3J5LSIpCisJICAgICAgKyBjb3Jl X2FkZHJfdG9fc3RyaW5nX256IChpbmZvLT5iZWdpbikKKwkgICAgICArICItIgorCSAgICAgICsg Y29yZV9hZGRyX3RvX3N0cmluZ19ueiAoaW5mby0+ZW5kKTsKKworCSAgICBuZXdfc29saWIuc29f b3JpZ2luYWxfbmFtZSA9IG9yaWdfbmFtZTsKKwkgICAgbmV3X3NvbGliLmJlZ2luID0gaW5mby0+ YmVnaW47CisJICAgIG5ld19zb2xpYi5lbmQgPSBpbmZvLT5lbmQ7CisJICB9CisJICBicmVhazsK Kwl9CiAKLSAgICAgIC8qIFdlIGRvbid0IG5lZWQgYSBjb3B5IG9mIHRoZSBuYW1lIGluIElORk8g YW55bW9yZS4gICovCi0gICAgICBuZXdfc29saWIuc29fbmFtZSA9IHN0ZDo6bW92ZSAoaW5mby0+ bmFtZSk7Ci0gICAgICBuZXdfc29saWIuc29fb3JpZ2luYWxfbmFtZSA9IG5ld19zb2xpYi5zb19u YW1lOwogICAgICAgbmV3X3NvbGliLmxtX2luZm8gPSBzdGQ6Om1vdmUgKGluZm8pOwogICAgIH0K IApAQCAtNDE0LDQgKzQ4OCw1IEBAIGNvbnN0IHNvbGliX29wcyBzb2xpYl90YXJnZXRfc29fb3Bz ID0KICAgbnVsbHB0ciwKICAgbnVsbHB0ciwKICAgZGVmYXVsdF9maW5kX3NvbGliX2FkZHIsCisg IGdkYl9iZmRfb3Blbl9mcm9tX3RhcmdldF9tZW1vcnksCiB9OwpkaWZmIC0tZ2l0IGEvZ2RiL3Nv bGliLmMgYi9nZGIvc29saWIuYwppbmRleCBmZGVmZGYwYjE0MjMwMzJmYTM5ZjhlZTlhYWU3ZjFj MzVmMTNlMWQxLi5jYjMwMmY5MjE1MjU3ZGRmZjE4Yzk0ZjViZTM5ZTE4OWIwMmQ4NGU2IDEwMDY0 NAotLS0gYS9nZGIvc29saWIuYworKysgYi9nZGIvc29saWIuYwpAQCAtNDg1LDggKzQ4NSwyOSBA QCBzb2xpYl9tYXBfc2VjdGlvbnMgKHNvbGliICZzbykKIHsKICAgY29uc3Qgc29saWJfb3BzICpv cHMgPSBnZGJhcmNoX3NvX29wcyAoY3VycmVudF9pbmZlcmlvciAoKS0+YXJjaCAoKSk7CiAKLSAg Z2RiOjp1bmlxdWVfeG1hbGxvY19wdHI8Y2hhcj4gZmlsZW5hbWUgKHRpbGRlX2V4cGFuZCAoc28u c29fbmFtZS5jX3N0ciAoKSkpOwotICBnZGJfYmZkX3JlZl9wdHIgYWJmZCAob3BzLT5iZmRfb3Bl biAoZmlsZW5hbWUuZ2V0ICgpKSk7CisgIGdkYl9iZmRfcmVmX3B0ciBhYmZkOworICBpZiAoc28u c29fbmFtZVswXSAhPSAnXDAnKQorICAgIHsKKyAgICAgIGdkYjo6dW5pcXVlX3htYWxsb2NfcHRy PGNoYXI+IGZpbGVuYW1lCisJKHRpbGRlX2V4cGFuZCAoc28uc29fbmFtZS5jX3N0ciAoKSkpOwor ICAgICAgYWJmZCA9IG9wcy0+YmZkX29wZW4gKGZpbGVuYW1lLmdldCAoKSk7CisgICAgfQorICBl bHNlIGlmIChzby5iZWdpbiAhPSAwICYmIHNvLmVuZCAhPSAwKQorICAgIHsKKyAgICAgIGlmIChv cHMtPmJmZF9vcGVuX2Zyb21fdGFyZ2V0X21lbW9yeSA9PSBudWxscHRyKQorCWVycm9yIChfKCJU YXJnZXQgZG9lcyBub3Qgc3VwcG9ydCBpbi1tZW1vcnkgc2hhcmVkIGxpYnJhcmllcy4iKSk7CisK KyAgICAgIGlmIChzby5lbmQgPD0gc28uYmVnaW4pCisJZXJyb3IgKF8oIkJhZCBhZGRyZXNzIHJh bmdlIFslczsgJXMpIGZvciBpbi1tZW1vcnkgc2hhcmVkIGxpYnJhcnkuIiksCisJICAgICAgIGNv cmVfYWRkcl90b19zdHJpbmdfbnogKHNvLmJlZ2luKSwKKwkgICAgICAgY29yZV9hZGRyX3RvX3N0 cmluZ19ueiAoc28uZW5kKSk7CisKKyAgICAgIGFiZmQgPSBvcHMtPmJmZF9vcGVuX2Zyb21fdGFy Z2V0X21lbW9yeSAoc28uYmVnaW4sCisJCQkJCSAgICAgICBzby5lbmQgLSBzby5iZWdpbiwKKwkJ CQkJICAgICAgIGdudXRhcmdldCk7CisgICAgfQorICBlbHNlCisgICAgaW50ZXJuYWxfZXJyb3Ig KF8oImJhZCBzb19saXN0IikpOwogCiAgIC8qIElmIHdlIGhhdmUgYSBjb3JlIHRhcmdldCB0aGVu IHRoZSBjb3JlIHRhcmdldCBtaWdodCBoYXZlIHNvbWUgaGVscGZ1bAogICAgICBpbmZvcm1hdGlv biAoaS5lLiBidWlsZC1pZHMpIGFib3V0IHRoZSBzaGFyZWQgbGlicmFyaWVzIHdlIGFyZSB0cnlp bmcKQEAgLTUzMyw3ICs1NTQsNyBAQCBzb2xpYl9tYXBfc2VjdGlvbnMgKHNvbGliICZzbykKIAkg ICAgewogCSAgICAgIHdhcm5pbmcgKF8gKCJCdWlsZC1pZCBvZiAlcHMgZG9lcyBub3QgbWF0Y2gg Y29yZSBmaWxlLiIpLAogCQkgICAgICAgc3R5bGVkX3N0cmluZyAoZmlsZV9uYW1lX3N0eWxlLnN0 eWxlICgpLAotCQkJCSAgICAgIGZpbGVuYW1lLmdldCAoKSkpOworCQkJCSAgICAgIHNvLnNvX25h bWUuY19zdHIgKCkpKTsKIAkgICAgICBhYmZkID0gbnVsbHB0cjsKIAkgICAgfQogCX0KZGlmZiAt LWdpdCBhL2dkYi9zb2xpc3QuaCBiL2dkYi9zb2xpc3QuaAppbmRleCA4YWQwYWVmZDllMzJiMjY0 YjA4YTg1M2ViMzU3NzgyOWE4ZTc0NzY3Li5jNGQwNTNhNWM2YzAyNjFmMTE3NjEyMWIyYmMxZjkw NGFjMjQyNGE0IDEwMDY0NAotLS0gYS9nZGIvc29saXN0LmgKKysrIGIvZ2RiL3NvbGlzdC5oCkBA IC02Nyw5ICs2NywxNCBAQCBzdHJ1Y3Qgc29saWIgOiBpbnRydXNpdmVfbGlzdF9ub2RlPHNvbGli PgogICAgICBtYXAgd2UndmUgYWxyZWFkeSBsb2FkZWQuICAqLwogICBzdGQ6OnN0cmluZyBzb19v cmlnaW5hbF9uYW1lOwogCi0gIC8qIFNoYXJlZCBvYmplY3QgZmlsZSBuYW1lLCBleHBhbmRlZCB0 byBzb21ldGhpbmcgR0RCIGNhbiBvcGVuLiAgKi8KKyAgLyogU2hhcmVkIG9iamVjdCBmaWxlIG5h bWUsIGV4cGFuZGVkIHRvIHNvbWV0aGluZyBHREIgY2FuIG9wZW4uICBUaGlzIGlzCisgICAgIGFu IGVtcHR5IHN0cmluZyBmb3IgaW4tbWVtb3J5IHNoYXJlZCBvYmplY3RzLiAgKi8KICAgc3RkOjpz dHJpbmcgc29fbmFtZTsKIAorICAvKiBUaGUgYWRkcmVzcyByYW5nZSBvZiBhbiBpbi1tZW1vcnkg c2hhcmVkIG9iamVjdC4gIEJvdGggQkVHSU4gYW5kIEVORAorICAgICBhcmUgemVybyBmb3Igb24t ZGlzayBzaGFyZWQgb2JqZWN0cy4gICovCisgIENPUkVfQUREUiBiZWdpbiwgZW5kOworCiAgIC8q IFRoZSBmb2xsb3dpbmcgZmllbGRzIG9mIHRoZSBzdHJ1Y3R1cmUgYXJlIGJ1aWx0IGZyb20KICAg ICAgaW5mb3JtYXRpb24gZ2F0aGVyZWQgZnJvbSB0aGUgc2hhcmVkIG9iamVjdCBmaWxlIGl0c2Vs ZiwgYW5kCiAgICAgIGFyZSBzZXQgd2hlbiB3ZSBhY3R1YWxseSBhZGQgaXQgdG8gb3VyIHN5bWJv bCB0YWJsZXMuCkBAIC0xODAsNiArMTg1LDEyIEBAIHN0cnVjdCBzb2xpYl9vcHMKICAgICAgbmFt ZSkuICAqLwogCiAgIHN0ZDo6b3B0aW9uYWw8Q09SRV9BRERSPiAoKmZpbmRfc29saWJfYWRkcikg KHNvbGliICZzbyk7CisKKyAgLyogT3BlbiBhbiBpbi1tZW1vcnkgc2hhcmVkIGxpYnJhcnkgYXQg QUREUiBvZiBhdCBtb3N0IFNJWkUgYnl0ZXMuICBUaGUKKyAgICAgVEFSR0VUIHN0cmluZyBpcyB1 c2VkIHRvIGlkZW50aWZ5IHRoZSB0YXJnZXQuICAqLworICBnZGJfYmZkX3JlZl9wdHIgKCpiZmRf b3Blbl9mcm9tX3RhcmdldF9tZW1vcnkpIChDT1JFX0FERFIgYWRkciwKKwkJCQkJCSAgQ09SRV9B RERSIHNpemUsCisJCQkJCQkgIGNvbnN0IGNoYXIgKnRhcmdldCk7CiB9OwogCiAvKiBBIHVuaXF1 ZSBwb2ludGVyIHRvIGEgc29fbGlzdC4gICovCmRpZmYgLS1naXQgYS9nZGJzZXJ2ZXIvZGxsLmNj IGIvZ2Ric2VydmVyL2RsbC5jYwppbmRleCBmNDlhYTU2MGFlYzU3ZTI0Njk0OGQ5NDRlYzM3N2Iw YmViOGQxZGM1Li5jMmM2M2U5YTY5YTU0ZGRlZGU3N2U0MGVhMzNiNGUxOWNiZGM3MWFmIDEwMDY0 NAotLS0gYS9nZGJzZXJ2ZXIvZGxsLmNjCisrKyBiL2dkYnNlcnZlci9kbGwuY2MKQEAgLTQwLDYg KzQwLDE3IEBAIGxvYWRlZF9kbGwgKHByb2Nlc3NfaW5mbyAqcHJvYywgY29uc3QgY2hhciAqbmFt ZSwgQ09SRV9BRERSIGJhc2VfYWRkcikKICAgcHJvYy0+ZGxsc19jaGFuZ2VkID0gdHJ1ZTsKIH0K IAorLyogUmVjb3JkIGEgbmV3bHkgbG9hZGVkIGluLW1lbW9yeSBETEwgYXQgQkFTRV9BRERSIGZv ciBQUk9DLiAgKi8KKwordm9pZAorbG9hZGVkX2RsbCAocHJvY2Vzc19pbmZvICpwcm9jLCBDT1JF X0FERFIgYmVnaW4sIENPUkVfQUREUiBlbmQsCisJICAgIENPUkVfQUREUiBiYXNlX2FkZHIpCit7 CisgIGdkYl9hc3NlcnQgKHByb2MgIT0gbnVsbHB0cik7CisgIHByb2MtPmFsbF9kbGxzLmVtcGxh Y2VfYmFjayAoYmVnaW4sIGVuZCwgYmFzZV9hZGRyKTsKKyAgcHJvYy0+ZGxsc19jaGFuZ2VkID0g dHJ1ZTsKK30KKwogLyogUmVjb3JkIHRoYXQgdGhlIERMTCB3aXRoIE5BTUUgYW5kIEJBU0VfQURE UiBoYXMgYmVlbiB1bmxvYWRlZAogICAgZnJvbSB0aGUgY3VycmVudCBwcm9jZXNzLiAgKi8KIApA QCAtNTgsNiArNjksOSBAQCB1bmxvYWRlZF9kbGwgKHByb2Nlc3NfaW5mbyAqcHJvYywgY29uc3Qg Y2hhciAqbmFtZSwgQ09SRV9BRERSIGJhc2VfYWRkcikKICAgZ2RiX2Fzc2VydCAocHJvYyAhPSBu dWxscHRyKTsKICAgYXV0byBwcmVkID0gWyZdIChjb25zdCBkbGxfaW5mbyAmZGxsKQogICAgIHsK KyAgICAgIGlmIChkbGwubG9jYXRpb24gIT0gZGxsX2luZm86Om9uX2Rpc2spCisJcmV0dXJuIGZh bHNlOworCiAgICAgICBpZiAoYmFzZV9hZGRyICE9IFVOU1BFQ0lGSUVEX0NPUkVfQUREUgogCSAg JiYgYmFzZV9hZGRyID09IGRsbC5iYXNlX2FkZHIpCiAJcmV0dXJuIHRydWU7CkBAIC04OSwzICsx MDMsNDggQEAgdW5sb2FkZWRfZGxsIChwcm9jZXNzX2luZm8gKnByb2MsIGNvbnN0IGNoYXIgKm5h bWUsIENPUkVfQUREUiBiYXNlX2FkZHIpCiAgICAgICBwcm9jLT5kbGxzX2NoYW5nZWQgPSB0cnVl OwogICAgIH0KIH0KKworLyogUmVjb3JkIHRoYXQgdGhlIGluLW1lbW9yeSBETEwgZnJvbSBCRUdJ TiB0byBFTkQgbG9hZGVkIGF0IEJBU0VfQUREUiBoYXMgYmVlbgorICAgdW5sb2FkZWQuICAqLwor Cit2b2lkCit1bmxvYWRlZF9kbGwgKHByb2Nlc3NfaW5mbyAqcHJvYywgQ09SRV9BRERSIGJlZ2lu LCBDT1JFX0FERFIgZW5kLAorCSAgICAgIENPUkVfQUREUiBiYXNlX2FkZHIpCit7CisgIGdkYl9h c3NlcnQgKHByb2MgIT0gbnVsbHB0cik7CisgIGF1dG8gcHJlZCA9IFsmXSAoY29uc3QgZGxsX2lu Zm8gJmRsbCkKKyAgICB7CisgICAgICBpZiAoZGxsLmxvY2F0aW9uICE9IGRsbF9pbmZvOjppbl9t ZW1vcnkpCisJcmV0dXJuIGZhbHNlOworCisgICAgICBpZiAoYmFzZV9hZGRyICE9IFVOU1BFQ0lG SUVEX0NPUkVfQUREUgorCSAgJiYgYmFzZV9hZGRyID09IGRsbC5iYXNlX2FkZHIpCisJcmV0dXJu IHRydWU7CisKKyAgICAgIC8qIFdlIGRvIG5vdCByZXF1aXJlIHRoZSBlbmQgYWRkcmVzcyB0byBi ZSBzcGVjaWZpZWQgLSB3ZSBkb24ndAorCSBzdXBwb3J0IHBhcnRpYWxseSB1bmxvYWRlZCBsaWJy YXJpZXMsIGFueXdheS4gICovCisgICAgICBpZiAoYmVnaW4gIT0gVU5TUEVDSUZJRURfQ09SRV9B RERSCisJICAmJiBiZWdpbiA9PSBkbGwuYmVnaW4KKwkgICYmIChlbmQgPT0gVU5TUEVDSUZJRURf Q09SRV9BRERSCisJICAgICAgfHwgZW5kID09IGRsbC5lbmQpKQorCXJldHVybiB0cnVlOworCisg ICAgICByZXR1cm4gZmFsc2U7CisgICAgfTsKKworICBhdXRvIGl0ZXIgPSBzdGQ6OmZpbmRfaWYg KHByb2MtPmFsbF9kbGxzLmJlZ2luICgpLCBwcm9jLT5hbGxfZGxscy5lbmQgKCksCisJCQkgICAg cHJlZCk7CisKKyAgaWYgKGl0ZXIgPT0gcHJvYy0+YWxsX2RsbHMuZW5kICgpKQorICAgIC8qIEZv ciBzb21lIGluZmVyaW9ycyB3ZSBtaWdodCBnZXQgdW5sb2FkZWRfZGxsIGV2ZW50cyB3aXRob3V0 IGhhdmluZworICAgICAgIGEgY29ycmVzcG9uZGluZyBsb2FkZWRfZGxsLiAgSW4gdGhhdCBjYXNl LCB0aGUgZGxsIGNhbm5vdCBiZSBmb3VuZAorICAgICAgIGluIEFMTF9ETEwsIGFuZCB0aGVyZSBp cyBub3RoaW5nIGZ1cnRoZXIgZm9yIHVzIHRvIGRvLiAgKi8KKyAgICByZXR1cm47CisgIGVsc2UK KyAgICB7CisgICAgICAvKiBETEwgaGFzIGJlZW4gZm91bmQgc28gcmVtb3ZlIHRoZSBlbnRyeSBh bmQgZnJlZSBhc3NvY2lhdGVkCisJIHJlc291cmNlcy4gICovCisgICAgICBwcm9jLT5hbGxfZGxs cy5lcmFzZSAoaXRlcik7CisgICAgICBwcm9jLT5kbGxzX2NoYW5nZWQgPSAxOworICAgIH0KK30K ZGlmZiAtLWdpdCBhL2dkYnNlcnZlci9kbGwuaCBiL2dkYnNlcnZlci9kbGwuaAppbmRleCBlNjAz ZGY0YmUyYjI2MDE3ZmE1Yjc5NWY4NjFkOGQ0MTExNzc5ZDg1Li45YmNlMjhlNzBjZjM5MzliNWIw NjJlNGI5YzBmMGQyZDEwYTFkMWQ3IDEwMDY0NAotLS0gYS9nZGJzZXJ2ZXIvZGxsLmgKKysrIGIv Z2Ric2VydmVyL2RsbC5oCkBAIC0yNCwxOSArMjQsMzYgQEAgc3RydWN0IHByb2Nlc3NfaW5mbzsK IAogc3RydWN0IGRsbF9pbmZvCiB7CisgIGVudW0gbG9jYXRpb25fdAorICB7CisgICAgb25fZGlz aywKKyAgICBpbl9tZW1vcnkKKyAgfTsKKwogICBkbGxfaW5mbyAoY29uc3Qgc3RkOjpzdHJpbmcg Jm5hbWVfLCBDT1JFX0FERFIgYmFzZV9hZGRyXykKLSAgOiBuYW1lIChuYW1lXyksIGJhc2VfYWRk ciAoYmFzZV9hZGRyXykKKyAgICA6IGxvY2F0aW9uIChvbl9kaXNrKSwgbmFtZSAobmFtZV8pLCBi YXNlX2FkZHIgKGJhc2VfYWRkcl8pCisgIHt9CisKKyAgZGxsX2luZm8gKENPUkVfQUREUiBiZWdp bl8sIENPUkVfQUREUiBlbmRfLCBDT1JFX0FERFIgYmFzZV9hZGRyXykKKyAgICA6IGxvY2F0aW9u IChpbl9tZW1vcnkpLCBiZWdpbiAoYmVnaW5fKSwgZW5kIChlbmRfKSwgYmFzZV9hZGRyIChiYXNl X2FkZHJfKQogICB7fQogCisgIGxvY2F0aW9uX3QgbG9jYXRpb247CiAgIHN0ZDo6c3RyaW5nIG5h bWU7CisgIENPUkVfQUREUiBiZWdpbjsKKyAgQ09SRV9BRERSIGVuZDsKICAgQ09SRV9BRERSIGJh c2VfYWRkcjsKIH07CiAKIGV4dGVybiB2b2lkIGxvYWRlZF9kbGwgKGNvbnN0IGNoYXIgKm5hbWUs IENPUkVfQUREUiBiYXNlX2FkZHIpOwogZXh0ZXJuIHZvaWQgbG9hZGVkX2RsbCAocHJvY2Vzc19p bmZvICpwcm9jLCBjb25zdCBjaGFyICpuYW1lLAogCQkJQ09SRV9BRERSIGJhc2VfYWRkcik7Citl eHRlcm4gdm9pZCBsb2FkZWRfZGxsIChwcm9jZXNzX2luZm8gKnByb2MsIENPUkVfQUREUiBiZWdp biwgQ09SRV9BRERSIGVuZCwKKwkJCUNPUkVfQUREUiBiYXNlX2FkZHIpOwogZXh0ZXJuIHZvaWQg dW5sb2FkZWRfZGxsIChjb25zdCBjaGFyICpuYW1lLCBDT1JFX0FERFIgYmFzZV9hZGRyKTsKIGV4 dGVybiB2b2lkIHVubG9hZGVkX2RsbCAocHJvY2Vzc19pbmZvICpwcm9jLCBjb25zdCBjaGFyICpu YW1lLAogCQkJICBDT1JFX0FERFIgYmFzZV9hZGRyKTsKK2V4dGVybiB2b2lkIHVubG9hZGVkX2Rs bCAocHJvY2Vzc19pbmZvICpwcm9jLCBDT1JFX0FERFIgYmVnaW4sIENPUkVfQUREUiBlbmQsCisJ CQkgIENPUkVfQUREUiBiYXNlX2FkZHIpOwogCiAjZW5kaWYgLyogR0RCU0VSVkVSX0RMTF9IICov CmRpZmYgLS1naXQgYS9nZGJzZXJ2ZXIvc2VydmVyLmNjIGIvZ2Ric2VydmVyL3NlcnZlci5jYwpp bmRleCAyNjRmYWM0NGI3NGRiNjk3NDZmZGVjYjFjZGQxZmQ3NDgxMzljYzRmLi45MDkwMjA5OWEx YjVhODRmZTg2Y2I4MzkxYmY5ODNhNTk0M2U3OGM1IDEwMDY0NAotLS0gYS9nZGJzZXJ2ZXIvc2Vy dmVyLmNjCisrKyBiL2dkYnNlcnZlci9zZXJ2ZXIuY2MKQEAgLTE4ODQsNiArMTg4NCw5NyBAQCBo YW5kbGVfcXhmZXJfZmVhdHVyZXMgKGNvbnN0IGNoYXIgKmFubmV4LAogICByZXR1cm4gbGVuOwog fQogCitzdGF0aWMgc3RkOjpzdHJpbmcKK2RsbF90b190bXBmaWxlIChkbGxfaW5mbyAmZGxsKQor eworICBpZiAoZGxsLmVuZCA8PSBkbGwuYmVnaW4pCisgICAgZXJyb3IgKF8oImJhZCBpbi1tZW1v cnktbGlicmFyeSBsb2NhdGlvbjogYmVnaW49JXMsIGVuZD0lcyIpLAorCSAgIGNvcmVfYWRkcl90 b19zdHJpbmdfbnogKGRsbC5iZWdpbiksCisJICAgY29yZV9hZGRyX3RvX3N0cmluZ19ueiAoZGxs LmVuZCkpOworCisgIGdkYjo6Ynl0ZV92ZWN0b3IgYnVmZmVyIChkbGwuZW5kIC0gZGxsLmJlZ2lu KTsKKyAgaW50IGVycmNvZGUgPSBnZGJfcmVhZF9tZW1vcnkgKGRsbC5iZWdpbiwgYnVmZmVyLmRh dGEgKCksIGJ1ZmZlci5zaXplICgpKTsKKyAgaWYgKGVycmNvZGUgIT0gMCkKKyAgICBlcnJvciAo XygiZmFpbGVkIHRvIHJlYWQgaW4tbWVtb3J5IGxpYnJhcnkgYXQgJXMuLiVzIiksCisJICAgY29y ZV9hZGRyX3RvX3N0cmluZ19ueiAoZGxsLmJlZ2luKSwKKwkgICBjb3JlX2FkZHJfdG9fc3RyaW5n X256IChkbGwuZW5kKSk7CisKKyAgc3RkOjpzdHJpbmcgbmFtZQorICAgID0gc3RkOjpzdHJpbmcg KCJnZGItaW4tbWVtb3J5LXNvbGliLSIpCisgICAgKyBjb3JlX2FkZHJfdG9fc3RyaW5nX256IChk bGwuYmVnaW4pCisgICAgKyAiLSIKKyAgICArIGNvcmVfYWRkcl90b19zdHJpbmdfbnogKGRsbC5l bmQpOworCisgIGdkYl9maWxlX3VwIGZpbGUgPSBnZGJfY3JlYXRlX3RtcGZpbGUgKG5hbWUpOwor CisgIHNpemVfdCB3cml0dGVuID0gZndyaXRlIChidWZmZXIuZGF0YSAoKSwgYnVmZmVyLnNpemUg KCksIDEsIGZpbGUuZ2V0ICgpKTsKKyAgaWYgKHdyaXR0ZW4gIT0gMSkKKyAgICBlcnJvciAoXygi ZmFpbGVkIHRvIHdyaXRlIGludG8gJXMiKSwgbmFtZS5jX3N0ciAoKSk7CisKKyAgcmV0dXJuIG5h bWU7Cit9CisKKy8qIFByaW50IGEgcVhmZXI6bGlicmFyaWVzOnJlYWQgZW50cnkgZm9yIERMTC4g ICovCisKK3N0YXRpYyBzdGQ6OnN0cmluZworcHJpbnRfcXhmZXJfbGlicmFyaWVzX2VudHJ5IChk bGxfaW5mbyAmZGxsKQoreworICBzd2l0Y2ggKGRsbC5sb2NhdGlvbikKKyAgICB7CisgICAgY2Fz ZSBkbGxfaW5mbzo6aW5fbWVtb3J5OgorICAgICAgaWYgKGdldF9jbGllbnRfc3RhdGUgKCkuaW5f bWVtb3J5X2xpYnJhcnlfc3VwcG9ydGVkKQorCXJldHVybiBzdHJpbmdfcHJpbnRmCisJICAoIiAg PGluLW1lbW9yeS1saWJyYXJ5IGJlZ2luPVwiMHglc1wiIGVuZD1cIjB4JXNcIj4iCisJICAgIjxz ZWdtZW50IGFkZHJlc3M9XCIweCVzXCIvPjwvaW4tbWVtb3J5LWxpYnJhcnk+XG4iLAorCSAgIHBh ZGRyZXNzIChkbGwuYmVnaW4pLCBwYWRkcmVzcyAoZGxsLmVuZCksCisJICAgcGFkZHJlc3MgKGRs bC5iYXNlX2FkZHIpKTsKKworICAgICAgLyogR0RCIGRvZXMgbm90IHN1cHBvcnQgaW4tbWVtb3J5 LWxpYnJhcnkuICBGYWxsIGJhY2sgdG8gc3RvcmluZyBpdCBpbiBhCisJIHRlbXBvcmFyeSBmaWxl IGFuZCByZXBvcnQgdGhhdCBmaWxlIHRvIEdEQi4gICovCisgICAgICBkbGwubmFtZSA9IGRsbF90 b190bXBmaWxlIChkbGwpOworICAgICAgW1tmYWxsdGhyb3VnaF1dOworCisgICAgY2FzZSBkbGxf aW5mbzo6b25fZGlzazoKKyAgICAgIHJldHVybiBzdHJpbmdfcHJpbnRmCisJKCIgIDxsaWJyYXJ5 IG5hbWU9XCIlc1wiPjxzZWdtZW50IGFkZHJlc3M9XCIweCVzXCIvPjwvbGlicmFyeT5cbiIsCisJ IGRsbC5uYW1lLmNfc3RyICgpLCBwYWRkcmVzcyAoZGxsLmJhc2VfYWRkcikpOworICAgIH0KKwor ICB3YXJuaW5nIChfKCJ1bmtub3duIGRsbCBsb2NhdGlvbjogJXgiKSwgZGxsLmxvY2F0aW9uKTsK KyAgcmV0dXJuIHN0ZDo6c3RyaW5nICgpOworfQorCisvKiBEZXRlcm1pbmUgdGhlIGxpYnJhcnkt bGlzdCB2ZXJzaW9uIHJlcXVpcmVkIGZvciBjb21tdW5pY2F0aW5nIHRoZSBzaGFyZWQKKyAgIGxp YnJhcmllcy4gICovCisKK3N0YXRpYyBzdGQ6OnN0cmluZworbGlicmFyeV9saXN0X3ZlcnNpb25f bmVlZGVkIChjb25zdCBzdGQ6Omxpc3Q8ZGxsX2luZm8+ICZkbGxzKQoreworICBjb25zdCBjbGll bnRfc3RhdGUgJmNzID0gZ2V0X2NsaWVudF9zdGF0ZSAoKTsKKyAgaW50IG1ham9yID0gMSwgbWlu b3IgPSAwOworCisgIGZvciAoY29uc3QgZGxsX2luZm8gJmRsbCA6IGRsbHMpCisgICAgeworICAg ICAgc3dpdGNoIChkbGwubG9jYXRpb24pCisJeworCWNhc2UgZGxsX2luZm86Om9uX2Rpc2s6CisJ ICBtYWpvciA9IHN0ZDo6bWF4IChtYWpvciwgMSk7CisJICBtaW5vciA9IHN0ZDo6bWF4IChtaW5v ciwgMCk7CisJICBicmVhazsKKworCWNhc2UgZGxsX2luZm86OmluX21lbW9yeToKKwkgIGlmIChj cy5pbl9tZW1vcnlfbGlicmFyeV9zdXBwb3J0ZWQpCisJICAgIHsKKwkgICAgICBtYWpvciA9IHN0 ZDo6bWF4IChtYWpvciwgMSk7CisJICAgICAgbWlub3IgPSBzdGQ6Om1heCAobWlub3IsIDEpOwor CSAgICB9CisJICBicmVhazsKKwl9CisgICAgfQorCisgIHJldHVybiBzdGQ6OnRvX3N0cmluZyAo bWFqb3IpICsgc3RkOjpzdHJpbmcgKCIuIikgKyBzdGQ6OnRvX3N0cmluZyAobWlub3IpOworfQor CiAvKiBIYW5kbGUgcVhmZXI6bGlicmFyaWVzOnJlYWQuICAqLwogCiBzdGF0aWMgaW50CkBAIC0x ODk3LDEzICsxOTg4LDEzIEBAIGhhbmRsZV9xeGZlcl9saWJyYXJpZXMgKGNvbnN0IGNoYXIgKmFu bmV4LAogICBpZiAoYW5uZXhbMF0gIT0gJ1wwJyB8fCBjdXJyZW50X3RocmVhZCA9PSBOVUxMKQog ICAgIHJldHVybiAtMTsKIAotICBzdGQ6OnN0cmluZyBkb2N1bWVudCA9ICI8bGlicmFyeS1saXN0 IHZlcnNpb249XCIxLjBcIj5cbiI7Ci0KICAgcHJvY2Vzc19pbmZvICpwcm9jID0gY3VycmVudF9w cm9jZXNzICgpOwotICBmb3IgKGNvbnN0IGRsbF9pbmZvICZkbGwgOiBwcm9jLT5hbGxfZGxscykK LSAgICBkb2N1bWVudCArPSBzdHJpbmdfcHJpbnRmCi0gICAgICAoIiAgPGxpYnJhcnkgbmFtZT1c IiVzXCI+PHNlZ21lbnQgYWRkcmVzcz1cIjB4JXNcIi8+PC9saWJyYXJ5PlxuIiwKLSAgICAgICBk bGwubmFtZS5jX3N0ciAoKSwgcGFkZHJlc3MgKGRsbC5iYXNlX2FkZHIpKTsKKyAgc3RkOjpzdHJp bmcgZG9jdW1lbnQgPSAiPGxpYnJhcnktbGlzdCB2ZXJzaW9uPVwiIgorICAgICsgbGlicmFyeV9s aXN0X3ZlcnNpb25fbmVlZGVkIChwcm9jLT5hbGxfZGxscykKKyAgICArICJcIj5cbiI7CisKKyAg Zm9yIChkbGxfaW5mbyAmZGxsIDogcHJvYy0+YWxsX2RsbHMpCisgICAgZG9jdW1lbnQgKz0gcHJp bnRfcXhmZXJfbGlicmFyaWVzX2VudHJ5IChkbGwpOwogCiAgIGRvY3VtZW50ICs9ICI8L2xpYnJh cnktbGlzdD5cbiI7CiAKQEAgLTI3NjEsNiArMjg1Miw4IEBAIGhhbmRsZV9xdWVyeSAoY2hhciAq b3duX2J1ZiwgaW50IHBhY2tldF9sZW4sIGludCAqbmV3X3BhY2tldF9sZW5fcCkKIAkJfQogCSAg ICAgIGVsc2UgaWYgKGZlYXR1cmUgPT0gImVycm9yLW1lc3NhZ2UrIikKIAkJY3MuZXJyb3JfbWVz c2FnZV9zdXBwb3J0ZWQgPSB0cnVlOworCSAgICAgIGVsc2UgaWYgKGZlYXR1cmUgPT0gInFYZmVy OmxpYnJhcmllczpyZWFkOmluLW1lbW9yeS1saWJyYXJ5KyIpCisJCWNzLmluX21lbW9yeV9saWJy YXJ5X3N1cHBvcnRlZCA9IHRydWU7CiAJICAgICAgZWxzZQogCQl7CiAJCSAgLyogTW92ZSB0aGUg dW5rbm93biBmZWF0dXJlcyBhbGwgdG9nZXRoZXIuICAqLwpAQCAtMjc5MSw2ICsyODg0LDcgQEAg aGFuZGxlX3F1ZXJ5IChjaGFyICpvd25fYnVmLCBpbnQgcGFja2V0X2xlbiwgaW50ICpuZXdfcGFj a2V0X2xlbl9wKQogCSAgLyogV2UgZG8gbm90IGhhdmUgYW55IGhvb2sgdG8gaW5kaWNhdGUgd2hl dGhlciB0aGUgbm9uLVNWUjQgdGFyZ2V0CiAJICAgICBiYWNrZW5kIHN1cHBvcnRzIHFYZmVyOmxp YnJhcmllczpyZWFkLCBzbyBhbHdheXMgcmVwb3J0IGl0LiAgKi8KIAkgIHN0cmNhdCAob3duX2J1 ZiwgIjtxWGZlcjpsaWJyYXJpZXM6cmVhZCsiKTsKKwkgIHN0cmNhdCAob3duX2J1ZiwgIjtxWGZl cjpsaWJyYXJpZXM6cmVhZDppbi1tZW1vcnktbGlicmFyeSsiKTsKIAl9CiAKICAgICAgIGlmICh0 aGVfdGFyZ2V0LT5zdXBwb3J0c19yZWFkX2F1eHYgKCkpCmRpZmYgLS1naXQgYS9nZGJzZXJ2ZXIv c2VydmVyLmggYi9nZGJzZXJ2ZXIvc2VydmVyLmgKaW5kZXggZTEyOTdkNDFmODQwNmRhYjY3MDM5 N2Y1NjAwZTRlMDg1NThmMjNiNy4uM2JhY2QxMDYyZjhiZjQ3NzIwMTg5ZDJkMDJiMzZkZGI2MDg5 ZTZiYyAxMDA2NDQKLS0tIGEvZ2Ric2VydmVyL3NlcnZlci5oCisrKyBiL2dkYnNlcnZlci9zZXJ2 ZXIuaApAQCAtMTY4LDYgKzE2OCw5IEBAIHN0cnVjdCBjbGllbnRfc3RhdGUKICAgICAgc3BhY2Ug cmFuZG9taXphdGlvbiBmZWF0dXJlIGJlZm9yZSBzdGFydGluZyBhbiBpbmZlcmlvci4gICovCiAg IGludCBkaXNhYmxlX3JhbmRvbWl6YXRpb24gPSAxOwogCisgIC8qIFRydWUgaWYgcVhmZXI6bGli cmFyaWVzOnJlYWQgc3VwcG9ydHMgaW4tbWVtb3J5LWxpYnJhcnkuICAqLworICBib29sIGluX21l bW9yeV9saWJyYXJ5X3N1cHBvcnRlZCA9IGZhbHNlOworCiAgIGludCBwYXNzX3NpZ25hbHNbR0RC X1NJR05BTF9MQVNUXTsKICAgaW50IHByb2dyYW1fc2lnbmFsc1tHREJfU0lHTkFMX0xBU1RdOwog ICBpbnQgcHJvZ3JhbV9zaWduYWxzX3AgPSAwOwoKLS0gCjIuMzQuMQoKSW50ZWwgRGV1dHNjaGxh bmQgR21iSA0KUmVnaXN0ZXJlZCBBZGRyZXNzOiBBbSBDYW1wZW9uIDEwLCA4NTU3OSBOZXViaWJl cmcsIEdlcm1hbnkNClRlbDogKzQ5IDg5IDk5IDg4NTMtMCwgd3d3LmludGVsLmRlDQpNYW5hZ2lu ZyBEaXJlY3RvcnM6IFNlYW4gRmVubmVsbHksIEplZmZyZXkgU2NobmVpZGVybWFuLCBUaWZmYW55 IERvb24gU2lsdmENCkNoYWlycGVyc29uIG9mIHRoZSBTdXBlcnZpc29yeSBCb2FyZDogTmljb2xl IExhdQ0KUmVnaXN0ZXJlZCBPZmZpY2U6IE11bmljaA0KQ29tbWVyY2lhbCBSZWdpc3RlcjogQW10 c2dlcmljaHQgTXVlbmNoZW4gSFJCIDE4NjkyOAo=