Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1heFbI-0006Yz-O9 for pgsql-hackers@arkaria.postgresql.org; Fri, 21 Jun 2019 09:12:53 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1heFbH-00087j-Eg for pgsql-hackers@arkaria.postgresql.org; Fri, 21 Jun 2019 09:12:51 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1heFbG-00087c-Cl for pgsql-hackers@lists.postgresql.org; Fri, 21 Jun 2019 09:12:51 +0000 Received: from out1-smtp.messagingengine.com ([66.111.4.25]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1heFb8-0000x2-3e for pgsql-hackers@postgresql.org; Fri, 21 Jun 2019 09:12:48 +0000 Received: from compute7.internal (compute7.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id E29C82208E for ; Fri, 21 Jun 2019 05:12:40 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute7.internal (MEProxy); Fri, 21 Jun 2019 05:12:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:message-id :mime-version:subject:to:x-me-proxy:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm3; bh=5HSUquaG+AnpSrYIpUkl1szgLdM4b xLTN+6yph5mx/Y=; b=V3oYrbAn2fQTCQcB4jra4mUTEXvbXmyyXtqsHD4cbpPFS 93Wabg2HSdDE/yJiyEh68zMqwykZ9KxgRh7xr9iFE5VD6qcq7/iGxANjNNlE7lRh WpSHv+FPXYc9t5YmZffa0Aby0s09vha4aQ8kBTKptuzd1zRhDkqovgJ6i8x05sXx tN47Guuf1QbgGIFKoLtv74ZDvuH05bfL+fawo7J4XANZaH7qbAnZOa1SNwc/DHHe jzrt9rwVo3eFLMfP+EHN9RVQB4lnYacPzi8BkPLxrIgBFQFv7+WImdLcfTZh15OT 4RDqUiH9+b0Yf2W088rpZg8YFXvZR14ZNBF+wmGng== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduvddrtdeigddugecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecunecujfgurhephffuvfhokffffgggtgesmhdtreertd efjeenucfhrhhomheprfgvthgvrhcugfhishgvnhhtrhgruhhtuceophgvthgvrhdrvghi shgvnhhtrhgruhhtsedvnhguqhhurggurhgrnhhtrdgtohhmqeenucffohhmrghinhepvd hnughquhgrughrrghnthdrtghomhdpphhoshhtghhrvghsqhhlrdhorhhgnecukfhppedv udejrddvgeelrddvvdegrdduleeinecurfgrrhgrmhepmhgrihhlfhhrohhmpehpvghtvg hrrdgvihhsvghnthhrrghuthesvdhnughquhgrughrrghnthdrtghomhenucevlhhushht vghrufhiiigvpedt X-ME-Proxy: Received: from april.pezone.net (pd9f9e0c4.dip0.t-ipconnect.de [217.249.224.196]) by mail.messagingengine.com (Postfix) with ESMTPA id C2BF58005B for ; Fri, 21 Jun 2019 05:12:39 -0400 (EDT) From: Peter Eisentraut Subject: allow_system_table_mods stuff Openpgp: preference=signencrypt Autocrypt: addr=peter.eisentraut@2ndquadrant.com; prefer-encrypt=mutual; keydata= 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 3jI= To: pgsql-hackers Organization: 2ndQuadrant Message-ID: <8b00ea5e-28a7-88ba-e848-21528b632354@2ndquadrant.com> Date: Fri, 21 Jun 2019 11:12:38 +0200 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------8039280D30AE1C50B02EB5FB" Content-Language: en-US List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk This is a multi-part message in MIME format. --------------8039280D30AE1C50B02EB5FB Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit After the earlier thread [0] that dealt with ALTER TABLE on system catalogs, I took a closer look at the allow_system_table_mods setting. I found a few oddities, and it seems there is some room for improvement. Attached are some patches to get the discussion rolling: One patch makes allow_system_table_mods settable at run time by superuser, the second one is a test suite that documents the current behavior that I gathered after analyzing the source code, the third one removes some code that was found useless by the tests. (The first patch might be useful on its own, but right now it's just to facilitate the test suite.) Some observations: - For the most part, a_s_t_m establishes an additional level of access control on top of superuserdom for doing DDL on system catalogs. That seems like a useful definition. - But enabling a_s_t_m also allows a non-superuser to do DML on system catalogs. That seems like an entirely unrelated and surprising behavior. - Some checks are redundant with the pinning concept of the dependency system. For example, you can't drop a system catalog even with a_s_t_m on. That seems useful, of course, but as a result there is a bit of dead or useless code around. (The dependency system is newer than a_s_t_m.) - The source code comments indicate that SET STATISTICS on system catalogs is supposed to be allowed without a_s_t_m, but it actually doesn't work. Proposals and discussion points: - Having a test suite like this seems useful. - The behavior that a_s_t_m allows non-superusers to do DML on system catalogs should be removed. (Regular permissions can be used for that.) - Things that are useful in normal use, for example SET STATISTICS, some or all reloptions, should always be allowed (subject to other access control). - There is currently no support in pg_dump to preserve any of those changes. Maybe that's not a big problem. - Dead code or code that is redundant with pinning should be removed. Any other thoughts? [0]: https://www.postgresql.org/message-id/flat/e49f825b-fb25-0bc8-8afc-d5ad895c7975%402ndquadrant.com -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services --------------8039280D30AE1C50B02EB5FB Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="v1-0001-Change-allow_system_table_mods-to-SUSET.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="v1-0001-Change-allow_system_table_mods-to-SUSET.patch" RnJvbSBkOTE0M2IxY2E0ZDAwYWM5MGIxY2Q4Y2Q2ZWVmYmE4NmNiNDY4NWI2IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBFaXNlbnRyYXV0IDxwZXRlckBlaXNlbnRy YXV0Lm9yZz4KRGF0ZTogRnJpLCAyMSBKdW4gMjAxOSAxMDoyNDowMyArMDIwMApTdWJqZWN0 OiBbUEFUQ0ggdjEgMS8zXSBDaGFuZ2UgYWxsb3dfc3lzdGVtX3RhYmxlX21vZHMgdG8gU1VT RVQKCi0tLQogZG9jL3NyYy9zZ21sL2NvbmZpZy5zZ21sICAgICB8IDIgKy0KIHNyYy9iYWNr ZW5kL3V0aWxzL21pc2MvZ3VjLmMgfCAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvY29u ZmlnLnNnbWwgYi9kb2Mvc3JjL3NnbWwvY29uZmlnLnNnbWwKaW5kZXggODQzNDFhMzBlNS4u ZGUxOTUxOWIyMCAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL2NvbmZpZy5zZ21sCisrKyBi L2RvYy9zcmMvc2dtbC9jb25maWcuc2dtbApAQCAtOTI5OCw3ICs5Mjk4LDcgQEAgPHRpdGxl PkRldmVsb3BlciBPcHRpb25zPC90aXRsZT4KICAgICAgICA8cGFyYT4KICAgICAgICAgQWxs b3dzIG1vZGlmaWNhdGlvbiBvZiB0aGUgc3RydWN0dXJlIG9mIHN5c3RlbSB0YWJsZXMuCiAg ICAgICAgIFRoaXMgaXMgdXNlZCBieSA8Y29tbWFuZD5pbml0ZGI8L2NvbW1hbmQ+LgotICAg ICAgICBUaGlzIHBhcmFtZXRlciBjYW4gb25seSBiZSBzZXQgYXQgc2VydmVyIHN0YXJ0Lgor ICAgICAgICBPbmx5IHN1cGVydXNlcnMgY2FuIGNoYW5nZSB0aGlzIHNldHRpbmcuCiAgICAg ICAgPC9wYXJhPgogICAgICAgPC9saXN0aXRlbT4KICAgICAgPC92YXJsaXN0ZW50cnk+CmRp ZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9taXNjL2d1Yy5jIGIvc3JjL2JhY2tlbmQv dXRpbHMvbWlzYy9ndWMuYwppbmRleCAxMjA4ZWI5YTY4Li4wMjVkY2MxZDg3IDEwMDY0NAot LS0gYS9zcmMvYmFja2VuZC91dGlscy9taXNjL2d1Yy5jCisrKyBiL3NyYy9iYWNrZW5kL3V0 aWxzL21pc2MvZ3VjLmMKQEAgLTE3NzIsNyArMTc3Miw3IEBAIHN0YXRpYyBzdHJ1Y3QgY29u ZmlnX2Jvb2wgQ29uZmlndXJlTmFtZXNCb29sW10gPQogCX0sCiAKIAl7Ci0JCXsiYWxsb3df c3lzdGVtX3RhYmxlX21vZHMiLCBQR0NfUE9TVE1BU1RFUiwgREVWRUxPUEVSX09QVElPTlMs CisJCXsiYWxsb3dfc3lzdGVtX3RhYmxlX21vZHMiLCBQR0NfU1VTRVQsIERFVkVMT1BFUl9P UFRJT05TLAogCQkJZ2V0dGV4dF9ub29wKCJBbGxvd3MgbW9kaWZpY2F0aW9ucyBvZiB0aGUg c3RydWN0dXJlIG9mIHN5c3RlbSB0YWJsZXMuIiksCiAJCQlOVUxMLAogCQkJR1VDX05PVF9J Tl9TQU1QTEUKLS0gCjIuMjIuMAoK --------------8039280D30AE1C50B02EB5FB Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="v1-0002-Add-tests-for-allow_system_table_mods.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="v1-0002-Add-tests-for-allow_system_table_mods.patch" RnJvbSA5NzUxNWI1Mjk0NGI2NjNjMDY4YThkZWU3NjNlNDE4NTU3MzlmZDU2IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBFaXNlbnRyYXV0IDxwZXRlckBlaXNlbnRy YXV0Lm9yZz4KRGF0ZTogRnJpLCAyMSBKdW4gMjAxOSAxMDoyNDowMyArMDIwMApTdWJqZWN0 OiBbUEFUQ0ggdjEgMi8zXSBBZGQgdGVzdHMgZm9yIGFsbG93X3N5c3RlbV90YWJsZV9tb2Rz CgotLS0KIC4uLi9yZWdyZXNzL2V4cGVjdGVkL2FsdGVyX3N5c3RlbV90YWJsZS5vdXQgICB8 IDE0NyArKysrKysrKysrKysrKysrCiBzcmMvdGVzdC9yZWdyZXNzL3BhcmFsbGVsX3NjaGVk dWxlICAgICAgICAgICAgfCAgIDMgKwogc3JjL3Rlc3QvcmVncmVzcy9zcWwvYWx0ZXJfc3lz dGVtX3RhYmxlLnNxbCAgIHwgMTY1ICsrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFu Z2VkLCAzMTUgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy90ZXN0L3Jl Z3Jlc3MvZXhwZWN0ZWQvYWx0ZXJfc3lzdGVtX3RhYmxlLm91dAogY3JlYXRlIG1vZGUgMTAw NjQ0IHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2FsdGVyX3N5c3RlbV90YWJsZS5zcWwKCmRpZmYg LS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2FsdGVyX3N5c3RlbV90YWJsZS5v dXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2FsdGVyX3N5c3RlbV90YWJsZS5vdXQK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uMjU1MGU3NWIyYwotLS0g L2Rldi9udWxsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvYWx0ZXJfc3lzdGVt X3RhYmxlLm91dApAQCAtMCwwICsxLDE0NyBAQAorQ1JFQVRFIFVTRVIgcmVncmVzc191c2Vy X2FzdDsKK1NFVCBhbGxvd19zeXN0ZW1fdGFibGVfbW9kcyA9IG9mZjsKKy0tIGNyZWF0ZSBu ZXcgdGFibGUgaW4gcGdfY2F0YWxvZworQ1JFQVRFIFRBQkxFIHBnX2NhdGFsb2cudGVzdCAo YSBpbnQpOworRVJST1I6ICBwZXJtaXNzaW9uIGRlbmllZCB0byBjcmVhdGUgInBnX2NhdGFs b2cudGVzdCIKK0RFVEFJTDogIFN5c3RlbSBjYXRhbG9nIG1vZGlmaWNhdGlvbnMgYXJlIGN1 cnJlbnRseSBkaXNhbGxvd2VkLgorLS0gYW55YXJyYXkgY29sdW1uCitDUkVBVEUgVEFCTEUg dDF4IChhIGludCwgYiBhbnlhcnJheSk7CitFUlJPUjogIGNvbHVtbiAiYiIgaGFzIHBzZXVk by10eXBlIGFueWFycmF5CistLSBpbmRleCBvbiBzeXN0ZW0gY2F0YWxvZworQ1JFQVRFIElO REVYIE9OIHBnX2NsYXNzIChyZWxuYW1lc3BhY2UpOworRVJST1I6ICBwZXJtaXNzaW9uIGRl bmllZDogInBnX2NsYXNzIiBpcyBhIHN5c3RlbSBjYXRhbG9nCistLSBpbmRleCBvbiBzeXN0 ZW0gY2F0YWxvZworQUxURVIgVEFCTEUgcGdfbmFtZXNwYWNlIEFERCBVTklRVUUgVVNJTkcg SU5ERVggcGdfbmFtZXNwYWNlX29pZF9pbmRleDsKK0VSUk9SOiAgcGVybWlzc2lvbiBkZW5p ZWQ6ICJwZ19uYW1lc3BhY2UiIGlzIGEgc3lzdGVtIGNhdGFsb2cKKy0tIHdyaXRlIHRvIHN5 c3RlbSBjYXRhbG9nIHRhYmxlIGFzIHN1cGVydXNlcgorLS0gKGRvZXMgbm90IG5lZWQgYWxs b3dfc3lzdGVtX3RhYmxlX21vZHMpCitJTlNFUlQgSU5UTyBwZ19kZXNjcmlwdGlvbiAob2Jq b2lkLCBjbGFzc29pZCwgb2Jqc3ViaWQsIGRlc2NyaXB0aW9uKSBWQUxVRVMgKDAsIDAsIDAs ICdmb28nKTsKKy0tIHdyaXRlIHRvIHN5c3RlbSBjYXRhbG9nIHRhYmxlIGFzIG5vcm1hbCB1 c2VyCitHUkFOVCBJTlNFUlQgT04gcGdfZGVzY3JpcHRpb24gVE8gcmVncmVzc191c2VyX2Fz dDsKK1NFVCBST0xFIHJlZ3Jlc3NfdXNlcl9hc3Q7CitJTlNFUlQgSU5UTyBwZ19kZXNjcmlw dGlvbiAob2Jqb2lkLCBjbGFzc29pZCwgb2Jqc3ViaWQsIGRlc2NyaXB0aW9uKSBWQUxVRVMg KDAsIDAsIDEsICdmb28nKTsKK0VSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQgZm9yIHRhYmxl IHBnX2Rlc2NyaXB0aW9uCitSRVNFVCBST0xFOworLS0gcG9saWN5IG9uIHN5c3RlbSBjYXRh bG9nCitDUkVBVEUgUE9MSUNZIGZvbyBPTiBwZ19kZXNjcmlwdGlvbiBGT1IgU0VMRUNUIFVT SU5HIChkZXNjcmlwdGlvbiBOT1QgTElLRSAnc2VjcmV0JScpOworRVJST1I6ICBwZXJtaXNz aW9uIGRlbmllZDogInBnX2Rlc2NyaXB0aW9uIiBpcyBhIHN5c3RlbSBjYXRhbG9nCistLSBy ZXNlcnZlZCBzY2hlbWEgbmFtZQorQ1JFQVRFIFNDSEVNQSBwZ19mb287CitFUlJPUjogIHVu YWNjZXB0YWJsZSBzY2hlbWEgbmFtZSAicGdfZm9vIgorREVUQUlMOiAgVGhlIHByZWZpeCAi cGdfIiBpcyByZXNlcnZlZCBmb3Igc3lzdGVtIHNjaGVtYXMuCistLSBkcm9wIHN5c3RlbSB0 YWJsZQorRFJPUCBUQUJMRSBwZ19kZXNjcmlwdGlvbjsKK0VSUk9SOiAgcGVybWlzc2lvbiBk ZW5pZWQ6ICJwZ19kZXNjcmlwdGlvbiIgaXMgYSBzeXN0ZW0gY2F0YWxvZworLS0gdHJ1bmNh dGUgb2Ygc3lzdGVtIHRhYmxlCitUUlVOQ0FURSBwZ19kZXNjcmlwdGlvbjsKK0VSUk9SOiAg cGVybWlzc2lvbiBkZW5pZWQ6ICJwZ19kZXNjcmlwdGlvbiIgaXMgYSBzeXN0ZW0gY2F0YWxv ZworLS0gcmVuYW1lIGNvbHVtbiBvZiBzeXN0ZW0gdGFibGUKK0FMVEVSIFRBQkxFIHBnX2Rl c2NyaXB0aW9uIFJFTkFNRSBDT0xVTU4gZGVzY3JpcHRpb24gVE8gY29tbWVudDsKK0VSUk9S OiAgcGVybWlzc2lvbiBkZW5pZWQ6ICJwZ19kZXNjcmlwdGlvbiIgaXMgYSBzeXN0ZW0gY2F0 YWxvZworLS0gQVRTaW1wbGVQZXJtaXNzaW9ucygpCitBTFRFUiBUQUJMRSBwZ19kZXNjcmlw dGlvbiBBTFRFUiBDT0xVTU4gZGVzY3JpcHRpb24gU0VUIE5PVCBOVUxMOworRVJST1I6ICBw ZXJtaXNzaW9uIGRlbmllZDogInBnX2Rlc2NyaXB0aW9uIiBpcyBhIHN5c3RlbSBjYXRhbG9n CistLSBTRVQgU1RBVElTVElDUworQUxURVIgVEFCTEUgcGdfZGVzY3JpcHRpb24gQUxURVIg Q09MVU1OIGRlc2NyaXB0aW9uIFNFVCBTVEFUSVNUSUNTIC0xOworRVJST1I6ICBwZXJtaXNz aW9uIGRlbmllZDogInBnX2Rlc2NyaXB0aW9uIiBpcyBhIHN5c3RlbSBjYXRhbG9nCistLSBm b3JlaWduIGtleSByZWZlcmVuY2luZyBjYXRhbG9nCitCRUdJTjsKK0NSRUFURSBUQUJMRSBm b28gKGEgb2lkLCBiIG9pZCwgYyBpbnQsIEZPUkVJR04gS0VZIChhLCBiLCBjKSBSRUZFUkVO Q0VTIHBnX2Rlc2NyaXB0aW9uKTsKK0VSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQ6ICJwZ19k ZXNjcmlwdGlvbiIgaXMgYSBzeXN0ZW0gY2F0YWxvZworUk9MTEJBQ0s7CistLSBSYW5nZVZh ckNhbGxiYWNrT3duc1JlbGF0aW9uKCkKK0NSRUFURSBJTkRFWCBwZ19kZXNjcmlwdG9uX3Rl c3RfaW5kZXggT04gcGdfZGVzY3JpcHRpb24gKGRlc2NyaXB0aW9uKTsKK0VSUk9SOiAgcGVy bWlzc2lvbiBkZW5pZWQ6ICJwZ19kZXNjcmlwdGlvbiIgaXMgYSBzeXN0ZW0gY2F0YWxvZwor LS0gUmFuZ2VWYXJDYWxsYmFja0ZvckFsdGVyUmVsYXRpb24oKQorQUxURVIgVEFCTEUgcGdf ZGVzY3JpcHRpb24gUkVOQU1FIFRPIHBnX2NvbW1lbnQ7CitFUlJPUjogIHBlcm1pc3Npb24g ZGVuaWVkOiAicGdfZGVzY3JpcHRpb24iIGlzIGEgc3lzdGVtIGNhdGFsb2cKK0FMVEVSIFRB QkxFIHBnX2Rlc2NyaXB0aW9uIFNFVCBTQ0hFTUEgcHVibGljOworRVJST1I6ICBwZXJtaXNz aW9uIGRlbmllZDogInBnX2Rlc2NyaXB0aW9uIiBpcyBhIHN5c3RlbSBjYXRhbG9nCistLSBy ZXNlcnZlZCB0YWJsZXNwYWNlIG5hbWUKK0NSRUFURSBUQUJMRVNQQUNFIHBnX2ZvbyBMT0NB VElPTiAnL25vL3N1Y2gvbG9jYXRpb24nOworRVJST1I6ICB1bmFjY2VwdGFibGUgdGFibGVz cGFjZSBuYW1lICJwZ19mb28iCitERVRBSUw6ICBUaGUgcHJlZml4ICJwZ18iIGlzIHJlc2Vy dmVkIGZvciBzeXN0ZW0gdGFibGVzcGFjZXMuCistLSB0cmlnZ2VycworQ1JFQVRFIEZVTkNU SU9OIHRmMSgpIFJFVFVSTlMgdHJpZ2dlcgorTEFOR1VBR0UgcGxwZ3NxbAorQVMgJCQKK0JF R0lOCisgIFJFVFVSTiBOVUxMOworRU5EICQkOworQ1JFQVRFIFRSSUdHRVIgdDEgQkVGT1JF IElOU0VSVCBPTiBwZ19kZXNjcmlwdGlvbiBFWEVDVVRFIEZVTkNUSU9OIHRmMSgpOworRVJS T1I6ICBwZXJtaXNzaW9uIGRlbmllZDogInBnX2Rlc2NyaXB0aW9uIiBpcyBhIHN5c3RlbSBj YXRhbG9nCitBTFRFUiBUUklHR0VSIHQxIE9OIHBnX2Rlc2NyaXB0aW9uIFJFTkFNRSBUTyB0 MjsKK0VSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQ6ICJwZ19kZXNjcmlwdGlvbiIgaXMgYSBz eXN0ZW0gY2F0YWxvZworLS1EUk9QIFRSSUdHRVIgdDIgT04gcGdfZGVzY3JpcHRpb247Cist LSBydWxlcworQ1JFQVRFIFJVTEUgcjEgQVMgT04gSU5TRVJUIFRPIHBnX2Rlc2NyaXB0aW9u IERPIElOU1RFQUQgTk9USElORzsKK0VSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQ6ICJwZ19k ZXNjcmlwdGlvbiIgaXMgYSBzeXN0ZW0gY2F0YWxvZworQUxURVIgUlVMRSByMSBPTiBwZ19k ZXNjcmlwdGlvbiBSRU5BTUUgVE8gcjI7CitFUlJPUjogIHBlcm1pc3Npb24gZGVuaWVkOiAi cGdfZGVzY3JpcHRpb24iIGlzIGEgc3lzdGVtIGNhdGFsb2cKKy0tRFJPUCBSVUxFIHIyIE9O IHBnX2Rlc2NyaXB0aW9uOworU0VUIGFsbG93X3N5c3RlbV90YWJsZV9tb2RzID0gb247Cist LSBjcmVhdGUgbmV3IHRhYmxlIGluIHBnX2NhdGFsb2cKK0NSRUFURSBUQUJMRSBwZ19jYXRh bG9nLnRlc3QgKGEgaW50KTsKKy0tIGFueWFycmF5IGNvbHVtbgorQ1JFQVRFIFRBQkxFIHQx IChhIGludCwgYiBhbnlhcnJheSk7CistLSBpbmRleCBvbiBzeXN0ZW0gY2F0YWxvZworQ1JF QVRFIElOREVYIE9OIHBnX2NsYXNzIChyZWxuYW1lc3BhY2UpOworLS0gaW5kZXggb24gc3lz dGVtIGNhdGFsb2cKK0FMVEVSIFRBQkxFIHBnX25hbWVzcGFjZSBBREQgVU5JUVVFIFVTSU5H IElOREVYIHBnX25hbWVzcGFjZV9vaWRfaW5kZXg7CistLSB3cml0ZSB0byBzeXN0ZW0gY2F0 YWxvZyB0YWJsZSBhcyBzdXBlcnVzZXIKK0lOU0VSVCBJTlRPIHBnX2Rlc2NyaXB0aW9uIChv YmpvaWQsIGNsYXNzb2lkLCBvYmpzdWJpZCwgZGVzY3JpcHRpb24pIFZBTFVFUyAoMCwgMCwg MiwgJ2ZvbycpOworLS0gd3JpdGUgdG8gc3lzdGVtIGNhdGFsb2cgdGFibGUgYXMgbm9ybWFs IHVzZXIKK1NFVCBST0xFIHJlZ3Jlc3NfdXNlcl9hc3Q7CitJTlNFUlQgSU5UTyBwZ19kZXNj cmlwdGlvbiAob2Jqb2lkLCBjbGFzc29pZCwgb2Jqc3ViaWQsIGRlc2NyaXB0aW9uKSBWQUxV RVMgKDAsIDAsIDMsICdmb28nKTsKK1JFU0VUIFJPTEU7CistLSBwb2xpY3kgb24gc3lzdGVt IGNhdGFsb2cKK0NSRUFURSBQT0xJQ1kgZm9vIE9OIHBnX2Rlc2NyaXB0aW9uIEZPUiBTRUxF Q1QgVVNJTkcgKGRlc2NyaXB0aW9uIE5PVCBMSUtFICdzZWNyZXQlJyk7CistLSByZXNlcnZl ZCBzY2hlbWEgbmFtZQorQ1JFQVRFIFNDSEVNQSBwZ19mb287CistLSBkcm9wIHN5c3RlbSB0 YWJsZQorQkVHSU47CitEUk9QIFRBQkxFIHBnX2Rlc2NyaXB0aW9uOworRVJST1I6ICBjYW5u b3QgZHJvcCB0YWJsZSBwZ19kZXNjcmlwdGlvbiBiZWNhdXNlIGl0IGlzIHJlcXVpcmVkIGJ5 IHRoZSBkYXRhYmFzZSBzeXN0ZW0KK1JPTExCQUNLOworLS0gdHJ1bmNhdGUgb2Ygc3lzdGVt IHRhYmxlCitCRUdJTjsKK1RSVU5DQVRFIHBnX2Rlc2NyaXB0aW9uOworUk9MTEJBQ0s7Cist LSByZW5hbWUgY29sdW1uIG9mIHN5c3RlbSB0YWJsZQorQkVHSU47CitBTFRFUiBUQUJMRSBw Z19kZXNjcmlwdGlvbiBSRU5BTUUgQ09MVU1OIGRlc2NyaXB0aW9uIFRPIGNvbW1lbnQ7CitS T0xMQkFDSzsKKy0tIEFUU2ltcGxlUGVybWlzc2lvbnMoKQorQUxURVIgVEFCTEUgcGdfZGVz Y3JpcHRpb24gQUxURVIgQ09MVU1OIGRlc2NyaXB0aW9uIFNFVCBOT1QgTlVMTDsKKy0tIFNF VCBTVEFUSVNUSUNTCitBTFRFUiBUQUJMRSBwZ19kZXNjcmlwdGlvbiBBTFRFUiBDT0xVTU4g ZGVzY3JpcHRpb24gU0VUIFNUQVRJU1RJQ1MgLTE7CistLSBmb3JlaWduIGtleSByZWZlcmVu Y2luZyBjYXRhbG9nCitCRUdJTjsKK0FMVEVSIFRBQkxFIHBnX2Rlc2NyaXB0aW9uIEFERCBQ UklNQVJZIEtFWSBVU0lORyBJTkRFWCBwZ19kZXNjcmlwdGlvbl9vX2Nfb19pbmRleDsKK0NS RUFURSBUQUJMRSBmb28gKGEgb2lkLCBiIG9pZCwgYyBpbnQsIEZPUkVJR04gS0VZIChhLCBi LCBjKSBSRUZFUkVOQ0VTIHBnX2Rlc2NyaXB0aW9uKTsKK1JPTExCQUNLOworLS0gUmFuZ2VW YXJDYWxsYmFja093bnNSZWxhdGlvbigpCitDUkVBVEUgSU5ERVggcGdfZGVzY3JpcHRvbl90 ZXN0X2luZGV4IE9OIHBnX2Rlc2NyaXB0aW9uIChkZXNjcmlwdGlvbik7CistLSBSYW5nZVZh ckNhbGxiYWNrRm9yQWx0ZXJSZWxhdGlvbigpCitCRUdJTjsKK0FMVEVSIFRBQkxFIHBnX2Rl c2NyaXB0aW9uIFJFTkFNRSBUTyBwZ19jb21tZW50OworUk9MTEJBQ0s7CitCRUdJTjsKK0FM VEVSIFRBQkxFIHBnX2Rlc2NyaXB0aW9uIFNFVCBTQ0hFTUEgcHVibGljOworUk9MTEJBQ0s7 CistLSByZXNlcnZlZCB0YWJsZXNwYWNlIG5hbWUKK0NSRUFURSBUQUJMRVNQQUNFIHBnX2Zv byBMT0NBVElPTiAnL25vL3N1Y2gvbG9jYXRpb24nOworRVJST1I6ICBkaXJlY3RvcnkgIi9u by9zdWNoL2xvY2F0aW9uIiBkb2VzIG5vdCBleGlzdAorLS0gdHJpZ2dlcnMKK0NSRUFURSBU UklHR0VSIHQxIEJFRk9SRSBJTlNFUlQgT04gcGdfZGVzY3JpcHRpb24gRVhFQ1VURSBGVU5D VElPTiB0ZjEoKTsKK0FMVEVSIFRSSUdHRVIgdDEgT04gcGdfZGVzY3JpcHRpb24gUkVOQU1F IFRPIHQyOworRFJPUCBUUklHR0VSIHQyIE9OIHBnX2Rlc2NyaXB0aW9uOworLS0gcnVsZXMK K0NSRUFURSBSVUxFIHIxIEFTIE9OIElOU0VSVCBUTyBwZ19kZXNjcmlwdGlvbiBETyBJTlNU RUFEIE5PVEhJTkc7CitBTFRFUiBSVUxFIHIxIE9OIHBnX2Rlc2NyaXB0aW9uIFJFTkFNRSBU TyByMjsKK0RST1AgUlVMRSByMiBPTiBwZ19kZXNjcmlwdGlvbjsKKy0tIGNsZWFudXAKK1JF Vk9LRSBBTEwgT04gcGdfZGVzY3JpcHRpb24gRlJPTSByZWdyZXNzX3VzZXJfYXN0OworREVM RVRFIEZST00gcGdfZGVzY3JpcHRpb24gV0hFUkUgb2Jqb2lkID0gMCBBTkQgY2xhc3NvaWQg PSAwOworRFJPUCBVU0VSIHJlZ3Jlc3NfdXNlcl9hc3Q7CitEUk9QIEZVTkNUSU9OIHRmMTsK ZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2NoZWR1bGUgYi9zcmMv dGVzdC9yZWdyZXNzL3BhcmFsbGVsX3NjaGVkdWxlCmluZGV4IGYyM2ZlOGQ4NzAuLjYyOTFh OWMyNzkgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2NoZWR1bGUK KysrIGIvc3JjL3Rlc3QvcmVncmVzcy9wYXJhbGxlbF9zY2hlZHVsZQpAQCAtMTIwLDMgKzEy MCw2IEBAIHRlc3Q6IGZhc3RfZGVmYXVsdAogCiAjIHJ1biBzdGF0cyBieSBpdHNlbGYgYmVj YXVzZSBpdHMgZGVsYXkgbWF5IGJlIGluc3VmZmljaWVudCB1bmRlciBoZWF2eSBsb2FkCiB0 ZXN0OiBzdGF0cworCisjIFRPRE8KK3Rlc3Q6IGFsdGVyX3N5c3RlbV90YWJsZQpkaWZmIC0t Z2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvYWx0ZXJfc3lzdGVtX3RhYmxlLnNxbCBiL3Ny Yy90ZXN0L3JlZ3Jlc3Mvc3FsL2FsdGVyX3N5c3RlbV90YWJsZS5zcWwKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uODNhMGFiZTRiOQotLS0gL2Rldi9udWxsCisr KyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2FsdGVyX3N5c3RlbV90YWJsZS5zcWwKQEAgLTAs MCArMSwxNjUgQEAKK0NSRUFURSBVU0VSIHJlZ3Jlc3NfdXNlcl9hc3Q7CisKK1NFVCBhbGxv d19zeXN0ZW1fdGFibGVfbW9kcyA9IG9mZjsKKworLS0gY3JlYXRlIG5ldyB0YWJsZSBpbiBw Z19jYXRhbG9nCitDUkVBVEUgVEFCTEUgcGdfY2F0YWxvZy50ZXN0IChhIGludCk7CisKKy0t IGFueWFycmF5IGNvbHVtbgorQ1JFQVRFIFRBQkxFIHQxeCAoYSBpbnQsIGIgYW55YXJyYXkp OworCistLSBpbmRleCBvbiBzeXN0ZW0gY2F0YWxvZworQ1JFQVRFIElOREVYIE9OIHBnX2Ns YXNzIChyZWxuYW1lc3BhY2UpOworCistLSBpbmRleCBvbiBzeXN0ZW0gY2F0YWxvZworQUxU RVIgVEFCTEUgcGdfbmFtZXNwYWNlIEFERCBVTklRVUUgVVNJTkcgSU5ERVggcGdfbmFtZXNw YWNlX29pZF9pbmRleDsKKworLS0gd3JpdGUgdG8gc3lzdGVtIGNhdGFsb2cgdGFibGUgYXMg c3VwZXJ1c2VyCistLSAoZG9lcyBub3QgbmVlZCBhbGxvd19zeXN0ZW1fdGFibGVfbW9kcykK K0lOU0VSVCBJTlRPIHBnX2Rlc2NyaXB0aW9uIChvYmpvaWQsIGNsYXNzb2lkLCBvYmpzdWJp ZCwgZGVzY3JpcHRpb24pIFZBTFVFUyAoMCwgMCwgMCwgJ2ZvbycpOworCistLSB3cml0ZSB0 byBzeXN0ZW0gY2F0YWxvZyB0YWJsZSBhcyBub3JtYWwgdXNlcgorR1JBTlQgSU5TRVJUIE9O IHBnX2Rlc2NyaXB0aW9uIFRPIHJlZ3Jlc3NfdXNlcl9hc3Q7CitTRVQgUk9MRSByZWdyZXNz X3VzZXJfYXN0OworSU5TRVJUIElOVE8gcGdfZGVzY3JpcHRpb24gKG9iam9pZCwgY2xhc3Nv aWQsIG9ianN1YmlkLCBkZXNjcmlwdGlvbikgVkFMVUVTICgwLCAwLCAxLCAnZm9vJyk7CitS RVNFVCBST0xFOworCistLSBwb2xpY3kgb24gc3lzdGVtIGNhdGFsb2cKK0NSRUFURSBQT0xJ Q1kgZm9vIE9OIHBnX2Rlc2NyaXB0aW9uIEZPUiBTRUxFQ1QgVVNJTkcgKGRlc2NyaXB0aW9u IE5PVCBMSUtFICdzZWNyZXQlJyk7CisKKy0tIHJlc2VydmVkIHNjaGVtYSBuYW1lCitDUkVB VEUgU0NIRU1BIHBnX2ZvbzsKKworLS0gZHJvcCBzeXN0ZW0gdGFibGUKK0RST1AgVEFCTEUg cGdfZGVzY3JpcHRpb247CisKKy0tIHRydW5jYXRlIG9mIHN5c3RlbSB0YWJsZQorVFJVTkNB VEUgcGdfZGVzY3JpcHRpb247CisKKy0tIHJlbmFtZSBjb2x1bW4gb2Ygc3lzdGVtIHRhYmxl CitBTFRFUiBUQUJMRSBwZ19kZXNjcmlwdGlvbiBSRU5BTUUgQ09MVU1OIGRlc2NyaXB0aW9u IFRPIGNvbW1lbnQ7CisKKy0tIEFUU2ltcGxlUGVybWlzc2lvbnMoKQorQUxURVIgVEFCTEUg cGdfZGVzY3JpcHRpb24gQUxURVIgQ09MVU1OIGRlc2NyaXB0aW9uIFNFVCBOT1QgTlVMTDsK KworLS0gU0VUIFNUQVRJU1RJQ1MKK0FMVEVSIFRBQkxFIHBnX2Rlc2NyaXB0aW9uIEFMVEVS IENPTFVNTiBkZXNjcmlwdGlvbiBTRVQgU1RBVElTVElDUyAtMTsKKworLS0gZm9yZWlnbiBr ZXkgcmVmZXJlbmNpbmcgY2F0YWxvZworQkVHSU47CitDUkVBVEUgVEFCTEUgZm9vIChhIG9p ZCwgYiBvaWQsIGMgaW50LCBGT1JFSUdOIEtFWSAoYSwgYiwgYykgUkVGRVJFTkNFUyBwZ19k ZXNjcmlwdGlvbik7CitST0xMQkFDSzsKKworLS0gUmFuZ2VWYXJDYWxsYmFja093bnNSZWxh dGlvbigpCitDUkVBVEUgSU5ERVggcGdfZGVzY3JpcHRvbl90ZXN0X2luZGV4IE9OIHBnX2Rl c2NyaXB0aW9uIChkZXNjcmlwdGlvbik7CisKKy0tIFJhbmdlVmFyQ2FsbGJhY2tGb3JBbHRl clJlbGF0aW9uKCkKK0FMVEVSIFRBQkxFIHBnX2Rlc2NyaXB0aW9uIFJFTkFNRSBUTyBwZ19j b21tZW50OworQUxURVIgVEFCTEUgcGdfZGVzY3JpcHRpb24gU0VUIFNDSEVNQSBwdWJsaWM7 CisKKy0tIHJlc2VydmVkIHRhYmxlc3BhY2UgbmFtZQorQ1JFQVRFIFRBQkxFU1BBQ0UgcGdf Zm9vIExPQ0FUSU9OICcvbm8vc3VjaC9sb2NhdGlvbic7CisKKy0tIHRyaWdnZXJzCitDUkVB VEUgRlVOQ1RJT04gdGYxKCkgUkVUVVJOUyB0cmlnZ2VyCitMQU5HVUFHRSBwbHBnc3FsCitB UyAkJAorQkVHSU4KKyAgUkVUVVJOIE5VTEw7CitFTkQgJCQ7CisKK0NSRUFURSBUUklHR0VS IHQxIEJFRk9SRSBJTlNFUlQgT04gcGdfZGVzY3JpcHRpb24gRVhFQ1VURSBGVU5DVElPTiB0 ZjEoKTsKK0FMVEVSIFRSSUdHRVIgdDEgT04gcGdfZGVzY3JpcHRpb24gUkVOQU1FIFRPIHQy OworLS1EUk9QIFRSSUdHRVIgdDIgT04gcGdfZGVzY3JpcHRpb247CisKKy0tIHJ1bGVzCitD UkVBVEUgUlVMRSByMSBBUyBPTiBJTlNFUlQgVE8gcGdfZGVzY3JpcHRpb24gRE8gSU5TVEVB RCBOT1RISU5HOworQUxURVIgUlVMRSByMSBPTiBwZ19kZXNjcmlwdGlvbiBSRU5BTUUgVE8g cjI7CistLURST1AgUlVMRSByMiBPTiBwZ19kZXNjcmlwdGlvbjsKKworCitTRVQgYWxsb3df c3lzdGVtX3RhYmxlX21vZHMgPSBvbjsKKworLS0gY3JlYXRlIG5ldyB0YWJsZSBpbiBwZ19j YXRhbG9nCitDUkVBVEUgVEFCTEUgcGdfY2F0YWxvZy50ZXN0IChhIGludCk7CisKKy0tIGFu eWFycmF5IGNvbHVtbgorQ1JFQVRFIFRBQkxFIHQxIChhIGludCwgYiBhbnlhcnJheSk7CisK Ky0tIGluZGV4IG9uIHN5c3RlbSBjYXRhbG9nCitDUkVBVEUgSU5ERVggT04gcGdfY2xhc3Mg KHJlbG5hbWVzcGFjZSk7CisKKy0tIGluZGV4IG9uIHN5c3RlbSBjYXRhbG9nCitBTFRFUiBU QUJMRSBwZ19uYW1lc3BhY2UgQUREIFVOSVFVRSBVU0lORyBJTkRFWCBwZ19uYW1lc3BhY2Vf b2lkX2luZGV4OworCistLSB3cml0ZSB0byBzeXN0ZW0gY2F0YWxvZyB0YWJsZSBhcyBzdXBl cnVzZXIKK0lOU0VSVCBJTlRPIHBnX2Rlc2NyaXB0aW9uIChvYmpvaWQsIGNsYXNzb2lkLCBv YmpzdWJpZCwgZGVzY3JpcHRpb24pIFZBTFVFUyAoMCwgMCwgMiwgJ2ZvbycpOworCistLSB3 cml0ZSB0byBzeXN0ZW0gY2F0YWxvZyB0YWJsZSBhcyBub3JtYWwgdXNlcgorU0VUIFJPTEUg cmVncmVzc191c2VyX2FzdDsKK0lOU0VSVCBJTlRPIHBnX2Rlc2NyaXB0aW9uIChvYmpvaWQs IGNsYXNzb2lkLCBvYmpzdWJpZCwgZGVzY3JpcHRpb24pIFZBTFVFUyAoMCwgMCwgMywgJ2Zv bycpOworUkVTRVQgUk9MRTsKKworLS0gcG9saWN5IG9uIHN5c3RlbSBjYXRhbG9nCitDUkVB VEUgUE9MSUNZIGZvbyBPTiBwZ19kZXNjcmlwdGlvbiBGT1IgU0VMRUNUIFVTSU5HIChkZXNj cmlwdGlvbiBOT1QgTElLRSAnc2VjcmV0JScpOworCistLSByZXNlcnZlZCBzY2hlbWEgbmFt ZQorQ1JFQVRFIFNDSEVNQSBwZ19mb287CisKKy0tIGRyb3Agc3lzdGVtIHRhYmxlCitCRUdJ TjsKK0RST1AgVEFCTEUgcGdfZGVzY3JpcHRpb247CitST0xMQkFDSzsKKworLS0gdHJ1bmNh dGUgb2Ygc3lzdGVtIHRhYmxlCitCRUdJTjsKK1RSVU5DQVRFIHBnX2Rlc2NyaXB0aW9uOwor Uk9MTEJBQ0s7CisKKy0tIHJlbmFtZSBjb2x1bW4gb2Ygc3lzdGVtIHRhYmxlCitCRUdJTjsK K0FMVEVSIFRBQkxFIHBnX2Rlc2NyaXB0aW9uIFJFTkFNRSBDT0xVTU4gZGVzY3JpcHRpb24g VE8gY29tbWVudDsKK1JPTExCQUNLOworCistLSBBVFNpbXBsZVBlcm1pc3Npb25zKCkKK0FM VEVSIFRBQkxFIHBnX2Rlc2NyaXB0aW9uIEFMVEVSIENPTFVNTiBkZXNjcmlwdGlvbiBTRVQg Tk9UIE5VTEw7CisKKy0tIFNFVCBTVEFUSVNUSUNTCitBTFRFUiBUQUJMRSBwZ19kZXNjcmlw dGlvbiBBTFRFUiBDT0xVTU4gZGVzY3JpcHRpb24gU0VUIFNUQVRJU1RJQ1MgLTE7CisKKy0t IGZvcmVpZ24ga2V5IHJlZmVyZW5jaW5nIGNhdGFsb2cKK0JFR0lOOworQUxURVIgVEFCTEUg cGdfZGVzY3JpcHRpb24gQUREIFBSSU1BUlkgS0VZIFVTSU5HIElOREVYIHBnX2Rlc2NyaXB0 aW9uX29fY19vX2luZGV4OworQ1JFQVRFIFRBQkxFIGZvbyAoYSBvaWQsIGIgb2lkLCBjIGlu dCwgRk9SRUlHTiBLRVkgKGEsIGIsIGMpIFJFRkVSRU5DRVMgcGdfZGVzY3JpcHRpb24pOwor Uk9MTEJBQ0s7CisKKy0tIFJhbmdlVmFyQ2FsbGJhY2tPd25zUmVsYXRpb24oKQorQ1JFQVRF IElOREVYIHBnX2Rlc2NyaXB0b25fdGVzdF9pbmRleCBPTiBwZ19kZXNjcmlwdGlvbiAoZGVz Y3JpcHRpb24pOworCistLSBSYW5nZVZhckNhbGxiYWNrRm9yQWx0ZXJSZWxhdGlvbigpCitC RUdJTjsKK0FMVEVSIFRBQkxFIHBnX2Rlc2NyaXB0aW9uIFJFTkFNRSBUTyBwZ19jb21tZW50 OworUk9MTEJBQ0s7CitCRUdJTjsKK0FMVEVSIFRBQkxFIHBnX2Rlc2NyaXB0aW9uIFNFVCBT Q0hFTUEgcHVibGljOworUk9MTEJBQ0s7CisKKy0tIHJlc2VydmVkIHRhYmxlc3BhY2UgbmFt ZQorQ1JFQVRFIFRBQkxFU1BBQ0UgcGdfZm9vIExPQ0FUSU9OICcvbm8vc3VjaC9sb2NhdGlv bic7CisKKy0tIHRyaWdnZXJzCitDUkVBVEUgVFJJR0dFUiB0MSBCRUZPUkUgSU5TRVJUIE9O IHBnX2Rlc2NyaXB0aW9uIEVYRUNVVEUgRlVOQ1RJT04gdGYxKCk7CitBTFRFUiBUUklHR0VS IHQxIE9OIHBnX2Rlc2NyaXB0aW9uIFJFTkFNRSBUTyB0MjsKK0RST1AgVFJJR0dFUiB0MiBP TiBwZ19kZXNjcmlwdGlvbjsKKworLS0gcnVsZXMKK0NSRUFURSBSVUxFIHIxIEFTIE9OIElO U0VSVCBUTyBwZ19kZXNjcmlwdGlvbiBETyBJTlNURUFEIE5PVEhJTkc7CitBTFRFUiBSVUxF IHIxIE9OIHBnX2Rlc2NyaXB0aW9uIFJFTkFNRSBUTyByMjsKK0RST1AgUlVMRSByMiBPTiBw Z19kZXNjcmlwdGlvbjsKKworCistLSBjbGVhbnVwCitSRVZPS0UgQUxMIE9OIHBnX2Rlc2Ny aXB0aW9uIEZST00gcmVncmVzc191c2VyX2FzdDsKK0RFTEVURSBGUk9NIHBnX2Rlc2NyaXB0 aW9uIFdIRVJFIG9iam9pZCA9IDAgQU5EIGNsYXNzb2lkID0gMDsKK0RST1AgVVNFUiByZWdy ZXNzX3VzZXJfYXN0OworRFJPUCBGVU5DVElPTiB0ZjE7Ci0tIAoyLjIyLjAKCg== --------------8039280D30AE1C50B02EB5FB Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="v1-0003-Disable-dead-code.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="v1-0003-Disable-dead-code.patch" RnJvbSBlMDAwOGM4ZTE1MDRhZjFlOGM1ZGUyNWMyOTkxNDIzYWRiOGVhMzBmIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBFaXNlbnRyYXV0IDxwZXRlckBlaXNlbnRy YXV0Lm9yZz4KRGF0ZTogRnJpLCAyMSBKdW4gMjAxOSAxMDoyNDowMyArMDIwMApTdWJqZWN0 OiBbUEFUQ0ggdjEgMy8zXSBEaXNhYmxlIGRlYWQgY29kZQoKLS0tCiBzcmMvYmFja2VuZC9j YXRhbG9nL2luZGV4LmMgfCA0ICsrKysKIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMo KykKCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL2luZGV4LmMgYi9zcmMvYmFj a2VuZC9jYXRhbG9nL2luZGV4LmMKaW5kZXggNTg3YjcxNzI0Mi4uNzFlZDllYTYzOSAxMDA2 NDQKLS0tIGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9pbmRleC5jCisrKyBiL3NyYy9iYWNrZW5k L2NhdGFsb2cvaW5kZXguYwpAQCAtNzU1LDEyICs3NTUsMTQgQEAgaW5kZXhfY3JlYXRlKFJl bGF0aW9uIGhlYXBSZWxhdGlvbiwKIAlpZiAoaW5kZXhJbmZvLT5paV9OdW1JbmRleEF0dHJz IDwgMSkKIAkJZWxvZyhFUlJPUiwgIm11c3QgaW5kZXggYXQgbGVhc3Qgb25lIGNvbHVtbiIp OwogCisjaWZkZWYgTk9UX1VTRUQKIAlpZiAoIWFsbG93X3N5c3RlbV90YWJsZV9tb2RzICYm CiAJCUlzU3lzdGVtUmVsYXRpb24oaGVhcFJlbGF0aW9uKSAmJgogCQlJc05vcm1hbFByb2Nl c3NpbmdNb2RlKCkpCiAJCWVyZXBvcnQoRVJST1IsCiAJCQkJKGVycmNvZGUoRVJSQ09ERV9G RUFUVVJFX05PVF9TVVBQT1JURUQpLAogCQkJCSBlcnJtc2coInVzZXItZGVmaW5lZCBpbmRl eGVzIG9uIHN5c3RlbSBjYXRhbG9nIHRhYmxlcyBhcmUgbm90IHN1cHBvcnRlZCIpKSk7Cisj ZW5kaWYKIAogCS8qCiAJICogQ29uY3VycmVudCBpbmRleCBidWlsZCBvbiBhIHN5c3RlbSBj YXRhbG9nIGlzIHVuc2FmZSBiZWNhdXNlIHdlIHRlbmQgdG8KQEAgLTE3MDAsNiArMTcwMiw3 IEBAIGluZGV4X2NvbnN0cmFpbnRfY3JlYXRlKFJlbGF0aW9uIGhlYXBSZWxhdGlvbiwKIAkv KiBjb25zdHJhaW50IGNyZWF0aW9uIHN1cHBvcnQgZG9lc24ndCB3b3JrIHdoaWxlIGJvb3Rz dHJhcHBpbmcgKi8KIAlBc3NlcnQoIUlzQm9vdHN0cmFwUHJvY2Vzc2luZ01vZGUoKSk7CiAK KyNpZmRlZiBOT1RfVVNFRAogCS8qIGVuZm9yY2Ugc3lzdGVtLXRhYmxlIHJlc3RyaWN0aW9u ICovCiAJaWYgKCFhbGxvd19zeXN0ZW1fdGFibGVfbW9kcyAmJgogCQlJc1N5c3RlbVJlbGF0 aW9uKGhlYXBSZWxhdGlvbikgJiYKQEAgLTE3MDcsNiArMTcxMCw3IEBAIGluZGV4X2NvbnN0 cmFpbnRfY3JlYXRlKFJlbGF0aW9uIGhlYXBSZWxhdGlvbiwKIAkJZXJlcG9ydChFUlJPUiwK IAkJCQkoZXJyY29kZShFUlJDT0RFX0ZFQVRVUkVfTk9UX1NVUFBPUlRFRCksCiAJCQkJIGVy cm1zZygidXNlci1kZWZpbmVkIGluZGV4ZXMgb24gc3lzdGVtIGNhdGFsb2cgdGFibGVzIGFy ZSBub3Qgc3VwcG9ydGVkIikpKTsKKyNlbmRpZgogCiAJLyogcHJpbWFyeS91bmlxdWUgY29u c3RyYWludHMgc2hvdWxkbid0IGhhdmUgYW55IGV4cHJlc3Npb25zICovCiAJaWYgKGluZGV4 SW5mby0+aWlfRXhwcmVzc2lvbnMgJiYKLS0gCjIuMjIuMAoK --------------8039280D30AE1C50B02EB5FB--