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.94.2) (envelope-from ) id 1tbOeB-00AQ8c-Ej for pgsql-hackers@arkaria.postgresql.org; Fri, 24 Jan 2025 18:43:16 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1tbOe9-00GNEA-L7 for pgsql-hackers@arkaria.postgresql.org; Fri, 24 Jan 2025 18:43:13 +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.94.2) (envelope-from ) id 1tbOe9-00GNE2-7a for pgsql-hackers@lists.postgresql.org; Fri, 24 Jan 2025 18:43:13 +0000 Received: from sienna.cherry.relay.mailchannels.net ([23.83.223.165]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1tbOe5-001JXb-2N for pgsql-hackers@postgresql.org; Fri, 24 Jan 2025 18:43:12 +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 914AE165E20; Fri, 24 Jan 2025 18:43:07 +0000 (UTC) Received: from fr-int-smtpout1.hostinger.io (100-116-68-157.trex-nlb.outbound.svc.cluster.local [100.116.68.157]) (Authenticated sender: hostingeremail) by relay.mailchannels.net (Postfix) with ESMTPA id F31BA165DC9; Fri, 24 Jan 2025 18:43:04 +0000 (UTC) ARC-Seal: i=1; s=arc-2022; d=mailchannels.net; t=1737744185; a=rsa-sha256; cv=none; b=LpUoarbzptnbCAs1zVvU1EGfbJHPp6s6LA67LbF4U14xmIuLB35ovcpcxKPiKCAgZLiqjc y5bnCYiVjcpJJuyfOdn5KaHIdWYourde8u3BLR3WvdxqiAuf37ooDZQra0qhcapV6lLgjg iQH+we6gXxO97gsvCw/4ASA0/a4NZSw4/3biM68n/Be+3tUd7Nw13Pgjto4f4X/Qrod8nk Obm5VSPH7NcVISxiMVlMqAf107KKN6HtvNSVJN92rLUzW13n4Zp8EITdY/QVLkDD7nlVBU EvqNm3QkGSPRXC6WoaUZcZgKcx66Gg6KUAFWcu9ri04K6dxm3+3zCS8TofYnZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=mailchannels.net; s=arc-2022; t=1737744185; 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=J1DoayuxQuzZuxxPN2yBMI4mZOr2/jzgJMxhTHjJ3F4=; b=6oVV3dfO5LiYEfUA1haTzoiFeYUKCud4TcEKFmmXnl1T7k76bd8HcpScmDVU/ju8NEAqE6 9oSkaDL8zWe4LkGy+2JZxPqjTudXVw1plobI6bJOwfSoAfy7RyIS1B/dPFB5jpLoYu58nn YRDoUqbCyvYMBR01alMkMpx52c3lRpBee962nHHSPZ3HDAyRc2I1X0sjKcv78GcR1k55r+ +0aP4IGi3scX/sUtTktHam4M0s7LxUhOJr9FyOCN0bEWcGZuw8ugc3HIAWP5/DSawIdxXc +U4r7A2yY4qphiwgfxnHnSyRrOCwlNcB1Hz5yPsXKMAPXTYnDni6IWDn8q4MnQ== ARC-Authentication-Results: i=1; rspamd-7d9c9fccdc-m7pfb; 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-Average-Towering: 3336b8ae2433505a_1737744186002_1176016982 X-MC-Loop-Signature: 1737744186002:2710373743 X-MC-Ingress-Time: 1737744186002 Received: from fr-int-smtpout1.hostinger.io (fr-int-smtpout1.hostinger.io [89.116.146.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384) by 100.116.68.157 (trex/7.0.2); Fri, 24 Jan 2025 18:43:06 +0000 Content-Type: multipart/mixed; boundary="------------0v7sXdzBpvXbMvK0ytZMQT8K" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pgbackrest.org; s=hostingermail1; t=1737744183; 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=J1DoayuxQuzZuxxPN2yBMI4mZOr2/jzgJMxhTHjJ3F4=; b=eJNlKS22/4R0VatujZGMHPHlKARUCWkYdkcBDZe4W+cwfocwgrTXCJlcnIu5ih1zD2NYcu 53GRl2kr+0kyTRQ1Hr3nvIQ8FsOriN0lnIgLqXg85WXPmR0pgy4xsMClmiIHhFU+OaFmht wAozg5cz+17SDCbmhxqcbrMr8uV3XZmklswTVc21XM8QkbICWjwiYbecKTpE7S8jFD3tai +mLh/8upMGEI8DaYYqNzNqE7lQIG4sP/DDB0ypUk1Nm14k9Xk9YBWsWko6SnPFGbTk99zm Nm4z+Tvd6LIFvKoXzh8FaWws6JtddWSHscLBsmxizVb23/SEfiyfXbKHm7Octw== 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> Content-Language: en-US In-Reply-To: Date: Fri, 24 Jan 2025 18:43:02 +0000 (UTC) X-CM-Analysis: v=2.4 cv=BvTPwpX5 c=1 sm=1 tr=0 ts=6793df37 a=1UThGdY7977P8ty/Wg4WSA==:117 a=1UThGdY7977P8ty/Wg4WSA==:17 a=r77TgQKjGQsHNAKrUKIA:9 a=d7aLaq3XH6Vu139c28UA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=1wDIiH70AAAA:8 a=ujshm9o0-4VQCRsr5oQA:9 a=B2y7HmGcmWMA:10 a=JohDp9xLRQvFQJ1YrgkA:9 a=uCsh6WI2SJRHIg0NT2Eg:22 X-CM-Envelope: MS4xfJhvjmmowqz4xAU2jseLGBDTqxb6hllOEpJrkiLxBkz1JlSzR3nOEUw1r1/48VSitMCGVlzezw9d4P7tbDS/FkT5awW8mGl6eHkoUHJ5kiO/3WBtZuBt ufO6u61vK1P3lWlzckkHA3B0zU6rz/6UGY+lygmIIp65CNRDhT60HZjyOKW6nFrjDXUEqqrPpCp/WYdiLF778BCYNARoJcrZvrQ7pW9aum1JBK/Wbk4fDEH5 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. --------------0v7sXdzBpvXbMvK0ytZMQT8K Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 11/20/24 17:44, David Steele wrote: > On 10/3/24 05:11, David Steele wrote: >> On 10/3/24 07:45, Michael Paquier wrote: >> >>> 1) is something that has more value than 2), IMO, because there is no >>> need for a manual step when a backup is taken by the replication >>> protocol.  Well, custom backup solutions that rely on the replication >>> protocol to copy the data would need to make sure that they have a >>> backup_label, but that's something they should do anyway and what this >>> patch wants to protect users from.  The SQL part is optional IMO.  It >>> can be done, but it has less impact overall and makes backups more >>> complicated by requiring the manual copy of the control file. >> >> I don't think having incremental backup in pg_basebackup means >> alternate backup solutions are going away or that we should deprecate >> the SQL interface. If nothing else, third-party solutions need a way >> to get an untorn copy of pg_control and in general I think the new >> flag will be universally useful. > > I updated this patch to fix an issue with -fsanitize=alignment. I'm not > entirely happy with copying twice but not sure of another way to do it. > As far as I can see VARDATA() will not return aligned data on 64-bit > architectures. Rebased and improved a comment and an error. Regards, -David --------------0v7sXdzBpvXbMvK0ytZMQT8K Content-Type: text/plain; charset=UTF-8; name="pgcontrol-flag-v5-02-sql.patch" Content-Disposition: attachment; filename="pgcontrol-flag-v5-02-sql.patch" Content-Transfer-Encoding: base64 RnJvbSBiMjI5NDY2OTI3ZjRjMTdjMmMwNThkYmFjYTkyYjhlYzA0MjliZDgwIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBTdGVlbGUgPGRhdmlkQHBnbWFzdGVycy5u ZXQ+CkRhdGU6IEZyaSwgMjQgSmFuIDIwMjUgMTg6Mzg6MDkgKzAwMDAKU3ViamVjdDogUmV0 dXJuIHBnX2NvbnRyb2wgZnJvbSBwZ19iYWNrdXBfc3RvcCgpLgoKSGFyZGVuIHJlY292ZXJ5 IGJ5IHJldHVybmluZyBhIGNvcHkgb2YgcGdfY29udHJvbCBmcm9tIHBnX2JhY2t1cF9zdG9w KCkgdGhhdCBoYXMKYSBmbGFnIHNldCB0byBwcmV2ZW50IHJlY292ZXJ5IGlmIHRoZSBiYWNr dXBfbGFiZWwgZmlsZSBpcyBtaXNzaW5nLiBJbnN0ZWFkIG9mCmJhY2t1cCBzb2Z0d2FyZSBj b3B5aW5nIHBnX2NvbnRyb2wgZnJvbSBQR0RBVEEsIGl0IHN0b3JlcyBhbiB1cGRhdGVkIHZl cnNpb24KdGhhdCBpcyByZXR1cm5lZCBmcm9tIHBnX2JhY2t1cF9zdG9wKCkuIFRoaXMgaXMg YmV0dGVyIGZvciB0aGUgZm9sbG93aW5nCnJlYXNvbnM6CgoqIFRoZSB1c2VyIGNhbiBubyBs b25nZXIgcmVtb3ZlIGJhY2t1cF9sYWJlbCBhbmQgZ2V0IHdoYXQgbG9va3MgbGlrZSBhCnN1 Y2Nlc3NmdWwgcmVjb3ZlcnkgKHdoaWxlIGFsbW9zdCBjZXJ0YWlubHkgY2F1c2luZyBjb3Jy dXB0aW9uKS4gSWYgYmFja3VwX2xhYmVsCmlzIHJlbW92ZWQgdGhlIGNsdXN0ZXIgd2lsbCBu b3Qgc3RhcnQuIFRoZSB1c2VyIG1heSB0cnkgcGdfcmVzZXR3YWwsIGJ1dCB0aGF0CnRvb2wg bWFrZXMgaXQgcHJldHR5IGNsZWFyIHRoYXQgY29ycnVwdGlvbiB3aWxsIHJlc3VsdCBmcm9t IGl0cyB1c2UuCgoqIFdlIGRvbid0IG5lZWQgdG8gd29ycnkgYWJvdXQgYmFja3VwIHNvZnR3 YXJlIHNlZWluZyBhIHRvcm4gY29weSBvZiBwZ19jb250cm9sLApzaW5jZSBQb3N0Z3JlcyBj YW4gc2FmZWx5IHJlYWQgaXQgb3V0IG9mIG1lbW9yeSBhbmQgcHJvdmlkZSBhIHZhbGlkIGNv cHkgdmlhCnBnX2JhY2t1cF9zdG9wKCkuIFRoaXMgc29sdmVzIHRvcm4gcmVhZHMgd2l0aG91 dCBuZWVkaW5nIHRvIHdyaXRlIHBnX2NvbnRyb2wgdmlhCmEgdGVtcCBmaWxlLCB3aGljaCBt YXkgYWZmZWN0IHBlcmZvcm1hbmNlIG9uIGEgc3RhbmRieS4KCiogRm9yIGJhY2t1cCBmcm9t IHN0YW5kYnksIHdlIG5vIGxvbmdlciBuZWVkIHRvIGluc3RydWN0IHRoZSBiYWNrdXAgc29m dHdhcmUgdG8KY29weSBwZ19jb250cm9sIGxhc3QuIEluIGZhY3QgdGhlIGJhY2t1cCBzb2Z0 d2FyZSBzaG91bGQgbm90IGNvcHkgcGdfY29udHJvbCBmcm9tClBHREFUQSBhdCBhbGwuCgpU aGVzZSBjaGFuZ2VzIGhhdmUgbm8gaW1wYWN0IG9uIGN1cnJlbnQgYmFja3VwIHNvZnR3YXJl IGFuZCB0aGV5IGFyZSBmcmVlIHRvIHVzZQp0aGUgcGdfY29udHJvbCBhdmFpbGFibGUgZnJv bSBwZ19zdG9wX2JhY2t1cCgpIG9yIGNvbnRpbnVlIHRvIHVzZSBwZ19jb250cm9sIGZyb20K UEdEQVRBLiBPZiBjb3Vyc2UgdGhleSB3aWxsIG1pc3MgdGhlIGJlbmVmaXRzIG9mIGdldHRp bmcgYSBjb25zaXN0ZW50IGNvcHkgb2YKcGdfY29udHJvbCBhbmQgdGhlIGJhY2t1cF9sYWJl bCBjaGVja2luZywgYnV0IHdpbGwgYmUgbm8gd29yc2Ugb2ZmIHRoYW4gYmVmb3JlLgoKQ2F0 YWxvZyB2ZXJzaW9uIGJ1bXAgaXMgcmVxdWlyZWQuCi0tLQogZG9jL3NyYy9zZ21sL2JhY2t1 cC5zZ21sICAgICAgICAgICAgICAgICAgICB8IDE4ICsrKysrLQogZG9jL3NyYy9zZ21sL2Z1 bmMuc2dtbCAgICAgICAgICAgICAgICAgICAgICB8ICA1ICstCiBzcmMvYmFja2VuZC9hY2Nl c3MvdHJhbnNhbS94bG9nZnVuY3MuYyAgICAgIHwgMjAgKysrKy0tCiBzcmMvYmFja2VuZC9j YXRhbG9nL3N5c3RlbV9mdW5jdGlvbnMuc3FsICAgIHwgIDIgKy0KIHNyYy9pbmNsdWRlL2Nh dGFsb2cvcGdfcHJvYy5kYXQgICAgICAgICAgICAgfCAgNCArLQogc3JjL3Rlc3QvcmVjb3Zl cnkvdC8wNDJfbG93X2xldmVsX2JhY2t1cC5wbCB8IDY3ICsrKysrKysrKysrKysrKysrKysr LQogNiBmaWxlcyBjaGFuZ2VkLCAxMDEgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2JhY2t1cC5zZ21sIGIvZG9jL3NyYy9zZ21s L2JhY2t1cC5zZ21sCmluZGV4IGU0ZTRjNTZjZjE0Li4yZmNmMTgxMTIxMyAxMDA2NDQKLS0t IGEvZG9jL3NyYy9zZ21sL2JhY2t1cC5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9iYWNrdXAu c2dtbApAQCAtMTAyMSw5ICsxMDIxLDEyIEBAIFNFTEVDVCAqIEZST00gcGdfYmFja3VwX3N0 b3Aod2FpdF9mb3JfYXJjaGl2ZSA9PiB0cnVlKTsKICAgICAgdmFsdWVzLiBUaGUgc2Vjb25k IG9mIHRoZXNlIGZpZWxkcyBzaG91bGQgYmUgd3JpdHRlbiB0byBhIGZpbGUgbmFtZWQKICAg ICAgPGZpbGVuYW1lPmJhY2t1cF9sYWJlbDwvZmlsZW5hbWU+IGluIHRoZSByb290IGRpcmVj dG9yeSBvZiB0aGUgYmFja3VwLiBUaGUKICAgICAgdGhpcmQgZmllbGQgc2hvdWxkIGJlIHdy aXR0ZW4gdG8gYSBmaWxlIG5hbWVkCi0gICAgIDxmaWxlbmFtZT50YWJsZXNwYWNlX21hcDwv ZmlsZW5hbWU+IHVubGVzcyB0aGUgZmllbGQgaXMgZW1wdHkuIFRoZXNlIGZpbGVzIGFyZQor ICAgICA8ZmlsZW5hbWU+dGFibGVzcGFjZV9tYXA8L2ZpbGVuYW1lPiB1bmxlc3MgdGhlIGZp ZWxkIGlzIGVtcHR5LiBUaGUgZm91cnRoCisgICAgIGZpZWxkIHNob3VsZCBiZSB3cml0dGVu IGludG8gYSBmaWxlIG5hbWVkCisgICAgIDxmaWxlbmFtZT5nbG9iYWwvcGdfY29udHJvbDwv ZmlsZW5hbWU+IChvdmVyd3JpdGluZyB0aGUgZXhpc3RpbmcgZmlsZSB3aGVuCisgICAgIHBy ZXNlbnQpLiBUaGVzZSBmaWxlcyBhcmUKICAgICAgdml0YWwgdG8gdGhlIGJhY2t1cCB3b3Jr aW5nIGFuZCBtdXN0IGJlIHdyaXR0ZW4gYnl0ZSBmb3IgYnl0ZSB3aXRob3V0Ci0gICAgIG1v ZGlmaWNhdGlvbiwgd2hpY2ggbWF5IHJlcXVpcmUgb3BlbmluZyB0aGUgZmlsZSBpbiBiaW5h cnkgbW9kZS4KKyAgICAgbW9kaWZpY2F0aW9uLCB3aGljaCB3aWxsIHJlcXVpcmUgb3Blbmlu ZyB0aGUgZmlsZSBpbiBiaW5hcnkgbW9kZS4KICAgICA8L3BhcmE+CiAgICA8L2xpc3RpdGVt PgogICAgPGxpc3RpdGVtPgpAQCAtMTA5NSw3ICsxMDk4LDE2IEBAIFNFTEVDVCAqIEZST00g cGdfYmFja3VwX3N0b3Aod2FpdF9mb3JfYXJjaGl2ZSA9PiB0cnVlKTsKICAgIDwvcGFyYT4K IAogICAgPHBhcmE+Ci0gICAgWW91IHNob3VsZCwgaG93ZXZlciwgb21pdCBmcm9tIHRoZSBi YWNrdXAgdGhlIGZpbGVzIHdpdGhpbiB0aGUKKyAgICBZb3Ugc2hvdWxkIGV4Y2x1ZGUgPGZp bGVuYW1lPmdsb2JhbC9wZ19jb250cm9sPC9maWxlbmFtZT4gZnJvbSB5b3VyIGJhY2t1cAor ICAgIGFuZCBwdXQgdGhlIGNvbnRlbnRzIG9mIHRoZSA8cGFyYW1ldGVyPmNvbnRyb2xmaWxl PC9wYXJhbWV0ZXI+IGNvbHVtbgorICAgIHJldHVybmVkIGZyb20gPGZ1bmN0aW9uPnBnX2Jh Y2t1cF9zdG9wPC9mdW5jdGlvbj4gaW4geW91ciBiYWNrdXAgYXQKKyAgICA8ZmlsZW5hbWU+ Z2xvYmFsL3BnX2NvbnRyb2w8L2ZpbGVuYW1lPi4gVGhpcyB2ZXJzaW9uIG9mIHBnX2NvbnRy b2wgY29udGFpbnMKKyAgICBzYWZlZ3VhcmRzIGFnYWluc3QgcmVjb3Zlcnkgd2l0aG91dCBi YWNrdXBfbGFiZWwgcHJlc2VudCBhbmQgaXMgZ3VhcmFudGVlZAorICAgIG5vdCB0byBiZSB0 b3JuLgorICAgPC9wYXJhPgorCisgICA8cGFyYT4KKyAgICBZb3Ugc2hvdWxkIGFsc28gb21p dCBmcm9tIHRoZSBiYWNrdXAgdGhlIGZpbGVzIHdpdGhpbiB0aGUKICAgICBjbHVzdGVyJ3Mg PGZpbGVuYW1lPnBnX3dhbC88L2ZpbGVuYW1lPiBzdWJkaXJlY3RvcnkuICBUaGlzCiAgICAg c2xpZ2h0IGFkanVzdG1lbnQgaXMgd29ydGh3aGlsZSBiZWNhdXNlIGl0IHJlZHVjZXMgdGhl IHJpc2sKICAgICBvZiBtaXN0YWtlcyB3aGVuIHJlc3RvcmluZy4gIFRoaXMgaXMgZWFzeSB0 byBhcnJhbmdlIGlmCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvZnVuYy5zZ21sIGIvZG9j L3NyYy9zZ21sL2Z1bmMuc2dtbAppbmRleCA4NmM5NDY5MDVhYS4uNjE5MDdlMDg4ZDcgMTAw NjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9mdW5jLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL2Z1 bmMuc2dtbApAQCAtMjg2NzEsOCArMjg2NzEsOSBAQCBMT0c6ICBHcmFuZCB0b3RhbDogMTY1 MTkyMCBieXRlcyBpbiAyMDEgYmxvY2tzOyA2MjIzNjAgZnJlZSAoODggY2h1bmtzKTsgMTAy OTU2MAogICAgICAgICBUaGUgcmVzdWx0IG9mIHRoZSBmdW5jdGlvbiBpcyBhIHNpbmdsZSBy ZWNvcmQuCiAgICAgICAgIFRoZSA8cGFyYW1ldGVyPmxzbjwvcGFyYW1ldGVyPiBjb2x1bW4g aG9sZHMgdGhlIGJhY2t1cCdzIGVuZGluZwogICAgICAgICB3cml0ZS1haGVhZCBsb2cgbG9j YXRpb24gKHdoaWNoIGFnYWluIGNhbiBiZSBpZ25vcmVkKS4gIFRoZSBzZWNvbmQKLSAgICAg ICAgY29sdW1uIHJldHVybnMgdGhlIGNvbnRlbnRzIG9mIHRoZSBiYWNrdXAgbGFiZWwgZmls ZSwgYW5kIHRoZSB0aGlyZAotICAgICAgICBjb2x1bW4gcmV0dXJucyB0aGUgY29udGVudHMg b2YgdGhlIHRhYmxlc3BhY2UgbWFwIGZpbGUuICBUaGVzZSBtdXN0IGJlCisgICAgICAgIGNv bHVtbiByZXR1cm5zIHRoZSBjb250ZW50cyBvZiB0aGUgYmFja3VwIGxhYmVsIGZpbGUsIHRo ZSB0aGlyZCBjb2x1bW4KKyAgICAgICAgcmV0dXJucyB0aGUgY29udGVudHMgb2YgdGhlIHRh Ymxlc3BhY2UgbWFwIGZpbGUsIGFuZCB0aGUgZm91cnRoIGNvbHVtbgorICAgICAgICByZXR1 cm5zIHRoZSBjb250ZW50cyBvZiBwZ19jb250cm9sLiAgVGhlc2UgbXVzdCBiZQogICAgICAg ICBzdG9yZWQgYXMgcGFydCBvZiB0aGUgYmFja3VwIGFuZCBhcmUgcmVxdWlyZWQgYXMgcGFy dCBvZiB0aGUgcmVzdG9yZQogICAgICAgICBwcm9jZXNzLgogICAgICAgIDwvcGFyYT4KZGlm ZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2dmdW5jcy5jIGIvc3Jj L2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0veGxvZ2Z1bmNzLmMKaW5kZXggOGMzMDkwMTY1ZjAu LmU4MDVmMjMxYzY5IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94 bG9nZnVuY3MuYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9nZnVuY3Mu YwpAQCAtMTEzLDkgKzExMywxMSBAQCBwZ19iYWNrdXBfc3RhcnQoUEdfRlVOQ1RJT05fQVJH UykKICAqCiAgKiBUaGUgYmFja3VwX2xhYmVsIGNvbnRhaW5zIHRoZSB1c2VyLXN1cHBsaWVk IGxhYmVsIHN0cmluZyAodHlwaWNhbGx5IHRoaXMKICAqIHdvdWxkIGJlIHVzZWQgdG8gdGVs bCB3aGVyZSB0aGUgYmFja3VwIGR1bXAgd2lsbCBiZSBzdG9yZWQpLCB0aGUgc3RhcnRpbmcK LSAqIHRpbWUsIHN0YXJ0aW5nIFdBTCBsb2NhdGlvbiBmb3IgdGhlIGR1bXAgYW5kIHNvIG9u LiAgSXQgaXMgdGhlIGNhbGxlcidzCi0gKiByZXNwb25zaWJpbGl0eSB0byB3cml0ZSB0aGUg YmFja3VwX2xhYmVsIGFuZCB0YWJsZXNwYWNlX21hcCBmaWxlcyBpbiB0aGUKLSAqIGRhdGEg Zm9sZGVyIHRoYXQgd2lsbCBiZSByZXN0b3JlZCBmcm9tIHRoaXMgYmFja3VwLgorICogdGlt ZSwgc3RhcnRpbmcgV0FMIGxvY2F0aW9uIGZvciB0aGUgZHVtcCBhbmQgc28gb24uICBUaGUg cGdfY29udHJvbCBmaWxlCisgKiBjb250YWlucyBhIGNvbnNpc3RlbnQgY29weSBvZiBwZ19j b250cm9sIHRoYXQgYWxzbyBoYXMgYSBzYWZlZ3VhcmQgYWdhaW5zdAorICogYmVpbmcgdXNl ZCB3aXRob3V0IGJhY2t1cF9sYWJlbC4gIEl0IGlzIHRoZSBjYWxsZXIncyByZXNwb25zaWJp bGl0eSB0byB3cml0ZQorICogdGhlIGJhY2t1cF9sYWJlbCwgcGdfY29udHJvbCwgYW5kIHRh Ymxlc3BhY2VfbWFwIGZpbGVzIGluIHRoZSBkYXRhIGZvbGRlcgorICogdGhhdCB3aWxsIGJl IHJlc3RvcmVkIGZyb20gdGhpcyBiYWNrdXAuCiAgKgogICogUGVybWlzc2lvbiBjaGVja2lu ZyBmb3IgdGhpcyBmdW5jdGlvbiBpcyBtYW5hZ2VkIHRocm91Z2ggdGhlIG5vcm1hbAogICog R1JBTlQgc3lzdGVtLgpAQCAtMTIzLDEyICsxMjUsMTQgQEAgcGdfYmFja3VwX3N0YXJ0KFBH X0ZVTkNUSU9OX0FSR1MpCiBEYXR1bQogcGdfYmFja3VwX3N0b3AoUEdfRlVOQ1RJT05fQVJH UykKIHsKLSNkZWZpbmUgUEdfQkFDS1VQX1NUT1BfVjJfQ09MUyAzCisjZGVmaW5lIFBHX0JB Q0tVUF9TVE9QX1YyX0NPTFMgNAogCVR1cGxlRGVzYwl0dXBkZXNjOwogCURhdHVtCQl2YWx1 ZXNbUEdfQkFDS1VQX1NUT1BfVjJfQ09MU10gPSB7MH07CiAJYm9vbAkJbnVsbHNbUEdfQkFD S1VQX1NUT1BfVjJfQ09MU10gPSB7MH07CiAJYm9vbAkJd2FpdGZvcmFyY2hpdmUgPSBQR19H RVRBUkdfQk9PTCgwKTsKIAljaGFyCSAgICpiYWNrdXBfbGFiZWw7CisJYnl0ZWEJICAgKnBn X2NvbnRyb2xfYnl0ZWE7CisJdWludDhfdAkJcGdfY29udHJvbFtQR19DT05UUk9MX0ZJTEVf U0laRV07CiAJU2Vzc2lvbkJhY2t1cFN0YXRlIHN0YXR1cyA9IGdldF9iYWNrdXBfc3RhdHVz KCk7CiAKIAkvKiBJbml0aWFsaXplIGF0dHJpYnV0ZXMgaW5mb3JtYXRpb24gaW4gdGhlIHR1 cGxlIGRlc2NyaXB0b3IgKi8KQEAgLTE1MCw5ICsxNTQsMTcgQEAgcGdfYmFja3VwX3N0b3Ao UEdfRlVOQ1RJT05fQVJHUykKIAkvKiBCdWlsZCB0aGUgY29udGVudHMgb2YgYmFja3VwX2xh YmVsICovCiAJYmFja3VwX2xhYmVsID0gYnVpbGRfYmFja3VwX2NvbnRlbnQoYmFja3VwX3N0 YXRlLCBmYWxzZSk7CiAKKwkvKiBCdWlsZCB0aGUgY29udGVudHMgb2YgcGdfY29udHJvbCAq LworCWJhY2t1cF9jb250cm9sX2ZpbGUocGdfY29udHJvbCk7CisKKwlwZ19jb250cm9sX2J5 dGVhID0gKGJ5dGVhICopIHBhbGxvYyhQR19DT05UUk9MX0ZJTEVfU0laRSArIFZBUkhEUlNa KTsKKwlTRVRfVkFSU0laRShwZ19jb250cm9sX2J5dGVhLCBQR19DT05UUk9MX0ZJTEVfU0la RSArIFZBUkhEUlNaKTsKKwltZW1jcHkoVkFSREFUQShwZ19jb250cm9sX2J5dGVhKSwgcGdf Y29udHJvbCwgUEdfQ09OVFJPTF9GSUxFX1NJWkUpOworCiAJdmFsdWVzWzBdID0gTFNOR2V0 RGF0dW0oYmFja3VwX3N0YXRlLT5zdG9wcG9pbnQpOwogCXZhbHVlc1sxXSA9IENTdHJpbmdH ZXRUZXh0RGF0dW0oYmFja3VwX2xhYmVsKTsKIAl2YWx1ZXNbMl0gPSBDU3RyaW5nR2V0VGV4 dERhdHVtKHRhYmxlc3BhY2VfbWFwLT5kYXRhKTsKKwl2YWx1ZXNbM10gPSBQb2ludGVyR2V0 RGF0dW0ocGdfY29udHJvbF9ieXRlYSk7CiAKIAkvKiBEZWFsbG9jYXRlIGJhY2t1cC1yZWxh dGVkIHZhcmlhYmxlcyAqLwogCXBmcmVlKGJhY2t1cF9sYWJlbCk7CmRpZmYgLS1naXQgYS9z cmMvYmFja2VuZC9jYXRhbG9nL3N5c3RlbV9mdW5jdGlvbnMuc3FsIGIvc3JjL2JhY2tlbmQv Y2F0YWxvZy9zeXN0ZW1fZnVuY3Rpb25zLnNxbAppbmRleCA1OTExNTdiMWQxYi4uZmE2MzVh Njk4YTMgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvc3lzdGVtX2Z1bmN0aW9u cy5zcWwKKysrIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9zeXN0ZW1fZnVuY3Rpb25zLnNxbApA QCAtMzkwLDcgKzM5MCw3IEBAIENSRUFURSBPUiBSRVBMQUNFIEZVTkNUSU9OCiAKIENSRUFU RSBPUiBSRVBMQUNFIEZVTkNUSU9OIHBnX2JhY2t1cF9zdG9wICgKICAgICAgICAgd2FpdF9m b3JfYXJjaGl2ZSBib29sZWFuIERFRkFVTFQgdHJ1ZSwgT1VUIGxzbiBwZ19sc24sCi0gICAg ICAgIE9VVCBsYWJlbGZpbGUgdGV4dCwgT1VUIHNwY21hcGZpbGUgdGV4dCkKKyAgICAgICAg T1VUIGxhYmVsZmlsZSB0ZXh0LCBPVVQgc3BjbWFwZmlsZSB0ZXh0LCBPVVQgY29udHJvbGZp bGUgYnl0ZWEpCiAgIFJFVFVSTlMgcmVjb3JkIFNUUklDVCBWT0xBVElMRSBMQU5HVUFHRSBp bnRlcm5hbCBhcyAncGdfYmFja3VwX3N0b3AnCiAgIFBBUkFMTEVMIFJFU1RSSUNURUQ7CiAK ZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQgYi9zcmMvaW5j bHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CmluZGV4IDA0MTY1NjliODIzLi5kYmQ4YTg5ZDlk OSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdAorKysgYi9z cmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0CkBAIC02NjAyLDggKzY2MDIsOCBAQAog eyBvaWQgPT4gJzI3MzknLCBkZXNjciA9PiAnZmluaXNoIHRha2luZyBhbiBvbmxpbmUgYmFj a3VwJywKICAgcHJvbmFtZSA9PiAncGdfYmFja3VwX3N0b3AnLCBwcm92b2xhdGlsZSA9PiAn dicsIHByb3BhcmFsbGVsID0+ICdyJywKICAgcHJvcmV0dHlwZSA9PiAncmVjb3JkJywgcHJv YXJndHlwZXMgPT4gJ2Jvb2wnLAotICBwcm9hbGxhcmd0eXBlcyA9PiAne2Jvb2wscGdfbHNu LHRleHQsdGV4dH0nLCBwcm9hcmdtb2RlcyA9PiAne2ksbyxvLG99JywKLSAgcHJvYXJnbmFt ZXMgPT4gJ3t3YWl0X2Zvcl9hcmNoaXZlLGxzbixsYWJlbGZpbGUsc3BjbWFwZmlsZX0nLAor ICBwcm9hbGxhcmd0eXBlcyA9PiAne2Jvb2wscGdfbHNuLHRleHQsdGV4dCxieXRlYX0nLCBw cm9hcmdtb2RlcyA9PiAne2ksbyxvLG8sb30nLAorICBwcm9hcmduYW1lcyA9PiAne3dhaXRf Zm9yX2FyY2hpdmUsbHNuLGxhYmVsZmlsZSxzcGNtYXBmaWxlLGNvbnRyb2xmaWxlfScsCiAg IHByb3NyYyA9PiAncGdfYmFja3VwX3N0b3AnIH0sCiB7IG9pZCA9PiAnMzQzNicsIGRlc2Ny ID0+ICdwcm9tb3RlIHN0YW5kYnkgc2VydmVyJywKICAgcHJvbmFtZSA9PiAncGdfcHJvbW90 ZScsIHByb3ZvbGF0aWxlID0+ICd2JywgcHJvcmV0dHlwZSA9PiAnYm9vbCcsCmRpZmYgLS1n aXQgYS9zcmMvdGVzdC9yZWNvdmVyeS90LzA0Ml9sb3dfbGV2ZWxfYmFja3VwLnBsIGIvc3Jj L3Rlc3QvcmVjb3ZlcnkvdC8wNDJfbG93X2xldmVsX2JhY2t1cC5wbAppbmRleCA1NzQ5YTFk ZjUzMy4uYTA4YTlhOWQ5ZGYgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlY292ZXJ5L3QvMDQy X2xvd19sZXZlbF9iYWNrdXAucGwKKysrIGIvc3JjL3Rlc3QvcmVjb3ZlcnkvdC8wNDJfbG93 X2xldmVsX2JhY2t1cC5wbApAQCAtMTMsNiArMTMsNDIgQEAgdXNlIFBvc3RncmVTUUw6OlRl c3Q6OkNsdXN0ZXI7CiB1c2UgUG9zdGdyZVNRTDo6VGVzdDo6VXRpbHM7CiB1c2UgVGVzdDo6 TW9yZTsKIAorIyBEZWNvZGUgaGV4IHRvIGJpbmFyeQorc3ViIGRlY29kZV9oZXgKK3sKKwlt eSAoJGVuY29kZWQpID0gQF87CisJbXkgJGRlY29kZWQ7CisKKwkkZW5jb2RlZCA9fiBzL15c cyt8XHMrJC8vZzsKKworCWZvciAobXkgJGlkeCA9IDA7ICRpZHggPCBsZW5ndGgoJGVuY29k ZWQpOyAkaWR4ICs9IDIpCisJeworCQkkZGVjb2RlZCAuPSBwYWNrKCdDJywgaGV4KHN1YnN0 cigkZW5jb2RlZCwgJGlkeCwgMikpKTsKKwl9CisKKwlyZXR1cm4gJGRlY29kZWQ7Cit9CisK KyMgR2V0IGJhY2t1cF9sYWJlbC9wZ19jb250cm9sIGZyb20gcGdfc3RvcF9iYWNrdXAoKQor c3ViIHN0b3BfYmFja3VwX3Jlc3VsdAoreworCW15ICgkcHNxbCkgPSBAXzsKKworCW15ICRl bmNvZGVkID0gJHBzcWwtPnF1ZXJ5X3NhZmUoCisJCSJzZWxlY3QgZW5jb2RlKGxhYmVsZmls ZTo6Ynl0ZWEsICdoZXgnKSB8fCAnLCcgfHwgIiAuCisJCSIgICAgICAgZW5jb2RlKGNvbnRy b2xmaWxlLCAnaGV4JykiIC4KKwkJIiAgZnJvbSBwZ19iYWNrdXBfc3RvcCgpIik7CisKKwlt eSBAcmVzdWx0OworCisgICAgZm9yZWFjaCBteSAkY29sdW1uIChzcGxpdCgnLCcsICRlbmNv ZGVkKSkKKwl7CisJCXB1c2goQHJlc3VsdCwgZGVjb2RlX2hleCgkY29sdW1uKSk7CisJfQor CisJcmV0dXJuIEByZXN1bHQ7Cit9CisKICMgU3RhcnQgcHJpbWFyeSBub2RlIHdpdGggYXJj aGl2aW5nLgogbXkgJG5vZGVfcHJpbWFyeSA9IFBvc3RncmVTUUw6OlRlc3Q6OkNsdXN0ZXIt Pm5ldygncHJpbWFyeScpOwogJG5vZGVfcHJpbWFyeS0+aW5pdChoYXNfYXJjaGl2aW5nID0+ IDEsIGFsbG93c19zdHJlYW1pbmcgPT4gMSk7CkBAIC04MCw4ICsxMTYsNyBAQCBteSAkc3Rv cF9zZWdtZW50X25hbWUgPSAkbm9kZV9wcmltYXJ5LT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywK IAknU0VMRUNUIHBnX3dhbGZpbGVfbmFtZShwZ19jdXJyZW50X3dhbF9sc24oKSknKTsKIAog IyBTdG9wIGJhY2t1cCBhbmQgZ2V0IGJhY2t1cF9sYWJlbCwgdGhlIGxhc3Qgc2VnbWVudCBp cyBhcmNoaXZlZC4KLW15ICRiYWNrdXBfbGFiZWwgPQotICAkcHNxbC0+cXVlcnlfc2FmZSgi c2VsZWN0IGxhYmVsZmlsZSBmcm9tIHBnX2JhY2t1cF9zdG9wKCkiKTsKKyhteSAkYmFja3Vw X2xhYmVsLCBteSAkcGdfY29udHJvbCkgPSBzdG9wX2JhY2t1cF9yZXN1bHQoJHBzcWwpOwog CiAkcHNxbC0+cXVpdDsKIApAQCAtMTE4LDEwICsxNTMsMzYgQEAgb2soICRub2RlX3JlcGxp Y2EtPmxvZ19jb250YWlucygKICRub2RlX3JlcGxpY2EtPnRlYXJkb3duX25vZGU7CiAkbm9k ZV9yZXBsaWNhLT5jbGVhbl9ub2RlOwogCisjIFNhdmUgb25seSBwZ19jb250cm9sIGludG8g dGhlIGJhY2t1cCB0byBkZW1vbnN0cmF0ZSB0aGF0IHBnX2NvbnRyb2wgcmV0dXJuZWQKKyMg ZnJvbSBwZ19zdG9wX2JhY2t1cCgpIHdpbGwgb25seSBwZXJmb3JtIHJlY292ZXJ5IHdoZW4g YmFja3VwX2xhYmVsIGlzIHByZXNlbnQuCitvcGVuKG15ICRmaCwgIj4iLCAiJGJhY2t1cF9k aXIvZ2xvYmFsL3BnX2NvbnRyb2wiKQorICBvciBkaWUgImNvdWxkIG5vdCBvcGVuIHBnX2Nv bnRyb2wiOworYmlubW9kZSgkZmgpOworc3lzd3JpdGUoJGZoLCAkcGdfY29udHJvbCk7Citj bG9zZSgkZmgpOworCiskbm9kZV9yZXBsaWNhID0gUG9zdGdyZVNRTDo6VGVzdDo6Q2x1c3Rl ci0+bmV3KCdyZXBsaWNhX2ZhaWwyJyk7Ciskbm9kZV9yZXBsaWNhLT5pbml0X2Zyb21fYmFj a3VwKCRub2RlX3ByaW1hcnksICRiYWNrdXBfbmFtZSwKKwloYXNfcmVzdG9yaW5nID0+IDEp OworCitteSAkcmVzID0gcnVuX2xvZygKKwlbCisJCSdwZ19jdGwnLCAnLUQnLCAkbm9kZV9y ZXBsaWNhLT5kYXRhX2RpciwgJy1sJywKKwkJJG5vZGVfcmVwbGljYS0+bG9nZmlsZSwgJ3N0 YXJ0JworCV0pOworb2soISRyZXMsICdpbnZhbGlkIHJlY292ZXJ5IHN0YXJ0dXAgZmFpbHMn KTsKKworbXkgJGxvZ2ZpbGUgPSBzbHVycF9maWxlKCRub2RlX3JlcGxpY2EtPmxvZ2ZpbGUo KSk7CitvaygkbG9nZmlsZSA9fiBxci9jb3VsZCBub3QgZmluZCBiYWNrdXBfbGFiZWwgcmVx dWlyZWQgZm9yIHJlY292ZXJ5LywKKwknY291bGQgbm90IGZpbmQgYmFja3VwX2xhYmVsIHJl cXVpcmVkIGZvciByZWNvdmVyeScpOworCiskbm9kZV9yZXBsaWNhLT50ZWFyZG93bl9ub2Rl OworJG5vZGVfcmVwbGljYS0+Y2xlYW5fbm9kZTsKKwogIyBTYXZlIGJhY2t1cF9sYWJlbCBp bnRvIHRoZSBiYWNrdXAgZGlyZWN0b3J5IGFuZCByZWNvdmVyIHVzaW5nIHRoZSBwcmltYXJ5 J3MKICMgYXJjaGl2ZS4gIFRoaXMgdGltZSByZWNvdmVyeSB3aWxsIHN1Y2NlZWQgYW5kIHRo ZSBjYW5hcnkgdGFibGUgd2lsbCBiZQogIyBwcmVzZW50Lgotb3BlbiBteSAkZmgsICI+PiIs ICIkYmFja3VwX2Rpci9iYWNrdXBfbGFiZWwiCitvcGVuICRmaCwgIj4+IiwgIiRiYWNrdXBf ZGlyL2JhY2t1cF9sYWJlbCIKICAgb3IgZGllICJjb3VsZCBub3Qgb3BlbiBiYWNrdXBfbGFi ZWwiOwogIyBCaW5hcnkgbW9kZSBpcyByZXF1aXJlZCBmb3IgV2luZG93cywgYXMgdGhlIGJh Y2t1cF9sYWJlbCBwYXJzaW5nIGlzIG5vdAogIyBhYmxlIHRvIGNvcGUgd2l0aCBDUkxGcy4K LS0gCjIuMzQuMQoK --------------0v7sXdzBpvXbMvK0ytZMQT8K Content-Type: text/plain; charset=UTF-8; name="pgcontrol-flag-v5-01-basebackup.patch" Content-Disposition: attachment; filename="pgcontrol-flag-v5-01-basebackup.patch" Content-Transfer-Encoding: base64 RnJvbSA4ZDljMjY4NzgwYzIxMjhiYjk2ZDFiYmRiMjc2MmFlY2E1YjIzOTNjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBTdGVlbGUgPGRhdmlkQHBnbWFzdGVycy5u ZXQ+CkRhdGU6IEZyaSwgMjQgSmFuIDIwMjUgMTg6Mzg6MDggKzAwMDAKU3ViamVjdDogQWRk IHBnX2NvbnRyb2wgZmxhZyB0byBwcmV2ZW50IHJlY292ZXJ5IHdpdGhvdXQgYmFja3VwX2xh YmVsLgoKSGFyZGVuIHJlY292ZXJ5IGJ5IGFkZGluZyBhIGZsYWcgdG8gcGdfY29udHJvbCB0 byBpbmRpY2F0ZSB0aGF0IGJhY2t1cF9sYWJlbCBpcwpyZXF1aXJlZC4gVGhpcyBwcmV2ZW50 cyB0aGUgdXNlciBmcm9tIGRlbGV0aW5nIGJhY2t1cF9sYWJlbCByZXN1bHRpbmcgaW4gYW4K aW5jb25zaXN0ZW50IHJlY292ZXJ5LgoKQW5vdGhlciBhZHZhbnRhZ2UgaXMgdGhhdCB0aGUg Y29weSBvZiBwZ19jb250cm9sIHVzZWQgYnkgcGdfYmFzZWJhY2t1cCBpcwpndWFyYW50ZWVk IG5vdCB0byBiZSB0b3JuLgoKVGhpcyBmdW5jdGlvbmFsaXR5IGlzIGxpbWl0ZWQgdG8gcGdf YmFzZWJhY2t1cCAob3IgYW55IHNvZnR3YXJlIGNvbWZvcnRhYmxlCndpdGggbW9kaWZ5aW5n IHBnX2NvbnRyb2wpLgoKQ29udHJvbCBhbmQgY2F0YWxvZyB2ZXJzaW9uIGJ1bXBzIGFyZSBy ZXF1aXJlZC4KLS0tCiBkb2Mvc3JjL3NnbWwvZnVuYy5zZ21sICAgICAgICAgICAgICAgICAg ICB8ICA1ICsrKysrCiBzcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9nLmMgICAgICAg ICB8IDIzICsrKysrKysrKysrKysrKysrKysrKysrCiBzcmMvYmFja2VuZC9hY2Nlc3MvdHJh bnNhbS94bG9ncmVjb3ZlcnkuYyB8IDEwICsrKysrKysrKy0KIHNyYy9iYWNrZW5kL2JhY2t1 cC9iYXNlYmFja3VwLmMgICAgICAgICAgIHwgMTUgKysrKysrLS0tLS0tLS0tCiBzcmMvYmFj a2VuZC91dGlscy9taXNjL3BnX2NvbnRyb2xkYXRhLmMgICB8ICA3ICsrKysrLS0KIHNyYy9i aW4vcGdfY29udHJvbGRhdGEvcGdfY29udHJvbGRhdGEuYyAgIHwgIDIgKysKIHNyYy9iaW4v cGdfcmVzZXR3YWwvcGdfcmVzZXR3YWwuYyAgICAgICAgIHwgIDEgKwogc3JjL2Jpbi9wZ19y ZXdpbmQvcGdfcmV3aW5kLmMgICAgICAgICAgICAgfCAgMSArCiBzcmMvaW5jbHVkZS9hY2Nl c3MveGxvZy5oICAgICAgICAgICAgICAgICB8ICAxICsKIHNyYy9pbmNsdWRlL2NhdGFsb2cv cGdfY29udHJvbC5oICAgICAgICAgIHwgIDQgKysrKwogc3JjL2luY2x1ZGUvY2F0YWxvZy9w Z19wcm9jLmRhdCAgICAgICAgICAgfCAgNiArKystLS0KIHNyYy90ZXN0L3JlY292ZXJ5L3Qv MDAyX2FyY2hpdmluZy5wbCAgICAgIHwgMjAgKysrKysrKysrKysrKysrKysrKysKIDEyIGZp bGVzIGNoYW5nZWQsIDgwIGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2RvYy9zcmMvc2dtbC9mdW5jLnNnbWwgYi9kb2Mvc3JjL3NnbWwvZnVuYy5zZ21s CmluZGV4IDU2NzhlNzYyMWE1Li44NmM5NDY5MDVhYSAxMDA2NDQKLS0tIGEvZG9jL3NyYy9z Z21sL2Z1bmMuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvZnVuYy5zZ21sCkBAIC0yNzk4OSw2 ICsyNzk4OSwxMSBAQCBhY2wgICAgICB8IHtwb3N0Z3Jlcz1hcndkRHh0bS9wb3N0Z3Jlcyxm b289ci9wb3N0Z3Jlc30KICAgICAgICA8ZW50cnk+PHR5cGU+Ym9vbGVhbjwvdHlwZT48L2Vu dHJ5PgogICAgICAgPC9yb3c+CiAKKyAgICAgIDxyb3c+CisgICAgICAgPGVudHJ5PjxzdHJ1 Y3RmaWVsZD5iYWNrdXBfbGFiZWxfcmVxdWlyZWQ8L3N0cnVjdGZpZWxkPjwvZW50cnk+Cisg ICAgICAgPGVudHJ5Pjx0eXBlPmJvb2xlYW48L3R5cGU+PC9lbnRyeT4KKyAgICAgIDwvcm93 PgorCiAgICAgIDwvdGJvZHk+CiAgICAgPC90Z3JvdXA+CiAgICA8L3RhYmxlPgpkaWZmIC0t Z2l0IGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0veGxvZy5jIGIvc3JjL2JhY2tlbmQv YWNjZXNzL3RyYW5zYW0veGxvZy5jCmluZGV4IGJmM2RiZGE5MDFkLi45Mjg1YTRhNWM3MiAx MDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0veGxvZy5jCisrKyBiL3Ny Yy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2cuYwpAQCAtOTQxMyw2ICs5NDEzLDI5IEBA IGRvX3BnX2Fib3J0X2JhY2t1cChpbnQgY29kZSwgRGF0dW0gYXJnKQogCX0KIH0KIAorLyoK KyAqIENyZWF0ZSBhIGNvbnNpc3RlbnQgY29weSBvZiBjb250cm9sIGRhdGEgdG8gYmUgdXNl ZCBmb3IgYmFja3VwIGFuZCB1cGRhdGUgaXQKKyAqIHRvIHJlcXVpcmUgYSBiYWNrdXAgbGFi ZWwgZm9yIHJlY292ZXJ5LiBBbHNvIHJlY2FsY3VsYXRlIHRoZSBDUkMuCisgKi8KK3ZvaWQK K2JhY2t1cF9jb250cm9sX2ZpbGUodWludDhfdCAqY29udHJvbEZpbGUpCit7CisJQ29udHJv bEZpbGVEYXRhICpjb250cm9sRGF0YSA9ICgoQ29udHJvbEZpbGVEYXRhICopY29udHJvbEZp bGUpOworCisJbWVtc2V0KGNvbnRyb2xGaWxlICsgc2l6ZW9mKENvbnRyb2xGaWxlRGF0YSks IDAsCisJCSAgIFBHX0NPTlRST0xfRklMRV9TSVpFIC0gc2l6ZW9mKENvbnRyb2xGaWxlRGF0 YSkpOworCisJTFdMb2NrQWNxdWlyZShDb250cm9sRmlsZUxvY2ssIExXX1NIQVJFRCk7CisJ bWVtY3B5KGNvbnRyb2xGaWxlLCBDb250cm9sRmlsZSwgc2l6ZW9mKENvbnRyb2xGaWxlRGF0 YSkpOworCUxXTG9ja1JlbGVhc2UoQ29udHJvbEZpbGVMb2NrKTsKKworCWNvbnRyb2xEYXRh LT5iYWNrdXBMYWJlbFJlcXVpcmVkID0gdHJ1ZTsKKworCUlOSVRfQ1JDMzJDKGNvbnRyb2xE YXRhLT5jcmMpOworCUNPTVBfQ1JDMzJDKGNvbnRyb2xEYXRhLT5jcmMsIGNvbnRyb2xGaWxl LCBvZmZzZXRvZihDb250cm9sRmlsZURhdGEsIGNyYykpOworCUZJTl9DUkMzMkMoY29udHJv bERhdGEtPmNyYyk7Cit9CisKIC8qCiAgKiBSZWdpc3RlciBhIGhhbmRsZXIgdGhhdCB3aWxs IHdhcm4gYWJvdXQgdW50ZXJtaW5hdGVkIGJhY2t1cHMgYXQgZW5kIG9mCiAgKiBzZXNzaW9u LCB1bmxlc3MgdGhpcyBoYXMgYWxyZWFkeSBiZWVuIGRvbmUuCmRpZmYgLS1naXQgYS9zcmMv YmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9ncmVjb3ZlcnkuYyBiL3NyYy9iYWNrZW5kL2Fj Y2Vzcy90cmFuc2FtL3hsb2dyZWNvdmVyeS5jCmluZGV4IGNmMmIwMDc4MDZmLi43MmNlZDY2 MGY4OCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0veGxvZ3JlY292 ZXJ5LmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0veGxvZ3JlY292ZXJ5LmMK QEAgLTcwMyw3ICs3MDMsMTQgQEAgSW5pdFdhbFJlY292ZXJ5KENvbnRyb2xGaWxlRGF0YSAq Q29udHJvbEZpbGUsIGJvb2wgKndhc1NodXRkb3duX3B0ciwKIAl9CiAJZWxzZQogCXsKLQkJ LyogTm8gYmFja3VwX2xhYmVsIGZpbGUgaGFzIGJlZW4gZm91bmQgaWYgd2UgYXJlIGhlcmUu ICovCisJCS8qCisJCSAqIE5vIGJhY2t1cF9sYWJlbCBmaWxlIGhhcyBiZWVuIGZvdW5kIGlm IHdlIGFyZSBoZXJlLiBFcnJvciBpZiB0aGUKKwkJICogY29udHJvbCBmaWxlIHJlcXVpcmVz IGJhY2t1cF9sYWJlbC4KKwkJICovCisJCWlmIChDb250cm9sRmlsZS0+YmFja3VwTGFiZWxS ZXF1aXJlZCkKKwkJCWVyZXBvcnQoRkFUQUwsCisJCQkJCShlcnJtc2coImNvdWxkIG5vdCBm aW5kIGJhY2t1cF9sYWJlbCByZXF1aXJlZCBmb3IgcmVjb3ZlcnkiKSwKKwkJCQkJIGVycmhp bnQoImJhY2t1cF9sYWJlbCBtdXN0IGJlIHByZXNlbnQgZm9yIHJlY292ZXJ5IHRvIHByb2Nl ZWQiKSkpOwogCiAJCS8qCiAJCSAqIElmIHRhYmxlc3BhY2VfbWFwIGZpbGUgaXMgcHJlc2Vu dCB3aXRob3V0IGJhY2t1cF9sYWJlbCBmaWxlLCB0aGVyZQpAQCAtOTc2LDYgKzk4Myw3IEBA IEluaXRXYWxSZWNvdmVyeShDb250cm9sRmlsZURhdGEgKkNvbnRyb2xGaWxlLCBib29sICp3 YXNTaHV0ZG93bl9wdHIsCiAJCXsKIAkJCUNvbnRyb2xGaWxlLT5iYWNrdXBTdGFydFBvaW50 ID0gY2hlY2tQb2ludC5yZWRvOwogCQkJQ29udHJvbEZpbGUtPmJhY2t1cEVuZFJlcXVpcmVk ID0gYmFja3VwRW5kUmVxdWlyZWQ7CisJCQlDb250cm9sRmlsZS0+YmFja3VwTGFiZWxSZXF1 aXJlZCA9IGZhbHNlOwogCiAJCQlpZiAoYmFja3VwRnJvbVN0YW5kYnkpCiAJCQl7CmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC9iYWNrdXAvYmFzZWJhY2t1cC5jIGIvc3JjL2JhY2tlbmQv YmFja3VwL2Jhc2ViYWNrdXAuYwppbmRleCAzZjhhM2M1NTcyNS4uYTQ1N2Y1NzE0ZDEgMTAw NjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2JhY2t1cC9iYXNlYmFja3VwLmMKKysrIGIvc3JjL2Jh Y2tlbmQvYmFja3VwL2Jhc2ViYWNrdXAuYwpAQCAtMjMsNiArMjMsNyBAQAogI2luY2x1ZGUg ImJhY2t1cC9iYXNlYmFja3VwX2luY3JlbWVudGFsLmgiCiAjaW5jbHVkZSAiYmFja3VwL2Jh c2ViYWNrdXBfc2luay5oIgogI2luY2x1ZGUgImJhY2t1cC9iYXNlYmFja3VwX3RhcmdldC5o IgorI2luY2x1ZGUgImNhdGFsb2cvcGdfY29udHJvbC5oIgogI2luY2x1ZGUgImNhdGFsb2cv cGdfdGFibGVzcGFjZV9kLmgiCiAjaW5jbHVkZSAiY29tbWFuZHMvZGVmcmVtLmgiCiAjaW5j bHVkZSAiY29tbW9uL2NvbXByZXNzaW9uLmgiCkBAIC0zMjYsOSArMzI3LDkgQEAgcGVyZm9y bV9iYXNlX2JhY2t1cChiYXNlYmFja3VwX29wdGlvbnMgKm9wdCwgYmJzaW5rICpzaW5rLAog CiAJCQlpZiAodGktPnBhdGggPT0gTlVMTCkKIAkJCXsKLQkJCQlzdHJ1Y3Qgc3RhdCBzdGF0 YnVmOwogCQkJCWJvb2wJCXNlbmR0YmxzcGNsaW5rcyA9IHRydWU7CiAJCQkJY2hhcgkgICAq YmFja3VwX2xhYmVsOworCQkJCXVpbnQ4X3QgY29udHJvbEZpbGVbUEdfQ09OVFJPTF9GSUxF X1NJWkVdOwogCiAJCQkJYmJzaW5rX2JlZ2luX2FyY2hpdmUoc2luaywgImJhc2UudGFyIik7 CiAKQEAgLTM1MSwxNCArMzUyLDEwIEBAIHBlcmZvcm1fYmFzZV9iYWNrdXAoYmFzZWJhY2t1 cF9vcHRpb25zICpvcHQsIGJic2luayAqc2luaywKIAkJCQkJCXNlbmR0YmxzcGNsaW5rcywg Jm1hbmlmZXN0LCBJbnZhbGlkT2lkLCBpYik7CiAKIAkJCQkvKiAuLi4gYW5kIHBnX2NvbnRy b2wgYWZ0ZXIgZXZlcnl0aGluZyBlbHNlLiAqLwotCQkJCWlmIChsc3RhdChYTE9HX0NPTlRS T0xfRklMRSwgJnN0YXRidWYpICE9IDApCi0JCQkJCWVyZXBvcnQoRVJST1IsCi0JCQkJCQkJ KGVycmNvZGVfZm9yX2ZpbGVfYWNjZXNzKCksCi0JCQkJCQkJIGVycm1zZygiY291bGQgbm90 IHN0YXQgZmlsZSBcIiVzXCI6ICVtIiwKLQkJCQkJCQkJCVhMT0dfQ09OVFJPTF9GSUxFKSkp OwotCQkJCXNlbmRGaWxlKHNpbmssIFhMT0dfQ09OVFJPTF9GSUxFLCBYTE9HX0NPTlRST0xf RklMRSwgJnN0YXRidWYsCi0JCQkJCQkgZmFsc2UsIEludmFsaWRPaWQsIEludmFsaWRPaWQs Ci0JCQkJCQkgSW52YWxpZFJlbEZpbGVOdW1iZXIsIDAsICZtYW5pZmVzdCwgMCwgTlVMTCwg MCk7CisJCQkJYmFja3VwX2NvbnRyb2xfZmlsZShjb250cm9sRmlsZSk7CisJCQkJc2VuZEZp bGVXaXRoQ29udGVudChzaW5rLCBYTE9HX0NPTlRST0xfRklMRSwKKwkJCQkJCQkJCShjaGFy ICopY29udHJvbEZpbGUsIFBHX0NPTlRST0xfRklMRV9TSVpFLAorCQkJCQkJCQkJJm1hbmlm ZXN0KTsKIAkJCX0KIAkJCWVsc2UKIAkJCXsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0 aWxzL21pc2MvcGdfY29udHJvbGRhdGEuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvcGdf Y29udHJvbGRhdGEuYwppbmRleCA5ZGZiYTQ5OWMxMy4uOTgzYmU4NDk2YTIgMTAwNjQ0Ci0t LSBhL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvcGdfY29udHJvbGRhdGEuYworKysgYi9zcmMv YmFja2VuZC91dGlscy9taXNjL3BnX2NvbnRyb2xkYXRhLmMKQEAgLTE2Miw4ICsxNjIsOCBA QCBwZ19jb250cm9sX2NoZWNrcG9pbnQoUEdfRlVOQ1RJT05fQVJHUykKIERhdHVtCiBwZ19j b250cm9sX3JlY292ZXJ5KFBHX0ZVTkNUSU9OX0FSR1MpCiB7Ci0JRGF0dW0JCXZhbHVlc1s1 XTsKLQlib29sCQludWxsc1s1XTsKKwlEYXR1bQkJdmFsdWVzWzZdOworCWJvb2wJCW51bGxz WzZdOwogCVR1cGxlRGVzYwl0dXBkZXNjOwogCUhlYXBUdXBsZQlodHVwOwogCUNvbnRyb2xG aWxlRGF0YSAqQ29udHJvbEZpbGU7CkBAIC0xOTUsNiArMTk1LDkgQEAgcGdfY29udHJvbF9y ZWNvdmVyeShQR19GVU5DVElPTl9BUkdTKQogCXZhbHVlc1s0XSA9IEJvb2xHZXREYXR1bShD b250cm9sRmlsZS0+YmFja3VwRW5kUmVxdWlyZWQpOwogCW51bGxzWzRdID0gZmFsc2U7CiAK Kwl2YWx1ZXNbNV0gPSBCb29sR2V0RGF0dW0oQ29udHJvbEZpbGUtPmJhY2t1cExhYmVsUmVx dWlyZWQpOworCW51bGxzWzVdID0gZmFsc2U7CisKIAlodHVwID0gaGVhcF9mb3JtX3R1cGxl KHR1cGRlc2MsIHZhbHVlcywgbnVsbHMpOwogCiAJUEdfUkVUVVJOX0RBVFVNKEhlYXBUdXBs ZUdldERhdHVtKGh0dXApKTsKZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfY29udHJvbGRhdGEv cGdfY29udHJvbGRhdGEuYyBiL3NyYy9iaW4vcGdfY29udHJvbGRhdGEvcGdfY29udHJvbGRh dGEuYwppbmRleCA5M2EwNWQ4MGNhNy4uOGNjMjk5MDRjNmIgMTAwNjQ0Ci0tLSBhL3NyYy9i aW4vcGdfY29udHJvbGRhdGEvcGdfY29udHJvbGRhdGEuYworKysgYi9zcmMvYmluL3BnX2Nv bnRyb2xkYXRhL3BnX2NvbnRyb2xkYXRhLmMKQEAgLTI4Myw2ICsyODMsOCBAQCBtYWluKGlu dCBhcmdjLCBjaGFyICphcmd2W10pCiAJCSAgIExTTl9GT1JNQVRfQVJHUyhDb250cm9sRmls ZS0+YmFja3VwRW5kUG9pbnQpKTsKIAlwcmludGYoXygiRW5kLW9mLWJhY2t1cCByZWNvcmQg cmVxdWlyZWQ6ICAgICAgICAlc1xuIiksCiAJCSAgIENvbnRyb2xGaWxlLT5iYWNrdXBFbmRS ZXF1aXJlZCA/IF8oInllcyIpIDogXygibm8iKSk7CisJcHJpbnRmKF8oIkJhY2t1cCBsYWJl bCByZXF1aXJlZDogICAgICAgICAgICAgICAgJXNcbiIpLAorCQkgICBDb250cm9sRmlsZS0+ YmFja3VwTGFiZWxSZXF1aXJlZCA/IF8oInllcyIpIDogXygibm8iKSk7CiAJcHJpbnRmKF8o IndhbF9sZXZlbCBzZXR0aW5nOiAgICAgICAgICAgICAgICAgICAgJXNcbiIpLAogCQkgICB3 YWxfbGV2ZWxfc3RyKENvbnRyb2xGaWxlLT53YWxfbGV2ZWwpKTsKIAlwcmludGYoXygid2Fs X2xvZ19oaW50cyBzZXR0aW5nOiAgICAgICAgICAgICAgICAlc1xuIiksCmRpZmYgLS1naXQg YS9zcmMvYmluL3BnX3Jlc2V0d2FsL3BnX3Jlc2V0d2FsLmMgYi9zcmMvYmluL3BnX3Jlc2V0 d2FsL3BnX3Jlc2V0d2FsLmMKaW5kZXggZWQ3MzYwN2E0NmYuLjlmYjNiYmViYzQyIDEwMDY0 NAotLS0gYS9zcmMvYmluL3BnX3Jlc2V0d2FsL3BnX3Jlc2V0d2FsLmMKKysrIGIvc3JjL2Jp bi9wZ19yZXNldHdhbC9wZ19yZXNldHdhbC5jCkBAIC04NzUsNiArODc1LDcgQEAgUmV3cml0 ZUNvbnRyb2xGaWxlKHZvaWQpCiAJQ29udHJvbEZpbGUuYmFja3VwU3RhcnRQb2ludCA9IDA7 CiAJQ29udHJvbEZpbGUuYmFja3VwRW5kUG9pbnQgPSAwOwogCUNvbnRyb2xGaWxlLmJhY2t1 cEVuZFJlcXVpcmVkID0gZmFsc2U7CisJQ29udHJvbEZpbGUuYmFja3VwTGFiZWxSZXF1aXJl ZCA9IGZhbHNlOwogCiAJLyoKIAkgKiBGb3JjZSB0aGUgZGVmYXVsdHMgZm9yIG1heF8qIHNl dHRpbmdzLiBUaGUgdmFsdWVzIGRvbid0IHJlYWxseSBtYXR0ZXIKZGlmZiAtLWdpdCBhL3Ny Yy9iaW4vcGdfcmV3aW5kL3BnX3Jld2luZC5jIGIvc3JjL2Jpbi9wZ19yZXdpbmQvcGdfcmV3 aW5kLmMKaW5kZXggY2FlODFjZDZjYjEuLjI2ZmNkYzFjZDcxIDEwMDY0NAotLS0gYS9zcmMv YmluL3BnX3Jld2luZC9wZ19yZXdpbmQuYworKysgYi9zcmMvYmluL3BnX3Jld2luZC9wZ19y ZXdpbmQuYwpAQCAtNzI1LDYgKzcyNSw3IEBAIHBlcmZvcm1fcmV3aW5kKGZpbGVtYXBfdCAq ZmlsZW1hcCwgcmV3aW5kX3NvdXJjZSAqc291cmNlLAogCUNvbnRyb2xGaWxlX25ldy5taW5S ZWNvdmVyeVBvaW50ID0gZW5kcmVjOwogCUNvbnRyb2xGaWxlX25ldy5taW5SZWNvdmVyeVBv aW50VExJID0gZW5kdGxpOwogCUNvbnRyb2xGaWxlX25ldy5zdGF0ZSA9IERCX0lOX0FSQ0hJ VkVfUkVDT1ZFUlk7CisJQ29udHJvbEZpbGVfbmV3LmJhY2t1cExhYmVsUmVxdWlyZWQgPSB0 cnVlOwogCWlmICghZHJ5X3J1bikKIAkJdXBkYXRlX2NvbnRyb2xmaWxlKGRhdGFkaXJfdGFy Z2V0LCAmQ29udHJvbEZpbGVfbmV3LCBkb19zeW5jKTsKIH0KZGlmZiAtLWdpdCBhL3NyYy9p bmNsdWRlL2FjY2Vzcy94bG9nLmggYi9zcmMvaW5jbHVkZS9hY2Nlc3MveGxvZy5oCmluZGV4 IDQ0MTFjMTQ2OGFjLi41OWM4MGI2NTE2NSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvYWNj ZXNzL3hsb2cuaAorKysgYi9zcmMvaW5jbHVkZS9hY2Nlc3MveGxvZy5oCkBAIC0yOTUsNiAr Mjk1LDcgQEAgZXh0ZXJuIHZvaWQgZG9fcGdfYmFja3VwX3N0YXJ0KGNvbnN0IGNoYXIgKmJh Y2t1cGlkc3RyLCBib29sIGZhc3QsCiAJCQkJCQkJICAgU3RyaW5nSW5mbyB0YmxzcGNtYXBm aWxlKTsKIGV4dGVybiB2b2lkIGRvX3BnX2JhY2t1cF9zdG9wKEJhY2t1cFN0YXRlICpzdGF0 ZSwgYm9vbCB3YWl0Zm9yYXJjaGl2ZSk7CiBleHRlcm4gdm9pZCBkb19wZ19hYm9ydF9iYWNr dXAoaW50IGNvZGUsIERhdHVtIGFyZyk7CitleHRlcm4gdm9pZCBiYWNrdXBfY29udHJvbF9m aWxlKHVpbnQ4X3QgKmNvbnRyb2xGaWxlKTsKIGV4dGVybiB2b2lkIHJlZ2lzdGVyX3BlcnNp c3RlbnRfYWJvcnRfYmFja3VwX2hhbmRsZXIodm9pZCk7CiBleHRlcm4gU2Vzc2lvbkJhY2t1 cFN0YXRlIGdldF9iYWNrdXBfc3RhdHVzKHZvaWQpOwogCmRpZmYgLS1naXQgYS9zcmMvaW5j bHVkZS9jYXRhbG9nL3BnX2NvbnRyb2wuaCBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfY29u dHJvbC5oCmluZGV4IDM3OTdmMjViMzA2Li5iN2Q4NjRlMTAzYSAxMDA2NDQKLS0tIGEvc3Jj L2luY2x1ZGUvY2F0YWxvZy9wZ19jb250cm9sLmgKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxv Zy9wZ19jb250cm9sLmgKQEAgLTE2NCwxMiArMTY0LDE2IEBAIHR5cGVkZWYgc3RydWN0IENv bnRyb2xGaWxlRGF0YQogCSAqIElmIGJhY2t1cEVuZFJlcXVpcmVkIGlzIHRydWUsIHdlIGtu b3cgZm9yIHN1cmUgdGhhdCB3ZSdyZSByZXN0b3JpbmcKIAkgKiBmcm9tIGEgYmFja3VwLCBh bmQgbXVzdCBzZWUgYSBiYWNrdXAtZW5kIHJlY29yZCBiZWZvcmUgd2UgY2FuIHNhZmVseQog CSAqIHN0YXJ0IHVwLgorCSAqCisJICogSWYgYmFja3VwTGFiZWxSZXF1aXJlZCBpcyB0cnVl LCB0aGVuIGEgYmFja3VwX2xhYmVsIGZpbGUgbXVzdCBiZQorCSAqIHByZXNlbnQgaW4gb3Jk ZXIgZm9yIHJlY292ZXJ5IHRvIHByb2NlZWQuCiAJICovCiAJWExvZ1JlY1B0cgltaW5SZWNv dmVyeVBvaW50OwogCVRpbWVMaW5lSUQJbWluUmVjb3ZlcnlQb2ludFRMSTsKIAlYTG9nUmVj UHRyCWJhY2t1cFN0YXJ0UG9pbnQ7CiAJWExvZ1JlY1B0cgliYWNrdXBFbmRQb2ludDsKIAli b29sCQliYWNrdXBFbmRSZXF1aXJlZDsKKwlib29sCQliYWNrdXBMYWJlbFJlcXVpcmVkOwog CiAJLyoKIAkgKiBQYXJhbWV0ZXIgc2V0dGluZ3MgdGhhdCBkZXRlcm1pbmUgaWYgdGhlIFdB TCBjYW4gYmUgdXNlZCBmb3IgYXJjaGl2YWwKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2Nh dGFsb2cvcGdfcHJvYy5kYXQgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0Cmlu ZGV4IDE4NTYwNzU1ZDI2Li4wNDE2NTY5YjgyMyAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUv Y2F0YWxvZy9wZ19wcm9jLmRhdAorKysgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2Mu ZGF0CkBAIC0xMjE3Miw5ICsxMjE3Miw5IEBACiB7IG9pZCA9PiAnMzQ0MycsCiAgIGRlc2Ny ID0+ICdwZ19jb250cm9sZGF0YSByZWNvdmVyeSBzdGF0ZSBpbmZvcm1hdGlvbiBhcyBhIGZ1 bmN0aW9uJywKICAgcHJvbmFtZSA9PiAncGdfY29udHJvbF9yZWNvdmVyeScsIHByb3ZvbGF0 aWxlID0+ICd2JywgcHJvcmV0dHlwZSA9PiAncmVjb3JkJywKLSAgcHJvYXJndHlwZXMgPT4g JycsIHByb2FsbGFyZ3R5cGVzID0+ICd7cGdfbHNuLGludDQscGdfbHNuLHBnX2xzbixib29s fScsCi0gIHByb2FyZ21vZGVzID0+ICd7byxvLG8sbyxvfScsCi0gIHByb2FyZ25hbWVzID0+ ICd7bWluX3JlY292ZXJ5X2VuZF9sc24sbWluX3JlY292ZXJ5X2VuZF90aW1lbGluZSxiYWNr dXBfc3RhcnRfbHNuLGJhY2t1cF9lbmRfbHNuLGVuZF9vZl9iYWNrdXBfcmVjb3JkX3JlcXVp cmVkfScsCisgIHByb2FyZ3R5cGVzID0+ICcnLCBwcm9hbGxhcmd0eXBlcyA9PiAne3BnX2xz bixpbnQ0LHBnX2xzbixwZ19sc24sYm9vbCxib29sfScsCisgIHByb2FyZ21vZGVzID0+ICd7 byxvLG8sbyxvLG99JywKKyAgcHJvYXJnbmFtZXMgPT4gJ3ttaW5fcmVjb3ZlcnlfZW5kX2xz bixtaW5fcmVjb3ZlcnlfZW5kX3RpbWVsaW5lLGJhY2t1cF9zdGFydF9sc24sYmFja3VwX2Vu ZF9sc24sZW5kX29mX2JhY2t1cF9yZWNvcmRfcmVxdWlyZWQsYmFja3VwX2xhYmVsX3JlcXVp cmVkfScsCiAgIHByb3NyYyA9PiAncGdfY29udHJvbF9yZWNvdmVyeScgfSwKIAogeyBvaWQg PT4gJzM0NDQnLApkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVjb3ZlcnkvdC8wMDJfYXJjaGl2 aW5nLnBsIGIvc3JjL3Rlc3QvcmVjb3ZlcnkvdC8wMDJfYXJjaGl2aW5nLnBsCmluZGV4IDNh Y2RiOWZmMWViLi4xNTNjNjU4YzEyMyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVjb3Zlcnkv dC8wMDJfYXJjaGl2aW5nLnBsCisrKyBiL3NyYy90ZXN0L3JlY292ZXJ5L3QvMDAyX2FyY2hp dmluZy5wbApAQCAtNDEsNiArNDEsMjYgQEAgJG5vZGVfc3RhbmRieS0+YXBwZW5kX2NvbmYo CiBhcmNoaXZlX2NsZWFudXBfY29tbWFuZCA9ICdlY2hvIGFyY2hpdmVfY2xlYW51cF9kb25l ID4gJGFyY2hpdmVfY2xlYW51cF9jb21tYW5kX2ZpbGUnCiByZWNvdmVyeV9lbmRfY29tbWFu ZCA9ICdlY2hvIHJlY292ZXJ5X2VuZGVkX2RvbmUgPiAkcmVjb3ZlcnlfZW5kX2NvbW1hbmRf ZmlsZScKICkpOworCisjIFJlbmFtZSBiYWNrdXBfbGFiZWwgdG8gdmVyaWZ5IHRoYXQgcmVj b3Zlcnkgd2lsbCBub3Qgc3RhcnQgd2l0aG91dCBpdAorcmVuYW1lKCIkZGF0YV9kaXIvYmFj a3VwX2xhYmVsIiwgIiRkYXRhX2Rpci9iYWNrdXBfbGFiZWwudG1wIikKKyAgb3IgQkFJTF9P VVQgImNvdWxkIG5vdCBtb3ZlICRkYXRhX2Rpci9iYWNrdXBfbGFiZWwiOworCitteSAkcmVz ID0gcnVuX2xvZygKKwlbCisJCSdwZ19jdGwnLCAnLUQnLCAkbm9kZV9zdGFuZGJ5LT5kYXRh X2RpciwgJy1sJywKKwkJJG5vZGVfc3RhbmRieS0+bG9nZmlsZSwgJ3N0YXJ0JworCV0pOwor b2soISRyZXMsICdpbnZhbGlkIHJlY292ZXJ5IHN0YXJ0dXAgZmFpbHMnKTsKKworbXkgJGxv Z2ZpbGUgPSBzbHVycF9maWxlKCRub2RlX3N0YW5kYnktPmxvZ2ZpbGUoKSk7CitvaygkbG9n ZmlsZSA9fiBxci9jb3VsZCBub3QgZmluZCBiYWNrdXBfbGFiZWwgcmVxdWlyZWQgZm9yIHJl Y292ZXJ5LywKKwknY291bGQgbm90IGZpbmQgYmFja3VwX2xhYmVsIHJlcXVpcmVkIGZvciBy ZWNvdmVyeScpOworCisjIFJlc3RvcmUgYmFja3VwX2xhYmVsIHNvIHJlY292ZXJ5IHByb2Nl ZWRzIG5vcm1hbGx5CityZW5hbWUoIiRkYXRhX2Rpci9iYWNrdXBfbGFiZWwudG1wIiwgIiRk YXRhX2Rpci9iYWNrdXBfbGFiZWwiKQorICBvciBCQUlMX09VVCAiY291bGQgbm90IG1vdmUg JGRhdGFfZGlyL2JhY2t1cF9sYWJlbCI7CisKICRub2RlX3N0YW5kYnktPnN0YXJ0OwogCiAj IENyZWF0ZSBzb21lIGNvbnRlbnQgb24gcHJpbWFyeQotLSAKMi4zNC4xCgo= --------------0v7sXdzBpvXbMvK0ytZMQT8K--