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 1tqOhm-004DU1-Jr for pgsql-hackers@arkaria.postgresql.org; Fri, 07 Mar 2025 03:48:58 +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 1tqOhl-003Omi-4H for pgsql-hackers@arkaria.postgresql.org; Fri, 07 Mar 2025 03:48:57 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tqOhk-003OmZ-E9 for pgsql-hackers@lists.postgresql.org; Fri, 07 Mar 2025 03:48:56 +0000 Received: from mail-vk1-xa2b.google.com ([2607:f8b0:4864:20::a2b]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1tqOhh-001QQ2-2R for pgsql-hackers@lists.postgresql.org; Fri, 07 Mar 2025 03:48:55 +0000 Received: by mail-vk1-xa2b.google.com with SMTP id 71dfb90a1353d-51f22008544so561089e0c.1 for ; Thu, 06 Mar 2025 19:48:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741319333; x=1741924133; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=EJwcRhHMqhkvMMT9sVNXpct3fbaAVQgMIdSitu1V8E8=; b=RgqK6GFp7lxAmYi3SMpKIR1JwigqkbCivfPTWZSH6gd2AwqmKpth80/2ge88Tcx9uF pe3Ux0szgsCUH8j0fcOeweeEmkU6pKG4IgKEA0j8RBuU3AO7nleLiR7zNY8DJVbgp5V6 +2bN1Y/oae0/IQj7e7r0DN7zpPu/z9DGboeD0UQpKerq+QaivkpmYAmRCsVRR5hA2iqd e4Iq1Sy64zB2YanmbYAIa4plibhmcysBxm20FrQUtBckU4tmmEHRAW+MRhzoL7SgfoMj 1JXD6Aowuv/LSa48Oq5HHIDclQEqUkdU2aZFCUAerchoO8VXsKs3tJ2WrVFoP/M0FtNb ZaBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741319333; x=1741924133; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=EJwcRhHMqhkvMMT9sVNXpct3fbaAVQgMIdSitu1V8E8=; b=S/cdrNkTmmkPHYqxy6c0+u3jhvXGQNj6LBSO3JcRQySpF8W1tyrQ4fwbpHkbdkKVPB Jx+67xNgPnBEwuiaar/vy2mSaTy3fVO/q58s2BsYK3FvQ3J3ORAT3bnwWNxKES4gpD+B lZeJUNRctgAtvCULYGhZ/S/F9bnHOJvbDcMuu3np/nGNSwCAgCtew/wxqiiKJd4sGwGv UVT1wtbbxPj3yAGleAfT8XWbB08LNkusWRr19bRwftEKJ7V+17++9POppakW0kxGmoVy FayHXKfqD89TX+Pnz4ErWF2GXqRZepOqhD2v47cD/cIc4OB4GCm9MolrMlrcOrTM6Cfg ckRg== X-Forwarded-Encrypted: i=1; AJvYcCWE+SDlbPwC63qW1RpAY7FbE44+3fdwXGQIKuLiFY0N3A3+Zs0Qf2p0rUBO32dhUExivXKUp8eK8JTn84wl@lists.postgresql.org X-Gm-Message-State: AOJu0Yzlrb0Rd2oxVz046HlVPsLtrRi5TyP0X+A2cYPqGV8oxD1C3wrL vsgf3uwECPXZQvxCIHa5eBieK7wLODjo84DBnFq5emeQkWc/KZF2vF7NHaICjbBNvvwBbXh38js oOaRKefHDnz3HE9fWVshtEg0TLas= X-Gm-Gg: ASbGncvs+u0aM91C6AW94GFjggsLTac7+7WdKnJM8k8shAnm4cq9ddcfhXbFBFQRpa4 8M3yUW0lRithGeeQov4SbQc7loCSpqMj4/e8VUN+2q8u0YYt6ZsvyvVVziB5A8Hos+zquAE4Y4A WqFIJnB3nFMH0TUBZaS8E0gnQbuQRVwfgBpin1+wLHAKU7pM2ZRi3O9ZZWHw== X-Google-Smtp-Source: AGHT+IFH+NghwACzJ3uzEI6pT0B5++ZZwxpXrML7d1XZuWKVwLnuIkI8qzqnad9R1qzB7CHk6T6N2Ut22ApNBkmwFS0= X-Received: by 2002:a05:6122:1d45:b0:520:60c2:3fd with SMTP id 71dfb90a1353d-523e402433amr1686801e0c.3.1741319333075; Thu, 06 Mar 2025 19:48:53 -0800 (PST) MIME-Version: 1.0 References: <04bf425ad1b15a4daefe96c478a5253b@oss.nttdata.com> <20240206191937.72eaf0ccc20cfea37944b422@sraoss.co.jp> <76da9fcc-93c5-4053-872e-12932a95356d@uni-muenster.de> <6eac5b45-7f45-4c7a-aae1-e90db8be2e08@uni-muenster.de> <3d6b5885-16a1-475d-b56f-41701c48d9d4@uni-muenster.de> <63595e8f-a245-4335-aa22-7e449a70e210@oss.nttdata.com> <07587c36-18b3-4ccb-b5fb-579bcb04ed37@oss.nttdata.com> In-Reply-To: From: jian he Date: Fri, 7 Mar 2025 11:48:16 +0800 X-Gm-Features: AQ5f1Jpa1vcxbpdqbWRKXK81aVy1KhZOkBViYz0z9uAk84QE0nILyoyUx0beGws Message-ID: Subject: Re: Change COPY ... ON_ERROR ignore to ON_ERROR ignore_row To: Kirill Reshke Cc: Fujii Masao , Jim Jones , "David G. Johnston" , Yugo NAGATA , torikoshia , PostgreSQL Hackers Content-Type: multipart/mixed; boundary="0000000000004a0bac062fb8804a" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000004a0bac062fb8804a Content-Type: text/plain; charset="UTF-8" hi. rebase only. --0000000000004a0bac062fb8804a Content-Type: text/x-patch; charset="US-ASCII"; name="v12-0001-COPY-on_error-set_to_null.patch" Content-Disposition: attachment; filename="v12-0001-COPY-on_error-set_to_null.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m7y8j4890 RnJvbSBjZTBjZTY0MzgwOTRjYWQ1NTNlNTA5ZGI2NWI3ZmQyN2RlMmI5YWY2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IEZyaSwgNyBNYXIgMjAyNSAxMTo0Mzo1MSArMDgwMApTdWJqZWN0OiBbUEFUQ0ggdjEy IDEvMV0gQ09QWSAob25fZXJyb3Igc2V0X3RvX251bGwpCgpFeHRlbnQgIm9uX2Vycm9yIGFjdGlv biIsIGludHJvZHVjZSBuZXcgb3B0aW9uOiAgb25fZXJyb3Igc2V0X3RvX251bGwuCkN1cnJlbnQg Z3JhbW1hciBtYWtlcyB1cyB1bmFibGUgdG8gdXNlICJvbl9lcnJvciBudWxsIiwgc28gd2UgY2hv b3NlICJvbl9lcnJvciBzZXRfdG9fbnVsbCIuCgpBbnkgZGF0YSB0eXBlIGNvbnZlcnNpb24gZXJy b3JzIGR1cmluZyB0aGUgQ09QWSBGUk9NIHByb2Nlc3Mgd2lsbCByZXN1bHQgaW4gdGhlCmFmZmVj dGVkIGNvbHVtbiBiZWluZyBzZXQgdG8gTlVMTC4gVGhpcyBvbmx5IGFwcGxpY2FibGUgd2hlbiB1 c2luZyB0aGUKbm9uLWJpbmFyeSBmb3JtYXQgZm9yIENPUFkgRlJPTS4gSG93ZXZlciwgdGhlIG5v dC1udWxsIGNvbnN0cmFpbnQgd2lsbCBzdGlsbCBiZQplbmZvcmNlZC4gSWYgYSBjb252ZXJzaW9u IGVycm9yIGxlYWRzIHRvIGEgTlVMTCB2YWx1ZSBpbiBhIGNvbHVtbiB0aGF0IGhhcyBhCm5vdC1u dWxsIGNvbnN0cmFpbnQsIGEgbm90LW51bGwgY29uc3RyYWludCB2aW9sYXRpb24gZXJyb3Igd2ls bCBiZSB0cmlnZ2VyZWQuCgpBIHJlZ3Jlc3Npb24gdGVzdCBmb3IgYSBkb21haW4gd2l0aCBhIG5v dC1udWxsIGNvbnN0cmFpbnQgaGFzIGJlZW4gYWRkZWQuCgpBdXRob3I6IEppYW4gSGUgPGppYW4u dW5pdmVyc2FsaXR5QGdtYWlsLmNvbT4KQXV0aG9yOiBLaXJpbGwgUmVzaGtlIDxyZXNoa2VraXJp bGxAZ21haWwuY29tPgoKUmV2aWV3ZWQtYnk6CkZ1amlpIE1hc2FvIDxtYXNhby5mdWppaUBvc3Mu bnR0ZGF0YS5jb20+CkppbSBKb25lcyA8amltLmpvbmVzQHVuaS1tdWVuc3Rlci5kZT4KIkRhdmlk IEcuIEpvaG5zdG9uIiA8ZGF2aWQuZy5qb2huc3RvbkBnbWFpbC5jb20+Cll1Z28gTkFHQVRBIDxu YWdhdGFAc3Jhb3NzLmNvLmpwPgp0b3Jpa29zaGlhIDx0b3Jpa29zaGlhQG9zcy5udHRkYXRhLmNv bT4KCmRpc2N1c3Npb246IGh0dHBzOi8vcG9zdGdyLmVzL20vQ0FLRlF1d2F3eTFlNllSNFM9ait5 N3BYcWdfRHcxV0JWcmd2Zj1CUDNkMV9hU2ZlXytRQG1haWwuZ21haWwuY29tCi0tLQogZG9jL3Ny Yy9zZ21sL3JlZi9jb3B5LnNnbWwgICAgICAgICAgIHwgMzQgKysrKysrKysrKystLS0tLQogc3Jj L2JhY2tlbmQvY29tbWFuZHMvY29weS5jICAgICAgICAgIHwgIDYgKystCiBzcmMvYmFja2VuZC9j b21tYW5kcy9jb3B5ZnJvbS5jICAgICAgfCAyOSArKysrKysrKystLS0tLQogc3JjL2JhY2tlbmQv Y29tbWFuZHMvY29weWZyb21wYXJzZS5jIHwgNDMgKysrKysrKysrKysrKysrKysrKy0KIHNyYy9i aW4vcHNxbC90YWItY29tcGxldGUuaW4uYyAgICAgICB8ICAyICstCiBzcmMvaW5jbHVkZS9jb21t YW5kcy9jb3B5LmggICAgICAgICAgfCAgMSArCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2Nv cHkyLm91dCAgfCA2MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBzcmMvdGVzdC9yZWdy ZXNzL3NxbC9jb3B5Mi5zcWwgICAgICAgfCA0NiArKysrKysrKysrKysrKysrKysrKysKIDggZmls ZXMgY2hhbmdlZCwgMTk2IGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RvYy9zcmMvc2dtbC9yZWYvY29weS5zZ21sIGIvZG9jL3NyYy9zZ21sL3JlZi9jb3B5LnNn bWwKaW5kZXggZGYwOTNkYTk3YzUuLjkxYmMyNWI5YWIzIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3Nn bWwvcmVmL2NvcHkuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvcmVmL2NvcHkuc2dtbApAQCAtMzk0 LDIzICszOTQsMzQgQEAgQ09QWSB7IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50YWJs ZV9uYW1lPC9yZXBsYWNlYWJsZT4gWyAoIDxyZXBsYWNlYWJsZQogICAgICAgU3BlY2lmaWVzIGhv dyB0byBiZWhhdmUgd2hlbiBlbmNvdW50ZXJpbmcgYW4gZXJyb3IgY29udmVydGluZyBhIGNvbHVt bidzCiAgICAgICBpbnB1dCB2YWx1ZSBpbnRvIGl0cyBkYXRhIHR5cGUuCiAgICAgICBBbiA8cmVw bGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ZXJyb3JfYWN0aW9uPC9yZXBsYWNlYWJsZT4gdmFs dWUgb2YKLSAgICAgIDxsaXRlcmFsPnN0b3A8L2xpdGVyYWw+IG1lYW5zIGZhaWwgdGhlIGNvbW1h bmQsIHdoaWxlCi0gICAgICA8bGl0ZXJhbD5pZ25vcmU8L2xpdGVyYWw+IG1lYW5zIGRpc2NhcmQg dGhlIGlucHV0IHJvdyBhbmQgY29udGludWUgd2l0aCB0aGUgbmV4dCBvbmUuCisgICAgICA8bGl0 ZXJhbD5zdG9wPC9saXRlcmFsPiBtZWFucyBmYWlsIHRoZSBjb21tYW5kLAorICAgICAgPGxpdGVy YWw+aWdub3JlPC9saXRlcmFsPiBtZWFucyBkaXNjYXJkIHRoZSBpbnB1dCByb3cgYW5kIGNvbnRp bnVlIHdpdGggdGhlIG5leHQgb25lLCBhbmQKKyAgICAgIDxsaXRlcmFsPnNldF90b19udWxsPC9s aXRlcmFsPiBtZWFucyByZXBsYWNlIGNvbHVtbnMgY29udGFpbmluZyBlcnJvbmVvdXMgaW5wdXQg dmFsdWVzIHdpdGgKKyAgICAgIDxsaXRlcmFsPk5VTEw8L2xpdGVyYWw+IGFuZCBtb3ZlIHRvIHRo ZSBuZXh0IGZpZWxkLgogICAgICAgVGhlIGRlZmF1bHQgaXMgPGxpdGVyYWw+c3RvcDwvbGl0ZXJh bD4uCiAgICAgIDwvcGFyYT4KICAgICAgPHBhcmE+Ci0gICAgICBUaGUgPGxpdGVyYWw+aWdub3Jl PC9saXRlcmFsPiBvcHRpb24gaXMgYXBwbGljYWJsZSBvbmx5IGZvciA8Y29tbWFuZD5DT1BZIEZS T008L2NvbW1hbmQ+CisgICAgICBUaGUgPGxpdGVyYWw+aWdub3JlPC9saXRlcmFsPiBhbmQgPGxp dGVyYWw+c2V0X3RvX251bGw8L2xpdGVyYWw+CisgICAgICBvcHRpb25zIGFyZSBhcHBsaWNhYmxl IG9ubHkgZm9yIDxjb21tYW5kPkNPUFkgRlJPTTwvY29tbWFuZD4KICAgICAgIHdoZW4gdGhlIDxs aXRlcmFsPkZPUk1BVDwvbGl0ZXJhbD4gaXMgPGxpdGVyYWw+dGV4dDwvbGl0ZXJhbD4gb3IgPGxp dGVyYWw+Y3N2PC9saXRlcmFsPi4KICAgICAgPC9wYXJhPgogICAgICA8cGFyYT4KLSAgICAgIEEg PGxpdGVyYWw+Tk9USUNFPC9saXRlcmFsPiBtZXNzYWdlIGNvbnRhaW5pbmcgdGhlIGlnbm9yZWQg cm93IGNvdW50IGlzCi0gICAgICBlbWl0dGVkIGF0IHRoZSBlbmQgb2YgdGhlIDxjb21tYW5kPkNP UFkgRlJPTTwvY29tbWFuZD4gaWYgYXQgbGVhc3Qgb25lCi0gICAgICByb3cgd2FzIGRpc2NhcmRl ZC4gV2hlbiA8bGl0ZXJhbD5MT0dfVkVSQk9TSVRZPC9saXRlcmFsPiBvcHRpb24gaXMgc2V0IHRv Ci0gICAgICA8bGl0ZXJhbD52ZXJib3NlPC9saXRlcmFsPiwgYSA8bGl0ZXJhbD5OT1RJQ0U8L2xp dGVyYWw+IG1lc3NhZ2UKKyAgICAgIEZvciA8bGl0ZXJhbD5pZ25vcmU8L2xpdGVyYWw+IG9wdGlv biwKKyAgICAgIGEgPGxpdGVyYWw+Tk9USUNFPC9saXRlcmFsPiBtZXNzYWdlIGNvbnRhaW5pbmcg dGhlIGlnbm9yZWQgcm93IGNvdW50IGlzCisgICAgICBlbWl0dGVkIGF0IHRoZSBlbmQgb2YgdGhl IDxjb21tYW5kPkNPUFkgRlJPTTwvY29tbWFuZD4gaWYgYXQgbGVhc3Qgb25lIHJvdyB3YXMgZGlz Y2FyZGVkLgorICAgICAgRm9yIDxsaXRlcmFsPnNldF90b19udWxsPC9saXRlcmFsPiBvcHRpb24s CisgICAgICBhIDxsaXRlcmFsPk5PVElDRTwvbGl0ZXJhbD4gbWVzc2FnZSBjb250YWluaW5nIHRo ZSByb3cgY291bnQgdGhhdCBlcnJvbmVvdXMgaW5wdXQgdmFsdWVzIHJlcGxhY2VkIGJ5IHRvIG51 bGwKKyAgICAgIGhhcHBlbmVkIGlzIGVtaXR0ZWQgYXQgdGhlIGVuZCBvZiB0aGUgPGNvbW1hbmQ+ Q09QWSBGUk9NPC9jb21tYW5kPiBpZiBhdCBsZWFzdCBvbmUgcm93IHdhcyByZXBsYWNlZC4KKyAg ICAgPC9wYXJhPgorICAgICA8cGFyYT4KKyAgICAgIFdoZW4gPGxpdGVyYWw+TE9HX1ZFUkJPU0lU WTwvbGl0ZXJhbD4gb3B0aW9uIGlzIHNldCB0byA8bGl0ZXJhbD52ZXJib3NlPC9saXRlcmFsPiwK KyAgICAgIGZvciA8bGl0ZXJhbD5pZ25vcmU8L2xpdGVyYWw+IG9wdGlvbiwgYSA8bGl0ZXJhbD5O T1RJQ0U8L2xpdGVyYWw+IG1lc3NhZ2UKICAgICAgIGNvbnRhaW5pbmcgdGhlIGxpbmUgb2YgdGhl IGlucHV0IGZpbGUgYW5kIHRoZSBjb2x1bW4gbmFtZSB3aG9zZSBpbnB1dAotICAgICAgY29udmVy c2lvbiBoYXMgZmFpbGVkIGlzIGVtaXR0ZWQgZm9yIGVhY2ggZGlzY2FyZGVkIHJvdy4KLSAgICAg IFdoZW4gaXQgaXMgc2V0IHRvIDxsaXRlcmFsPnNpbGVudDwvbGl0ZXJhbD4sIG5vIG1lc3NhZ2Ug aXMgZW1pdHRlZAotICAgICAgcmVnYXJkaW5nIGlnbm9yZWQgcm93cy4KKyAgICAgIGNvbnZlcnNp b24gaGFzIGZhaWxlZCBpcyBlbWl0dGVkIGZvciBlYWNoIGRpc2NhcmRlZCByb3c7CisgICAgICBm b3IgPGxpdGVyYWw+c2V0X3RvX251bGw8L2xpdGVyYWw+IG9wdGlvbiwKKyAgICAgIGEgPGxpdGVy YWw+Tk9USUNFPC9saXRlcmFsPiBtZXNzYWdlIGNvbnRhaW5pbmcgdGhlIGxpbmUgb2YgdGhlIGlu cHV0IGZpbGUgYW5kIHRoZSBjb2x1bW4gbmFtZQorICAgICAgd2hlcmUgdmFsdWUgd2FzIHJlcGxh Y2VkIHdpdGggPGxpdGVyYWw+TlVMTDwvbGl0ZXJhbD4gZm9yIGVhY2ggaW5wdXQgY29udmVyc2lv biBmYWlsdXJlLgorICAgICAgV2hlbiBpdCBpcyBzZXQgdG8gPGxpdGVyYWw+c2lsZW50PC9saXRl cmFsPiwgbm8gbWVzc2FnZSBpcyBlbWl0dGVkIHJlZ2FyZGluZyBpbnB1dCBjb252ZXJzaW9uIGZh aWxlZCByb3dzLgogICAgICA8L3BhcmE+CiAgICAgPC9saXN0aXRlbT4KICAgIDwvdmFybGlzdGVu dHJ5PgpAQCAtNDU4LDcgKzQ2OSw4IEBAIENPUFkgeyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFt ZXRlciI+dGFibGVfbmFtZTwvcmVwbGFjZWFibGU+IFsgKCA8cmVwbGFjZWFibGUKICAgICAgPC9w YXJhPgogICAgICA8cGFyYT4KICAgICAgIFRoaXMgaXMgY3VycmVudGx5IHVzZWQgaW4gPGNvbW1h bmQ+Q09QWSBGUk9NPC9jb21tYW5kPiBjb21tYW5kIHdoZW4KLSAgICAgIDxsaXRlcmFsPk9OX0VS Uk9SPC9saXRlcmFsPiBvcHRpb24gaXMgc2V0IHRvIDxsaXRlcmFsPmlnbm9yZTwvbGl0ZXJhbD4u CisgICAgICA8bGl0ZXJhbD5PTl9FUlJPUjwvbGl0ZXJhbD4gb3B0aW9uIGlzIHNldCB0byA8bGl0 ZXJhbD5pZ25vcmU8L2xpdGVyYWw+CisgICAgICBvciA8bGl0ZXJhbD5zZXRfdG9fbnVsbDwvbGl0 ZXJhbD4uCiAgICAgICA8L3BhcmE+CiAgICAgPC9saXN0aXRlbT4KICAgIDwvdmFybGlzdGVudHJ5 PgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvY29weS5jIGIvc3JjL2JhY2tlbmQv Y29tbWFuZHMvY29weS5jCmluZGV4IGNmY2E5ZDlkYzI5Li5hZmU2MDc1OGQ0MCAxMDA2NDQKLS0t IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvY29weS5jCisrKyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRz L2NvcHkuYwpAQCAtNDAzLDEyICs0MDMsMTQgQEAgZGVmR2V0Q29weU9uRXJyb3JDaG9pY2UoRGVm RWxlbSAqZGVmLCBQYXJzZVN0YXRlICpwc3RhdGUsIGJvb2wgaXNfZnJvbSkKIAkJCQkgcGFyc2Vy X2VycnBvc2l0aW9uKHBzdGF0ZSwgZGVmLT5sb2NhdGlvbikpKTsKIAogCS8qCi0JICogQWxsb3cg InN0b3AiLCBvciAiaWdub3JlIiB2YWx1ZXMuCisJICogQWxsb3cgInN0b3AiLCAiaWdub3JlIiwg InNldF90b19udWxsIiB2YWx1ZXMuCiAJICovCiAJaWYgKHBnX3N0cmNhc2VjbXAoc3ZhbCwgInN0 b3AiKSA9PSAwKQogCQlyZXR1cm4gQ09QWV9PTl9FUlJPUl9TVE9QOwogCWlmIChwZ19zdHJjYXNl Y21wKHN2YWwsICJpZ25vcmUiKSA9PSAwKQogCQlyZXR1cm4gQ09QWV9PTl9FUlJPUl9JR05PUkU7 CisJaWYgKHBnX3N0cmNhc2VjbXAoc3ZhbCwgInNldF90b19udWxsIikgPT0gMCkKKwkJcmV0dXJu IENPUFlfT05fRVJST1JfTlVMTDsKIAogCWVyZXBvcnQoRVJST1IsCiAJCQkoZXJyY29kZShFUlJD T0RFX0lOVkFMSURfUEFSQU1FVEVSX1ZBTFVFKSwKQEAgLTkxOCw3ICs5MjAsNyBAQCBQcm9jZXNz Q29weU9wdGlvbnMoUGFyc2VTdGF0ZSAqcHN0YXRlLAogCQkJCShlcnJjb2RlKEVSUkNPREVfU1lO VEFYX0VSUk9SKSwKIAkJCQkgZXJybXNnKCJvbmx5IE9OX0VSUk9SIFNUT1AgaXMgYWxsb3dlZCBp biBCSU5BUlkgbW9kZSIpKSk7CiAKLQlpZiAob3B0c19vdXQtPnJlamVjdF9saW1pdCAmJiAhb3B0 c19vdXQtPm9uX2Vycm9yKQorCWlmIChvcHRzX291dC0+cmVqZWN0X2xpbWl0ICYmIG9wdHNfb3V0 LT5vbl9lcnJvciAhPSBDT1BZX09OX0VSUk9SX0lHTk9SRSkKIAkJZXJlcG9ydChFUlJPUiwKIAkJ CQkoZXJyY29kZShFUlJDT0RFX0lOVkFMSURfUEFSQU1FVEVSX1ZBTFVFKSwKIAkJLyotIHRyYW5z bGF0b3I6IGZpcnN0IGFuZCBzZWNvbmQgJXMgYXJlIHRoZSBuYW1lcyBvZiBDT1BZIG9wdGlvbiwg ZS5nLgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvY29weWZyb20uYyBiL3NyYy9i YWNrZW5kL2NvbW1hbmRzL2NvcHlmcm9tLmMKaW5kZXggYmNmNjZmMGFkZjguLjQ1MDJjZTJkMzY2 IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jb21tYW5kcy9jb3B5ZnJvbS5jCisrKyBiL3NyYy9i YWNrZW5kL2NvbW1hbmRzL2NvcHlmcm9tLmMKQEAgLTE0NjcsMTQgKzE0NjcsMjIgQEAgQ29weUZy b20oQ29weUZyb21TdGF0ZSBjc3RhdGUpCiAJLyogRG9uZSwgY2xlYW4gdXAgKi8KIAllcnJvcl9j b250ZXh0X3N0YWNrID0gZXJyY2FsbGJhY2sucHJldmlvdXM7CiAKLQlpZiAoY3N0YXRlLT5vcHRz Lm9uX2Vycm9yICE9IENPUFlfT05fRVJST1JfU1RPUCAmJgotCQljc3RhdGUtPm51bV9lcnJvcnMg PiAwICYmCisJaWYgKGNzdGF0ZS0+bnVtX2Vycm9ycyA+IDAgJiYKIAkJY3N0YXRlLT5vcHRzLmxv Z192ZXJib3NpdHkgPj0gQ09QWV9MT0dfVkVSQk9TSVRZX0RFRkFVTFQpCi0JCWVyZXBvcnQoTk9U SUNFLAotCQkJCWVycm1zZ19wbHVyYWwoIiVsbHUgcm93IHdhcyBza2lwcGVkIGR1ZSB0byBkYXRh IHR5cGUgaW5jb21wYXRpYmlsaXR5IiwKLQkJCQkJCQkgICIlbGx1IHJvd3Mgd2VyZSBza2lwcGVk IGR1ZSB0byBkYXRhIHR5cGUgaW5jb21wYXRpYmlsaXR5IiwKLQkJCQkJCQkgICh1bnNpZ25lZCBs b25nIGxvbmcpIGNzdGF0ZS0+bnVtX2Vycm9ycywKLQkJCQkJCQkgICh1bnNpZ25lZCBsb25nIGxv bmcpIGNzdGF0ZS0+bnVtX2Vycm9ycykpOworCXsKKwkJaWYgKGNzdGF0ZS0+b3B0cy5vbl9lcnJv ciA9PSBDT1BZX09OX0VSUk9SX0lHTk9SRSkKKwkJCWVyZXBvcnQoTk9USUNFLAorCQkJCQllcnJt c2dfcGx1cmFsKCIlbGx1IHJvdyB3YXMgc2tpcHBlZCBkdWUgdG8gZGF0YSB0eXBlIGluY29tcGF0 aWJpbGl0eSIsCisJCQkJCQkJCSAgIiVsbHUgcm93cyB3ZXJlIHNraXBwZWQgZHVlIHRvIGRhdGEg dHlwZSBpbmNvbXBhdGliaWxpdHkiLAorCQkJCQkJCQkgICh1bnNpZ25lZCBsb25nIGxvbmcpIGNz dGF0ZS0+bnVtX2Vycm9ycywKKwkJCQkJCQkJICAodW5zaWduZWQgbG9uZyBsb25nKSBjc3RhdGUt Pm51bV9lcnJvcnMpKTsKKwkJZWxzZSBpZiAoY3N0YXRlLT5vcHRzLm9uX2Vycm9yID09IENPUFlf T05fRVJST1JfTlVMTCkKKwkJCWVyZXBvcnQoTk9USUNFLAorCQkJCQllcnJtc2dfcGx1cmFsKCJl cnJvbmVvdXMgdmFsdWVzIGluICVsbHUgcm93IHdhcyByZXBsYWNlZCB3aXRoIG51bGwiLAorCQkJ CQkJCQkgICJlcnJvbmVvdXMgdmFsdWVzIGluICVsbHUgcm93cyB3ZXJlIHJlcGxhY2VkIHdpdGgg bnVsbCIsCisJCQkJCQkJCSAgKHVuc2lnbmVkIGxvbmcgbG9uZykgY3N0YXRlLT5udW1fZXJyb3Jz LAorCQkJCQkJCQkgICh1bnNpZ25lZCBsb25nIGxvbmcpIGNzdGF0ZS0+bnVtX2Vycm9ycykpOwor CX0KIAogCWlmIChiaXN0YXRlICE9IE5VTEwpCiAJCUZyZWVCdWxrSW5zZXJ0U3RhdGUoYmlzdGF0 ZSk7CkBAIC0xNjIyLDEwICsxNjMwLDExIEBAIEJlZ2luQ29weUZyb20oUGFyc2VTdGF0ZSAqcHN0 YXRlLAogCQljc3RhdGUtPmVzY29udGV4dC0+ZXJyb3Jfb2NjdXJyZWQgPSBmYWxzZTsKIAogCQkv KgotCQkgKiBDdXJyZW50bHkgd2Ugb25seSBzdXBwb3J0IENPUFlfT05fRVJST1JfSUdOT1JFLiBX ZSdsbCBhZGQgb3RoZXIKLQkJICogb3B0aW9ucyBsYXRlcgorCQkgKiBDdXJyZW50bHkgd2Ugb25s eSBzdXBwb3J0IENPUFlfT05fRVJST1JfSUdOT1JFLCBDT1BZX09OX0VSUk9SX05VTEwuCisJCSAq IFdlJ2xsIGFkZCBvdGhlciBvcHRpb25zIGxhdGVyCiAJCSAqLwotCQlpZiAoY3N0YXRlLT5vcHRz Lm9uX2Vycm9yID09IENPUFlfT05fRVJST1JfSUdOT1JFKQorCQlpZiAoY3N0YXRlLT5vcHRzLm9u X2Vycm9yID09IENPUFlfT05fRVJST1JfSUdOT1JFIHx8CisJCQljc3RhdGUtPm9wdHMub25fZXJy b3IgPT0gQ09QWV9PTl9FUlJPUl9OVUxMKQogCQkJY3N0YXRlLT5lc2NvbnRleHQtPmRldGFpbHNf d2FudGVkID0gZmFsc2U7CiAJfQogCWVsc2UKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1h bmRzL2NvcHlmcm9tcGFyc2UuYyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2NvcHlmcm9tcGFyc2Uu YwppbmRleCBlODEyOGY4NWU2Yi4uZTJiNGQxZjdlYzkgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5k L2NvbW1hbmRzL2NvcHlmcm9tcGFyc2UuYworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy9jb3B5 ZnJvbXBhcnNlLmMKQEAgLTk0Nyw2ICs5NDcsNyBAQCBDb3B5RnJvbVRleHRMaWtlT25lUm93KENv cHlGcm9tU3RhdGUgY3N0YXRlLCBFeHByQ29udGV4dCAqZWNvbnRleHQsCiAJaW50CQkJZmxkY3Q7 CiAJaW50CQkJZmllbGRubzsKIAljaGFyCSAgICpzdHJpbmc7CisJYm9vbAkJY3VycmVudF9yb3df ZXJyb25lb3VzID0gZmFsc2U7CiAKIAl0dXBEZXNjID0gUmVsYXRpb25HZXREZXNjcihjc3RhdGUt PnJlbCk7CiAJYXR0cl9jb3VudCA9IGxpc3RfbGVuZ3RoKGNzdGF0ZS0+YXR0bnVtbGlzdCk7CkBA IC0xMDI1LDYgKzEwMjYsNyBAQCBDb3B5RnJvbVRleHRMaWtlT25lUm93KENvcHlGcm9tU3RhdGUg Y3N0YXRlLCBFeHByQ29udGV4dCAqZWNvbnRleHQsCiAKIAkJLyoKIAkJICogSWYgT05fRVJST1Ig aXMgc3BlY2lmaWVkIHdpdGggSUdOT1JFLCBza2lwIHJvd3Mgd2l0aCBzb2Z0IGVycm9ycworCQkg KiBJZiBPTl9FUlJPUiBpcyBzcGVjaWZpZWQgd2l0aCBzZXRfdG9fbnVsbCwgdHJ5IHRvIHJlcGxh Y2Ugd2l0aCBudWxsLgogCQkgKi8KIAkJZWxzZSBpZiAoIUlucHV0RnVuY3Rpb25DYWxsU2FmZSgm aW5fZnVuY3Rpb25zW21dLAogCQkJCQkJCQkJCXN0cmluZywKQEAgLTEwMzUsOSArMTAzNyw0NiBA QCBDb3B5RnJvbVRleHRMaWtlT25lUm93KENvcHlGcm9tU3RhdGUgY3N0YXRlLCBFeHByQ29udGV4 dCAqZWNvbnRleHQsCiAJCXsKIAkJCUFzc2VydChjc3RhdGUtPm9wdHMub25fZXJyb3IgIT0gQ09Q WV9PTl9FUlJPUl9TVE9QKTsKIAorCQkJaWYgKGNzdGF0ZS0+b3B0cy5vbl9lcnJvciA9PSBDT1BZ X09OX0VSUk9SX05VTEwpCisJCQl7CisJCQkJLyoKKwkJCQkgKiB3ZSB1c2UgdGhpcyBjb3VudCB0 aGUgbnVtYmVyIG9mIHJvd3MgKG5vdCBmaWVsZHMpIHRoYXQKKwkJCQkgKiBzdWNjZXNzZnVsbHkg YXBwbGllZCB0aGUgb25fZXJyb3Igc2V0X3RvX251bGwKKwkJCQkqLworCQkJCWlmICghY3VycmVu dF9yb3dfZXJyb25lb3VzKQorCQkJCQljdXJyZW50X3Jvd19lcnJvbmVvdXMgPSB0cnVlOworCisJ CQkJLyoKKwkJCQkgKiB3ZSBuZWVkIGFub3RoZXIgSW5wdXRGdW5jdGlvbkNhbGxTYWZlIHNvIHdl IGNhbiBlcnJvciBvdXQKKwkJCQkgKiBub3QtbnVsbCB2aW9sYXRpb24gZm9yIGRvbWFpbiB3aXRo IG5vdC1udWxsIGNvbnN0cmFpbnQuCisJCQkJKi8KKwkJCQljc3RhdGUtPmVzY29udGV4dC0+ZXJy b3Jfb2NjdXJyZWQgPSBmYWxzZTsKKwkJCQlpZiAoSW5wdXRGdW5jdGlvbkNhbGxTYWZlKCZpbl9m dW5jdGlvbnNbbV0sCisJCQkJCQkJCQkJICBOVUxMLAorCQkJCQkJCQkJCSAgdHlwaW9wYXJhbXNb bV0sCisJCQkJCQkJCQkJICBhdHQtPmF0dHR5cG1vZCwKKwkJCQkJCQkJCQkgIChOb2RlICopIGNz dGF0ZS0+ZXNjb250ZXh0LAorCQkJCQkJCQkJCSAgJnZhbHVlc1ttXSkpCisJCQkJeworCQkJCQlu dWxsc1ttXSA9IHRydWU7CisJCQkJCXZhbHVlc1ttXSA9IChEYXR1bSkgMDsKKwkJCQkJaWYgKGNz dGF0ZS0+b3B0cy5sb2dfdmVyYm9zaXR5ID09IENPUFlfTE9HX1ZFUkJPU0lUWV9WRVJCT1NFKQor CQkJCQkJZXJlcG9ydChOT1RJQ0UsCisJCQkJCQkJCWVycm1zZygiY29sdW1uIFwiJXNcIiB3YXMg c2V0IHRvIG51bGwgZHVlIHRvIGRhdGEgdHlwZSBpbmNvbXBhdGliaWxpdHkgYXQgbGluZSAlbGx1 IiwKKwkJCQkJCQkJCQljc3RhdGUtPmN1cl9hdHRuYW1lLAorCQkJCQkJCQkJCSh1bnNpZ25lZCBs b25nIGxvbmcpIGNzdGF0ZS0+Y3VyX2xpbmVubykpOworCQkJCQljb250aW51ZTsKKwkJCQl9CisJ CQkJZWxzZQorCQkJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkJCWVycmNvZGUoRVJSQ09ERV9OT1Rf TlVMTF9WSU9MQVRJT04pLAorCQkJCQkJCWVycm1zZygiZG9tYWluICVzIGRvZXMgbm90IGFsbG93 IG51bGwgdmFsdWVzIiwgZm9ybWF0X3R5cGVfYmUodHlwaW9wYXJhbXNbbV0pKSwKKwkJCQkJCQll cnJkYXRhdHlwZSh0eXBpb3BhcmFtc1ttXSkpOworCQkJfQogCQkJY3N0YXRlLT5udW1fZXJyb3Jz Kys7CiAKLQkJCWlmIChjc3RhdGUtPm9wdHMubG9nX3ZlcmJvc2l0eSA9PSBDT1BZX0xPR19WRVJC T1NJVFlfVkVSQk9TRSkKKwkJCWlmIChjc3RhdGUtPm9wdHMubG9nX3ZlcmJvc2l0eSA9PSBDT1BZ X0xPR19WRVJCT1NJVFlfVkVSQk9TRSAmJgorCQkJCWNzdGF0ZS0+b3B0cy5vbl9lcnJvciA9PSBD T1BZX09OX0VSUk9SX0lHTk9SRSkKIAkJCXsKIAkJCQkvKgogCQkJCSAqIFNpbmNlIHdlIGVtaXQg bGluZSBudW1iZXIgYW5kIGNvbHVtbiBpbmZvIGluIHRoZSBiZWxvdwpAQCAtMTA3Niw2ICsxMTE1 LDggQEAgQ29weUZyb21UZXh0TGlrZU9uZVJvdyhDb3B5RnJvbVN0YXRlIGNzdGF0ZSwgRXhwckNv bnRleHQgKmVjb250ZXh0LAogCQljc3RhdGUtPmN1cl9hdHR2YWwgPSBOVUxMOwogCX0KIAorCWlm IChjdXJyZW50X3Jvd19lcnJvbmVvdXMpCisJCWNzdGF0ZS0+bnVtX2Vycm9ycysrOwogCUFzc2Vy dChmaWVsZG5vID09IGF0dHJfY291bnQpOwogCiAJcmV0dXJuIHRydWU7CmRpZmYgLS1naXQgYS9z cmMvYmluL3BzcWwvdGFiLWNvbXBsZXRlLmluLmMgYi9zcmMvYmluL3BzcWwvdGFiLWNvbXBsZXRl LmluLmMKaW5kZXggODQzMmJlNjQxYWMuLmZjZGM2MWJjYjU3IDEwMDY0NAotLS0gYS9zcmMvYmlu L3BzcWwvdGFiLWNvbXBsZXRlLmluLmMKKysrIGIvc3JjL2Jpbi9wc3FsL3RhYi1jb21wbGV0ZS5p bi5jCkBAIC0zMjc5LDcgKzMyNzksNyBAQCBtYXRjaF9wcmV2aW91c193b3JkcyhpbnQgcGF0dGVy bl9pZCwKIAkJQ09NUExFVEVfV0lUSCgiRk9STUFUIiwgIkZSRUVaRSIsICJERUxJTUlURVIiLCAi TlVMTCIsCiAJCQkJCSAgIkhFQURFUiIsICJRVU9URSIsICJFU0NBUEUiLCAiRk9SQ0VfUVVPVEUi LAogCQkJCQkgICJGT1JDRV9OT1RfTlVMTCIsICJGT1JDRV9OVUxMIiwgIkVOQ09ESU5HIiwgIkRF RkFVTFQiLAotCQkJCQkgICJPTl9FUlJPUiIsICJMT0dfVkVSQk9TSVRZIik7CisJCQkJCSAgIk9O X0VSUk9SIiwgIlNFVF9UT19OVUxMIiwgIkxPR19WRVJCT1NJVFkiKTsKIAogCS8qIENvbXBsZXRl IENPUFkgPHN0aD4gRlJPTXxUTyBmaWxlbmFtZSBXSVRIIChGT1JNQVQgKi8KIAllbHNlIGlmIChN YXRjaGVzKCJDT1BZfFxcY29weSIsIE1hdGNoQW55LCAiRlJPTXxUTyIsIE1hdGNoQW55LCAiV0lU SCIsICIoIiwgIkZPUk1BVCIpKQpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY29tbWFuZHMvY29w eS5oIGIvc3JjL2luY2x1ZGUvY29tbWFuZHMvY29weS5oCmluZGV4IDA2ZGZkZmVmNzIxLi43ZWJm NGY3ODkzMyAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY29tbWFuZHMvY29weS5oCisrKyBiL3Ny Yy9pbmNsdWRlL2NvbW1hbmRzL2NvcHkuaApAQCAtMzgsNiArMzgsNyBAQCB0eXBlZGVmIGVudW0g Q29weU9uRXJyb3JDaG9pY2UKIHsKIAlDT1BZX09OX0VSUk9SX1NUT1AgPSAwLAkJLyogaW1tZWRp YXRlbHkgdGhyb3cgZXJyb3JzLCBkZWZhdWx0ICovCiAJQ09QWV9PTl9FUlJPUl9JR05PUkUsCQkv KiBpZ25vcmUgZXJyb3JzICovCisJQ09QWV9PTl9FUlJPUl9OVUxMLAkJCS8qIHNldCBlcnJvciBm aWVsZCB0byBudWxsICovCiB9IENvcHlPbkVycm9yQ2hvaWNlOwogCiAvKgpkaWZmIC0tZ2l0IGEv c3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jb3B5Mi5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4 cGVjdGVkL2NvcHkyLm91dAppbmRleCA2NGVhMzNhZWFlOC4uOWE1YWNlZjhkYjAgMTAwNjQ0Ci0t LSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY29weTIub3V0CisrKyBiL3NyYy90ZXN0L3Jl Z3Jlc3MvZXhwZWN0ZWQvY29weTIub3V0CkBAIC04MSw2ICs4MSwxMCBAQCBDT1BZIHggZnJvbSBz dGRpbiAob25fZXJyb3IgaWdub3JlLCBvbl9lcnJvciBpZ25vcmUpOwogRVJST1I6ICBjb25mbGlj dGluZyBvciByZWR1bmRhbnQgb3B0aW9ucwogTElORSAxOiBDT1BZIHggZnJvbSBzdGRpbiAob25f ZXJyb3IgaWdub3JlLCBvbl9lcnJvciBpZ25vcmUpOwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBeCitDT1BZIHggZnJvbSBzdGRpbiAob25fZXJyb3Igc2V0X3Rv X251bGwsIG9uX2Vycm9yIGlnbm9yZSk7CitFUlJPUjogIGNvbmZsaWN0aW5nIG9yIHJlZHVuZGFu dCBvcHRpb25zCitMSU5FIDE6IENPUFkgeCBmcm9tIHN0ZGluIChvbl9lcnJvciBzZXRfdG9fbnVs bCwgb25fZXJyb3IgaWdub3JlKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCiBDT1BZIHggZnJvbSBzdGRpbiAobG9nX3ZlcmJvc2l0eSBkZWZhdWx0 LCBsb2dfdmVyYm9zaXR5IHZlcmJvc2UpOwogRVJST1I6ICBjb25mbGljdGluZyBvciByZWR1bmRh bnQgb3B0aW9ucwogTElORSAxOiBDT1BZIHggZnJvbSBzdGRpbiAobG9nX3ZlcmJvc2l0eSBkZWZh dWx0LCBsb2dfdmVyYm9zaXR5IHZlcmIuLi4KQEAgLTkyLDYgKzk2LDEwIEBAIENPUFkgeCBmcm9t IHN0ZGluIChmb3JtYXQgQklOQVJZLCBudWxsICd4Jyk7CiBFUlJPUjogIGNhbm5vdCBzcGVjaWZ5 IE5VTEwgaW4gQklOQVJZIG1vZGUKIENPUFkgeCBmcm9tIHN0ZGluIChmb3JtYXQgQklOQVJZLCBv bl9lcnJvciBpZ25vcmUpOwogRVJST1I6ICBvbmx5IE9OX0VSUk9SIFNUT1AgaXMgYWxsb3dlZCBp biBCSU5BUlkgbW9kZQorQ09QWSB4IGZyb20gc3RkaW4gKGZvcm1hdCBCSU5BUlksIG9uX2Vycm9y IHNldF90b19udWxsKTsKK0VSUk9SOiAgb25seSBPTl9FUlJPUiBTVE9QIGlzIGFsbG93ZWQgaW4g QklOQVJZIG1vZGUKK0NPUFkgeCBGUk9NIHN0ZGluIChvbl9lcnJvciBzZXRfdG9fbnVsbCwgcmVq ZWN0X2xpbWl0IDIpOworRVJST1I6ICBDT1BZIFJFSkVDVF9MSU1JVCByZXF1aXJlcyBPTl9FUlJP UiB0byBiZSBzZXQgdG8gSUdOT1JFCiBDT1BZIHggZnJvbSBzdGRpbiAob25fZXJyb3IgdW5zdXBw b3J0ZWQpOwogRVJST1I6ICBDT1BZIE9OX0VSUk9SICJ1bnN1cHBvcnRlZCIgbm90IHJlY29nbml6 ZWQKIExJTkUgMTogQ09QWSB4IGZyb20gc3RkaW4gKG9uX2Vycm9yIHVuc3VwcG9ydGVkKTsKQEAg LTEyNCw2ICsxMzIsMTAgQEAgQ09QWSB4IHRvIHN0ZG91dCAoZm9ybWF0IEJJTkFSWSwgb25fZXJy b3IgdW5zdXBwb3J0ZWQpOwogRVJST1I6ICBDT1BZIE9OX0VSUk9SIGNhbm5vdCBiZSB1c2VkIHdp dGggQ09QWSBUTwogTElORSAxOiBDT1BZIHggdG8gc3Rkb3V0IChmb3JtYXQgQklOQVJZLCBvbl9l cnJvciB1bnN1cHBvcnRlZCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIF4KK0NPUFkgeCB0byBzdGRpbiAob25fZXJyb3Igc2V0X3RvX251bGwpOworRVJST1I6ICBD T1BZIE9OX0VSUk9SIGNhbm5vdCBiZSB1c2VkIHdpdGggQ09QWSBUTworTElORSAxOiBDT1BZIHgg dG8gc3RkaW4gKG9uX2Vycm9yIHNldF90b19udWxsKTsKKyAgICAgICAgICAgICAgICAgICAgICAg ICBeCiBDT1BZIHggZnJvbSBzdGRpbiAobG9nX3ZlcmJvc2l0eSB1bnN1cHBvcnRlZCk7CiBFUlJP UjogIENPUFkgTE9HX1ZFUkJPU0lUWSAidW5zdXBwb3J0ZWQiIG5vdCByZWNvZ25pemVkCiBMSU5F IDE6IENPUFkgeCBmcm9tIHN0ZGluIChsb2dfdmVyYm9zaXR5IHVuc3VwcG9ydGVkKTsKQEAgLTc2 OSw2ICs3ODEsNTEgQEAgQ09OVEVYVDogIENPUFkgY2hlY2tfaWduX2VycgogTk9USUNFOiAgc2tp cHBpbmcgcm93IGR1ZSB0byBkYXRhIHR5cGUgaW5jb21wYXRpYmlsaXR5IGF0IGxpbmUgOCBmb3Ig Y29sdW1uICJrIjogImEiCiBDT05URVhUOiAgQ09QWSBjaGVja19pZ25fZXJyCiBOT1RJQ0U6ICA2 IHJvd3Mgd2VyZSBza2lwcGVkIGR1ZSB0byBkYXRhIHR5cGUgaW5jb21wYXRpYmlsaXR5CitDUkVB VEUgRE9NQUlOIGRfaW50X25vdF9udWxsIEFTIElOVCBOT1QgTlVMTCBDSEVDSyh2YWx1ZSA+IDAp OworQ1JFQVRFIERPTUFJTiBkX2ludF9wb3NpdGl2ZV9tYXliZV9udWxsIEFTIElOVCBDSEVDSyh2 YWx1ZSA+IDApOworQ1JFQVRFIFRBQkxFIHRfb25fZXJyb3JfbnVsbCAoYSBkX2ludF9ub3RfbnVs bCwgYiBkX2ludF9wb3NpdGl2ZV9tYXliZV9udWxsLCBjIElOVCk7CitccHNldCBudWxsIE5VTEwK Ky0tZmFpbCwgY29sdW1uIGEgY2Fubm90IHNldCB0byBudWxsIHZhbHVlCitDT1BZIHRfb25fZXJy b3JfbnVsbCBGUk9NIFNURElOIFdJVEggKG9uX2Vycm9yIHNldF90b19udWxsKTsKK0VSUk9SOiAg ZG9tYWluIGRfaW50X25vdF9udWxsIGRvZXMgbm90IGFsbG93IG51bGwgdmFsdWVzCitDT05URVhU OiAgQ09QWSB0X29uX2Vycm9yX251bGwsIGxpbmUgMSwgY29sdW1uIGE6IG51bGwgaW5wdXQKKy0t ZmFpbCwgY29sdW1uIGEgaXMgZG9tYWluIHdpdGggbm90LW51bGwgY29uc3RyYWludAorQ09QWSB0 X29uX2Vycm9yX251bGwgRlJPTSBTVERJTiBXSVRIIChvbl9lcnJvciBzZXRfdG9fbnVsbCk7CitF UlJPUjogIGRvbWFpbiBkX2ludF9ub3RfbnVsbCBkb2VzIG5vdCBhbGxvdyBudWxsIHZhbHVlcwor Q09OVEVYVDogIENPUFkgdF9vbl9lcnJvcl9udWxsLCBsaW5lIDEsIGNvbHVtbiBhOiAiYSIKKy0t ZmFpbCwgY29sdW1uIGEgY2Fubm90IHNldCB0byBudWxsIHZhbHVlCitDT1BZIHRfb25fZXJyb3Jf bnVsbCBGUk9NIFNURElOIFdJVEggKG9uX2Vycm9yIHNldF90b19udWxsKTsKK0VSUk9SOiAgZG9t YWluIGRfaW50X25vdF9udWxsIGRvZXMgbm90IGFsbG93IG51bGwgdmFsdWVzCitDT05URVhUOiAg Q09QWSB0X29uX2Vycm9yX251bGwsIGxpbmUgMSwgY29sdW1uIGE6ICItMSIKKy0tZmFpbC4gbGVz cyBkYXRhCitDT1BZIHRfb25fZXJyb3JfbnVsbCBGUk9NIFNURElOIFdJVEggKGRlbGltaXRlciAn LCcsIG9uX2Vycm9yIHNldF90b19udWxsKTsKK0VSUk9SOiAgbWlzc2luZyBkYXRhIGZvciBjb2x1 bW4gImMiCitDT05URVhUOiAgQ09QWSB0X29uX2Vycm9yX251bGwsIGxpbmUgMTogIjEsMSIKKy0t ZmFpbC4gZXh0cmEgZGF0YQorQ09QWSB0X29uX2Vycm9yX251bGwgRlJPTSBTVERJTiBXSVRIIChk ZWxpbWl0ZXIgJywnLCBvbl9lcnJvciBzZXRfdG9fbnVsbCk7CitFUlJPUjogIGV4dHJhIGRhdGEg YWZ0ZXIgbGFzdCBleHBlY3RlZCBjb2x1bW4KK0NPTlRFWFQ6ICBDT1BZIHRfb25fZXJyb3JfbnVs bCwgbGluZSAxOiAiMSwyLDMsNCIKKy0tb2sKK0NPUFkgdF9vbl9lcnJvcl9udWxsIEZST00gU1RE SU4gV0lUSCAob25fZXJyb3Igc2V0X3RvX251bGwsIGxvZ192ZXJib3NpdHkgdmVyYm9zZSk7CitO T1RJQ0U6ICBjb2x1bW4gImIiIHdhcyBzZXQgdG8gbnVsbCBkdWUgdG8gZGF0YSB0eXBlIGluY29t cGF0aWJpbGl0eSBhdCBsaW5lIDEKK0NPTlRFWFQ6ICBDT1BZIHRfb25fZXJyb3JfbnVsbCwgbGlu ZSAxLCBjb2x1bW4gYjogImEiCitOT1RJQ0U6ICBjb2x1bW4gImMiIHdhcyBzZXQgdG8gbnVsbCBk dWUgdG8gZGF0YSB0eXBlIGluY29tcGF0aWJpbGl0eSBhdCBsaW5lIDEKK0NPTlRFWFQ6ICBDT1BZ IHRfb25fZXJyb3JfbnVsbCwgbGluZSAxLCBjb2x1bW4gYzogImQiCitOT1RJQ0U6ICBjb2x1bW4g ImIiIHdhcyBzZXQgdG8gbnVsbCBkdWUgdG8gZGF0YSB0eXBlIGluY29tcGF0aWJpbGl0eSBhdCBs aW5lIDIKK0NPTlRFWFQ6ICBDT1BZIHRfb25fZXJyb3JfbnVsbCwgbGluZSAyLCBjb2x1bW4gYjog ImIiCitOT1RJQ0U6ICBjb2x1bW4gImMiIHdhcyBzZXQgdG8gbnVsbCBkdWUgdG8gZGF0YSB0eXBl IGluY29tcGF0aWJpbGl0eSBhdCBsaW5lIDMKK0NPTlRFWFQ6ICBDT1BZIHRfb25fZXJyb3JfbnVs bCwgbGluZSAzLCBjb2x1bW4gYzogImUiCitOT1RJQ0U6ICBlcnJvbmVvdXMgdmFsdWVzIGluIDMg cm93cyB3ZXJlIHJlcGxhY2VkIHdpdGggbnVsbAorLS0gY2hlY2sgaW5zZXJ0ZWQgY29udGVudAor c2VsZWN0ICogZnJvbSB0X29uX2Vycm9yX251bGw7CisgYSAgfCAgYiAgIHwgIGMgICAKKy0tLS0r LS0tLS0tKy0tLS0tLQorIDEwIHwgTlVMTCB8IE5VTEwKKyAxMSB8IE5VTEwgfCAgIDEyCisgMTMg fCAgIDE0IHwgTlVMTAorKDMgcm93cykKKworXHBzZXQgbnVsbCAnJwogLS0gdGVzdHMgZm9yIG9u X2Vycm9yIG9wdGlvbiB3aXRoIGxvZ192ZXJib3NpdHkgYW5kIG51bGwgY29uc3RyYWludCB2aWEg ZG9tYWluCiBDUkVBVEUgRE9NQUlOIGRjaGVja19pZ25fZXJyMiB2YXJjaGFyKDE1KSBOT1QgTlVM TDsKIENSRUFURSBUQUJMRSBjaGVja19pZ25fZXJyMiAobiBpbnQsIG0gaW50W10sIGsgaW50LCBs IGRjaGVja19pZ25fZXJyMik7CkBAIC04MjgsNiArODg1LDkgQEAgRFJPUCBWSUVXIGluc3RlYWRf b2ZfaW5zZXJ0X3RibF92aWV3OwogRFJPUCBWSUVXIGluc3RlYWRfb2ZfaW5zZXJ0X3RibF92aWV3 XzI7CiBEUk9QIEZVTkNUSU9OIGZ1bl9pbnN0ZWFkX29mX2luc2VydF90YmwoKTsKIERST1AgVEFC TEUgY2hlY2tfaWduX2VycjsKK0RST1AgVEFCTEUgdF9vbl9lcnJvcl9udWxsOworRFJPUCBET01B SU4gZF9pbnRfbm90X251bGw7CitEUk9QIERPTUFJTiBkX2ludF9wb3NpdGl2ZV9tYXliZV9udWxs OwogRFJPUCBUQUJMRSBjaGVja19pZ25fZXJyMjsKIERST1AgRE9NQUlOIGRjaGVja19pZ25fZXJy MjsKIERST1AgVEFCTEUgaGFyZF9lcnI7CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL3Nx bC9jb3B5Mi5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9jb3B5Mi5zcWwKaW5kZXggNDUyNzM1 NTdjZTAuLjAwM2E5MTY0OGUyIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9jb3B5 Mi5zcWwKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvY29weTIuc3FsCkBAIC02NywxMiArNjcs MTUgQEAgQ09QWSB4IGZyb20gc3RkaW4gKGZvcmNlX251bGwgKGEpLCBmb3JjZV9udWxsIChiKSk7 CiBDT1BZIHggZnJvbSBzdGRpbiAoY29udmVydF9zZWxlY3RpdmVseSAoYSksIGNvbnZlcnRfc2Vs ZWN0aXZlbHkgKGIpKTsKIENPUFkgeCBmcm9tIHN0ZGluIChlbmNvZGluZyAnc3FsX2FzY2lpJywg ZW5jb2RpbmcgJ3NxbF9hc2NpaScpOwogQ09QWSB4IGZyb20gc3RkaW4gKG9uX2Vycm9yIGlnbm9y ZSwgb25fZXJyb3IgaWdub3JlKTsKK0NPUFkgeCBmcm9tIHN0ZGluIChvbl9lcnJvciBzZXRfdG9f bnVsbCwgb25fZXJyb3IgaWdub3JlKTsKIENPUFkgeCBmcm9tIHN0ZGluIChsb2dfdmVyYm9zaXR5 IGRlZmF1bHQsIGxvZ192ZXJib3NpdHkgdmVyYm9zZSk7CiAKIC0tIGluY29ycmVjdCBvcHRpb25z CiBDT1BZIHggZnJvbSBzdGRpbiAoZm9ybWF0IEJJTkFSWSwgZGVsaW1pdGVyICcsJyk7CiBDT1BZ IHggZnJvbSBzdGRpbiAoZm9ybWF0IEJJTkFSWSwgbnVsbCAneCcpOwogQ09QWSB4IGZyb20gc3Rk aW4gKGZvcm1hdCBCSU5BUlksIG9uX2Vycm9yIGlnbm9yZSk7CitDT1BZIHggZnJvbSBzdGRpbiAo Zm9ybWF0IEJJTkFSWSwgb25fZXJyb3Igc2V0X3RvX251bGwpOworQ09QWSB4IEZST00gc3RkaW4g KG9uX2Vycm9yIHNldF90b19udWxsLCByZWplY3RfbGltaXQgMik7CiBDT1BZIHggZnJvbSBzdGRp biAob25fZXJyb3IgdW5zdXBwb3J0ZWQpOwogQ09QWSB4IGZyb20gc3RkaW4gKGZvcm1hdCBURVhU LCBmb3JjZV9xdW90ZShhKSk7CiBDT1BZIHggZnJvbSBzdGRpbiAoZm9ybWF0IFRFWFQsIGZvcmNl X3F1b3RlICopOwpAQCAtODcsNiArOTAsNyBAQCBDT1BZIHggZnJvbSBzdGRpbiAoZm9ybWF0IFRF WFQsIGZvcmNlX251bGwgKik7CiBDT1BZIHggdG8gc3Rkb3V0IChmb3JtYXQgQ1NWLCBmb3JjZV9u dWxsKGEpKTsKIENPUFkgeCB0byBzdGRvdXQgKGZvcm1hdCBDU1YsIGZvcmNlX251bGwgKik7CiBD T1BZIHggdG8gc3Rkb3V0IChmb3JtYXQgQklOQVJZLCBvbl9lcnJvciB1bnN1cHBvcnRlZCk7CitD T1BZIHggdG8gc3RkaW4gKG9uX2Vycm9yIHNldF90b19udWxsKTsKIENPUFkgeCBmcm9tIHN0ZGlu IChsb2dfdmVyYm9zaXR5IHVuc3VwcG9ydGVkKTsKIENPUFkgeCBmcm9tIHN0ZGluIHdpdGggKHJl amVjdF9saW1pdCAxKTsKIENPUFkgeCBmcm9tIHN0ZGluIHdpdGggKG9uX2Vycm9yIGlnbm9yZSwg cmVqZWN0X2xpbWl0IDApOwpAQCAtNTM0LDYgKzUzOCw0NSBAQCBhCXsyfQkyCiA4CXs4fQk4CiBc LgogCitDUkVBVEUgRE9NQUlOIGRfaW50X25vdF9udWxsIEFTIElOVCBOT1QgTlVMTCBDSEVDSyh2 YWx1ZSA+IDApOworQ1JFQVRFIERPTUFJTiBkX2ludF9wb3NpdGl2ZV9tYXliZV9udWxsIEFTIElO VCBDSEVDSyh2YWx1ZSA+IDApOworQ1JFQVRFIFRBQkxFIHRfb25fZXJyb3JfbnVsbCAoYSBkX2lu dF9ub3RfbnVsbCwgYiBkX2ludF9wb3NpdGl2ZV9tYXliZV9udWxsLCBjIElOVCk7CisKK1xwc2V0 IG51bGwgTlVMTAorLS1mYWlsLCBjb2x1bW4gYSBjYW5ub3Qgc2V0IHRvIG51bGwgdmFsdWUKK0NP UFkgdF9vbl9lcnJvcl9udWxsIEZST00gU1RESU4gV0lUSCAob25fZXJyb3Igc2V0X3RvX251bGwp OworXE4JMTEJMTMKK1wuCisKKy0tZmFpbCwgY29sdW1uIGEgaXMgZG9tYWluIHdpdGggbm90LW51 bGwgY29uc3RyYWludAorQ09QWSB0X29uX2Vycm9yX251bGwgRlJPTSBTVERJTiBXSVRIIChvbl9l cnJvciBzZXRfdG9fbnVsbCk7CithCTExCTE0CitcLgorCistLWZhaWwsIGNvbHVtbiBhIGNhbm5v dCBzZXQgdG8gbnVsbCB2YWx1ZQorQ09QWSB0X29uX2Vycm9yX251bGwgRlJPTSBTVERJTiBXSVRI IChvbl9lcnJvciBzZXRfdG9fbnVsbCk7CistMQkxMQkxMworXC4KKworLS1mYWlsLiBsZXNzIGRh dGEKK0NPUFkgdF9vbl9lcnJvcl9udWxsIEZST00gU1RESU4gV0lUSCAoZGVsaW1pdGVyICcsJywg b25fZXJyb3Igc2V0X3RvX251bGwpOworMSwxCitcLgorLS1mYWlsLiBleHRyYSBkYXRhCitDT1BZ IHRfb25fZXJyb3JfbnVsbCBGUk9NIFNURElOIFdJVEggKGRlbGltaXRlciAnLCcsIG9uX2Vycm9y IHNldF90b19udWxsKTsKKzEsMiwzLDQKK1wuCisKKy0tb2sKK0NPUFkgdF9vbl9lcnJvcl9udWxs IEZST00gU1RESU4gV0lUSCAob25fZXJyb3Igc2V0X3RvX251bGwsIGxvZ192ZXJib3NpdHkgdmVy Ym9zZSk7CisxMAlhCWQKKzExCWIJMTIKKzEzCTE0CWUKK1wuCisKKy0tIGNoZWNrIGluc2VydGVk IGNvbnRlbnQKK3NlbGVjdCAqIGZyb20gdF9vbl9lcnJvcl9udWxsOworXHBzZXQgbnVsbCAnJwog LS0gdGVzdHMgZm9yIG9uX2Vycm9yIG9wdGlvbiB3aXRoIGxvZ192ZXJib3NpdHkgYW5kIG51bGwg Y29uc3RyYWludCB2aWEgZG9tYWluCiBDUkVBVEUgRE9NQUlOIGRjaGVja19pZ25fZXJyMiB2YXJj aGFyKDE1KSBOT1QgTlVMTDsKIENSRUFURSBUQUJMRSBjaGVja19pZ25fZXJyMiAobiBpbnQsIG0g aW50W10sIGsgaW50LCBsIGRjaGVja19pZ25fZXJyMik7CkBAIC02MDMsNiArNjQ2LDkgQEAgRFJP UCBWSUVXIGluc3RlYWRfb2ZfaW5zZXJ0X3RibF92aWV3OwogRFJPUCBWSUVXIGluc3RlYWRfb2Zf aW5zZXJ0X3RibF92aWV3XzI7CiBEUk9QIEZVTkNUSU9OIGZ1bl9pbnN0ZWFkX29mX2luc2VydF90 YmwoKTsKIERST1AgVEFCTEUgY2hlY2tfaWduX2VycjsKK0RST1AgVEFCTEUgdF9vbl9lcnJvcl9u dWxsOworRFJPUCBET01BSU4gZF9pbnRfbm90X251bGw7CitEUk9QIERPTUFJTiBkX2ludF9wb3Np dGl2ZV9tYXliZV9udWxsOwogRFJPUCBUQUJMRSBjaGVja19pZ25fZXJyMjsKIERST1AgRE9NQUlO IGRjaGVja19pZ25fZXJyMjsKIERST1AgVEFCTEUgaGFyZF9lcnI7Ci0tIAoyLjM0LjEKCg== --0000000000004a0bac062fb8804a--