Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vyJyt-0001Qm-1i for pgsql-hackers@arkaria.postgresql.org; Fri, 06 Mar 2026 01:27:55 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vyJyr-002CdX-0Z for pgsql-hackers@arkaria.postgresql.org; Fri, 06 Mar 2026 01:27:53 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vyJyq-002CdD-2V for pgsql-hackers@lists.postgresql.org; Fri, 06 Mar 2026 01:27:53 +0000 Received: from tiger.tulip.relay.mailchannels.net ([23.83.218.248]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1vyJyn-000000016VS-3aV5 for pgsql-hackers@postgresql.org; Fri, 06 Mar 2026 01:27:52 +0000 X-Sender-Id: hostingeremail|x-authuser|david@pgbackrest.org Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id EB959122B7B; Fri, 06 Mar 2026 01:27:46 +0000 (UTC) Received: from fr-int-smtpout27.hostinger.io (trex-valgrind-0.trex.outbound.svc.cluster.local [100.107.94.73]) (Authenticated sender: hostingeremail) by relay.mailchannels.net (Postfix) with ESMTPA id EB53D122ADD; Fri, 06 Mar 2026 01:27:45 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; d=mailchannels.net; s=arc-2022; cv=none; t=1772760466; b=5IvyWcmwzgwWZRfPf6tnPCksVUO9gP0fTL5GUS07MBS4XtJU83KPwH15MB4NL2HoMqxUcO vmbIpRnK4eHEkBo+mID/1/+DJfFCk6zns3A+2JMFsyI21TuKN5UZ3dpSZzHt2gZdQ7J13h jAhx6m0hh6ewnbwvJHxc9W/qL7DVR/eWUupF3vBGjuIVaPMSeYNPjtoygp/51R7bTgLFkH k9NPHttwI7rYM1xLaJKKBtNkg6DJC0Rg2CVLf+XOUCWXR5c15+gh5Z6wqYW6IpUEr7PUyH 08Oy1uDnn7ACGMHuTG9CJKeD7QfJDRpKh0RzFQNbF9dNStGd3dU2FZH/aSM53A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=mailchannels.net; s=arc-2022; t=1772760466; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references:dkim-signature; bh=wV1Dw06727/UuKFXlDePIYYXSil+9Dd08zlt1yw5h34=; b=dE+nrtc+u4JGneE9Sn7DG+Eyq6EpucD7+liHm9POpXWMALF0anlDTq4hTZ1RVDcBvQDXeM m/lH5amkk+gDyxelcLCmCwbj+yP2u0ExGn6UxvaqWwFYBU2U+hbuVzeqv/p2pXtNho+FMg MgKpiwQVoAzDiNwRwPpXpD+OORx8/K9kQ3GY2USgaZKhdHynDTCHVhHNzUkydlGdNL/9sP IS+SqoPMl7Pl+SDo1F3/E7igZDBOOnBq7veiz5tR5pl8CUTH+YF7EZlifjcgjOrwO8yJXE wIUOI9/uWJtTtL6tBF9fTarzRIUkH3V4I5unFFlGtV4EVhReQ3T6yrtDlChEdw== ARC-Authentication-Results: i=1; rspamd-6f5c445b59-xv7q8; auth=pass smtp.auth=hostingeremail smtp.mailfrom=david@pgbackrest.org X-Sender-Id: hostingeremail|x-authuser|david@pgbackrest.org X-MC-Relay: Neutral X-MailChannels-SenderId: hostingeremail|x-authuser|david@pgbackrest.org X-MailChannels-Auth-Id: hostingeremail X-Duck-Glossy: 1fb4c2602ee3fc2c_1772760466832_749319329 X-MC-Loop-Signature: 1772760466832:1804822326 X-MC-Ingress-Time: 1772760466832 Received: from fr-int-smtpout27.hostinger.io (fr-int-smtpout27.hostinger.io [148.222.54.8]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384) by 100.107.94.73 (trex/7.1.3); Fri, 06 Mar 2026 01:27:46 +0000 Received: from [10.5.0.2] (unknown [94.140.8.228]) (Authenticated sender: david@pgbackrest.org) by smtp.hostinger.com (smtp.hostinger.com) with ESMTPSA id 4fRpgJ1cNsz2ymK; Fri, 6 Mar 2026 01:27:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pgbackrest.org; s=hostingermail1; t=1772760464; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=wV1Dw06727/UuKFXlDePIYYXSil+9Dd08zlt1yw5h34=; b=JO5yGf/SgdTLi5QNtfHccz+fR7g7tNw1nmuRfcYKPDGJ2JqRkUtzps2B/GIXhYeun1P09G +Mh+svS2iEH0ibKA23imyvmL5vaBXUxkttVCsbg1kVncLrf81zLcqwLwtkx5PrVnw6DchA XJmsyZoA+AI8wzvXXBoy4PW4WGT5jWGFVEGrQHAKRzr6Ce/tyzVmXsHsRcTz5gfODoiJQK 2fE5jRU/uRrhz4AVkJcUFlCNoWeYTRNf6ktqRRYvZjNqcFROV+s70ZqziLZqsMDloF/58p ls04f84FZgowgJ4/s9X/fmlvk/MVLYS8AdXfLHFIQuKXPAqu075hqvDZCJ5qPA== Content-Type: multipart/mixed; boundary="------------XDAd0xiN5jGUCSGjPgzjJo0i" Message-ID: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Return pg_control from pg_backup_stop(). From: David Steele To: Michael Paquier Cc: Pg Hackers References: <83f5295e-082d-432c-92a4-365707bd2296@pgbackrest.org> <1248c005-b693-494a-8d7a-68bc7d482679@pgbackrest.org> <8b8aa673-fcef-4e14-a05d-0885283ef1b8@pgbackrest.org> Content-Language: en-US In-Reply-To: Date: Fri, 6 Mar 2026 01:27:38 +0000 (UTC) X-CM-Envelope: MS4xfMIDwB+9zJZKjFRJdRoosn2jQ6yfSvYj8KLHXmUfbfTReV63PxQkOIgYTywiPH+7h5Q1YEYq7+pp5hN/KsVr5ZJ9lBrwh7J1VZMkPSVlcZn7pqjqSfQU 2IvFTzJIBAoveW0FRkY0mrw/1MqwLjDmZ3FJFL4fA2ZmbXQIpmxB63YbqU4fuoWsk8tdLU5i1gUQoFmxuPwp4nE6gNQ/W2pBRu4MQbsUD54KH7k4gQzHPdmp X-CM-Analysis: v=2.4 cv=ZbRPNdVA c=1 sm=1 tr=0 ts=69aa2d8f a=Q8MTZnqzeDCoYZyLDmaNYw==:117 a=Q8MTZnqzeDCoYZyLDmaNYw==:17 a=r77TgQKjGQsHNAKrUKIA:9 a=0tCOBYXYIZ9l39j4OycA:9 a=QEXdDO2ut3YA:10 a=1wDIiH70AAAA:8 a=JohDp9xLRQvFQJ1YrgkA:9 a=B2y7HmGcmWMA:10 a=u-ezU-SPt5tCR3mi_5QA:9 a=uCsh6WI2SJRHIg0NT2Eg:22 X-AuthUser: david@pgbackrest.org List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------XDAd0xiN5jGUCSGjPgzjJo0i Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 2/20/26 12:47, David Steele wrote: > On 2/20/26 10:10, David Steele wrote: >> On 8/7/25 05:30, David Steele wrote: >>> On 1/24/25 13:43, David Steele wrote: >>>> >>>> Rebased and improved a comment and an error. >>> Rebased to fix breakage caused by the split of func.sgml in 4e23c9e. >> >> >> Rebased to implement simplification added by "Simplify creation of >> built-in functions with default arguments" (759b03b2). Rebased on "Simplify creation of built-in functions with non-default ACLs." (f95d73ed). Regards, -David --------------XDAd0xiN5jGUCSGjPgzjJo0i Content-Type: text/plain; charset=UTF-8; name="pgcontrol-flag-v8-01-basebackup.patch" Content-Disposition: attachment; filename="pgcontrol-flag-v8-01-basebackup.patch" Content-Transfer-Encoding: base64 RnJvbSBhMzhkNWU2OGI2NDhlMWQwMzgzMmMzYjkxN2E2MGEyYTVlZDRjNjFiIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBTdGVlbGUgPGRhdmlkQHBnbWFzdGVycy5u ZXQ+CkRhdGU6IEZyaSwgNiBNYXIgMjAyNiAwMToxMDoxNCArMDAwMApTdWJqZWN0OiBBZGQg cGdfY29udHJvbCBmbGFnIHRvIHByZXZlbnQgcmVjb3Zlcnkgd2l0aG91dCBiYWNrdXBfbGFi ZWwuCgpIYXJkZW4gcmVjb3ZlcnkgYnkgYWRkaW5nIGEgZmxhZyB0byBwZ19jb250cm9sIHRv IGluZGljYXRlIHRoYXQgYmFja3VwX2xhYmVsIGlzCnJlcXVpcmVkLiBUaGlzIHByZXZlbnRz IHRoZSB1c2VyIGZyb20gZGVsZXRpbmcgYmFja3VwX2xhYmVsIHJlc3VsdGluZyBpbiBhbgpp bmNvbnNpc3RlbnQgcmVjb3ZlcnkuCgpBbm90aGVyIGFkdmFudGFnZSBpcyB0aGF0IHRoZSBj b3B5IG9mIHBnX2NvbnRyb2wgdXNlZCBieSBwZ19iYXNlYmFja3VwIGlzCmd1YXJhbnRlZWQg bm90IHRvIGJlIHRvcm4uCgpUaGlzIGZ1bmN0aW9uYWxpdHkgaXMgbGltaXRlZCB0byBwZ19i YXNlYmFja3VwIChvciBhbnkgc29mdHdhcmUgY29tZm9ydGFibGUKd2l0aCBtb2RpZnlpbmcg cGdfY29udHJvbCkuCgpDb250cm9sIGFuZCBjYXRhbG9nIHZlcnNpb24gYnVtcHMgYXJlIHJl cXVpcmVkLgotLS0KIGRvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtaW5mby5zZ21sICAgICAgICAg IHwgIDUgKysrKysKIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2cuYyAgICAgICAg IHwgMjMgKysrKysrKysrKysrKysrKysrKysrKysKIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFu c2FtL3hsb2dyZWNvdmVyeS5jIHwgMTAgKysrKysrKysrLQogc3JjL2JhY2tlbmQvYmFja3Vw L2Jhc2ViYWNrdXAuYyAgICAgICAgICAgfCAxNSArKysrKystLS0tLS0tLS0KIHNyYy9iYWNr ZW5kL3V0aWxzL21pc2MvcGdfY29udHJvbGRhdGEuYyAgIHwgIDcgKysrKystLQogc3JjL2Jp bi9wZ19jb250cm9sZGF0YS9wZ19jb250cm9sZGF0YS5jICAgfCAgMiArKwogc3JjL2Jpbi9w Z19yZXNldHdhbC9wZ19yZXNldHdhbC5jICAgICAgICAgfCAgMSArCiBzcmMvYmluL3BnX3Jl d2luZC9wZ19yZXdpbmQuYyAgICAgICAgICAgICB8ICAxICsKIHNyYy9pbmNsdWRlL2FjY2Vz cy94bG9nLmggICAgICAgICAgICAgICAgIHwgIDEgKwogc3JjL2luY2x1ZGUvY2F0YWxvZy9w Z19jb250cm9sLmggICAgICAgICAgfCAgNCArKysrCiBzcmMvaW5jbHVkZS9jYXRhbG9nL3Bn X3Byb2MuZGF0ICAgICAgICAgICB8ICA2ICsrKy0tLQogc3JjL3Rlc3QvcmVjb3ZlcnkvdC8w MDJfYXJjaGl2aW5nLnBsICAgICAgfCAyMCArKysrKysrKysrKysrKysrKysrKwogMTIgZmls ZXMgY2hhbmdlZCwgODAgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvZG9jL3NyYy9zZ21sL2Z1bmMvZnVuYy1pbmZvLnNnbWwgYi9kb2Mvc3JjL3NnbWwv ZnVuYy9mdW5jLWluZm8uc2dtbAppbmRleCAyOTRmNDVlODJhMy4uMmU3OGQyODIyMWMgMTAw NjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9mdW5jL2Z1bmMtaW5mby5zZ21sCisrKyBiL2RvYy9z cmMvc2dtbC9mdW5jL2Z1bmMtaW5mby5zZ21sCkBAIC0zNjQ2LDYgKzM2NDYsMTEgQEAgYWNs ICAgICAgfCB7cG9zdGdyZXM9YXJ3ZER4dG0vcG9zdGdyZXMsZm9vPXIvcG9zdGdyZXN9CiAg ICAgICAgPGVudHJ5Pjx0eXBlPmJvb2xlYW48L3R5cGU+PC9lbnRyeT4KICAgICAgIDwvcm93 PgogCisgICAgICA8cm93PgorICAgICAgIDxlbnRyeT48c3RydWN0ZmllbGQ+YmFja3VwX2xh YmVsX3JlcXVpcmVkPC9zdHJ1Y3RmaWVsZD48L2VudHJ5PgorICAgICAgIDxlbnRyeT48dHlw ZT5ib29sZWFuPC90eXBlPjwvZW50cnk+CisgICAgICA8L3Jvdz4KKwogICAgICA8L3Rib2R5 PgogICAgIDwvdGdyb3VwPgogICAgPC90YWJsZT4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5k L2FjY2Vzcy90cmFuc2FtL3hsb2cuYyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hs b2cuYwppbmRleCAzNTRhYzY0NWJkYy4uNjZmMGQ3ZTA5MWQgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2cuYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3Mv dHJhbnNhbS94bG9nLmMKQEAgLTk1NjMsNiArOTU2MywyOSBAQCBkb19wZ19hYm9ydF9iYWNr dXAoaW50IGNvZGUsIERhdHVtIGFyZykKIAl9CiB9CiAKKy8qCisgKiBDcmVhdGUgYSBjb25z aXN0ZW50IGNvcHkgb2YgY29udHJvbCBkYXRhIHRvIGJlIHVzZWQgZm9yIGJhY2t1cCBhbmQg dXBkYXRlIGl0CisgKiB0byByZXF1aXJlIGEgYmFja3VwIGxhYmVsIGZvciByZWNvdmVyeS4g QWxzbyByZWNhbGN1bGF0ZSB0aGUgQ1JDLgorICovCit2b2lkCitiYWNrdXBfY29udHJvbF9m aWxlKHVpbnQ4X3QgKmNvbnRyb2xGaWxlKQoreworCUNvbnRyb2xGaWxlRGF0YSAqY29udHJv bERhdGEgPSAoKENvbnRyb2xGaWxlRGF0YSAqKWNvbnRyb2xGaWxlKTsKKworCW1lbXNldChj b250cm9sRmlsZSArIHNpemVvZihDb250cm9sRmlsZURhdGEpLCAwLAorCQkgICBQR19DT05U Uk9MX0ZJTEVfU0laRSAtIHNpemVvZihDb250cm9sRmlsZURhdGEpKTsKKworCUxXTG9ja0Fj cXVpcmUoQ29udHJvbEZpbGVMb2NrLCBMV19TSEFSRUQpOworCW1lbWNweShjb250cm9sRmls ZSwgQ29udHJvbEZpbGUsIHNpemVvZihDb250cm9sRmlsZURhdGEpKTsKKwlMV0xvY2tSZWxl YXNlKENvbnRyb2xGaWxlTG9jayk7CisKKwljb250cm9sRGF0YS0+YmFja3VwTGFiZWxSZXF1 aXJlZCA9IHRydWU7CisKKwlJTklUX0NSQzMyQyhjb250cm9sRGF0YS0+Y3JjKTsKKwlDT01Q X0NSQzMyQyhjb250cm9sRGF0YS0+Y3JjLCBjb250cm9sRmlsZSwgb2Zmc2V0b2YoQ29udHJv bEZpbGVEYXRhLCBjcmMpKTsKKwlGSU5fQ1JDMzJDKGNvbnRyb2xEYXRhLT5jcmMpOworfQor CiAvKgogICogUmVnaXN0ZXIgYSBoYW5kbGVyIHRoYXQgd2lsbCB3YXJuIGFib3V0IHVudGVy bWluYXRlZCBiYWNrdXBzIGF0IGVuZCBvZgogICogc2Vzc2lvbiwgdW5sZXNzIHRoaXMgaGFz IGFscmVhZHkgYmVlbiBkb25lLgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL3Ry YW5zYW0veGxvZ3JlY292ZXJ5LmMgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9n cmVjb3ZlcnkuYwppbmRleCBmYmRkZDdlNTIyYy4uNzE3NTlhZTY3YjMgMTAwNjQ0Ci0tLSBh L3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2dyZWNvdmVyeS5jCisrKyBiL3NyYy9i YWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2dyZWNvdmVyeS5jCkBAIC02NDYsNyArNjQ2LDE0 IEBAIEluaXRXYWxSZWNvdmVyeShDb250cm9sRmlsZURhdGEgKkNvbnRyb2xGaWxlLCBib29s ICp3YXNTaHV0ZG93bl9wdHIsCiAJfQogCWVsc2UKIAl7Ci0JCS8qIE5vIGJhY2t1cF9sYWJl bCBmaWxlIGhhcyBiZWVuIGZvdW5kIGlmIHdlIGFyZSBoZXJlLiAqLworCQkvKgorCQkgKiBO byBiYWNrdXBfbGFiZWwgZmlsZSBoYXMgYmVlbiBmb3VuZCBpZiB3ZSBhcmUgaGVyZS4gRXJy b3IgaWYgdGhlCisJCSAqIGNvbnRyb2wgZmlsZSByZXF1aXJlcyBiYWNrdXBfbGFiZWwuCisJ CSAqLworCQlpZiAoQ29udHJvbEZpbGUtPmJhY2t1cExhYmVsUmVxdWlyZWQpCisJCQllcmVw b3J0KEZBVEFMLAorCQkJCQkoZXJybXNnKCJjb3VsZCBub3QgZmluZCBiYWNrdXBfbGFiZWwg cmVxdWlyZWQgZm9yIHJlY292ZXJ5IiksCisJCQkJCSBlcnJoaW50KCJiYWNrdXBfbGFiZWwg bXVzdCBiZSBwcmVzZW50IGZvciByZWNvdmVyeSB0byBwcm9jZWVkIikpKTsKIAogCQkvKgog CQkgKiBJZiB0YWJsZXNwYWNlX21hcCBmaWxlIGlzIHByZXNlbnQgd2l0aG91dCBiYWNrdXBf bGFiZWwgZmlsZSwgdGhlcmUKQEAgLTkzMSw2ICs5MzgsNyBAQCBJbml0V2FsUmVjb3Zlcnko Q29udHJvbEZpbGVEYXRhICpDb250cm9sRmlsZSwgYm9vbCAqd2FzU2h1dGRvd25fcHRyLAog CQl7CiAJCQlDb250cm9sRmlsZS0+YmFja3VwU3RhcnRQb2ludCA9IGNoZWNrUG9pbnQucmVk bzsKIAkJCUNvbnRyb2xGaWxlLT5iYWNrdXBFbmRSZXF1aXJlZCA9IGJhY2t1cEVuZFJlcXVp cmVkOworCQkJQ29udHJvbEZpbGUtPmJhY2t1cExhYmVsUmVxdWlyZWQgPSBmYWxzZTsKIAog CQkJaWYgKGJhY2t1cEZyb21TdGFuZGJ5KQogCQkJewpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tl bmQvYmFja3VwL2Jhc2ViYWNrdXAuYyBiL3NyYy9iYWNrZW5kL2JhY2t1cC9iYXNlYmFja3Vw LmMKaW5kZXggMmQ3NGM2NDgzMzUuLmY1NGM4NzkzMDkwIDEwMDY0NAotLS0gYS9zcmMvYmFj a2VuZC9iYWNrdXAvYmFzZWJhY2t1cC5jCisrKyBiL3NyYy9iYWNrZW5kL2JhY2t1cC9iYXNl YmFja3VwLmMKQEAgLTIzLDYgKzIzLDcgQEAKICNpbmNsdWRlICJiYWNrdXAvYmFzZWJhY2t1 cF9pbmNyZW1lbnRhbC5oIgogI2luY2x1ZGUgImJhY2t1cC9iYXNlYmFja3VwX3NpbmsuaCIK ICNpbmNsdWRlICJiYWNrdXAvYmFzZWJhY2t1cF90YXJnZXQuaCIKKyNpbmNsdWRlICJjYXRh bG9nL3BnX2NvbnRyb2wuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX3RhYmxlc3BhY2VfZC5o IgogI2luY2x1ZGUgImNvbW1hbmRzL2RlZnJlbS5oIgogI2luY2x1ZGUgImNvbW1vbi9jb21w cmVzc2lvbi5oIgpAQCAtMzMxLDkgKzMzMiw5IEBAIHBlcmZvcm1fYmFzZV9iYWNrdXAoYmFz ZWJhY2t1cF9vcHRpb25zICpvcHQsIGJic2luayAqc2luaywKIAogCQkJaWYgKHRpLT5wYXRo ID09IE5VTEwpCiAJCQl7Ci0JCQkJc3RydWN0IHN0YXQgc3RhdGJ1ZjsKIAkJCQlib29sCQlz ZW5kdGJsc3BjbGlua3MgPSB0cnVlOwogCQkJCWNoYXIJICAgKmJhY2t1cF9sYWJlbDsKKwkJ CQl1aW50OF90IGNvbnRyb2xGaWxlW1BHX0NPTlRST0xfRklMRV9TSVpFXTsKIAogCQkJCWJi c2lua19iZWdpbl9hcmNoaXZlKHNpbmssICJiYXNlLnRhciIpOwogCkBAIC0zNTYsMTQgKzM1 NywxMCBAQCBwZXJmb3JtX2Jhc2VfYmFja3VwKGJhc2ViYWNrdXBfb3B0aW9ucyAqb3B0LCBi YnNpbmsgKnNpbmssCiAJCQkJCQlzZW5kdGJsc3BjbGlua3MsICZtYW5pZmVzdCwgSW52YWxp ZE9pZCwgaWIpOwogCiAJCQkJLyogLi4uIGFuZCBwZ19jb250cm9sIGFmdGVyIGV2ZXJ5dGhp bmcgZWxzZS4gKi8KLQkJCQlpZiAobHN0YXQoWExPR19DT05UUk9MX0ZJTEUsICZzdGF0YnVm KSAhPSAwKQotCQkJCQllcmVwb3J0KEVSUk9SLAotCQkJCQkJCShlcnJjb2RlX2Zvcl9maWxl X2FjY2VzcygpLAotCQkJCQkJCSBlcnJtc2coImNvdWxkIG5vdCBzdGF0IGZpbGUgXCIlc1wi OiAlbSIsCi0JCQkJCQkJCQlYTE9HX0NPTlRST0xfRklMRSkpKTsKLQkJCQlzZW5kRmlsZShz aW5rLCBYTE9HX0NPTlRST0xfRklMRSwgWExPR19DT05UUk9MX0ZJTEUsICZzdGF0YnVmLAot CQkJCQkJIGZhbHNlLCBJbnZhbGlkT2lkLCBJbnZhbGlkT2lkLAotCQkJCQkJIEludmFsaWRS ZWxGaWxlTnVtYmVyLCAwLCAmbWFuaWZlc3QsIDAsIE5VTEwsIDApOworCQkJCWJhY2t1cF9j b250cm9sX2ZpbGUoY29udHJvbEZpbGUpOworCQkJCXNlbmRGaWxlV2l0aENvbnRlbnQoc2lu aywgWExPR19DT05UUk9MX0ZJTEUsCisJCQkJCQkJCQkoY2hhciAqKWNvbnRyb2xGaWxlLCBQ R19DT05UUk9MX0ZJTEVfU0laRSwKKwkJCQkJCQkJCSZtYW5pZmVzdCk7CiAJCQl9CiAJCQll bHNlCiAJCQl7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9taXNjL3BnX2NvbnRy b2xkYXRhLmMgYi9zcmMvYmFja2VuZC91dGlscy9taXNjL3BnX2NvbnRyb2xkYXRhLmMKaW5k ZXggYzZkOWNiYjE1NzcuLmMyYzE5ZWI3N2RmIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC91 dGlscy9taXNjL3BnX2NvbnRyb2xkYXRhLmMKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvbWlz Yy9wZ19jb250cm9sZGF0YS5jCkBAIC0xNjIsOCArMTYyLDggQEAgcGdfY29udHJvbF9jaGVj a3BvaW50KFBHX0ZVTkNUSU9OX0FSR1MpCiBEYXR1bQogcGdfY29udHJvbF9yZWNvdmVyeShQ R19GVU5DVElPTl9BUkdTKQogewotCURhdHVtCQl2YWx1ZXNbNV07Ci0JYm9vbAkJbnVsbHNb NV07CisJRGF0dW0JCXZhbHVlc1s2XTsKKwlib29sCQludWxsc1s2XTsKIAlUdXBsZURlc2MJ dHVwZGVzYzsKIAlIZWFwVHVwbGUJaHR1cDsKIAlDb250cm9sRmlsZURhdGEgKkNvbnRyb2xG aWxlOwpAQCAtMTk1LDYgKzE5NSw5IEBAIHBnX2NvbnRyb2xfcmVjb3ZlcnkoUEdfRlVOQ1RJ T05fQVJHUykKIAl2YWx1ZXNbNF0gPSBCb29sR2V0RGF0dW0oQ29udHJvbEZpbGUtPmJhY2t1 cEVuZFJlcXVpcmVkKTsKIAludWxsc1s0XSA9IGZhbHNlOwogCisJdmFsdWVzWzVdID0gQm9v bEdldERhdHVtKENvbnRyb2xGaWxlLT5iYWNrdXBMYWJlbFJlcXVpcmVkKTsKKwludWxsc1s1 XSA9IGZhbHNlOworCiAJaHR1cCA9IGhlYXBfZm9ybV90dXBsZSh0dXBkZXNjLCB2YWx1ZXMs IG51bGxzKTsKIAogCVBHX1JFVFVSTl9EQVRVTShIZWFwVHVwbGVHZXREYXR1bShodHVwKSk7 CmRpZmYgLS1naXQgYS9zcmMvYmluL3BnX2NvbnRyb2xkYXRhL3BnX2NvbnRyb2xkYXRhLmMg Yi9zcmMvYmluL3BnX2NvbnRyb2xkYXRhL3BnX2NvbnRyb2xkYXRhLmMKaW5kZXggYTQwNjAz MDlhZTAuLjU5MTlkZDU4ZmVkIDEwMDY0NAotLS0gYS9zcmMvYmluL3BnX2NvbnRyb2xkYXRh L3BnX2NvbnRyb2xkYXRhLmMKKysrIGIvc3JjL2Jpbi9wZ19jb250cm9sZGF0YS9wZ19jb250 cm9sZGF0YS5jCkBAIC0zMDEsNiArMzAxLDggQEAgbWFpbihpbnQgYXJnYywgY2hhciAqYXJn dltdKQogCQkgICBMU05fRk9STUFUX0FSR1MoQ29udHJvbEZpbGUtPmJhY2t1cEVuZFBvaW50 KSk7CiAJcHJpbnRmKF8oIkVuZC1vZi1iYWNrdXAgcmVjb3JkIHJlcXVpcmVkOiAgICAgICAg JXNcbiIpLAogCQkgICBDb250cm9sRmlsZS0+YmFja3VwRW5kUmVxdWlyZWQgPyBfKCJ5ZXMi KSA6IF8oIm5vIikpOworCXByaW50ZihfKCJCYWNrdXAgbGFiZWwgcmVxdWlyZWQ6ICAgICAg ICAgICAgICAgICVzXG4iKSwKKwkJICAgQ29udHJvbEZpbGUtPmJhY2t1cExhYmVsUmVxdWly ZWQgPyBfKCJ5ZXMiKSA6IF8oIm5vIikpOwogCXByaW50ZihfKCJ3YWxfbGV2ZWwgc2V0dGlu ZzogICAgICAgICAgICAgICAgICAgICVzXG4iKSwKIAkJICAgd2FsX2xldmVsX3N0cihDb250 cm9sRmlsZS0+d2FsX2xldmVsKSk7CiAJcHJpbnRmKF8oIndhbF9sb2dfaGludHMgc2V0dGlu ZzogICAgICAgICAgICAgICAgJXNcbiIpLApkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9wZ19yZXNl dHdhbC9wZ19yZXNldHdhbC5jIGIvc3JjL2Jpbi9wZ19yZXNldHdhbC9wZ19yZXNldHdhbC5j CmluZGV4IGFiNzY2YzM0ZDRiLi43NjhhNGVkMmYxOCAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9w Z19yZXNldHdhbC9wZ19yZXNldHdhbC5jCisrKyBiL3NyYy9iaW4vcGdfcmVzZXR3YWwvcGdf cmVzZXR3YWwuYwpAQCAtOTE4LDYgKzkxOCw3IEBAIFJld3JpdGVDb250cm9sRmlsZSh2b2lk KQogCUNvbnRyb2xGaWxlLmJhY2t1cFN0YXJ0UG9pbnQgPSBJbnZhbGlkWExvZ1JlY1B0cjsK IAlDb250cm9sRmlsZS5iYWNrdXBFbmRQb2ludCA9IEludmFsaWRYTG9nUmVjUHRyOwogCUNv bnRyb2xGaWxlLmJhY2t1cEVuZFJlcXVpcmVkID0gZmFsc2U7CisJQ29udHJvbEZpbGUuYmFj a3VwTGFiZWxSZXF1aXJlZCA9IGZhbHNlOwogCiAJLyoKIAkgKiBGb3JjZSB0aGUgZGVmYXVs dHMgZm9yIG1heF8qIHNldHRpbmdzLiBUaGUgdmFsdWVzIGRvbid0IHJlYWxseSBtYXR0ZXIK ZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfcmV3aW5kL3BnX3Jld2luZC5jIGIvc3JjL2Jpbi9w Z19yZXdpbmQvcGdfcmV3aW5kLmMKaW5kZXggOWQ3NDVkNGIyNWIuLjUwOWI5ZTgwYTIxIDEw MDY0NAotLS0gYS9zcmMvYmluL3BnX3Jld2luZC9wZ19yZXdpbmQuYworKysgYi9zcmMvYmlu L3BnX3Jld2luZC9wZ19yZXdpbmQuYwpAQCAtNzM2LDYgKzczNiw3IEBAIHBlcmZvcm1fcmV3 aW5kKGZpbGVtYXBfdCAqZmlsZW1hcCwgcmV3aW5kX3NvdXJjZSAqc291cmNlLAogCUNvbnRy b2xGaWxlX25ldy5taW5SZWNvdmVyeVBvaW50ID0gZW5kcmVjOwogCUNvbnRyb2xGaWxlX25l dy5taW5SZWNvdmVyeVBvaW50VExJID0gZW5kdGxpOwogCUNvbnRyb2xGaWxlX25ldy5zdGF0 ZSA9IERCX0lOX0FSQ0hJVkVfUkVDT1ZFUlk7CisJQ29udHJvbEZpbGVfbmV3LmJhY2t1cExh YmVsUmVxdWlyZWQgPSB0cnVlOwogCWlmICghZHJ5X3J1bikKIAkJdXBkYXRlX2NvbnRyb2xm aWxlKGRhdGFkaXJfdGFyZ2V0LCAmQ29udHJvbEZpbGVfbmV3LCBkb19zeW5jKTsKIH0KZGlm ZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2FjY2Vzcy94bG9nLmggYi9zcmMvaW5jbHVkZS9hY2Nl c3MveGxvZy5oCmluZGV4IGZkZmI1NzI0NjdiLi44NGVjNWFhYmRmZCAxMDA2NDQKLS0tIGEv c3JjL2luY2x1ZGUvYWNjZXNzL3hsb2cuaAorKysgYi9zcmMvaW5jbHVkZS9hY2Nlc3MveGxv Zy5oCkBAIC0zMTEsNiArMzExLDcgQEAgZXh0ZXJuIHZvaWQgZG9fcGdfYmFja3VwX3N0YXJ0 KGNvbnN0IGNoYXIgKmJhY2t1cGlkc3RyLCBib29sIGZhc3QsCiAJCQkJCQkJICAgU3RyaW5n SW5mbyB0YmxzcGNtYXBmaWxlKTsKIGV4dGVybiB2b2lkIGRvX3BnX2JhY2t1cF9zdG9wKEJh Y2t1cFN0YXRlICpzdGF0ZSwgYm9vbCB3YWl0Zm9yYXJjaGl2ZSk7CiBleHRlcm4gdm9pZCBk b19wZ19hYm9ydF9iYWNrdXAoaW50IGNvZGUsIERhdHVtIGFyZyk7CitleHRlcm4gdm9pZCBi YWNrdXBfY29udHJvbF9maWxlKHVpbnQ4X3QgKmNvbnRyb2xGaWxlKTsKIGV4dGVybiB2b2lk IHJlZ2lzdGVyX3BlcnNpc3RlbnRfYWJvcnRfYmFja3VwX2hhbmRsZXIodm9pZCk7CiBleHRl cm4gU2Vzc2lvbkJhY2t1cFN0YXRlIGdldF9iYWNrdXBfc3RhdHVzKHZvaWQpOwogCmRpZmYg LS1naXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2NvbnRyb2wuaCBiL3NyYy9pbmNsdWRl L2NhdGFsb2cvcGdfY29udHJvbC5oCmluZGV4IDc1MDNkYjFhZjUxLi4yNjYxODE2MmE3YiAx MDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19jb250cm9sLmgKKysrIGIvc3Jj L2luY2x1ZGUvY2F0YWxvZy9wZ19jb250cm9sLmgKQEAgLTE2NiwxMiArMTY2LDE2IEBAIHR5 cGVkZWYgc3RydWN0IENvbnRyb2xGaWxlRGF0YQogCSAqIElmIGJhY2t1cEVuZFJlcXVpcmVk IGlzIHRydWUsIHdlIGtub3cgZm9yIHN1cmUgdGhhdCB3ZSdyZSByZXN0b3JpbmcKIAkgKiBm cm9tIGEgYmFja3VwLCBhbmQgbXVzdCBzZWUgYSBiYWNrdXAtZW5kIHJlY29yZCBiZWZvcmUg d2UgY2FuIHNhZmVseQogCSAqIHN0YXJ0IHVwLgorCSAqCisJICogSWYgYmFja3VwTGFiZWxS ZXF1aXJlZCBpcyB0cnVlLCB0aGVuIGEgYmFja3VwX2xhYmVsIGZpbGUgbXVzdCBiZQorCSAq IHByZXNlbnQgaW4gb3JkZXIgZm9yIHJlY292ZXJ5IHRvIHByb2NlZWQuCiAJICovCiAJWExv Z1JlY1B0cgltaW5SZWNvdmVyeVBvaW50OwogCVRpbWVMaW5lSUQJbWluUmVjb3ZlcnlQb2lu dFRMSTsKIAlYTG9nUmVjUHRyCWJhY2t1cFN0YXJ0UG9pbnQ7CiAJWExvZ1JlY1B0cgliYWNr dXBFbmRQb2ludDsKIAlib29sCQliYWNrdXBFbmRSZXF1aXJlZDsKKwlib29sCQliYWNrdXBM YWJlbFJlcXVpcmVkOwogCiAJLyoKIAkgKiBQYXJhbWV0ZXIgc2V0dGluZ3MgdGhhdCBkZXRl cm1pbmUgaWYgdGhlIFdBTCBjYW4gYmUgdXNlZCBmb3IgYXJjaGl2YWwKZGlmZiAtLWdpdCBh L3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQgYi9zcmMvaW5jbHVkZS9jYXRhbG9n L3BnX3Byb2MuZGF0CmluZGV4IDQ5NTBiZmYyODA0Li5lY2U5YjRmMDhjOSAxMDA2NDQKLS0t IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdAorKysgYi9zcmMvaW5jbHVkZS9j YXRhbG9nL3BnX3Byb2MuZGF0CkBAIC0xMjQ5NCw5ICsxMjQ5NCw5IEBACiB7IG9pZCA9PiAn MzQ0MycsCiAgIGRlc2NyID0+ICdwZ19jb250cm9sZGF0YSByZWNvdmVyeSBzdGF0ZSBpbmZv cm1hdGlvbiBhcyBhIGZ1bmN0aW9uJywKICAgcHJvbmFtZSA9PiAncGdfY29udHJvbF9yZWNv dmVyeScsIHByb3ZvbGF0aWxlID0+ICd2JywgcHJvcmV0dHlwZSA9PiAncmVjb3JkJywKLSAg cHJvYXJndHlwZXMgPT4gJycsIHByb2FsbGFyZ3R5cGVzID0+ICd7cGdfbHNuLGludDQscGdf bHNuLHBnX2xzbixib29sfScsCi0gIHByb2FyZ21vZGVzID0+ICd7byxvLG8sbyxvfScsCi0g IHByb2FyZ25hbWVzID0+ICd7bWluX3JlY292ZXJ5X2VuZF9sc24sbWluX3JlY292ZXJ5X2Vu ZF90aW1lbGluZSxiYWNrdXBfc3RhcnRfbHNuLGJhY2t1cF9lbmRfbHNuLGVuZF9vZl9iYWNr dXBfcmVjb3JkX3JlcXVpcmVkfScsCisgIHByb2FyZ3R5cGVzID0+ICcnLCBwcm9hbGxhcmd0 eXBlcyA9PiAne3BnX2xzbixpbnQ0LHBnX2xzbixwZ19sc24sYm9vbCxib29sfScsCisgIHBy b2FyZ21vZGVzID0+ICd7byxvLG8sbyxvLG99JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3ttaW5f cmVjb3ZlcnlfZW5kX2xzbixtaW5fcmVjb3ZlcnlfZW5kX3RpbWVsaW5lLGJhY2t1cF9zdGFy dF9sc24sYmFja3VwX2VuZF9sc24sZW5kX29mX2JhY2t1cF9yZWNvcmRfcmVxdWlyZWQsYmFj a3VwX2xhYmVsX3JlcXVpcmVkfScsCiAgIHByb3NyYyA9PiAncGdfY29udHJvbF9yZWNvdmVy eScgfSwKIAogeyBvaWQgPT4gJzM0NDQnLApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVjb3Zl cnkvdC8wMDJfYXJjaGl2aW5nLnBsIGIvc3JjL3Rlc3QvcmVjb3ZlcnkvdC8wMDJfYXJjaGl2 aW5nLnBsCmluZGV4IGFhNDBmNThlNmQ2Li45OTYzZDEzNDczZSAxMDA2NDQKLS0tIGEvc3Jj L3Rlc3QvcmVjb3ZlcnkvdC8wMDJfYXJjaGl2aW5nLnBsCisrKyBiL3NyYy90ZXN0L3JlY292 ZXJ5L3QvMDAyX2FyY2hpdmluZy5wbApAQCAtNDEsNiArNDEsMjYgQEAgJG5vZGVfc3RhbmRi eS0+YXBwZW5kX2NvbmYoCiBhcmNoaXZlX2NsZWFudXBfY29tbWFuZCA9ICdlY2hvIGFyY2hp dmVfY2xlYW51cF9kb25lID4gJGFyY2hpdmVfY2xlYW51cF9jb21tYW5kX2ZpbGUnCiByZWNv dmVyeV9lbmRfY29tbWFuZCA9ICdlY2hvIHJlY292ZXJ5X2VuZGVkX2RvbmUgPiAkcmVjb3Zl cnlfZW5kX2NvbW1hbmRfZmlsZScKICkpOworCisjIFJlbmFtZSBiYWNrdXBfbGFiZWwgdG8g dmVyaWZ5IHRoYXQgcmVjb3Zlcnkgd2lsbCBub3Qgc3RhcnQgd2l0aG91dCBpdAorcmVuYW1l KCIkZGF0YV9kaXIvYmFja3VwX2xhYmVsIiwgIiRkYXRhX2Rpci9iYWNrdXBfbGFiZWwudG1w IikKKyAgb3IgQkFJTF9PVVQgImNvdWxkIG5vdCBtb3ZlICRkYXRhX2Rpci9iYWNrdXBfbGFi ZWwiOworCitteSAkcmVzID0gcnVuX2xvZygKKwlbCisJCSdwZ19jdGwnLCAnLUQnLCAkbm9k ZV9zdGFuZGJ5LT5kYXRhX2RpciwgJy1sJywKKwkJJG5vZGVfc3RhbmRieS0+bG9nZmlsZSwg J3N0YXJ0JworCV0pOworb2soISRyZXMsICdpbnZhbGlkIHJlY292ZXJ5IHN0YXJ0dXAgZmFp bHMnKTsKKworbXkgJGxvZ2ZpbGUgPSBzbHVycF9maWxlKCRub2RlX3N0YW5kYnktPmxvZ2Zp bGUoKSk7CitvaygkbG9nZmlsZSA9fiBxci9jb3VsZCBub3QgZmluZCBiYWNrdXBfbGFiZWwg cmVxdWlyZWQgZm9yIHJlY292ZXJ5LywKKwknY291bGQgbm90IGZpbmQgYmFja3VwX2xhYmVs IHJlcXVpcmVkIGZvciByZWNvdmVyeScpOworCisjIFJlc3RvcmUgYmFja3VwX2xhYmVsIHNv IHJlY292ZXJ5IHByb2NlZWRzIG5vcm1hbGx5CityZW5hbWUoIiRkYXRhX2Rpci9iYWNrdXBf bGFiZWwudG1wIiwgIiRkYXRhX2Rpci9iYWNrdXBfbGFiZWwiKQorICBvciBCQUlMX09VVCAi Y291bGQgbm90IG1vdmUgJGRhdGFfZGlyL2JhY2t1cF9sYWJlbCI7CisKICRub2RlX3N0YW5k YnktPnN0YXJ0OwogCiAjIENyZWF0ZSBzb21lIGNvbnRlbnQgb24gcHJpbWFyeQotLSAKMi4z NC4xCgo= --------------XDAd0xiN5jGUCSGjPgzjJo0i Content-Type: text/plain; charset=UTF-8; name="pgcontrol-flag-v8-02-sql.patch" Content-Disposition: attachment; filename="pgcontrol-flag-v8-02-sql.patch" Content-Transfer-Encoding: base64 RnJvbSAxZGU1YzEzOTQ3ODg0ZTMzZjc0NDE3N2Q3ZjIxMTQ3ODI2YTE4MGUxIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBTdGVlbGUgPGRhdmlkQHBnbWFzdGVycy5u ZXQ+CkRhdGU6IEZyaSwgNiBNYXIgMjAyNiAwMToxMDoxNCArMDAwMApTdWJqZWN0OiBSZXR1 cm4gcGdfY29udHJvbCBmcm9tIHBnX2JhY2t1cF9zdG9wKCkuCgpIYXJkZW4gcmVjb3Zlcnkg YnkgcmV0dXJuaW5nIGEgY29weSBvZiBwZ19jb250cm9sIGZyb20gcGdfYmFja3VwX3N0b3Ao KSB0aGF0IGhhcwphIGZsYWcgc2V0IHRvIHByZXZlbnQgcmVjb3ZlcnkgaWYgdGhlIGJhY2t1 cF9sYWJlbCBmaWxlIGlzIG1pc3NpbmcuIEluc3RlYWQgb2YKYmFja3VwIHNvZnR3YXJlIGNv cHlpbmcgcGdfY29udHJvbCBmcm9tIFBHREFUQSwgaXQgc3RvcmVzIGFuIHVwZGF0ZWQgdmVy c2lvbgp0aGF0IGlzIHJldHVybmVkIGZyb20gcGdfYmFja3VwX3N0b3AoKS4gVGhpcyBpcyBi ZXR0ZXIgZm9yIHRoZSBmb2xsb3dpbmcKcmVhc29uczoKCiogVGhlIHVzZXIgY2FuIG5vIGxv bmdlciByZW1vdmUgYmFja3VwX2xhYmVsIGFuZCBnZXQgd2hhdCBsb29rcyBsaWtlIGEKc3Vj Y2Vzc2Z1bCByZWNvdmVyeSAod2hpbGUgYWxtb3N0IGNlcnRhaW5seSBjYXVzaW5nIGNvcnJ1 cHRpb24pLiBJZiBiYWNrdXBfbGFiZWwKaXMgcmVtb3ZlZCB0aGUgY2x1c3RlciB3aWxsIG5v dCBzdGFydC4gVGhlIHVzZXIgbWF5IHRyeSBwZ19yZXNldHdhbCwgYnV0IHRoYXQKdG9vbCBt YWtlcyBpdCBwcmV0dHkgY2xlYXIgdGhhdCBjb3JydXB0aW9uIHdpbGwgcmVzdWx0IGZyb20g aXRzIHVzZS4KCiogV2UgZG9uJ3QgbmVlZCB0byB3b3JyeSBhYm91dCBiYWNrdXAgc29mdHdh cmUgc2VlaW5nIGEgdG9ybiBjb3B5IG9mIHBnX2NvbnRyb2wsCnNpbmNlIFBvc3RncmVzIGNh biBzYWZlbHkgcmVhZCBpdCBvdXQgb2YgbWVtb3J5IGFuZCBwcm92aWRlIGEgdmFsaWQgY29w eSB2aWEKcGdfYmFja3VwX3N0b3AoKS4gVGhpcyBzb2x2ZXMgdG9ybiByZWFkcyB3aXRob3V0 IG5lZWRpbmcgdG8gd3JpdGUgcGdfY29udHJvbCB2aWEKYSB0ZW1wIGZpbGUsIHdoaWNoIG1h eSBhZmZlY3QgcGVyZm9ybWFuY2Ugb24gYSBzdGFuZGJ5LgoKKiBGb3IgYmFja3VwIGZyb20g c3RhbmRieSwgd2Ugbm8gbG9uZ2VyIG5lZWQgdG8gaW5zdHJ1Y3QgdGhlIGJhY2t1cCBzb2Z0 d2FyZSB0bwpjb3B5IHBnX2NvbnRyb2wgbGFzdC4gSW4gZmFjdCB0aGUgYmFja3VwIHNvZnR3 YXJlIHNob3VsZCBub3QgY29weSBwZ19jb250cm9sIGZyb20KUEdEQVRBIGF0IGFsbC4KClRo ZXNlIGNoYW5nZXMgaGF2ZSBubyBpbXBhY3Qgb24gY3VycmVudCBiYWNrdXAgc29mdHdhcmUg YW5kIHRoZXkgYXJlIGZyZWUgdG8gdXNlCnRoZSBwZ19jb250cm9sIGF2YWlsYWJsZSBmcm9t IHBnX3N0b3BfYmFja3VwKCkgb3IgY29udGludWUgdG8gdXNlIHBnX2NvbnRyb2wgZnJvbQpQ R0RBVEEuIE9mIGNvdXJzZSB0aGV5IHdpbGwgbWlzcyB0aGUgYmVuZWZpdHMgb2YgZ2V0dGlu ZyBhIGNvbnNpc3RlbnQgY29weSBvZgpwZ19jb250cm9sIGFuZCB0aGUgYmFja3VwX2xhYmVs IGNoZWNraW5nLCBidXQgd2lsbCBiZSBubyB3b3JzZSBvZmYgdGhhbiBiZWZvcmUuCgpDYXRh bG9nIHZlcnNpb24gYnVtcCBpcyByZXF1aXJlZC4KLS0tCiBkb2Mvc3JjL3NnbWwvYmFja3Vw LnNnbWwgICAgICAgICAgICAgICAgICAgIHwgMTggKysrKystCiBzcmMvYmFja2VuZC9hY2Nl c3MvdHJhbnNhbS94bG9nZnVuY3MuYyAgICAgIHwgMjAgKysrKy0tCiBzcmMvaW5jbHVkZS9j YXRhbG9nL3BnX3Byb2MuZGF0ICAgICAgICAgICAgIHwgIDQgKy0KIHNyYy90ZXN0L3JlY292 ZXJ5L3QvMDQyX2xvd19sZXZlbF9iYWNrdXAucGwgfCA2NyArKysrKysrKysrKysrKysrKysr Ky0KIDQgZmlsZXMgY2hhbmdlZCwgOTcgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2JhY2t1cC5zZ21sIGIvZG9jL3NyYy9zZ21s L2JhY2t1cC5zZ21sCmluZGV4IDE2ODQ0NGVjY2M1Li42Nzk3NGI3YjFiNiAxMDA2NDQKLS0t IGEvZG9jL3NyYy9zZ21sL2JhY2t1cC5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9iYWNrdXAu c2dtbApAQCAtMTAyNyw5ICsxMDI3LDEyIEBAIFNFTEVDVCAqIEZST00gcGdfYmFja3VwX3N0 b3Aod2FpdF9mb3JfYXJjaGl2ZSA9PiB0cnVlKTsKICAgICAgdmFsdWVzLiBUaGUgc2Vjb25k IG9mIHRoZXNlIGZpZWxkcyBzaG91bGQgYmUgd3JpdHRlbiB0byBhIGZpbGUgbmFtZWQKICAg ICAgPGZpbGVuYW1lPmJhY2t1cF9sYWJlbDwvZmlsZW5hbWU+IGluIHRoZSByb290IGRpcmVj dG9yeSBvZiB0aGUgYmFja3VwLiBUaGUKICAgICAgdGhpcmQgZmllbGQgc2hvdWxkIGJlIHdy aXR0ZW4gdG8gYSBmaWxlIG5hbWVkCi0gICAgIDxmaWxlbmFtZT50YWJsZXNwYWNlX21hcDwv ZmlsZW5hbWU+IHVubGVzcyB0aGUgZmllbGQgaXMgZW1wdHkuIFRoZXNlIGZpbGVzIGFyZQor ICAgICA8ZmlsZW5hbWU+dGFibGVzcGFjZV9tYXA8L2ZpbGVuYW1lPiB1bmxlc3MgdGhlIGZp ZWxkIGlzIGVtcHR5LiBUaGUgZm91cnRoCisgICAgIGZpZWxkIHNob3VsZCBiZSB3cml0dGVu IGludG8gYSBmaWxlIG5hbWVkCisgICAgIDxmaWxlbmFtZT5nbG9iYWwvcGdfY29udHJvbDwv ZmlsZW5hbWU+IChvdmVyd3JpdGluZyB0aGUgZXhpc3RpbmcgZmlsZSB3aGVuCisgICAgIHBy ZXNlbnQpLiBUaGVzZSBmaWxlcyBhcmUKICAgICAgdml0YWwgdG8gdGhlIGJhY2t1cCB3b3Jr aW5nIGFuZCBtdXN0IGJlIHdyaXR0ZW4gYnl0ZSBmb3IgYnl0ZSB3aXRob3V0Ci0gICAgIG1v ZGlmaWNhdGlvbiwgd2hpY2ggbWF5IHJlcXVpcmUgb3BlbmluZyB0aGUgZmlsZSBpbiBiaW5h cnkgbW9kZS4KKyAgICAgbW9kaWZpY2F0aW9uLCB3aGljaCB3aWxsIHJlcXVpcmUgb3Blbmlu ZyB0aGUgZmlsZSBpbiBiaW5hcnkgbW9kZS4KICAgICA8L3BhcmE+CiAgICA8L2xpc3RpdGVt PgogICAgPGxpc3RpdGVtPgpAQCAtMTEwMSw3ICsxMTA0LDE2IEBAIFNFTEVDVCAqIEZST00g cGdfYmFja3VwX3N0b3Aod2FpdF9mb3JfYXJjaGl2ZSA9PiB0cnVlKTsKICAgIDwvcGFyYT4K IAogICAgPHBhcmE+Ci0gICAgWW91IHNob3VsZCwgaG93ZXZlciwgb21pdCBmcm9tIHRoZSBi YWNrdXAgdGhlIGZpbGVzIHdpdGhpbiB0aGUKKyAgICBZb3Ugc2hvdWxkIGV4Y2x1ZGUgPGZp bGVuYW1lPmdsb2JhbC9wZ19jb250cm9sPC9maWxlbmFtZT4gZnJvbSB5b3VyIGJhY2t1cAor ICAgIGFuZCBwdXQgdGhlIGNvbnRlbnRzIG9mIHRoZSA8cGFyYW1ldGVyPmNvbnRyb2xmaWxl PC9wYXJhbWV0ZXI+IGNvbHVtbgorICAgIHJldHVybmVkIGZyb20gPGZ1bmN0aW9uPnBnX2Jh Y2t1cF9zdG9wPC9mdW5jdGlvbj4gaW4geW91ciBiYWNrdXAgYXQKKyAgICA8ZmlsZW5hbWU+ Z2xvYmFsL3BnX2NvbnRyb2w8L2ZpbGVuYW1lPi4gVGhpcyB2ZXJzaW9uIG9mIHBnX2NvbnRy b2wgY29udGFpbnMKKyAgICBzYWZlZ3VhcmRzIGFnYWluc3QgcmVjb3Zlcnkgd2l0aG91dCBi YWNrdXBfbGFiZWwgcHJlc2VudCBhbmQgaXMgZ3VhcmFudGVlZAorICAgIG5vdCB0byBiZSB0 b3JuLgorICAgPC9wYXJhPgorCisgICA8cGFyYT4KKyAgICBZb3Ugc2hvdWxkIGFsc28gb21p dCBmcm9tIHRoZSBiYWNrdXAgdGhlIGZpbGVzIHdpdGhpbiB0aGUKICAgICBjbHVzdGVyJ3Mg PGZpbGVuYW1lPnBnX3dhbC88L2ZpbGVuYW1lPiBzdWJkaXJlY3RvcnkuICBUaGlzCiAgICAg c2xpZ2h0IGFkanVzdG1lbnQgaXMgd29ydGh3aGlsZSBiZWNhdXNlIGl0IHJlZHVjZXMgdGhl IHJpc2sKICAgICBvZiBtaXN0YWtlcyB3aGVuIHJlc3RvcmluZy4gIFRoaXMgaXMgZWFzeSB0 byBhcnJhbmdlIGlmCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94 bG9nZnVuY3MuYyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2dmdW5jcy5jCmlu ZGV4IDJlZmU0MTA1ZWZiLi5lN2U3YzBiMThlNSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQv YWNjZXNzL3RyYW5zYW0veGxvZ2Z1bmNzLmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3Ry YW5zYW0veGxvZ2Z1bmNzLmMKQEAgLTExMyw5ICsxMTMsMTEgQEAgcGdfYmFja3VwX3N0YXJ0 KFBHX0ZVTkNUSU9OX0FSR1MpCiAgKgogICogVGhlIGJhY2t1cF9sYWJlbCBjb250YWlucyB0 aGUgdXNlci1zdXBwbGllZCBsYWJlbCBzdHJpbmcgKHR5cGljYWxseSB0aGlzCiAgKiB3b3Vs ZCBiZSB1c2VkIHRvIHRlbGwgd2hlcmUgdGhlIGJhY2t1cCBkdW1wIHdpbGwgYmUgc3RvcmVk KSwgdGhlIHN0YXJ0aW5nCi0gKiB0aW1lLCBzdGFydGluZyBXQUwgbG9jYXRpb24gZm9yIHRo ZSBkdW1wIGFuZCBzbyBvbi4gIEl0IGlzIHRoZSBjYWxsZXIncwotICogcmVzcG9uc2liaWxp dHkgdG8gd3JpdGUgdGhlIGJhY2t1cF9sYWJlbCBhbmQgdGFibGVzcGFjZV9tYXAgZmlsZXMg aW4gdGhlCi0gKiBkYXRhIGZvbGRlciB0aGF0IHdpbGwgYmUgcmVzdG9yZWQgZnJvbSB0aGlz IGJhY2t1cC4KKyAqIHRpbWUsIHN0YXJ0aW5nIFdBTCBsb2NhdGlvbiBmb3IgdGhlIGR1bXAg YW5kIHNvIG9uLiAgVGhlIHBnX2NvbnRyb2wgZmlsZQorICogY29udGFpbnMgYSBjb25zaXN0 ZW50IGNvcHkgb2YgcGdfY29udHJvbCB0aGF0IGFsc28gaGFzIGEgc2FmZWd1YXJkIGFnYWlu c3QKKyAqIGJlaW5nIHVzZWQgd2l0aG91dCBiYWNrdXBfbGFiZWwuICBJdCBpcyB0aGUgY2Fs bGVyJ3MgcmVzcG9uc2liaWxpdHkgdG8gd3JpdGUKKyAqIHRoZSBiYWNrdXBfbGFiZWwsIHBn X2NvbnRyb2wsIGFuZCB0YWJsZXNwYWNlX21hcCBmaWxlcyBpbiB0aGUgZGF0YSBmb2xkZXIK KyAqIHRoYXQgd2lsbCBiZSByZXN0b3JlZCBmcm9tIHRoaXMgYmFja3VwLgogICoKICAqIFBl cm1pc3Npb24gY2hlY2tpbmcgZm9yIHRoaXMgZnVuY3Rpb24gaXMgbWFuYWdlZCB0aHJvdWdo IHRoZSBub3JtYWwKICAqIEdSQU5UIHN5c3RlbS4KQEAgLTEyMywxMiArMTI1LDE0IEBAIHBn X2JhY2t1cF9zdGFydChQR19GVU5DVElPTl9BUkdTKQogRGF0dW0KIHBnX2JhY2t1cF9zdG9w KFBHX0ZVTkNUSU9OX0FSR1MpCiB7Ci0jZGVmaW5lIFBHX0JBQ0tVUF9TVE9QX1YyX0NPTFMg MworI2RlZmluZSBQR19CQUNLVVBfU1RPUF9WMl9DT0xTIDQKIAlUdXBsZURlc2MJdHVwZGVz YzsKIAlEYXR1bQkJdmFsdWVzW1BHX0JBQ0tVUF9TVE9QX1YyX0NPTFNdID0gezB9OwogCWJv b2wJCW51bGxzW1BHX0JBQ0tVUF9TVE9QX1YyX0NPTFNdID0gezB9OwogCWJvb2wJCXdhaXRm b3JhcmNoaXZlID0gUEdfR0VUQVJHX0JPT0woMCk7CiAJY2hhcgkgICAqYmFja3VwX2xhYmVs OworCWJ5dGVhCSAgICpwZ19jb250cm9sX2J5dGVhOworCXVpbnQ4X3QJCXBnX2NvbnRyb2xb UEdfQ09OVFJPTF9GSUxFX1NJWkVdOwogCVNlc3Npb25CYWNrdXBTdGF0ZSBzdGF0dXMgPSBn ZXRfYmFja3VwX3N0YXR1cygpOwogCiAJLyogSW5pdGlhbGl6ZSBhdHRyaWJ1dGVzIGluZm9y bWF0aW9uIGluIHRoZSB0dXBsZSBkZXNjcmlwdG9yICovCkBAIC0xNTAsOSArMTU0LDE3IEBA IHBnX2JhY2t1cF9zdG9wKFBHX0ZVTkNUSU9OX0FSR1MpCiAJLyogQnVpbGQgdGhlIGNvbnRl bnRzIG9mIGJhY2t1cF9sYWJlbCAqLwogCWJhY2t1cF9sYWJlbCA9IGJ1aWxkX2JhY2t1cF9j b250ZW50KGJhY2t1cF9zdGF0ZSwgZmFsc2UpOwogCisJLyogQnVpbGQgdGhlIGNvbnRlbnRz IG9mIHBnX2NvbnRyb2wgKi8KKwliYWNrdXBfY29udHJvbF9maWxlKHBnX2NvbnRyb2wpOwor CisJcGdfY29udHJvbF9ieXRlYSA9IChieXRlYSAqKSBwYWxsb2MoUEdfQ09OVFJPTF9GSUxF X1NJWkUgKyBWQVJIRFJTWik7CisJU0VUX1ZBUlNJWkUocGdfY29udHJvbF9ieXRlYSwgUEdf Q09OVFJPTF9GSUxFX1NJWkUgKyBWQVJIRFJTWik7CisJbWVtY3B5KFZBUkRBVEEocGdfY29u dHJvbF9ieXRlYSksIHBnX2NvbnRyb2wsIFBHX0NPTlRST0xfRklMRV9TSVpFKTsKKwogCXZh bHVlc1swXSA9IExTTkdldERhdHVtKGJhY2t1cF9zdGF0ZS0+c3RvcHBvaW50KTsKIAl2YWx1 ZXNbMV0gPSBDU3RyaW5nR2V0VGV4dERhdHVtKGJhY2t1cF9sYWJlbCk7CiAJdmFsdWVzWzJd ID0gQ1N0cmluZ0dldFRleHREYXR1bSh0YWJsZXNwYWNlX21hcC0+ZGF0YSk7CisJdmFsdWVz WzNdID0gUG9pbnRlckdldERhdHVtKHBnX2NvbnRyb2xfYnl0ZWEpOwogCiAJLyogRGVhbGxv Y2F0ZSBiYWNrdXAtcmVsYXRlZCB2YXJpYWJsZXMgKi8KIAlwZnJlZShiYWNrdXBfbGFiZWwp OwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdCBiL3NyYy9p bmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKaW5kZXggZWNlOWI0ZjA4YzkuLjlhODViYzk4 N2RmIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CisrKyBi L3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKQEAgLTY3NTcsOCArNjc1Nyw4IEBA CiB7IG9pZCA9PiAnMjczOScsIGRlc2NyID0+ICdmaW5pc2ggdGFraW5nIGFuIG9ubGluZSBi YWNrdXAnLAogICBwcm9uYW1lID0+ICdwZ19iYWNrdXBfc3RvcCcsIHByb3ZvbGF0aWxlID0+ ICd2JywgcHJvcGFyYWxsZWwgPT4gJ3InLAogICBwcm9yZXR0eXBlID0+ICdyZWNvcmQnLCBw cm9hcmd0eXBlcyA9PiAnYm9vbCcsCi0gIHByb2FsbGFyZ3R5cGVzID0+ICd7Ym9vbCxwZ19s c24sdGV4dCx0ZXh0fScsIHByb2FyZ21vZGVzID0+ICd7aSxvLG8sb30nLAotICBwcm9hcmdu YW1lcyA9PiAne3dhaXRfZm9yX2FyY2hpdmUsbHNuLGxhYmVsZmlsZSxzcGNtYXBmaWxlfScs CisgIHByb2FsbGFyZ3R5cGVzID0+ICd7Ym9vbCxwZ19sc24sdGV4dCx0ZXh0LGJ5dGVhfScs IHByb2FyZ21vZGVzID0+ICd7aSxvLG8sbyxvfScsCisgIHByb2FyZ25hbWVzID0+ICd7d2Fp dF9mb3JfYXJjaGl2ZSxsc24sbGFiZWxmaWxlLHNwY21hcGZpbGUsY29udHJvbGZpbGV9JywK ICAgcHJvYXJnZGVmYXVsdHMgPT4gJ3t0cnVlfScsCiAgIHByb3NyYyA9PiAncGdfYmFja3Vw X3N0b3AnLAogICBwcm9hY2wgPT4gJ3tQT1NUR1JFUz1YfScgfSwKZGlmZiAtLWdpdCBhL3Ny Yy90ZXN0L3JlY292ZXJ5L3QvMDQyX2xvd19sZXZlbF9iYWNrdXAucGwgYi9zcmMvdGVzdC9y ZWNvdmVyeS90LzA0Ml9sb3dfbGV2ZWxfYmFja3VwLnBsCmluZGV4IGRmNGFlMDI5ZmU2Li4z NGM2ZjQ0NjFhZiAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVjb3ZlcnkvdC8wNDJfbG93X2xl dmVsX2JhY2t1cC5wbAorKysgYi9zcmMvdGVzdC9yZWNvdmVyeS90LzA0Ml9sb3dfbGV2ZWxf YmFja3VwLnBsCkBAIC0xMyw2ICsxMyw0MiBAQCB1c2UgUG9zdGdyZVNRTDo6VGVzdDo6Q2x1 c3RlcjsKIHVzZSBQb3N0Z3JlU1FMOjpUZXN0OjpVdGlsczsKIHVzZSBUZXN0OjpNb3JlOwog CisjIERlY29kZSBoZXggdG8gYmluYXJ5CitzdWIgZGVjb2RlX2hleAoreworCW15ICgkZW5j b2RlZCkgPSBAXzsKKwlteSAkZGVjb2RlZDsKKworCSRlbmNvZGVkID1+IHMvXlxzK3xccysk Ly9nOworCisJZm9yIChteSAkaWR4ID0gMDsgJGlkeCA8IGxlbmd0aCgkZW5jb2RlZCk7ICRp ZHggKz0gMikKKwl7CisJCSRkZWNvZGVkIC49IHBhY2soJ0MnLCBoZXgoc3Vic3RyKCRlbmNv ZGVkLCAkaWR4LCAyKSkpOworCX0KKworCXJldHVybiAkZGVjb2RlZDsKK30KKworIyBHZXQg YmFja3VwX2xhYmVsL3BnX2NvbnRyb2wgZnJvbSBwZ19zdG9wX2JhY2t1cCgpCitzdWIgc3Rv cF9iYWNrdXBfcmVzdWx0Cit7CisJbXkgKCRwc3FsKSA9IEBfOworCisJbXkgJGVuY29kZWQg PSAkcHNxbC0+cXVlcnlfc2FmZSgKKwkJInNlbGVjdCBlbmNvZGUobGFiZWxmaWxlOjpieXRl YSwgJ2hleCcpIHx8ICcsJyB8fCAiIC4KKwkJIiAgICAgICBlbmNvZGUoY29udHJvbGZpbGUs ICdoZXgnKSIgLgorCQkiICBmcm9tIHBnX2JhY2t1cF9zdG9wKCkiKTsKKworCW15IEByZXN1 bHQ7CisKKyAgICBmb3JlYWNoIG15ICRjb2x1bW4gKHNwbGl0KCcsJywgJGVuY29kZWQpKQor CXsKKwkJcHVzaChAcmVzdWx0LCBkZWNvZGVfaGV4KCRjb2x1bW4pKTsKKwl9CisKKwlyZXR1 cm4gQHJlc3VsdDsKK30KKwogIyBTdGFydCBwcmltYXJ5IG5vZGUgd2l0aCBhcmNoaXZpbmcu CiBteSAkbm9kZV9wcmltYXJ5ID0gUG9zdGdyZVNRTDo6VGVzdDo6Q2x1c3Rlci0+bmV3KCdw cmltYXJ5Jyk7CiAkbm9kZV9wcmltYXJ5LT5pbml0KGhhc19hcmNoaXZpbmcgPT4gMSwgYWxs b3dzX3N0cmVhbWluZyA9PiAxKTsKQEAgLTgwLDggKzExNiw3IEBAIG15ICRzdG9wX3NlZ21l bnRfbmFtZSA9ICRub2RlX3ByaW1hcnktPnNhZmVfcHNxbCgncG9zdGdyZXMnLAogCSdTRUxF Q1QgcGdfd2FsZmlsZV9uYW1lKHBnX2N1cnJlbnRfd2FsX2xzbigpKScpOwogCiAjIFN0b3Ag YmFja3VwIGFuZCBnZXQgYmFja3VwX2xhYmVsLCB0aGUgbGFzdCBzZWdtZW50IGlzIGFyY2hp dmVkLgotbXkgJGJhY2t1cF9sYWJlbCA9Ci0gICRwc3FsLT5xdWVyeV9zYWZlKCJzZWxlY3Qg bGFiZWxmaWxlIGZyb20gcGdfYmFja3VwX3N0b3AoKSIpOworKG15ICRiYWNrdXBfbGFiZWws IG15ICRwZ19jb250cm9sKSA9IHN0b3BfYmFja3VwX3Jlc3VsdCgkcHNxbCk7CiAKICRwc3Fs LT5xdWl0OwogCkBAIC0xMTgsMTAgKzE1MywzNiBAQCBvayggJG5vZGVfcmVwbGljYS0+bG9n X2NvbnRhaW5zKAogJG5vZGVfcmVwbGljYS0+dGVhcmRvd25fbm9kZTsKICRub2RlX3JlcGxp Y2EtPmNsZWFuX25vZGU7CiAKKyMgU2F2ZSBvbmx5IHBnX2NvbnRyb2wgaW50byB0aGUgYmFj a3VwIHRvIGRlbW9uc3RyYXRlIHRoYXQgcGdfY29udHJvbCByZXR1cm5lZAorIyBmcm9tIHBn X3N0b3BfYmFja3VwKCkgd2lsbCBvbmx5IHBlcmZvcm0gcmVjb3Zlcnkgd2hlbiBiYWNrdXBf bGFiZWwgaXMgcHJlc2VudC4KK29wZW4obXkgJGZoLCAiPiIsICIkYmFja3VwX2Rpci9nbG9i YWwvcGdfY29udHJvbCIpCisgIG9yIGRpZSAiY291bGQgbm90IG9wZW4gcGdfY29udHJvbCI7 CitiaW5tb2RlKCRmaCk7CitzeXN3cml0ZSgkZmgsICRwZ19jb250cm9sKTsKK2Nsb3NlKCRm aCk7CisKKyRub2RlX3JlcGxpY2EgPSBQb3N0Z3JlU1FMOjpUZXN0OjpDbHVzdGVyLT5uZXco J3JlcGxpY2FfZmFpbDInKTsKKyRub2RlX3JlcGxpY2EtPmluaXRfZnJvbV9iYWNrdXAoJG5v ZGVfcHJpbWFyeSwgJGJhY2t1cF9uYW1lLAorCWhhc19yZXN0b3JpbmcgPT4gMSk7CisKK215 ICRyZXMgPSBydW5fbG9nKAorCVsKKwkJJ3BnX2N0bCcsICctRCcsICRub2RlX3JlcGxpY2Et PmRhdGFfZGlyLCAnLWwnLAorCQkkbm9kZV9yZXBsaWNhLT5sb2dmaWxlLCAnc3RhcnQnCisJ XSk7CitvayghJHJlcywgJ2ludmFsaWQgcmVjb3Zlcnkgc3RhcnR1cCBmYWlscycpOworCitt eSAkbG9nZmlsZSA9IHNsdXJwX2ZpbGUoJG5vZGVfcmVwbGljYS0+bG9nZmlsZSgpKTsKK29r KCRsb2dmaWxlID1+IHFyL2NvdWxkIG5vdCBmaW5kIGJhY2t1cF9sYWJlbCByZXF1aXJlZCBm b3IgcmVjb3ZlcnkvLAorCSdjb3VsZCBub3QgZmluZCBiYWNrdXBfbGFiZWwgcmVxdWlyZWQg Zm9yIHJlY292ZXJ5Jyk7CisKKyRub2RlX3JlcGxpY2EtPnRlYXJkb3duX25vZGU7Ciskbm9k ZV9yZXBsaWNhLT5jbGVhbl9ub2RlOworCiAjIFNhdmUgYmFja3VwX2xhYmVsIGludG8gdGhl IGJhY2t1cCBkaXJlY3RvcnkgYW5kIHJlY292ZXIgdXNpbmcgdGhlIHByaW1hcnkncwogIyBh cmNoaXZlLiAgVGhpcyB0aW1lIHJlY292ZXJ5IHdpbGwgc3VjY2VlZCBhbmQgdGhlIGNhbmFy eSB0YWJsZSB3aWxsIGJlCiAjIHByZXNlbnQuCi1vcGVuIG15ICRmaCwgIj4+IiwgIiRiYWNr dXBfZGlyL2JhY2t1cF9sYWJlbCIKK29wZW4gJGZoLCAiPj4iLCAiJGJhY2t1cF9kaXIvYmFj a3VwX2xhYmVsIgogICBvciBkaWUgImNvdWxkIG5vdCBvcGVuIGJhY2t1cF9sYWJlbCI7CiAj IEJpbmFyeSBtb2RlIGlzIHJlcXVpcmVkIGZvciBXaW5kb3dzLCBhcyB0aGUgYmFja3VwX2xh YmVsIHBhcnNpbmcgaXMgbm90CiAjIGFibGUgdG8gY29wZSB3aXRoIENSTEZzLgotLSAKMi4z NC4xCgo= --------------XDAd0xiN5jGUCSGjPgzjJo0i--