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 1gvjR4-0003Le-ST for pgsql-hackers@arkaria.postgresql.org; Mon, 18 Feb 2019 13:58:19 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1gvjR3-0008ND-OC for pgsql-hackers@arkaria.postgresql.org; Mon, 18 Feb 2019 13:58:17 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1gvjR2-0008Ms-Oa for pgsql-hackers@lists.postgresql.org; Mon, 18 Feb 2019 13:58:17 +0000 Received: from out2-smtp.messagingengine.com ([66.111.4.26]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1gvjQz-00023B-8c for pgsql-hackers@postgresql.org; Mon, 18 Feb 2019 13:58:16 +0000 Received: from compute7.internal (compute7.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id 0E475218A8 for ; Mon, 18 Feb 2019 08:58:12 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute7.internal (MEProxy); Mon, 18 Feb 2019 08:58:12 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=UexprF xMKB40FtUq6Fr9cLuNIyqPQzfkETDvVAdfcEI=; b=wYvP1X83PQL6f3Le2+grdU oQnkhRLqMiIYdbNccM42qQy35YlEPV8UYOxGmThDnWuLTjNQ9N5EnPLcx8UCwsVe rbnCBCkRcLVKhP1pqEQ1M+rd4UA/J/ClvPWg6DutP41TazCaSPLkyqDfsQ+vNYSr FjM77aw53V9GiYhh4cGVUGULbSCn3rj17hFMdvng3at0E5ib7qQuWNAROfEyOlwX 0W3mJchfCX7dOfCeYraWHtzPNLEJ+G5782gvA7hWDD1QAn2FcuD1vV/uP7FY3/Zq fR6K+LFkVF7DeLGnwRPofH6xaf6jss+kxr02Yt3Uvh2JbM7QN/Ma7Dq8EClOn2Ow == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedutddrtddugddvieculddtuddrgedtledrtddtmd cutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfhuthen uceurghilhhouhhtmecufedttdenucenucfjughrpefuhffvfhhokffffgggjggtsehmtd erredtfeejnecuhfhrohhmpefrvghtvghrucfgihhsvghnthhrrghuthcuoehpvghtvghr rdgvihhsvghnthhrrghuthesvdhnughquhgrughrrghnthdrtghomheqnecuffhomhgrih hnpedvnhguqhhurggurhgrnhhtrdgtohhmnecukfhppeelfedrvdegfedrjedvrdduudel necurfgrrhgrmhepmhgrihhlfhhrohhmpehpvghtvghrrdgvihhsvghnthhrrghuthesvd hnughquhgrughrrghnthdrtghomhenucevlhhushhtvghrufhiiigvpedt X-ME-Proxy: Received: from april.pezone.net (p5df34877.dip0.t-ipconnect.de [93.243.72.119]) by mail.messagingengine.com (Postfix) with ESMTPA id B2FADE4549 for ; Mon, 18 Feb 2019 08:58:10 -0500 (EST) Subject: Re: libpq environment variables in the server From: Peter Eisentraut To: pgsql-hackers References: <33383613-690e-6f1b-d5ba-4957ff40f6ce@2ndquadrant.com> Openpgp: preference=signencrypt Autocrypt: addr=peter.eisentraut@2ndquadrant.com; prefer-encrypt=mutual; keydata= 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 3jI= Organization: 2ndQuadrant Message-ID: <744962da-c27f-c992-4058-364463857ee0@2ndquadrant.com> Date: Mon, 18 Feb 2019 14:58:09 +0100 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 In-Reply-To: <33383613-690e-6f1b-d5ba-4957ff40f6ce@2ndquadrant.com> Content-Type: multipart/mixed; boundary="------------B934DE0090B9AF2459CCB2CB" 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. --------------B934DE0090B9AF2459CCB2CB Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit On 2019-01-21 11:42, Peter Eisentraut wrote: > Maybe pg_ctl should have some functionality to clear the environment, > and maybe there could be a facility in postgresql.conf to set > environment variables. After pondering this, this seemed to be the best solution. Many init systems already clear the environment by default, so that the started services don't have random environment settings inherited from the user. However, you can't easily do this when using pg_ctl directly, so having an option to clear the environment in pg_ctl seems generally useful. Then we can use it in the test suites and thus avoid environment variables leaking in in unintended ways. That revealed that we do need the second mechanism to set environment variables after everything has been cleared. One example in the test suite is LDAPCONF. But there are other cases that could be useful, such as any environment settings that would support archive_command or restore_command. I think this would also be a nice feature in general, so that you can keep all the configuration together in the configuration files and don't have to rely on external mechanisms to inject these environment variables. Attached are two patches that implement these features. -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services --------------B934DE0090B9AF2459CCB2CB Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="v1-0001-Add-GUC-parameter-environment.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="v1-0001-Add-GUC-parameter-environment.patch" RnJvbSBkZDc2MDMzYzg3ZGRmZTYwYzUwZTZiYjM5N2MxMjNmNDg5Y2FkYzFjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBFaXNlbnRyYXV0IDxwZXRlckBlaXNlbnRy YXV0Lm9yZz4KRGF0ZTogTW9uLCAxOCBGZWIgMjAxOSAxNDozNjo1MyArMDEwMApTdWJqZWN0 OiBbUEFUQ0ggdjEgMS8yXSBBZGQgR1VDIHBhcmFtZXRlciAiZW52aXJvbm1lbnQiCgpUaGlz IGFsbG93cyBzZXR0aW5nIGVudmlyb25tZW50IHZhcmlhYmxlcyBpbnNpZGUgdGhlIHNlcnZl ciBwcm9jZXNzZXMsCmZvciB1c2UgYnkgdGhpcmQtcGFydHkgbGlicmFyaWVzLCBsaWtlIExE QVBDT05GLiAgUHJldmlvdXNseSwgdGhpcyBoYWQKdG8gYmUgZG9uZSB2aWEgZXh0ZXJuYWwg bWVjaGFuaXNtcyBzdWNoIGFzIGluaXQgc2NyaXB0cy4KLS0tCiBkb2Mvc3JjL3NnbWwvY29u ZmlnLnNnbWwgICAgICAgICAgICAgICAgICAgICAgfCAyMSArKysrKysrKysrCiBzcmMvYmFj a2VuZC91dGlscy9taXNjL2d1Yy5jICAgICAgICAgICAgICAgICAgfCA0MCArKysrKysrKysr KysrKysrKysrCiBzcmMvYmFja2VuZC91dGlscy9taXNjL3Bvc3RncmVzcWwuY29uZi5zYW1w bGUgfCAgMSArCiBzcmMvaW5jbHVkZS91dGlscy9ndWMuaCAgICAgICAgICAgICAgICAgICAg ICAgfCAgMiArCiA0IGZpbGVzIGNoYW5nZWQsIDY0IGluc2VydGlvbnMoKykKCmRpZmYgLS1n aXQgYS9kb2Mvc3JjL3NnbWwvY29uZmlnLnNnbWwgYi9kb2Mvc3JjL3NnbWwvY29uZmlnLnNn bWwKaW5kZXggOGJkNTdmMzc2Yi4uYWNiY2Y1NTU5YiAxMDA2NDQKLS0tIGEvZG9jL3NyYy9z Z21sL2NvbmZpZy5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9jb25maWcuc2dtbApAQCAtODMw NCw2ICs4MzA0LDI3IEBAIDx0aXRsZT5PdGhlciBEZWZhdWx0czwvdGl0bGU+CiAgICAgICA8 L2xpc3RpdGVtPgogICAgICA8L3Zhcmxpc3RlbnRyeT4KIAorICAgICA8dmFybGlzdGVudHJ5 IGlkPSJndWMtZW52aXJvbm1lbnQiIHhyZWZsYWJlbD0iZW52aXJvbm1lbnQiPgorICAgICAg PHRlcm0+PHZhcm5hbWU+ZW52aXJvbm1lbnQ8L3Zhcm5hbWU+ICg8dHlwZT5zdHJpbmc8L3R5 cGU+KQorICAgICAgPGluZGV4dGVybT4KKyAgICAgICA8cHJpbWFyeT48dmFybmFtZT5lbnZp cm9ubWVudDwvdmFybmFtZT4gY29uZmlndXJhdGlvbiBwYXJhbWV0ZXI8L3ByaW1hcnk+Cisg ICAgICA8L2luZGV4dGVybT4KKyAgICAgIDwvdGVybT4KKyAgICAgIDxsaXN0aXRlbT4KKyAg ICAgICA8cGFyYT4KKyAgICAgICAgQSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBlbnZpcm9u bWVudCB2YXJpYWJsZSBhc3NpZ25tZW50cyB0byBhcHBseQorICAgICAgICBpbnNpZGUgdGhl IDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gc2VydmVyIHByb2Nlc3Mu ICBUaGlzCisgICAgICAgIGNhbiBiZSB1c2VkIHRvIHN1cHBseSBjb25maWd1cmF0aW9uIGlu Zm9ybWF0aW9uIG9yIGRlYnVnZ2luZyBzZXR0aW5ncworICAgICAgICB0byB0aGlyZC1wYXJ0 eSBsaWJyYXJpZXMgb3IgcGx1Z2lucy4gIEV4YW1wbGU6Cis8cHJvZ3JhbWxpc3Rpbmc+ZW52 aXJvbm1lbnQgPSAnTERBUENPTkY9L3NvbWUvZmlsZSxSU1lOQ19SU0g9c3NoJzwvcHJvZ3Jh bWxpc3Rpbmc+CisgICAgICAgIFRoaXMgcGFyYW1ldGVyIGNhbiBvbmx5IGJlIHNldCBpbiB0 aGUKKyAgICAgICAgPGZpbGVuYW1lPnBvc3RncmVzcWwuY29uZjwvZmlsZW5hbWU+IGZpbGUg b3Igb24gdGhlIHNlcnZlciBjb21tYW5kCisgICAgICAgIGxpbmUuICBOb3RlIHRoYXQgY2hh bmdpbmcgdGhpcyBwYXJhbWV0ZXIgYXQgcnVuIHRpbWUgd2lsbCBub3QgdW5zZXQKKyAgICAg ICAgcHJldmlvdXNseSBzZXQgZW52aXJvbm1lbnQgdmFyaWFibGVzLgorICAgICAgIDwvcGFy YT4KKyAgICAgIDwvbGlzdGl0ZW0+CisgICAgIDwvdmFybGlzdGVudHJ5PgorCiAgICAgIDx2 YXJsaXN0ZW50cnkgaWQ9Imd1Yy1naW4tZnV6enktc2VhcmNoLWxpbWl0IiB4cmVmbGFiZWw9 Imdpbl9mdXp6eV9zZWFyY2hfbGltaXQiPgogICAgICAgPHRlcm0+PHZhcm5hbWU+Z2luX2Z1 enp5X3NlYXJjaF9saW1pdDwvdmFybmFtZT4gKDx0eXBlPmludGVnZXI8L3R5cGU+KQogICAg ICAgPGluZGV4dGVybT4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvZ3Vj LmMgYi9zcmMvYmFja2VuZC91dGlscy9taXNjL2d1Yy5jCmluZGV4IDE1NmQxNDdjODUuLjEw Yzk1Mjg3MjkgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvZ3VjLmMKKysr IGIvc3JjL2JhY2tlbmQvdXRpbHMvbWlzYy9ndWMuYwpAQCAtMjEyLDYgKzIxMiw3IEBAIHN0 YXRpYyBib29sIGNoZWNrX3JlY292ZXJ5X3RhcmdldF9sc24oY2hhciAqKm5ld3ZhbCwgdm9p ZCAqKmV4dHJhLCBHdWNTb3VyY2Ugc291CiBzdGF0aWMgdm9pZCBhc3NpZ25fcmVjb3Zlcnlf dGFyZ2V0X2xzbihjb25zdCBjaGFyICpuZXd2YWwsIHZvaWQgKmV4dHJhKTsKIHN0YXRpYyBi b29sIGNoZWNrX3ByaW1hcnlfc2xvdF9uYW1lKGNoYXIgKipuZXd2YWwsIHZvaWQgKipleHRy YSwgR3VjU291cmNlIHNvdXJjZSk7CiBzdGF0aWMgYm9vbCBjaGVja19kZWZhdWx0X3dpdGhf b2lkcyhib29sICpuZXd2YWwsIHZvaWQgKipleHRyYSwgR3VjU291cmNlIHNvdXJjZSk7Citz dGF0aWMgdm9pZCBhc3NpZ25fZW52aXJvbm1lbnRfc2V0dGluZ3MoY29uc3QgY2hhciAqbmV3 dmFsLCB2b2lkICpleHRyYSk7CiAKIC8qIFByaXZhdGUgZnVuY3Rpb25zIGluIGd1Yy1maWxl LmwgdGhhdCBuZWVkIHRvIGJlIGNhbGxlZCBmcm9tIGd1Yy5jICovCiBzdGF0aWMgQ29uZmln VmFyaWFibGUgKlByb2Nlc3NDb25maWdGaWxlSW50ZXJuYWwoR3VjQ29udGV4dCBjb250ZXh0 LApAQCAtNTI5LDYgKzUzMCw4IEBAIGludAkJCXRjcF9rZWVwYWxpdmVzX2lkbGU7CiBpbnQJ CQl0Y3Bfa2VlcGFsaXZlc19pbnRlcnZhbDsKIGludAkJCXRjcF9rZWVwYWxpdmVzX2NvdW50 OwogCitjaGFyCSAgICplbnZpcm9ubWVudF9zZXR0aW5nczsKKwogLyoKICAqIFNTTCByZW5l Z290aWF0aW9uIHdhcyBiZWVuIHJlbW92ZWQgaW4gUG9zdGdyZVNRTCA5LjUsIGJ1dCB3ZSB0 b2xlcmF0ZSBpdAogICogYmVpbmcgc2V0IHRvIHplcm8gKG1lYW5pbmcgbmV2ZXIgcmVuZWdv dGlhdGUpIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LgpAQCAtMzUxNiw2ICszNTE5LDE3 IEBAIHN0YXRpYyBzdHJ1Y3QgY29uZmlnX3N0cmluZyBDb25maWd1cmVOYW1lc1N0cmluZ1td ID0KIAkJY2hlY2tfY2xpZW50X2VuY29kaW5nLCBhc3NpZ25fY2xpZW50X2VuY29kaW5nLCBO VUxMCiAJfSwKIAorCXsKKwkJeyJlbnZpcm9ubWVudCIsIFBHQ19TSUdIVVAsIENMSUVOVF9D T05OX09USEVSLAorCQkJZ2V0dGV4dF9ub29wKCJFbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8g YmUgc2V0LiIpLAorCQkJTlVMTCwKKwkJCUdVQ19MSVNUX0lOUFVUIHwgR1VDX0xJU1RfUVVP VEUKKwkJfSwKKwkJJmVudmlyb25tZW50X3NldHRpbmdzLAorCQkiIiwKKwkJTlVMTCwgYXNz aWduX2Vudmlyb25tZW50X3NldHRpbmdzLCBOVUxMCisJfSwKKwogCXsKIAkJeyJsb2dfbGlu ZV9wcmVmaXgiLCBQR0NfU0lHSFVQLCBMT0dHSU5HX1dIQVQsCiAJCQlnZXR0ZXh0X25vb3Ao IkNvbnRyb2xzIGluZm9ybWF0aW9uIHByZWZpeGVkIHRvIGVhY2ggbG9nIGxpbmUuIiksCkBA IC0xMTM4NCw0ICsxMTM5OCwzMCBAQCBjaGVja19kZWZhdWx0X3dpdGhfb2lkcyhib29sICpu ZXd2YWwsIHZvaWQgKipleHRyYSwgR3VjU291cmNlIHNvdXJjZSkKIAlyZXR1cm4gdHJ1ZTsK IH0KIAorc3RhdGljIHZvaWQKK2Fzc2lnbl9lbnZpcm9ubWVudF9zZXR0aW5ncyhjb25zdCBj aGFyICpuZXd2YWwsIHZvaWQgKmV4dHJhKQoreworCWNoYXIgKnJhd3N0cmluZyA9IHBzdHJk dXAobmV3dmFsKTsKKwlMaXN0ICplbGVtbGlzdDsKKwlMaXN0Q2VsbCAqbGM7CisKKwlpZiAo IVNwbGl0R1VDTGlzdChyYXdzdHJpbmcsICcsJywgJmVsZW1saXN0KSkKKwl7CisJCS8qIHN5 bnRheCBlcnJvciBpbiBsaXN0ICovCisJCWxpc3RfZnJlZV9kZWVwKGVsZW1saXN0KTsKKwkJ cGZyZWUocmF3c3RyaW5nKTsKKwkJZXJlcG9ydChFUlJPUiwKKwkJCQkoZXJyY29kZShFUlJD T0RFX1NZTlRBWF9FUlJPUiksCisJCQkJIGVycm1zZygiaW52YWxpZCBsaXN0IHN5bnRheCBp biBwYXJhbWV0ZXIgXCIlc1wiIiwKKwkJCQkJCSJwYXJhbWV0ZXIiKSkpOworCX0KKworCWZv cmVhY2gobGMsIGVsZW1saXN0KQorCXsKKwkJY2hhcgkgICAqc2V0dGluZyA9IGxmaXJzdChs Yyk7CisKKwkJcHV0ZW52KGd1Y19zdHJkdXAoRVJST1IsIHNldHRpbmcpKTsKKwl9Cit9CisK ICNpbmNsdWRlICJndWMtZmlsZS5jIgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMv bWlzYy9wb3N0Z3Jlc3FsLmNvbmYuc2FtcGxlIGIvc3JjL2JhY2tlbmQvdXRpbHMvbWlzYy9w b3N0Z3Jlc3FsLmNvbmYuc2FtcGxlCmluZGV4IDE5NGYzMTIwOTYuLjU1MWEwMmQyYWEgMTAw NjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvcG9zdGdyZXNxbC5jb25mLnNhbXBs ZQorKysgYi9zcmMvYmFja2VuZC91dGlscy9taXNjL3Bvc3RncmVzcWwuY29uZi5zYW1wbGUK QEAgLTY3Niw2ICs2NzYsNyBAQAogIyAtIE90aGVyIERlZmF1bHRzIC0KIAogI2R5bmFtaWNf bGlicmFyeV9wYXRoID0gJyRsaWJkaXInCisjZW52aXJvbm1lbnQgPSAnJwogCiAKICMtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3V0aWxzL2d1 Yy5oIGIvc3JjL2luY2x1ZGUvdXRpbHMvZ3VjLmgKaW5kZXggYzA3ZTdiOTQ1ZS4uZmRjYmI5 MGJiMiAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvdXRpbHMvZ3VjLmgKKysrIGIvc3JjL2lu Y2x1ZGUvdXRpbHMvZ3VjLmgKQEAgLTI3Myw2ICsyNzMsOCBAQCBleHRlcm4gaW50CXRjcF9r ZWVwYWxpdmVzX2NvdW50OwogZXh0ZXJuIGJvb2wgdHJhY2Vfc29ydDsKICNlbmRpZgogCitl eHRlcm4gY2hhciAqZW52aXJvbm1lbnRfc2V0dGluZ3M7CisKIC8qCiAgKiBGdW5jdGlvbnMg ZXhwb3J0ZWQgYnkgZ3VjLmMKICAqLwoKYmFzZS1jb21taXQ6IDA1MDcxMGIzNjk2NGRlZTdl MWIyYmY2YjVlZjAwMDQxZmQ1ZDI3ODcKLS0gCjIuMjAuMQoK --------------B934DE0090B9AF2459CCB2CB Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="v1-0002-pg_ctl-Add-clear-environment-option.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="v1-0002-pg_ctl-Add-clear-environment-option.patch" RnJvbSA2ZTkwZDdmYjU0NjA5Y2JlMjgwNmQzYzEwZTBlMzZjNDlhYjRmMGM1IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBFaXNlbnRyYXV0IDxwZXRlckBlaXNlbnRy YXV0Lm9yZz4KRGF0ZTogTW9uLCAxOCBGZWIgMjAxOSAxNDozNjo1MyArMDEwMApTdWJqZWN0 OiBbUEFUQ0ggdjEgMi8yXSBwZ19jdGw6IEFkZCAtLWNsZWFyLWVudmlyb25tZW50IG9wdGlv bgoKVGhpcyBjbGVhcnMgdGhlIGVudmlyb25tZW50IGZvciB0aGUgbmV3bHkgc3RhcnRlZCBz ZXJ2ZXIgcHJvY2Vzcy4KVGhpcyBzaG91bGQgYmUgdGhlIHByZWZlcnJlZCBwcmFjdGljZS4g IFNvbWUgaW5pdCBzeXN0ZW1zIGFscmVhZHkgZG8KdGhpcywgYnV0IHRoaXMgb3B0aW9uIGFs c28gZ2l2ZXMgdGhhdCBmdW5jdGlvbmFsaXR5IHdoZW4gaW52b2tpbmcKcGdfY3RsIGRpcmVj dGx5LgoKQWxzbyB1c2UgdGhpcyBvcHRpb24gaW4gdGhlIFRBUCB0ZXN0cy4gIFRoaXMgcmV2 ZWFsZWQgdGhhdCBhIHRlc3QgaW4KdGhlIHBnX3Jld3JpbmQgc3VpdGUgcmVsaWVkIG9uIHNv bWUgZW52aXJvbm1lbnQgdmFyaWFibGVzIGJlaW5nCmluaGVyaXRlZCBmcm9tIHRoZSB0ZXN0 IGVudmlyb25tZW50LiAgRml4IHRoYXQgY2FzZS4KLS0tCiBkb2Mvc3JjL3NnbWwvcmVmL3Bn X2N0bC1yZWYuc2dtbCAgfCAxMiArKysrKysrKysrKysKIHNyYy9iaW4vcGdfY3RsL3BnX2N0 bC5jICAgICAgICAgICB8IDI5ICsrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCiBzcmMv YmluL3BnX3Jld2luZC90L1Jld2luZFRlc3QucG0gfCAgNCArKy0tCiBzcmMvdGVzdC9sZGFw L3QvMDAxX2F1dGgucGwgICAgICAgfCAgMyArKysKIHNyYy90ZXN0L3BlcmwvUG9zdGdyZXNO b2RlLnBtICAgICB8ICAzICsrLQogNSBmaWxlcyBjaGFuZ2VkLCA0MCBpbnNlcnRpb25zKCsp LCAxMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvcmVmL3BnX2N0 bC1yZWYuc2dtbCBiL2RvYy9zcmMvc2dtbC9yZWYvcGdfY3RsLXJlZi5zZ21sCmluZGV4IGUz MTI3NWEwNGUuLjhmMGY4MzJmZGIgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9yZWYvcGdf Y3RsLXJlZi5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9yZWYvcGdfY3RsLXJlZi5zZ21sCkBA IC0yODAsNiArMjgwLDE4IEBAIDx0aXRsZT5PcHRpb25zPC90aXRsZT4KICAgICAgIDwvbGlz dGl0ZW0+CiAgICAgIDwvdmFybGlzdGVudHJ5PgogCisgICAgIDx2YXJsaXN0ZW50cnk+Cisg ICAgICA8dGVybT48b3B0aW9uPi0tY2xlYXItZW52aXJvbm1lbnQ8L29wdGlvbj48L3Rlcm0+ CisgICAgICA8bGlzdGl0ZW0+CisgICAgICAgPHBhcmE+CisgICAgICAgIENsZWFyIGFsbCBl bnZpcm9ubWVudCB2YXJpYWJsZXMgaW4gdGhlIHN0YXJ0ZWQgc2VydmVyIHByb2Nlc3MuICBU aGlzCisgICAgICAgIGlzIHJlY29tbWVuZGVkIGZvciBpbml0IHNjcmlwdHMuICBOb3RlIHRo YXQgdGhpcyBuZWVkcyB0byBiZSBzcGVjaWZpZWQKKyAgICAgICAgZm9yIGJvdGggdGhlIDxs aXRlcmFsPnN0YXJ0PC9saXRlcmFsPiBhbmQgYW55CisgICAgICAgIDxsaXRlcmFsPnJlc3Rh cnQ8L2xpdGVyYWw+IGFjdGlvbnMuCisgICAgICAgPC9wYXJhPgorICAgICAgPC9saXN0aXRl bT4KKyAgICAgPC92YXJsaXN0ZW50cnk+CisKICAgICAgPHZhcmxpc3RlbnRyeT4KICAgICAg IDx0ZXJtPjxvcHRpb24+LUQgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmRhdGFk aXI8L3JlcGxhY2VhYmxlPjwvb3B0aW9uPjwvdGVybT4KICAgICAgIDx0ZXJtPjxvcHRpb24+ LS1wZ2RhdGE9PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmRhdGFkaXI8L3JlcGxh Y2VhYmxlPjwvb3B0aW9uPjwvdGVybT4KZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfY3RsL3Bn X2N0bC5jIGIvc3JjL2Jpbi9wZ19jdGwvcGdfY3RsLmMKaW5kZXggYzgyYTcwMmZmYS4uMmVh YWRiYTNiMSAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9wZ19jdGwvcGdfY3RsLmMKKysrIGIvc3Jj L2Jpbi9wZ19jdGwvcGdfY3RsLmMKQEAgLTk1LDYgKzk1LDcgQEAgc3RhdGljIGNoYXIgKnJl Z2lzdGVyX3Bhc3N3b3JkID0gTlVMTDsKIHN0YXRpYyBjaGFyICphcmd2MCA9IE5VTEw7CiBz dGF0aWMgYm9vbCBhbGxvd19jb3JlX2ZpbGVzID0gZmFsc2U7CiBzdGF0aWMgdGltZV90IHN0 YXJ0X3RpbWU7CitzdGF0aWMgYm9vbCBjbGVhcl9lbnZpcm9ubWVudCA9IGZhbHNlOwogCiBz dGF0aWMgY2hhciBwb3N0b3B0c19maWxlW01BWFBHUEFUSF07CiBzdGF0aWMgY2hhciB2ZXJz aW9uX2ZpbGVbTUFYUEdQQVRIXTsKQEAgLTEwMyw2ICsxMDQsNyBAQCBzdGF0aWMgY2hhciBi YWNrdXBfZmlsZVtNQVhQR1BBVEhdOwogc3RhdGljIGNoYXIgcHJvbW90ZV9maWxlW01BWFBH UEFUSF07CiBzdGF0aWMgY2hhciBsb2dyb3RhdGVfZmlsZVtNQVhQR1BBVEhdOwogCitzdGF0 aWMgY2hhciBwZ19ncmFuZHBhcmVudF9waWRfZW52X3ZhclszMl07CiBzdGF0aWMgdm9sYXRp bGUgcGdwaWRfdCBwb3N0bWFzdGVyUElEID0gLTE7CiAKICNpZmRlZiBXSU4zMgpAQCAtNDQ4 LDYgKzQ1MCw4IEBAIHN0YXRpYyBwZ3BpZF90CiBzdGFydF9wb3N0bWFzdGVyKHZvaWQpCiB7 CiAJY2hhcgkJY21kW01BWFBHUEFUSF07CisJZXh0ZXJuIGNoYXIgKiplbnZpcm9uOworCXN0 YXRpYyBjaGFyICpjbGVhbl9wb3N0bWFzdGVyX2VudltdID0geyJMQU5HPUMiLCBOVUxMLCBO VUxMfTsKIAogI2lmbmRlZiBXSU4zMgogCXBncGlkX3QJCXBtX3BpZDsKQEAgLTQ4Niw2ICs0 OTAsMTQgQEAgc3RhcnRfcG9zdG1hc3Rlcih2b2lkKQogCX0KICNlbmRpZgogCisJaWYgKHBn X2dyYW5kcGFyZW50X3BpZF9lbnZfdmFyWzBdKQorCXsKKwkJaWYgKGNsZWFyX2Vudmlyb25t ZW50KQorCQkJY2xlYW5fcG9zdG1hc3Rlcl9lbnZbMV0gPSBwZ19ncmFuZHBhcmVudF9waWRf ZW52X3ZhcjsKKwkJZWxzZQorCQkJcHV0ZW52KHBnX2dyYW5kcGFyZW50X3BpZF9lbnZfdmFy KTsKKwl9CisKIAkvKgogCSAqIFNpbmNlIHRoZXJlIG1pZ2h0IGJlIHF1b3RlcyB0byBoYW5k bGUgaGVyZSwgaXQgaXMgZWFzaWVyIHNpbXBseSB0byBwYXNzCiAJICogZXZlcnl0aGluZyB0 byBhIHNoZWxsIHRvIHByb2Nlc3MgdGhlbS4gIFVzZSBleGVjIHNvIHRoYXQgdGhlIHBvc3Rt YXN0ZXIKQEAgLTQ5OSw3ICs1MTEsOCBAQCBzdGFydF9wb3N0bWFzdGVyKHZvaWQpCiAJCXNu cHJpbnRmKGNtZCwgTUFYUEdQQVRILCAiZXhlYyBcIiVzXCIgJXMlcyA8IFwiJXNcIiAyPiYx IiwKIAkJCQkgZXhlY19wYXRoLCBwZ2RhdGFfb3B0LCBwb3N0X29wdHMsIERFVk5VTEwpOwog Ci0JKHZvaWQpIGV4ZWNsKCIvYmluL3NoIiwgIi9iaW4vc2giLCAiLWMiLCBjbWQsIChjaGFy ICopIE5VTEwpOworCSh2b2lkKSBleGVjbGUoIi9iaW4vc2giLCAiL2Jpbi9zaCIsICItYyIs IGNtZCwgKGNoYXIgKikgTlVMTCwKKwkJCQkgIGNsZWFyX2Vudmlyb25tZW50ID8gY2xlYW5f cG9zdG1hc3Rlcl9lbnYgOiBlbnZpcm9uKTsKIAogCS8qIGV4ZWMgZmFpbGVkICovCiAJd3Jp dGVfc3RkZXJyKF8oIiVzOiBjb3VsZCBub3Qgc3RhcnQgc2VydmVyOiAlc1xuIiksCkBAIC04 NTMsMTMgKzg2Niw4IEBAIGRvX3N0YXJ0KHZvaWQpCiAJICogZ2V0cHBpZCgpIHVuZm9ydHVu YXRlbHkuCiAJICovCiAjaWZuZGVmIFdJTjMyCi0JewotCQlzdGF0aWMgY2hhciBlbnZfdmFy WzMyXTsKLQotCQlzbnByaW50ZihlbnZfdmFyLCBzaXplb2YoZW52X3ZhciksICJQR19HUkFO RFBBUkVOVF9QSUQ9JWQiLAotCQkJCSAoaW50KSBnZXRwcGlkKCkpOwotCQlwdXRlbnYoZW52 X3Zhcik7Ci0JfQorCXNucHJpbnRmKHBnX2dyYW5kcGFyZW50X3BpZF9lbnZfdmFyLCBzaXpl b2YocGdfZ3JhbmRwYXJlbnRfcGlkX2Vudl92YXIpLAorCQkJICJQR19HUkFORFBBUkVOVF9Q SUQ9JWQiLCAoaW50KSBnZXRwcGlkKCkpOwogI2VuZGlmCiAKIAlwbV9waWQgPSBzdGFydF9w b3N0bWFzdGVyKCk7CkBAIC0yMDU3LDYgKzIwNjUsNyBAQCBkb19oZWxwKHZvaWQpCiAjZWxz ZQogCXByaW50ZihfKCIgIC1jLCAtLWNvcmUtZmlsZXMgICAgICAgbm90IGFwcGxpY2FibGUg b24gdGhpcyBwbGF0Zm9ybVxuIikpOwogI2VuZGlmCisJcHJpbnRmKF8oIiAgICAgIC0tY2xl YXItZW52aXJvbm1lbnQgIGNsZWFyIGVudmlyb25tZW50IHZhcmlhYmxlcyBpbiBwb3N0Z3Jl cyBwcm9jZXNzXG4iKSk7CiAJcHJpbnRmKF8oIiAgLWwsIC0tbG9nPUZJTEVOQU1FICAgICB3 cml0ZSAob3IgYXBwZW5kKSBzZXJ2ZXIgbG9nIHRvIEZJTEVOQU1FXG4iKSk7CiAJcHJpbnRm KF8oIiAgLW8sIC0tb3B0aW9ucz1PUFRJT05TICBjb21tYW5kIGxpbmUgb3B0aW9ucyB0byBw YXNzIHRvIHBvc3RncmVzXG4iCiAJCQkgIiAgICAgICAgICAgICAgICAgICAgICAgICAoUG9z dGdyZVNRTCBzZXJ2ZXIgZXhlY3V0YWJsZSkgb3IgaW5pdGRiXG4iKSk7CkBAIC0yMjYwLDYg KzIyNjksNyBAQCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKIAkJeyJjb3JlLWZpbGVz Iiwgbm9fYXJndW1lbnQsIE5VTEwsICdjJ30sCiAJCXsid2FpdCIsIG5vX2FyZ3VtZW50LCBO VUxMLCAndyd9LAogCQl7Im5vLXdhaXQiLCBub19hcmd1bWVudCwgTlVMTCwgJ1cnfSwKKwkJ eyJjbGVhci1lbnZpcm9ubWVudCIsIG5vX2FyZ3VtZW50LCBOVUxMLCAxfSwKIAkJe05VTEws IDAsIE5VTEwsIDB9CiAJfTsKIApAQCAtMjQxNSw2ICsyNDI1LDkgQEAgbWFpbihpbnQgYXJn YywgY2hhciAqKmFyZ3YpCiAJCQkJY2FzZSAnYyc6CiAJCQkJCWFsbG93X2NvcmVfZmlsZXMg PSB0cnVlOwogCQkJCQlicmVhazsKKwkJCQljYXNlIDE6CisJCQkJCWNsZWFyX2Vudmlyb25t ZW50ID0gdHJ1ZTsKKwkJCQkJYnJlYWs7CiAJCQkJZGVmYXVsdDoKIAkJCQkJLyogZ2V0b3B0 X2xvbmcgYWxyZWFkeSBpc3N1ZWQgYSBzdWl0YWJsZSBlcnJvciBtZXNzYWdlICovCiAJCQkJ CWRvX2FkdmljZSgpOwpkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9wZ19yZXdpbmQvdC9SZXdpbmRU ZXN0LnBtIGIvc3JjL2Jpbi9wZ19yZXdpbmQvdC9SZXdpbmRUZXN0LnBtCmluZGV4IDg1Y2Fl N2U0N2IuLmVhMDQ2NmNkY2UgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfcmV3aW5kL3QvUmV3 aW5kVGVzdC5wbQorKysgYi9zcmMvYmluL3BnX3Jld2luZC90L1Jld2luZFRlc3QucG0KQEAg LTI2OCwxMCArMjY4LDEwIEBAIHN1YiBydW5fcGdfcmV3aW5kCiAJCSJ1bmFibGUgdG8gc2V0 IHBlcm1pc3Npb25zIGZvciAkbWFzdGVyX3BnZGF0YS9wb3N0Z3Jlc3FsLmNvbmYiKTsKIAog CSMgUGx1Zy1pbiByZXdvdW5kIG5vZGUgdG8gdGhlIG5vdy1wcm9tb3RlZCBzdGFuZGJ5IG5v ZGUKLQlteSAkcG9ydF9zdGFuZGJ5ID0gJG5vZGVfc3RhbmRieS0+cG9ydDsKKwlteSAkY29u bnN0cl9zdGFuZGJ5ID0gJG5vZGVfc3RhbmRieS0+Y29ubnN0cigpOwogCSRub2RlX21hc3Rl ci0+YXBwZW5kX2NvbmYoCiAJCSdwb3N0Z3Jlc3FsLmNvbmYnLCBxcSgKLXByaW1hcnlfY29u bmluZm89J3BvcnQ9JHBvcnRfc3RhbmRieScKK3ByaW1hcnlfY29ubmluZm89JyRjb25uc3Ry X3N0YW5kYnknCiApKTsKIAogCSRub2RlX21hc3Rlci0+c2V0X3N0YW5kYnlfbW9kZSgpOwpk aWZmIC0tZ2l0IGEvc3JjL3Rlc3QvbGRhcC90LzAwMV9hdXRoLnBsIGIvc3JjL3Rlc3QvbGRh cC90LzAwMV9hdXRoLnBsCmluZGV4IDQzMWFkNjQ0MmMuLjFmYThmN2I1NTQgMTAwNjQ0Ci0t LSBhL3NyYy90ZXN0L2xkYXAvdC8wMDFfYXV0aC5wbAorKysgYi9zcmMvdGVzdC9sZGFwL3Qv MDAxX2F1dGgucGwKQEAgLTI2OSw2ICsyNjksOSBAQCBzdWIgdGVzdF9hY2Nlc3MKICRub2Rl LT5hcHBlbmRfY29uZigncGdfaGJhLmNvbmYnLAogCXFxe2xvY2FsIGFsbCBhbGwgbGRhcCBs ZGFwc2VydmVyPSRsZGFwX3NlcnZlciBsZGFwcG9ydD0kbGRhcF9wb3J0IGxkYXBiYXNlZG49 IiRsZGFwX2Jhc2VkbiIgbGRhcHNlYXJjaGZpbHRlcj0iKHVpZD1cJHVzZXJuYW1lKSIgbGRh cHRscz0xfQogKTsKKyRub2RlLT5hcHBlbmRfY29uZigncG9zdGdyZXNxbC5jb25mJywKKwlx cXtlbnZpcm9ubWVudCA9ICdMREFQQ09ORj0kbGRhcF9jb25mJ30KKyk7CiAkbm9kZS0+cmVz dGFydDsKIAogJEVOVnsiUEdQQVNTV09SRCJ9ID0gJ3NlY3JldDEnOwpkaWZmIC0tZ2l0IGEv c3JjL3Rlc3QvcGVybC9Qb3N0Z3Jlc05vZGUucG0gYi9zcmMvdGVzdC9wZXJsL1Bvc3RncmVz Tm9kZS5wbQppbmRleCA4YTJjNmZjMTIyLi4yNWFhOGMzOGVhIDEwMDY0NAotLS0gYS9zcmMv dGVzdC9wZXJsL1Bvc3RncmVzTm9kZS5wbQorKysgYi9zcmMvdGVzdC9wZXJsL1Bvc3RncmVz Tm9kZS5wbQpAQCAtNzAxLDcgKzcwMSw3IEBAIHN1YiBzdGFydAogCUJBSUxfT1VUKCJub2Rl IFwiJG5hbWVcIiBpcyBhbHJlYWR5IHJ1bm5pbmciKSBpZiBkZWZpbmVkICRzZWxmLT57X3Bp ZH07CiAJcHJpbnQoIiMjIyBTdGFydGluZyBub2RlIFwiJG5hbWVcIlxuIik7CiAJbXkgJHJl dCA9IFRlc3RMaWI6OnN5c3RlbV9sb2coJ3BnX2N0bCcsICctRCcsICRzZWxmLT5kYXRhX2Rp ciwgJy1sJywKLQkJJHNlbGYtPmxvZ2ZpbGUsICdzdGFydCcpOworCQkkc2VsZi0+bG9nZmls ZSwgJy0tY2xlYXItZW52aXJvbm1lbnQnLCAnc3RhcnQnKTsKIAogCWlmICgkcmV0ICE9IDAp CiAJewpAQCAtNzc2LDYgKzc3Niw3IEBAIHN1YiByZXN0YXJ0CiAJbXkgJG5hbWUgICAgPSAk c2VsZi0+bmFtZTsKIAlwcmludCAiIyMjIFJlc3RhcnRpbmcgbm9kZSBcIiRuYW1lXCJcbiI7 CiAJVGVzdExpYjo6c3lzdGVtX29yX2JhaWwoJ3BnX2N0bCcsICctRCcsICRwZ2RhdGEsICct bCcsICRsb2dmaWxlLAorCQknLS1jbGVhci1lbnZpcm9ubWVudCcsCiAJCSdyZXN0YXJ0Jyk7 CiAJJHNlbGYtPl91cGRhdGVfcGlkKDEpOwogCXJldHVybjsKLS0gCjIuMjAuMQoK --------------B934DE0090B9AF2459CCB2CB--