Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1moCuw-0003Fj-VZ for pgsql-hackers@arkaria.postgresql.org; Fri, 19 Nov 2021 23:03:39 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1moCuv-0006pm-TY for pgsql-hackers@arkaria.postgresql.org; Fri, 19 Nov 2021 23:03:37 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1moCuv-0006pZ-GX for pgsql-hackers@lists.postgresql.org; Fri, 19 Nov 2021 23:03:37 +0000 Received: from smtp-fw-6002.amazon.com ([52.95.49.90]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1moCuo-0004EY-S1 for pgsql-hackers@lists.postgresql.org; Fri, 19 Nov 2021 23:03:37 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.com; i=@amazon.com; q=dns/txt; s=amazon201209; t=1637363011; x=1668899011; h=from:to:cc:date:message-id:references:in-reply-to: mime-version:subject; bh=KwrSLcA7wfdH2RdJZfRsfuUnQ9+5EyXxctFx4qdZXS0=; b=UERsEH4736wb5AslfOEheEDGCRmwgzVvRQ5e4SskD2JHHBy04arQ/2Sx ukIoRR9mQrXwQglJWPy74AP/sG8gjBYpSzLU38arcr9j6LiEPkFEw+vij sznyhuolUbBj/1WCrt/Sbc5PusF9CGTO5P8n29WEBb09Txi8UQe+S5dgl g=; X-Amazon-filename: v1-0001-Add-control-C-handling-for-password-prompts-in-pg.patch X-IronPort-AV: E=Sophos;i="5.87,248,1631577600"; d="scan'208,223";a="156497382" Subject: Re: Improving psql's \password command Thread-Topic: Improving psql's \password command Received: from iad12-co-svc-p1-lb1-vlan2.amazon.com (HELO email-inbound-relay-iad-1a-b09d0114.us-east-1.amazon.com) ([10.43.8.2]) by smtp-border-fw-6002.iad6.amazon.com with ESMTP; 19 Nov 2021 23:03:29 +0000 Received: from EX13MTAUWB001.ant.amazon.com (iad12-ws-svc-p26-lb9-vlan3.iad.amazon.com [10.40.163.38]) by email-inbound-relay-iad-1a-b09d0114.us-east-1.amazon.com (Postfix) with ESMTPS id 13C1C81435; Fri, 19 Nov 2021 23:03:27 +0000 (UTC) Received: from EX13D03UWC003.ant.amazon.com (10.43.162.79) by EX13MTAUWB001.ant.amazon.com (10.43.161.207) with Microsoft SMTP Server (TLS) id 15.0.1497.26; Fri, 19 Nov 2021 23:03:27 +0000 Received: from EX13D03UWC004.ant.amazon.com (10.43.162.49) by EX13D03UWC003.ant.amazon.com (10.43.162.79) with Microsoft SMTP Server (TLS) id 15.0.1497.26; Fri, 19 Nov 2021 23:03:27 +0000 Received: from EX13D03UWC004.ant.amazon.com ([10.43.162.49]) by EX13D03UWC004.ant.amazon.com ([10.43.162.49]) with mapi id 15.00.1497.026; Fri, 19 Nov 2021 23:03:27 +0000 From: "Bossart, Nathan" To: Tom Lane CC: "pgsql-hackers@lists.postgresql.org" Thread-Index: AQHXzP3B9iQCNkm0LUi0LT7YHsPMsavp/IGAgACtnwCAE2FDgIAAiE2AgAEgXoCAALEiAIAEDCqAgACNcAD//6B4gIAAj1mA//+HhwCAA9JiAIABE8WAgAGb9oD//9r5gA== Date: Fri, 19 Nov 2021 23:03:26 +0000 Message-ID: <9D3BFA94-DEF2-4B43-B240-8ADC595ECA7A@amazon.com> References: <747443.1635536754@sss.pgh.pa.us> <765509.1635552418@sss.pgh.pa.us> <7BAC8A28-148B-4B03-A345-D68071388300@amazon.com> <1553329.1636647111@sss.pgh.pa.us> <1847699.1636747076@sss.pgh.pa.us> <2141902.1636999964@sss.pgh.pa.us> <5EDA38EF-C411-4C7D-A9BC-10B1D4584E5E@amazon.com> <2152988.1637010233@sss.pgh.pa.us> <2850852.1637194468@sss.pgh.pa.us> <450C0AD1-CF21-4056-A9EE-6201E9763FC9@amazon.com> <3085404.1637342157@sss.pgh.pa.us> In-Reply-To: <3085404.1637342157@sss.pgh.pa.us> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-ms-exchange-messagesentrepresentingtype: 1 x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.43.160.106] Content-Type: multipart/mixed; boundary="_002_9D3BFA94DEF24B43B2408ADC595ECA7Aamazoncom_" MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_002_9D3BFA94DEF24B43B2408ADC595ECA7Aamazoncom_ Content-Type: text/plain; charset="utf-8" Content-ID: <8AB11C31C755554E85453D7C5117DB25@amazon.com> Content-Transfer-Encoding: base64 T24gMTEvMTkvMjEsIDk6MTcgQU0sICJUb20gTGFuZSIgPHRnbEBzc3MucGdoLnBhLnVzPiB3cm90 ZToNCj4gIkJvc3NhcnQsIE5hdGhhbiIgPGJvc3NhcnRuQGFtYXpvbi5jb20+IHdyaXRlczoNCj4+ IE9rYXksIGhlcmUgaXMgYW4gYXR0ZW1wdCBhdCBhZGRpbmcgY29udHJvbC1DIHN1cHBvcnQgZm9y IFxwcm9tcHQgYW5kDQo+PiBcY29ubmVjdC4gIEl0IHdhcyByZWFzb25hYmx5IHN0cmFpZ2h0Zm9y d2FyZC4gIEkgZGlkIGhhdmUgdG8gdGVhY2gNCj4+IHNpbXBsZV9wcm9tcHRfZXh0ZW5kZWQoKSB0 byBhZGQgYSBuZXdsaW5lIGFmdGVyIGEgY2FuY2VsbGF0aW9uIHdoZW4NCj4+ICJlY2hvIiBpcyB0 cnVlLg0KPg0KPiBMR1RNLCBwdXNoZWQgYWZ0ZXIgdmVyeSBtaW5vciBmb29saW5nIHdpdGggdGhl IGNvbW1lbnRzLg0KDQpUaGFua3MhDQoNCj4+IEkgdGhpbmsgdGhhdCdzIGl0IGZvciBwc3FsLiAg QWZ0ZXIgYSBxdWljayBnbGFuY2UsIEkgZGlkbid0IHNlZSBhbnkNCj4+IG90aGVyIG9idmlvdXMg Y2FuZGlkYXRlcyBmb3IgY29udHJvbC1DIHN1cHBvcnQsIGJ1dCBJJ2xsIGxvb2sgYSBsaXR0bGUN Cj4+IGNsb3NlciB0byBiZSBzdXJlLg0KPg0KPiBIbW0sIGluaXRkYidzIHByb21wdC1mb3Itc3Vw ZXJ1c2VyLXBhc3N3b3JkIG1pZ2h0IG5lZWQgaXQuDQo+IEkgdGhpbmsgdGhlIHJlc3Qgb2Ygb3Vy IGZyb250ZW5kIHByb2dyYW1zIGRvbid0IHRyYXAgU0lHSU5ULA0KPiBvciBhdCBsZWFzdCBkb24n dCBkbyBzbyB3aGlsZSByZXF1ZXN0aW5nIHVzZXIgaW5wdXQuDQoNCkknbSBhYmxlIHRvIGNhbmNl bCB0aGUgc3VwZXJ1c2VyIHBhc3N3b3JkIHByb21wdCBpbiBpbml0ZGIgYWxyZWFkeS4NCkl0IGxv b2tzIGxpa2UgdGhlIHNpZ25hbCBoYW5kbGVycyBhcmVuJ3Qgc2V0IHVwIHVudGlsIGFmdGVyDQpn ZXRfc3VfcHdkKCkuICBJIGRpZCBmaW5kIHNvbWUgbWlzc2luZyBjb250cm9sLUMgaGFuZGxpbmcg aW4NCnBnX3JlY2VpdmV3YWwvcGdfcmVjdmxvZ2ljYWwsIHRob3VnaC4gIEF0dGFjaGVkIGlzIGEg cGF0Y2ggZm9yIHRob3NlLg0KDQpOYXRoYW4NCg0K --_002_9D3BFA94DEF24B43B2408ADC595ECA7Aamazoncom_ Content-Type: application/octet-stream; name="v1-0001-Add-control-C-handling-for-password-prompts-in-pg.patch" Content-Description: v1-0001-Add-control-C-handling-for-password-prompts-in-pg.patch Content-Disposition: attachment; filename="v1-0001-Add-control-C-handling-for-password-prompts-in-pg.patch"; size=6150; creation-date="Fri, 19 Nov 2021 23:03:26 GMT"; modification-date="Fri, 19 Nov 2021 23:03:26 GMT" Content-ID: <0064A1879B7B2B45AB63C58A7EB0892B@amazon.com> Content-Transfer-Encoding: base64 RnJvbSBlZGQwODM5OTY3MTI5ZjdhYzg5NjVlYmNjZDliZmUxOGE3Yzg5NjdhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYXRoYW4gQm9zc2FydCA8Ym9zc2FydG5AYW1hem9uLmNvbT4K RGF0ZTogRnJpLCAxOSBOb3YgMjAyMSAyMjo1NjoxMyArMDAwMApTdWJqZWN0OiBbUEFUQ0ggdjEg MS8xXSBBZGQgY29udHJvbC1DIGhhbmRsaW5nIGZvciBwYXNzd29yZCBwcm9tcHRzIGluCiBwZ19y ZWNlaXZld2FsIGFuZCBwZ19yZWN2bG9naWNhbC4KCi0tLQogc3JjL2Jpbi9wZ19iYXNlYmFja3Vw L25scy5tayAgICAgICAgICAgfCAgMiArLQogc3JjL2Jpbi9wZ19iYXNlYmFja3VwL3BnX3JlY2Vp dmV3YWwuYyAgfCAxMSArKysrKysrKysrLQogc3JjL2Jpbi9wZ19iYXNlYmFja3VwL3BnX3JlY3Zs b2dpY2FsLmMgfCAxMSArKysrKysrKysrLQogc3JjL2Jpbi9wZ19iYXNlYmFja3VwL3N0cmVhbXV0 aWwuYyAgICAgfCAzNiArKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tCiBzcmMvYmlu L3BnX2Jhc2ViYWNrdXAvc3RyZWFtdXRpbC5oICAgICB8ICA1ICsrKysrCiA1IGZpbGVzIGNoYW5n ZWQsIDU2IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2Jp bi9wZ19iYXNlYmFja3VwL25scy5tayBiL3NyYy9iaW4vcGdfYmFzZWJhY2t1cC9ubHMubWsKaW5k ZXggMmQ1MjFmMDY4My4uMzM4MDQ4NTgzYyAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9wZ19iYXNlYmFj a3VwL25scy5taworKysgYi9zcmMvYmluL3BnX2Jhc2ViYWNrdXAvbmxzLm1rCkBAIC0yLDUgKzIs NSBAQAogQ0FUQUxPR19OQU1FICAgICA9IHBnX2Jhc2ViYWNrdXAKIEFWQUlMX0xBTkdVQUdFUyAg PSBjcyBkZSBlcyBmciBoZSBpdCBqYSBrbyBwbCBwdF9CUiBydSBzdiB0ciB1ayB2aSB6aF9DTgog R0VUVEVYVF9GSUxFUyAgICA9ICQoRlJPTlRFTkRfQ09NTU9OX0dFVFRFWFRfRklMRVMpIHBnX2Jh c2ViYWNrdXAuYyBwZ19yZWNlaXZld2FsLmMgcGdfcmVjdmxvZ2ljYWwuYyByZWNlaXZlbG9nLmMg c3RyZWFtdXRpbC5jIHdhbG1ldGhvZHMuYyAuLi8uLi9jb21tb24vZmVfbWVtdXRpbHMuYyAuLi8u Li9jb21tb24vZmlsZV91dGlscy5jIC4uLy4uL2ZlX3V0aWxzL3JlY292ZXJ5X2dlbi5jCi1HRVRU RVhUX1RSSUdHRVJTID0gJChGUk9OVEVORF9DT01NT05fR0VUVEVYVF9UUklHR0VSUykgc2ltcGxl X3Byb21wdCB0YXJfc2V0X2Vycm9yCitHRVRURVhUX1RSSUdHRVJTID0gJChGUk9OVEVORF9DT01N T05fR0VUVEVYVF9UUklHR0VSUykgc2ltcGxlX3Byb21wdCBzaW1wbGVfcHJvbXB0X2V4dGVuZGVk IHRhcl9zZXRfZXJyb3IKIEdFVFRFWFRfRkxBR1MgICAgPSAkKEZST05URU5EX0NPTU1PTl9HRVRU RVhUX0ZMQUdTKQpkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9wZ19iYXNlYmFja3VwL3BnX3JlY2VpdmV3 YWwuYyBiL3NyYy9iaW4vcGdfYmFzZWJhY2t1cC9wZ19yZWNlaXZld2FsLmMKaW5kZXggMjNjZjVm OGVjNy4uZWNjMDY4ZmQ5YiAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9wZ19iYXNlYmFja3VwL3BnX3Jl Y2VpdmV3YWwuYworKysgYi9zcmMvYmluL3BnX2Jhc2ViYWNrdXAvcGdfcmVjZWl2ZXdhbC5jCkBA IC02NDksNyArNjQ5LDkgQEAgU3RyZWFtTG9nKHZvaWQpCiAKIC8qCiAgKiBXaGVuIHNpZ2ludCBp cyBjYWxsZWQsIGp1c3QgdGVsbCB0aGUgc3lzdGVtIHRvIGV4aXQgYXQgdGhlIG5leHQgcG9zc2li bGUKLSAqIG1vbWVudC4KKyAqIG1vbWVudC4gIFNpbmNlIHRoaXMgd29uJ3Qgd29yayB3aGVuIGJs b2NrZWQgb24gdXNlciBpbnB1dCAoZS5nLiwgZmdldHMoKSksCisgKiB3ZSBhbHNvIHByb3ZpZGUg YSBtZWNoYW5pc20gdG8gbG9uZ2ptcCBvdXQgb2YgdXNlciBwcm9tcHRzLiAgV2hpbGUgYmxvY2tl ZCwKKyAqIHNpZ2ludF9pbnRlcnJ1cHRfZW5hYmxlZCBzaG91bGQgYmUgc2V0IHRvIHRydWUuCiAg Ki8KICNpZm5kZWYgV0lOMzIKIApAQCAtNjU3LDYgKzY1OSwxMyBAQCBzdGF0aWMgdm9pZAogc2ln aW50X2hhbmRsZXIoaW50IHNpZ251bSkKIHsKIAl0aW1lX3RvX3N0b3AgPSB0cnVlOworCisJLyog aWYgd2UgYXJlIHdhaXRpbmcgZm9yIGlucHV0LCBsb25nam1wIG91dCBvZiBpdCAqLworCWlmIChz aWdpbnRfaW50ZXJydXB0X2VuYWJsZWQpCisJeworCQlzaWdpbnRfaW50ZXJydXB0X2VuYWJsZWQg PSBmYWxzZTsKKwkJc2lnbG9uZ2ptcChzaWdpbnRfaW50ZXJydXB0X2ptcCwgMSk7CisJfQogfQog I2VuZGlmCiAKZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfYmFzZWJhY2t1cC9wZ19yZWN2bG9naWNh bC5jIGIvc3JjL2Jpbi9wZ19iYXNlYmFja3VwL3BnX3JlY3Zsb2dpY2FsLmMKaW5kZXggZjIzNWQ2 ZmVjZi4uOGMyM2FiZjFmNCAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9wZ19iYXNlYmFja3VwL3BnX3Jl Y3Zsb2dpY2FsLmMKKysrIGIvc3JjL2Jpbi9wZ19iYXNlYmFja3VwL3BnX3JlY3Zsb2dpY2FsLmMK QEAgLTY1NywxMiArNjU3LDIxIEBAIGVycm9yOgogCiAvKgogICogV2hlbiBzaWdpbnQgaXMgY2Fs bGVkLCBqdXN0IHRlbGwgdGhlIHN5c3RlbSB0byBleGl0IGF0IHRoZSBuZXh0IHBvc3NpYmxlCi0g KiBtb21lbnQuCisgKiBtb21lbnQuICBTaW5jZSB0aGlzIHdvbid0IHdvcmsgd2hlbiBibG9ja2Vk IG9uIHVzZXIgaW5wdXQgKGUuZy4sIGZnZXRzKCkpLAorICogd2UgYWxzbyBwcm92aWRlIGEgbWVj aGFuaXNtIHRvIGxvbmdqbXAgb3V0IG9mIHVzZXIgcHJvbXB0cy4gIFdoaWxlIGJsb2NrZWQsCisg KiBzaWdpbnRfaW50ZXJydXB0X2VuYWJsZWQgc2hvdWxkIGJlIHNldCB0byB0cnVlLgogICovCiBz dGF0aWMgdm9pZAogc2lnaW50X2hhbmRsZXIoaW50IHNpZ251bSkKIHsKIAl0aW1lX3RvX2Fib3J0 ID0gdHJ1ZTsKKworCS8qIGlmIHdlIGFyZSB3YWl0aW5nIGZvciBpbnB1dCwgbG9uZ2ptcCBvdXQg b2YgaXQgKi8KKwlpZiAoc2lnaW50X2ludGVycnVwdF9lbmFibGVkKQorCXsKKwkJc2lnaW50X2lu dGVycnVwdF9lbmFibGVkID0gZmFsc2U7CisJCXNpZ2xvbmdqbXAoc2lnaW50X2ludGVycnVwdF9q bXAsIDEpOworCX0KIH0KIAogLyoKZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfYmFzZWJhY2t1cC9z dHJlYW11dGlsLmMgYi9zcmMvYmluL3BnX2Jhc2ViYWNrdXAvc3RyZWFtdXRpbC5jCmluZGV4IDJh M2UwYzY4OGYuLmMwYWRiMjU2YjAgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfYmFzZWJhY2t1cC9z dHJlYW11dGlsLmMKKysrIGIvc3JjL2Jpbi9wZ19iYXNlYmFja3VwL3N0cmVhbXV0aWwuYwpAQCAt NTIsMTYgKzUyLDIxIEBAIGNoYXIJICAgKmRibmFtZSA9IE5VTEw7CiBpbnQJCQlkYmdldHBhc3N3 b3JkID0gMDsJLyogMD1hdXRvLCAtMT1uZXZlciwgMT1hbHdheXMgKi8KIHN0YXRpYyBjaGFyICpw YXNzd29yZCA9IE5VTEw7CiBQR2Nvbm4JICAgKmNvbm4gPSBOVUxMOwordm9sYXRpbGUgYm9vbCBz aWdpbnRfaW50ZXJydXB0X2VuYWJsZWQgPSBmYWxzZTsKK3NpZ2ptcF9idWYgIHNpZ2ludF9pbnRl cnJ1cHRfam1wOwogCiAvKgogICogQ29ubmVjdCB0byB0aGUgc2VydmVyLiBSZXR1cm5zIGEgdmFs aWQgUEdjb25uIHBvaW50ZXIgaWYgY29ubmVjdGVkLAogICogb3IgTlVMTCBvbiBub24tcGVybWFu ZW50IGVycm9yLiBPbiBwZXJtYW5lbnQgZXJyb3IsIHRoZSBmdW5jdGlvbiB3aWxsCi0gKiBjYWxs IGV4aXQoMSkgZGlyZWN0bHkuCisgKiBjYWxsIGV4aXQoMSkgZGlyZWN0bHkuICBUaGUgcGFzc3dv cmQgcHJvbXB0IGNhbiBiZSBjYW5jZWxlZCB2aWEgYW4KKyAqIGV4aXN0aW5nIFNJR0lOVCBoYW5k bGVyIHRoYXQgd2lsbCBsb25nam1wIHRvIHRoZSBwbGFjZSBzcGVjaWZpZWQgYnkKKyAqIHNpZ2lu dF9pbnRlcnJ1cHRfam1wIG9ubHkgd2hlbiBzaWdpbnRfaW50ZXJydXB0X2VuYWJsZWQgaXMgdHJ1 ZS4gIFdoZW4KKyAqIGNhbmNlbGVkLCB0aGlzIGZ1bmN0aW9uIHJldHVybnMgTlVMTC4KICAqLwog UEdjb25uICoKIEdldENvbm5lY3Rpb24odm9pZCkKIHsKLQlQR2Nvbm4JICAgKnRtcGNvbm47CisJ UEdjb25uCSAgICp0bXBjb25uID0gTlVMTDsKIAlpbnQJCQlhcmdjb3VudCA9IDc7CS8qIGRibmFt ZSwgcmVwbGljYXRpb24sIGZhbGxiYWNrX2FwcF9uYW1lLAogCQkJCQkJCQkgKiBob3N0LCB1c2Vy LCBwb3J0LCBwYXNzd29yZCAqLwogCWludAkJCWk7CkBAIC0xNTcsMTAgKzE2MiwyMCBAQCBHZXRD b25uZWN0aW9uKHZvaWQpCiAJCS8qIEdldCBhIG5ldyBwYXNzd29yZCBpZiBhcHByb3ByaWF0ZSAq LwogCQlpZiAobmVlZF9wYXNzd29yZCkKIAkJeworCQkJUHJvbXB0SW50ZXJydXB0Q29udGV4dCBw cm9tcHRfY3R4OworCisJCQkvKiBTZXQgdXAgdG8gbGV0IFNJR0lOVCBjYW5jZWwgc2ltcGxlX3By b21wdF9leHRlbmRlZCgpICovCisJCQlwcm9tcHRfY3R4LmptcGJ1ZiA9IHNpZ2ludF9pbnRlcnJ1 cHRfam1wOworCQkJcHJvbXB0X2N0eC5lbmFibGVkID0gJnNpZ2ludF9pbnRlcnJ1cHRfZW5hYmxl ZDsKKwkJCXByb21wdF9jdHguY2FuY2VsZWQgPSBmYWxzZTsKKwogCQkJaWYgKHBhc3N3b3JkKQog CQkJCWZyZWUocGFzc3dvcmQpOwotCQkJcGFzc3dvcmQgPSBzaW1wbGVfcHJvbXB0KCJQYXNzd29y ZDogIiwgZmFsc2UpOworCQkJcGFzc3dvcmQgPSBzaW1wbGVfcHJvbXB0X2V4dGVuZGVkKCJQYXNz d29yZDogIiwgZmFsc2UsICZwcm9tcHRfY3R4KTsKIAkJCW5lZWRfcGFzc3dvcmQgPSBmYWxzZTsK KworCQkJaWYgKHByb21wdF9jdHguY2FuY2VsZWQpCisJCQkJYnJlYWs7CiAJCX0KIAogCQkvKiBV c2UgKG9yIHJldXNlLCBvbiBhIHN1YnNlcXVlbnQgY29ubmVjdGlvbikgcGFzc3dvcmQgaWYgd2Ug aGF2ZSBpdCAqLwpAQCAtMTkzLDE1ICsyMDgsMjQgQEAgR2V0Q29ubmVjdGlvbih2b2lkKQogCQkJ ZGJnZXRwYXNzd29yZCAhPSAtMSkKIAkJewogCQkJUFFmaW5pc2godG1wY29ubik7CisJCQl0bXBj b25uID0gTlVMTDsKIAkJCW5lZWRfcGFzc3dvcmQgPSB0cnVlOwogCQl9CiAJfQogCXdoaWxlIChu ZWVkX3Bhc3N3b3JkKTsKIAotCWlmIChQUXN0YXR1cyh0bXBjb25uKSAhPSBDT05ORUNUSU9OX09L KQorCWlmICh0bXBjb25uID09IE5VTEwgfHwgUFFzdGF0dXModG1wY29ubikgIT0gQ09OTkVDVElP Tl9PSykKIAl7Ci0JCXBnX2xvZ19lcnJvcigiJXMiLCBQUWVycm9yTWVzc2FnZSh0bXBjb25uKSk7 Ci0JCVBRZmluaXNoKHRtcGNvbm4pOworCQkvKgorCQkgKiBJZiB0bXBjb25uIGlzIE5VTEwsIHRo ZSBwYXNzd29yZCBwcm9tcHQgd2FzIGNhbmNlbGVkIHZpYSBTSUdJTlQsCisJCSAqIGFuZCB3ZSBk b24ndCBib3RoZXIgbG9nZ2luZyBhbiBlcnJvciBtZXNzYWdlLgorCQkgKi8KKwkJaWYgKHRtcGNv bm4gIT0gTlVMTCkKKwkJeworCQkJcGdfbG9nX2Vycm9yKCIlcyIsIFBRZXJyb3JNZXNzYWdlKHRt cGNvbm4pKTsKKwkJCVBRZmluaXNoKHRtcGNvbm4pOworCQl9CisKIAkJZnJlZSh2YWx1ZXMpOwog CQlmcmVlKGtleXdvcmRzKTsKIAkJaWYgKGNvbm5fb3B0cykKZGlmZiAtLWdpdCBhL3NyYy9iaW4v cGdfYmFzZWJhY2t1cC9zdHJlYW11dGlsLmggYi9zcmMvYmluL3BnX2Jhc2ViYWNrdXAvc3RyZWFt dXRpbC5oCmluZGV4IDc5MTg5MzVjYjMuLjJjNDVmZGFjZTQgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4v cGdfYmFzZWJhY2t1cC9zdHJlYW11dGlsLmgKKysrIGIvc3JjL2Jpbi9wZ19iYXNlYmFja3VwL3N0 cmVhbXV0aWwuaApAQCAtMTIsNiArMTIsOCBAQAogI2lmbmRlZiBTVFJFQU1VVElMX0gKICNkZWZp bmUgU1RSRUFNVVRJTF9ICiAKKyNpbmNsdWRlIDxzZXRqbXAuaD4KKwogI2luY2x1ZGUgImFjY2Vz cy94bG9nZGVmcy5oIgogI2luY2x1ZGUgImRhdGF0eXBlL3RpbWVzdGFtcC5oIgogI2luY2x1ZGUg ImxpYnBxLWZlLmgiCkBAIC02NSw0ICs2Nyw3IEBAIGV4dGVybiBib29sIGZlVGltZXN0YW1wRGlm ZmVyZW5jZUV4Y2VlZHMoVGltZXN0YW1wVHogc3RhcnRfdGltZSwgVGltZXN0YW1wVHogc3RvCiBl eHRlcm4gdm9pZCBmZV9zZW5kaW50NjQoaW50NjQgaSwgY2hhciAqYnVmKTsKIGV4dGVybiBpbnQ2 NCBmZV9yZWN2aW50NjQoY2hhciAqYnVmKTsKIAorZXh0ZXJuIHZvbGF0aWxlIGJvb2wgc2lnaW50 X2ludGVycnVwdF9lbmFibGVkOworZXh0ZXJuIHNpZ2ptcF9idWYgc2lnaW50X2ludGVycnVwdF9q bXA7CisKICNlbmRpZgkJCQkJCQkvKiBTVFJFQU1VVElMX0ggKi8KLS0gCjIuMTYuNgoK --_002_9D3BFA94DEF24B43B2408ADC595ECA7Aamazoncom_--