From unknown Fri Aug 15 18:13:16 2025 X-Loop: help-debbugs@gnu.org Subject: bug#50694: ls and cpio's idea of "six months ago" are slightly different Resent-From: =?UTF-8?Q?=E7=A9=8D=E4=B8=B9=E5=B0=BC?= Dan Jacobson Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Mon, 20 Sep 2021 05:32:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 50694 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: 50694@debbugs.gnu.org, bug-cpio@gnu.org X-Debbugs-Original-To: bug-coreutils@gnu.org, bug-cpio@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.163211591930336 (code B ref -1); Mon, 20 Sep 2021 05:32:02 +0000 Received: (at submit) by debbugs.gnu.org; 20 Sep 2021 05:31:59 +0000 Received: from localhost ([127.0.0.1]:40600 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mSBuI-0007tE-VO for submit@debbugs.gnu.org; Mon, 20 Sep 2021 01:31:59 -0400 Received: from lists.gnu.org ([209.51.188.17]:52350) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mSBuG-0007t5-JF for submit@debbugs.gnu.org; Mon, 20 Sep 2021 01:31:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50336) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mSBuG-0006EV-7L; Mon, 20 Sep 2021 01:31:56 -0400 Received: from bumble.maple.relay.mailchannels.net ([23.83.214.25]:7487) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mSBuD-0003b7-AB; Mon, 20 Sep 2021 01:31:55 -0400 X-Sender-Id: dreamhost|x-authsender|jidanni@jidanni.org Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 6DE0C341A14; Mon, 20 Sep 2021 05:31:50 +0000 (UTC) Received: from pdx1-sub0-mail-a8.g.dreamhost.com (100-96-133-192.trex.outbound.svc.cluster.local [100.96.133.192]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id E583D34133C; Mon, 20 Sep 2021 05:31:49 +0000 (UTC) X-Sender-Id: dreamhost|x-authsender|jidanni@jidanni.org Received: from pdx1-sub0-mail-a8.g.dreamhost.com (pop.dreamhost.com [64.90.62.162]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384) by 100.96.133.192 (trex/6.4.3); Mon, 20 Sep 2021 05:31:50 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|jidanni@jidanni.org X-MailChannels-Auth-Id: dreamhost X-Decisive-Callous: 381d5dcf15f934d7_1632115910163_632532957 X-MC-Loop-Signature: 1632115910163:3166269346 X-MC-Ingress-Time: 1632115910162 Received: from pdx1-sub0-mail-a8.g.dreamhost.com (localhost [127.0.0.1]) by pdx1-sub0-mail-a8.g.dreamhost.com (Postfix) with ESMTP id E7C948A5C1; Sun, 19 Sep 2021 22:31:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=jidanni.org; h=from:to :subject:date:message-id:mime-version:content-type; s= jidanni.org; bh=Ghlw+bTX4ucvs4XCMbmOSy/8Yu4=; b=AU/oQi28Taatw45n uLtlHH1prOulASSFS29etXWg9tXAZsgNpJBr89/OCqDm3MFlqdnMPxZ8vK02JH7l zLtqMeGB9ePEelfU/+MHGlkhycKEjRMs/wxu1LnDw8thtBiCF5YlfdT8ub+zreeR gc+iHIa3peGYe039Kfz72YoOqDU= Received: from jidanni.org (114-46-58-228.dynamic-ip.hinet.net [114.46.58.228]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: jidanni@jidanni.org) by pdx1-sub0-mail-a8.g.dreamhost.com (Postfix) with ESMTPSA id 46C068A59C; Sun, 19 Sep 2021 22:31:48 -0700 (PDT) X-DH-BACKEND: pdx1-sub0-mail-a8 From: =?UTF-8?Q?=E7=A9=8D=E4=B8=B9=E5=B0=BC?= Dan Jacobson Date: Mon, 20 Sep 2021 13:06:36 +0800 Message-ID: <8735pzg7j7.8.fsf@jidanni.org> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=23.83.214.25; envelope-from=jidanni@jidanni.org; helo=bumble.maple.relay.mailchannels.net X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) What a headache. "Six months ago" means slightly different things to cpio and ls. And ls documents do say exactly what, and cpio documents don't even say six months. $ cat prover set -eu cd /tmp for i in `seq 170 190` do touch -d "$i days ago" x { env - ls -l x|tr -s ' ' ls x|cpio -o 2>&-|cpio -tv 2>&-|tr -s ' ' } > z if test `sort -u z|wc -l` != 1 then cat z; echo fi done $ sh prover -rw-r--r-- 1 jidanni jidanni 0 Mar 23 12:47 x -rw-r--r-- 1 jidanni jidanni 0 Mar 23 2021 x -rw-r--r-- 1 jidanni jidanni 0 Mar 22 12:47 x -rw-r--r-- 1 jidanni jidanni 0 Mar 22 2021 x So two things that should look the same ... don't. What's worse is there is no option to change cpio's date format. Well then just change ls's date format to match cpio's right? Well yes, but then there is no way to change ls's idea of six months, even if we examined cpio's source code to find out what it uses. $ ls --version ls (GNU coreutils) 8.32 Copyright (C) 2020 Free Software Foundation, Inc. $ cpio --version cpio (GNU cpio) 2.13 Copyright (C) 2017 Free Software Foundation, Inc. From unknown Fri Aug 15 18:13:16 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: =?UTF-8?Q?=E7=A9=8D=E4=B8=B9=E5=B0=BC?= Dan Jacobson Subject: bug#50694: closed (Re: bug#50694: ls and cpio's idea of "six months ago" are slightly different) Message-ID: References: <02556449-8595-c669-7d6d-1c510d0899b6@cs.ucla.edu> <8735pzg7j7.8.fsf@jidanni.org> X-Gnu-PR-Message: they-closed 50694 X-Gnu-PR-Package: coreutils Reply-To: 50694@debbugs.gnu.org Date: Mon, 07 Feb 2022 02:54:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1644202442-4009-1" This is a multi-part message in MIME format... ------------=_1644202442-4009-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #50694: ls and cpio's idea of "six months ago" are slightly different which was filed against the coreutils package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 50694@debbugs.gnu.org. --=20 50694: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D50694 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1644202442-4009-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 50694-done) by debbugs.gnu.org; 7 Feb 2022 02:53:50 +0000 Received: from localhost ([127.0.0.1]:40556 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGuA2-00012J-2Z for submit@debbugs.gnu.org; Sun, 06 Feb 2022 21:53:50 -0500 Received: from zimbra.cs.ucla.edu ([131.179.128.68]:40960) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nGuA0-000126-Tj for 50694-done@debbugs.gnu.org; Sun, 06 Feb 2022 21:53:49 -0500 Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 3A5F51600D9; Sun, 6 Feb 2022 18:53:43 -0800 (PST) Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id eNXeYfNZYY3X; Sun, 6 Feb 2022 18:53:35 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 7A02E1600EA; Sun, 6 Feb 2022 18:53:35 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id lxe9bEvsHMWW; Sun, 6 Feb 2022 18:53:35 -0800 (PST) Received: from [192.168.1.9] (cpe-172-91-119-151.socal.res.rr.com [172.91.119.151]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 173031600D9; Sun, 6 Feb 2022 18:53:35 -0800 (PST) Content-Type: multipart/mixed; boundary="------------0z9l0y8pWavR5OV3QkLpDDW6" Message-ID: <02556449-8595-c669-7d6d-1c510d0899b6@cs.ucla.edu> Date: Sun, 6 Feb 2022 18:53:34 -0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Content-Language: en-US To: =?UTF-8?B?56mN5Li55bC8IERhbiBKYWNvYnNvbg==?= References: <8735pzg7j7.8.fsf@jidanni.org> From: Paul Eggert Organization: UCLA Computer Science Department Subject: Re: bug#50694: ls and cpio's idea of "six months ago" are slightly different In-Reply-To: <8735pzg7j7.8.fsf@jidanni.org> X-Debbugs-Envelope-To: 50694-done Cc: 50694-done@debbugs.gnu.org, bug-cpio@gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" This is a multi-part message in MIME format. --------------0z9l0y8pWavR5OV3QkLpDDW6 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable On 9/19/21 22:06 in , =E7=A9=8D=E4=B8=B9=E5=B0= =BC Dan Jacobson wrote: > What a headache. > "Six months ago" means slightly different things to cpio and ls. > And ls documents do say exactly what, > and cpio documents don't even say six months. Thanks for the bug report. Since the behavior is documented for ls but=20 not cpio and lots more people use ls, let's change cpio to behave like=20 ls. Proposed patches to cpio attached. The last patch does the actual=20 change; the earlier ones are issues I noticed on the way. (Sergey, I don't have commit privileges for cpio on Savannah. If you=20 give me privileges I can install these patches; otherwise, please take a=20 look and install if you like. Thanks.) In the meantime I'll close the coreutils bug report, as I don't think we=20 need to change GNU 'ls'. --------------0z9l0y8pWavR5OV3QkLpDDW6 Content-Type: text/x-patch; charset=UTF-8; name="0001-Remove-trailing-white-space-and-empty-lines.patch" Content-Disposition: attachment; filename="0001-Remove-trailing-white-space-and-empty-lines.patch" Content-Transfer-Encoding: base64 RnJvbSBkMmUwMTVhNzE4ZWRiMDBkZmUzNWQ2NDEzNTRjNWFkYjg1ZmI1YTQ5IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBGcmksIDI4IEphbiAyMDIyIDA4OjM1OjU5IC0wODAwClN1YmplY3Q6IFtQQVRD SCAxLzRdIFJlbW92ZSB0cmFpbGluZyB3aGl0ZSBzcGFjZSBhbmQgZW1wdHkgbGluZXMKCi0t LQogQ2hhbmdlTG9nLmN2cyAgICAgICAgICAgICAgICAgIHwgMTQwICsrKysrKysrKysrKysr KystLS0tLS0tLS0tLS0tLS0tLQogTkVXUyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg ICA4ICstCiBSRUFETUUtYWxwaGEgICAgICAgICAgICAgICAgICAgfCAgIDMgLQogUkVBRE1F LWhhY2tpbmcgICAgICAgICAgICAgICAgIHwgICA4ICstCiBUT0RPICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgMjMgKysrLS0tCiBhbS9heF9jb21waWxlX2NoZWNrX3JldHR5cGUu bTQgfCAgIDIgKy0KIGFtL3BhY2subTQgICAgICAgICAgICAgICAgICAgICB8ICAgMiArLQog ZG9jL01ha2VmaWxlLmFtICAgICAgICAgICAgICAgIHwgICAyICstCiBkb2MvY3Bpby4xICAg ICAgICAgICAgICAgICAgICAgfCAgIDkgKy0tCiBkb2MvY3Bpby50ZXhpICAgICAgICAgICAg ICAgICAgfCAgMjggKysrLS0tLQogZG9jL210LjEgICAgICAgICAgICAgICAgICAgICAgIHwg IDMxICsrKystLS0tCiBsaWIvTWFrZWZpbGUuYW0gICAgICAgICAgICAgICAgfCAgIDIgKy0K IHBvL1BPVEZJTEVTLmluICAgICAgICAgICAgICAgICB8ICAgMiAtCiBzcmMvTWFrZWZpbGUu YW0gICAgICAgICAgICAgICAgfCAgIDEgLQogc3JjL2NvcHlpbi5jICAgICAgICAgICAgICAg ICAgIHwgIDcxICsrKysrKysrKy0tLS0tLS0tCiBzcmMvY29weW91dC5jICAgICAgICAgICAg ICAgICAgfCAgNTQgKysrKysrLS0tLS0tLQogc3JjL2NvcHlwYXNzLmMgICAgICAgICAgICAg ICAgIHwgIDMwICsrKy0tLS0KIHNyYy9kc3RyaW5nLmMgICAgICAgICAgICAgICAgICB8ICAg MiArLQogc3JjL2RzdHJpbmcuaCAgICAgICAgICAgICAgICAgIHwgICAxIC0KIHNyYy9leHRl cm4uaCAgICAgICAgICAgICAgICAgICB8ICAgNyArLQogc3JjL2ZhdGFsLmMgICAgICAgICAg ICAgICAgICAgIHwgICAxIC0KIHNyYy9maWxlbW9kZS5jICAgICAgICAgICAgICAgICB8ICAg MSAtCiBzcmMvZ2xvYmFsLmMgICAgICAgICAgICAgICAgICAgfCAgIDEgLQogc3JjL21haW4u YyAgICAgICAgICAgICAgICAgICAgIHwgIDkwICsrKysrKysrKystLS0tLS0tLS0tLQogc3Jj L21ha2VwYXRoLmMgICAgICAgICAgICAgICAgIHwgICA4ICstCiBzcmMvbXQuYyAgICAgICAg ICAgICAgICAgICAgICAgfCAgIDkgKy0tCiBzcmMvdGFyLmMgICAgICAgICAgICAgICAgICAg ICAgfCAgIDYgKy0KIHNyYy91dGlsLmMgICAgICAgICAgICAgICAgICAgICB8ICA1MiArKysr KystLS0tLS0KIHN5c2RlcC5tNCAgICAgICAgICAgICAgICAgICAgICB8ICAgMSAtCiB0ZXN0 cy9DVkUtMjAxNS0xMTk3LmF0ICAgICAgICAgfCAgIDEgLQogdGVzdHMvQ1ZFLTIwMTktMTQ4 NjYuYXQgICAgICAgIHwgICAyICstCiB0ZXN0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAg fCAgIDEgLQogdGVzdHMvYXRsb2NhbC5pbiAgICAgICAgICAgICAgIHwgICAxIC0KIHRlc3Rz L2JpZy1ibG9jay1zaXplLmF0ICAgICAgICB8ICAgNCArLQogdGVzdHMvaW5vdXQuYXQgICAg ICAgICAgICAgICAgIHwgICAyICstCiB0ZXN0cy9pbnRlcmRpci5hdCAgICAgICAgICAgICAg fCAgMTAgKy0tCiB0ZXN0cy9zZXRzdGF0MDEuYXQgICAgICAgICAgICAgfCAgIDIgLQogdGVz dHMvc2V0c3RhdDAyLmF0ICAgICAgICAgICAgIHwgICAyIC0KIHRlc3RzL3NldHN0YXQwMy5h dCAgICAgICAgICAgICB8ICAgMiAtCiB0ZXN0cy9zZXRzdGF0MDQuYXQgICAgICAgICAgICAg fCAgIDIgLQogdGVzdHMvc2V0c3RhdDA1LmF0ICAgICAgICAgICAgIHwgICAyIC0KIHRlc3Rz L3N5bWxpbmstYmFkLWxlbmd0aC5hdCAgICB8ICAgMiArLQogdGVzdHMvdmVyc2lvbi5hdCAg ICAgICAgICAgICAgIHwgICAxIC0KIDQzIGZpbGVzIGNoYW5nZWQsIDI5NiBpbnNlcnRpb25z KCspLCAzMzMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvQ2hhbmdlTG9nLmN2cyBiL0No YW5nZUxvZy5jdnMKaW5kZXggNTFhZTVmOC4uNGJjOGVkOCAxMDA2NDQKLS0tIGEvQ2hhbmdl TG9nLmN2cworKysgYi9DaGFuZ2VMb2cuY3ZzCkBAIC0xMCwxNyArMTAsMTcgQEAKIAogCSog TkVXUywgY29uZmlndXJlLmFjOiBSYWlzZSB0aGUgcGF0Y2hsZXZlbCBudW1iZXIuCiAJKiBU SEFOS1M6IFVwZGF0ZQotCQorCiAJKiBkb2MvY3Bpby50ZXhpOiBGaXggYSB0eXBvLgogCSog c3JjL2V4dGVybi5oICh3YXJuX2lmX2ZpbGVfY2hhbmdlZCk6IEZpeCB0eXBlIG9mIHRoZSAy bmQKIAlhcmd1bWVudC4KIAkqIHNyYy90YXIuYyAod3JpdGVfb3V0X3Rhcl9oZWFkZXIpOiBT dHlsaXN0aWMgY2hhbmdlLgogCSogc3JjL3V0aWwuYyAoY29weV9maWxlc19kaXNrX3RvX2Rp c2spOiBGaXggdHlwZXMgb2YgYXV0b21hdGljCi0JdmFyaWFibGVzLiAKKwl2YXJpYWJsZXMu CiAJKHdhcm5faWZfZmlsZV9jaGFuZ2VkKTogRml4IHR5cGUgb2YgdGhlIDJuZCBhcmd1bWVu dC4KLQkKKwogCVBhdGNoZXMgc3VwcGxpZWQgYnkgTGFkaXNsYXYgTWljaG5vdmljLgotCQor CiAyMDA4LTAyLTA4ICBTZXJnZXkgUG96bnlha29mZiAgPGdyYXlAZ251Lm9yZy51YT4KIAog CSogcG8vUE9URklMRVMuaW46IEFkZCBtaXNzaW5nIGZpbGVzLgpAQCAtMzQsNyArMzQsNyBA QAogMjAwNy0xMi0wNSAgU2VyZ2V5IFBvem55YWtvZmYgIDxncmF5QGdudS5vcmcudWE+CiAK IAlGaXggbWluZ3cgYnVpbGQuIFRoYW5rcyB0byBSb2JlcnQgTWlsbGFuLgotCQorCiAJKiBO RVdTLCBUSEFOS1M6IFVwZGF0ZS4KIAkqIGJvb3RzdHJhcDogQ3JlYXRlIGxpYi9zeXN0ZW0u YywgbTQvc3lzZGVwLm00LCB1cGRhdGUgbGliL3N5c3RlbS5oLgogCSogbWluZ3cubTQsIHN5 c2RlcC5tNDogTmV3IGZpbGVzLgpAQCAtNTYsNyArNTYsNyBAQAogMjAwNy0wNi0yOCAgU2Vy Z2V5IFBvem55YWtvZmYgIDxncmF5QGdudS5vcmcudWE+CiAKIAkqIGJvb3RzdHJhcDogVXBk YXRlIGZvciB0aGUgY2hhbmdlIG9mIHRoZSBUUCBVUkwKLQkKKwogCSogTkVXUzogVXBkYXRl CiAJKiBzcmMvZXh0ZXJuLmgsIHNyYy9tYWtlcGF0aC5jIChtYWtlX3BhdGgpOiBSZW1vdmUg bW9kZQogCWFyZ3VtZW50LiBBbGwgY2FsbGVycyB1cGRhdGVkLgpAQCAtNzAsNyArNzAsNyBA QAogCSogc3JjL2V4dGVybi5oIChuZXdkaXJfdW1hc2spOiBOZXcgZ2xvYmFsCiAJKGRlbGF5 X3NldF9zdGF0LHJlcGFpcl9kZWxheWVkX3NldF9zdGF0KQogCShhcHBseV9kZWxheWVkX3Nl dF9zdGF0KTogTmV3IGZ1bmN0aW9ucwotCQorCiAJKiBzcmMvZ2xvYmFsLmMgKG5ld2Rpcl91 bWFzayk6IE5ldyBnbG9iYWwKIAkqIHNyYy9pZGNhY2hlLmM6IEluY2x1ZGUgeGFsbG9jLmgK IAkqIHNyYy9tYWluLmM6IE5ldyB3YXJuaW5nIGNvbnRyb2wgb3B0aW9uIC1XIGludGVyZGly CkBAIC0xMDcsMTIgKzEwNywxMiBAQAogCSogc3JjL2NvcHlpbi5jLCBzcmMvY29weW91dC5j LCBzcmMvY29weXBhc3MuYzogVXBkYXRlIGNhbGxzIHRvCiAJc2V0X3Blcm1zLgogCSogc3Jj L21ha2VwYXRoLmM6IFJlbW92ZSB1c2VsZXNzIGluY2x1ZGVzLgotCQorCiAJKiBzcmMvdXRp bC5jIChzZXRfcGVybXMsIHN0YXRfdG9fY3Bpbyk6IFVzZSBDUElPX1VJRCBhbmQgQ1BJT19H SUQKIAltYWNyb3MgdG8gc2V0IHVpZCBhbmQgZ2lkCiAJKiBzcmMvbWFpbi5jIChwcm9jZXNz X2FyZ3MpOiBBbGxvdyB0byB1c2UgLS1vd25lciBpbiBjb3B5LW91dCBtb2RlLgogCSogVEhB TktTOiBBZGQgTWlrZSBGcnlzaW5nZXIKLQkKKwogMjAwNy0wNS0xOCAgU2VyZ2V5IFBvem55 YWtvZmYgIDxncmF5QGdudS5vcmcudWE+CiAKIAkqIGJvb3RzdHJhcDogVXBkYXRlIGZyb20g dGFyIHJlcG9zaXRvcnkKQEAgLTEzOCw3ICsxMzgsNyBAQAogCSogc3JjL01ha2VmaWxlLmFt OiBVcGRhdGUKIAkqIHNyYy9tYWluLmMsIHNyYy9tdC5jOiBJbmNsdWRlIHJtdC1jb21tYW5k LmggaW5zdGVhZCBvZiBsb2NhbGVkaXIuaAogCSogLmN2c2lnbm9yZSwgZG9jLy5jdnNpZ25v cmU6IFNvcnQKLQkKKwogCSogc3JjL3V0aWwuYyAoc3BhcnNlX3dyaXRlKTogU3RhdGljLiAg UHJvdmlkZSBhIGZvcndhcmQKIAlkZWNsYXJhdGlvbi4gRGVmaW5lIGVudW0gc3BhcnNlX3dy aXRlX3N0YXRlcyBpbnNpZGUgdGhlIGZ1bmN0aW9uLgogCkBAIC0xOTMsNyArMTkzLDcgQEAK IAkqIHNyYy9jb3B5aW4uYywgc3JjL2NvcHlvdXQuYywgc3JjL2NvcHlwYXNzLmMsIHNyYy9j cGlvLmgsCiAJc3JjL2NwaW9oZHIuaCwgc3JjL2RlZmVyLmMsIHNyYy9kZWZlci5oLCBzcmMv ZXh0ZXJuLmgsCiAJc3JjL2dsb2JhbC5jLCBzcmMvbWFpbi5jLCBzcmMvbWFrZXBhdGguYywg c3JjL3Rhci5jLAotCXNyYy91dGlsLmM6IFVwZGF0ZSBjb3B5cmlnaHQgeWVhci4gCisJc3Jj L3V0aWwuYzogVXBkYXRlIGNvcHlyaWdodCB5ZWFyLgogCiAyMDA2LTA3LTA0ICBTZXJnZXkg UG96bnlha29mZiAgPGdyYXlAZ251Lm9yZy51YT4KIApAQCAtMjAzLDcgKzIwMyw3IEBACiAK IAlTdGFydCByZXdyaXRpbmcgdXNpbmcgYSBiZXR0ZXIgc3VpdGVkIGludGVybmFsIHJlcHJl c2VudGF0aW9uIGZvcgogCXRoZSBmaWxlIG1ldGEtZGF0YS4KLQkKKwogCSogc3JjL2NwaW9o ZHIuaCAoc3RydWN0IG9sZF9jcGlvX2hlYWRlcik6IFJlbW92ZSB1bnVzZWQgZmllbGRzCiAJ Y19tdGltZSwgY19maWxlc2l6ZSBhbmQgY19uYW1lLgogCShzdHJ1Y3Qgb2xkX2FzY2lpX2hl YWRlcik6IE5ldyBkYXRhIHR5cGUKQEAgLTI2MSwxNyArMjYxLDE3IEBACiAgICAgICAgIHJl YWRhYmxlLCBwcmVwZW5kIGl0cyBjb250ZW50cyB0byB0aGUgY29tbWFuZCBsaW5lLgogCiAJ Rml4IERlYmlhbiBidWcgMzM1NTgwOgotCQorCiAJKiBzcmMvY29weW91dC5jIChyZWFkX2Zv cl9jaGVja3N1bSx3cml0ZV9vdXRfaGVhZGVyKTogQ1JDIGlzIGEKIAkzMi1iaXQgdW5zaWdu ZWQgdmFsdWUuIFBhdGNoIHByb3Bvc2VkIGJ5IEppbSBDYXN0bGViZXJyeSBhbmQKLQlQZXRl ciBWcmFiZWMuIAorCVBldGVyIFZyYWJlYy4KIAkqIHNyYy9leHRlcm4uaCAoY3JjKTogQ2hh bmdlIGRlY2xhcmF0aW9uCiAJKiBzcmMvZ2xvYmFsLmM6IExpa2V3aXNlCiAJKiBzcmMvdGFy LmMgKHRhcl9jaGVja3N1bSk6IFJldHVybiB1bnNpZ25lZCBpbnQKIAogCSogVEhBTktTOiBB ZGQgSmltIENhc3RsZWJlcnJ5CiAJKiBORVdTOiBVcGRhdGVkCi0JCisKIDIwMDUtMDktMzAg IFNlcmdleSBQb3pueWFrb2ZmICA8Z3JheUBnbnUub3JnLnVhPgogCiAJKiBzcmMvY29weW91 dC5jIChwcm9jZXNzX2NvcHlfb3V0KTogRGlzY2VybiBiZXR3ZWVuIG9yaWdpbmFsIGFuZApA QCAtMzAwLDcgKzMwMCw3IEBACiAJdGhlIHRyYWlsZXIgZmlsZSBuYW1lLgogCSogc3JjL3V0 aWwuYyAoY3Bpb19zYWZlcl9uYW1lX3N1ZmZpeCk6IE5ldyBmdW5jdGlvbgogCShhZGRfY2Rm X2RvdWJsZV9zbGFzaGVzKTogQWRkIEZJWE1FIHdhcm5pbmcuCi0JCisKIAkqIGxpYi9mYXRh bC5jOiBOZXcgZmlsZQogCSogbGliL01ha2VmaWxlLnRtcGwgKGxpYmNwaW9fYV9TT1VSQ0VT KTogQWRkIGZhdGFsLmMKIAkqIHNyYy9jb3B5b3V0LmM6IFVzZSBlcnJvciByZXBvcnRpbmcg ZnVuY3Rpb25zIGZyb20gcGF4bGliCkBAIC0zMjAsOSArMzIwLDkgQEAKIAogCSogYm9vdHN0 cmFwIChjb3B5X2ZpbGVzKTogQ3JlYXRlIGRlc3RpbmF0aW9uIGRpcmVjdG9yeSBpZiBpdCBk b2VzCiAJbm90IGV4aXN0LgotCVByZXNlcnZlIGxvbmdsb25nLm00IGFzIGxvbmdsb25nX2ds Lm00IAorCVByZXNlcnZlIGxvbmdsb25nLm00IGFzIGxvbmdsb25nX2dsLm00CiAJKiBzcmMv bWFpbi5jOiBJbmNsdWRlIHBheGxpYi5oCi0JCisKIDIwMDUtMDUtMjIgIFNlcmdleSBQb3pu eWFrb2ZmICA8Z3JheUBNaXJkZGluLmZhcmxlcC5uZXQ+CiAKIAkqIGxpYi8uY3ZzaWdub3Jl OiBVcGRhdGVkCkBAIC0zMzYsNyArMzM2LDcgQEAKIAkqIHNyYy9tYWluLmMgKHBhcnNlX29w dCk6IEhhbmRsZSBuZXcgLS1hYnNvbHV0ZS1maWxlbmFtZXMgb3B0aW9uLgogCShwcm9jZXNz X2FyZ3MpOiBVcGRhdGVkCiAJKiBzcmMvdXRpbC5jOiBSZXdyaXRlIGlub2RlIGxvb2t1cC9p bnNlcnRpb24gZnVuY3Rpb25zIHVzaW5nIGhhc2gKLQltb2R1bGUuIAorCW1vZHVsZS4KIAog dTIwMDUtMDUtMjAgIFNlcmdleSBQb3pueWFrb2ZmICA8Z3JheUBNaXJkZGluLmZhcmxlcC5u ZXQ+CiAKQEAgLTQzMiw3ICs0MzIsNyBAQCB1MjAwNS0wNS0yMCAgU2VyZ2V5IFBvem55YWtv ZmYgIDxncmF5QE1pcmRkaW4uZmFybGVwLm5ldD4KIAkqIHNyYy9jb3B5cGFzcy5jIChwcm9j ZXNzX2NvcHlfcGFzcyk6IFNldCB1bWFzayAwCiAJKiBzcmMvY29weWluLmMgKHByb2Nlc3Nf Y29weV9pbik6IExpa2V3aXNlCiAJKiBzcmMvdXRpbC5jIChvcGVuX2FyY2hpdmUpOiBVc2Ug TU9ERV9SVy4KLQkKKwogMjAwNS0wMS0xMSAgU2VyZ2V5IFBvem55YWtvZmYgIDxncmF5QE1p cmRkaW4uZmFybGVwLm5ldD4KIAogCSogZG9jL2dlbmRvY3NfdGVtcGxhdGU6IFRlbXBsYXRl IGZpbGUgZm9yIGdlbmRvY3Muc2guCkBAIC00NDgsNyArNDQ4LDcgQEAgdTIwMDUtMDUtMjAg IFNlcmdleSBQb3pueWFrb2ZmICA8Z3JheUBNaXJkZGluLmZhcmxlcC5uZXQ+CiAJKiBzcmMv dGFyLmM6IExpa2V3aXNlLgogCSogc3JjL3V0aWwuYzogTGlrZXdpc2UuCiAJKHdyaXRlX251 bHNfdG9fZmlsZSk6IE1hZGUgZXh0ZXJuLiBBbGwgY2FsbGVycyB1cGRhdGVkCi0JCisKIAkq IHNyYy9jb3B5b3V0LmM6IExpa2V3aXNlLiBVc2Ugd3JpdGVfbnVsc190b19maWxlIGluc3Rl YWQKIAlvZiBleHBsaWNpdGVseSBhY2Nlc3NpbmcgemVyb3NfNTEyCiAJKiBzcmMvdXNlcnNw ZWMuYzogTGlrZXdpc2UuCkBAIC00NTcsNyArNDU3LDcgQEAgdTIwMDUtMDUtMjAgIFNlcmdl eSBQb3pueWFrb2ZmICA8Z3JheUBNaXJkZGluLmZhcmxlcC5uZXQ+CiAJKiBzcmMvZXh0ZXJu LmggKHplcm9zXzUxMik6IFJlbW92ZWQKIAkod3JpdGVfbnVsc190b19maWxlKTogTmV3IGZ1 bmN0aW9uCiAJKiBzcmMvZ2xvYmFsLmMgKHplcm9zXzUxMik6IFJlbW92ZWQKLQkKKwogMjAw NS0wMS0wNiAgU2VyZ2V5IFBvem55YWtvZmYgIDxncmF5QE1pcmRkaW4uZmFybGVwLm5ldD4K IAogCSogYm9vdHN0cmFwOiBBZGQgJ2ZpbGVibG9ja3MnIGdudWxpYiBtb2R1bGUKQEAgLTUw MCw3ICs1MDAsNyBAQCB1MjAwNS0wNS0yMCAgU2VyZ2V5IFBvem55YWtvZmYgIDxncmF5QE1p cmRkaW4uZmFybGVwLm5ldD4KIAkqIHNyYy90YXIuYzogRml4ZWQgZGV2aWF0aW9ucyBmcm9t IFBPU0lYLjEtMTk4ODoKIAlQcm9wZXJseSBzcGxpdCBsb25nIGZpbGUgbmFtZXMuIEZpbGwg aW4gb2N0YWwgZmllbGRzIHdpdGggemVyb3MsCiAJbm90IHNwYWNlcy4gU2F2ZSBvbmx5IHBy b3RlY3Rpb24gbW9kZXMsIG5vdCB0aGUgd2hvbGUgbW9kZS4KLQkKKwogCSogTkVXUzogVXBk YXRlZAogCiAyMDA0LTA5LTA4ICBTZXJnZXkgUG96bnlha29mZiAgPGdyYXlATWlyZGRpbi5m YXJsZXAubmV0PgpAQCAtNTMwLDcgKzUzMCw3IEBAIHUyMDA1LTA1LTIwICBTZXJnZXkgUG96 bnlha29mZiAgPGdyYXlATWlyZGRpbi5mYXJsZXAubmV0PgogCSogdGVzdHMvaW5vdXQuYXQ6 IE5ldyBmaWxlCiAJKiB0ZXN0cy92ZXJzaW9uLmF0OiBOZXcgZmlsZQogCSogdGVzdHMvYXRs b2NhbC5pbjogTmV3IGZpbGUKLQkKKwogMjAwNC0wOS0wNyAgU2VyZ2V5IFBvem55YWtvZmYg IDxncmF5QE1pcmRkaW4uZmFybGVwLm5ldD4KIAogCSogc3JjL21haW4uYyAocHJvY2Vzc19h cmdzKTogQnVnZml4LiBBbGxvdyBleHRyYSBhcmd1bWVudHMKQEAgLTU0NSw3ICs1NDUsNyBA QCB1MjAwNS0wNS0yMCAgU2VyZ2V5IFBvem55YWtvZmYgIDxncmF5QE1pcmRkaW4uZmFybGVw Lm5ldD4KIAogCVN0YXJ0ZWQgbWVyZ2luZyB3aXRoIHRhciBpbnRvIHBheHV0aWxzLiBTb3Vy Y2VzIGJlZm9yZQogCXRoaXMgcG9pbnQgYXJlIHRhZ2dlZCBhbHBoYS0yXzUwXzkwLgotCQor CiAJKiBib290c3RyYXA6IE5ldyBmaWxlCiAJKiBhdXRvZ2VuLnNoOiBSZW1vdmVkCiAJKiBN YWtlZmlsZS5hbTogVXBkYXRlZApAQCAtNTg1LDcgKzU4NSw3IEBAIHUyMDA1LTA1LTIwICBT ZXJnZXkgUG96bnlha29mZiAgPGdyYXlATWlyZGRpbi5mYXJsZXAubmV0PgogCSogc3JjL3Jt dC5jOiBMaWtld2lzZQogCSogc3JjL3J0YXBlbGliLmM6IExpa2V3aXNlCiAJKiBzcmMvc3Ry ZXJyb3IuYzogTGlrZXdpc2UKLQkKKwogCSogc3JjL2NvcHlpbi5jOiBTd2l0Y2hlZCB0byBB TlNJIEMgKHNpZ2gpCiAJKiBzcmMvY29weW91dC5jOiBMaWtld2lzZQogCSogc3JjL2NvcHlw YXNzLmM6IExpa2V3aXNlCkBAIC02MTAsNyArNjEwLDcgQEAgdTIwMDUtMDUtMjAgIFNlcmdl eSBQb3pueWFrb2ZmICA8Z3JheUBNaXJkZGluLmZhcmxlcC5uZXQ+CiAJKiBsaWIvbWtkaXIu YzogTGlrZXdpc2UuCiAJKiBsaWIvc3RyZHVwLmM6IExpa2V3aXNlLgogCSogbGliL3N0cmVy cm9yLmM6IExpa2V3aXNlLgotCQorCiAyMDA0LTA4LTMwICBTZXJnZXkgUG96bnlha29mZiAg PGdyYXlATWlyZGRpbi5mYXJsZXAubmV0PgogCiAJKiBNYWtlZmlsZS5hbTogQWRkZWQgaGVh ZGVycyB0byBTVUJESVJTLgpAQCAtNjQyLDcgKzY0Miw3IEBAIHUyMDA1LTA1LTIwICBTZXJn ZXkgUG96bnlha29mZiAgPGdyYXlATWlyZGRpbi5mYXJsZXAubmV0PgogCSogaGVhZGVycy9h cmdwLmg6IE5ldyBmaWxlCiAJKiBoZWFkZXJzL2ZubWF0Y2guaDogTmV3IGZpbGUKIAkqIGhl YWRlcnMvLmN2c2lnbm9yZTogTmV3IGZpbGUKLQkKKwogMjAwNC0wMy0wMiAgU2VyZ2V5IFBv em55YWtvZmYgIDxncmF5QE1pcmRkaW4uZmFybGVwLm5ldD4KIAogCSogc3JjL3V0aWwuYyAo Y29weV9maWxlc19kaXNrX3RvX2Rpc2spOiBCdWdmaXguIElmIGEgZmlsZQpAQCAtNjU0LDE5 ICs2NTQsMTkgQEAgdTIwMDUtMDUtMjAgIFNlcmdleSBQb3pueWFrb2ZmICA8Z3JheUBNaXJk ZGluLmZhcmxlcC5uZXQ+CiAyMDA0LTAyLTI3ICBTZXJnZXkgUG96bnlha29mZiAgPGdyYXlA TWlyZGRpbi5mYXJsZXAubmV0PgogCiAJKiBzcmMvbWFrZXBhdGguYzogUmVtb3ZlIHVubmVk ZWQgdHlwZWRlZnMKLQkKKwogCSogc3JjL2NvcHlpbi5jOiBSZW1vdmUgX19NU0RPU19fIGNv bmRpdGlvbmFscwogCSogc3JjL2NvcHlvdXQuYzogTGlrZXdpc2UKIAkqIHNyYy9jb3B5cGFz cy5jOiBMaWtld2lzZQogCSogc3JjL21haW4uYzogTGlrZXdpc2UKIAkqIHNyYy90YXIuYzog TGlrZXdpc2UKIAkqIHNyYy91dGlsLmM6IExpa2V3aXNlCi0JCisKIDIwMDQtMDItMjcgIFNl cmdleSBQb3pueWFrb2ZmICA8Z3JheUBNaXJkZGluLmZhcmxlcC5uZXQ+Ci0JCisKIAlDaGFu Z2VkIGZyb20gZmxhdCB0byBkZWVwIHBhY2thZ2UgbGF5b3V0LiBBZGRlZCB0aGUgZnJhbWV3 b3JrCiAJZm9yIE5MUyBzdXBwb3J0LgotCQorCiAJKiAuY3ZzaWdub3JlOiBVcGRhdGVkCiAJ KiBNYWtlZmlsZS5hbTogVXBkYXRlZAogCSogY29uZmlndXJlLmFjOiBVcGRhdGVkCkBAIC02 NzUsNyArNjc1LDcgQEAgdTIwMDUtMDUtMjAgIFNlcmdleSBQb3pueWFrb2ZmICA8Z3JheUBN aXJkZGluLmZhcmxlcC5uZXQ+CiAJKiBUSEFOS1M6IFVwZGF0ZWQKIAogCSogYXV0b2dlbi5z aDogTmV3IGZpbGUKLQkKKwogCSogYWxsb2NhLmM6IE1vdmVkIHRvIHNyYwogCSogYXJnbWF0 Y2guYzogTGlrZXdpc2UKIAkqIGJjb3B5LmM6IExpa2V3aXNlCkBAIC03ODYsNyArNzg2LDcg QEAgdTIwMDUtMDUtMjAgIFNlcmdleSBQb3pueWFrb2ZmICA8Z3JheUBNaXJkZGluLmZhcmxl cC5uZXQ+CiAJKiBwby9MSU5HVUFTOiBOZXcgZmlsZQogCSogcG8vTWFrZXZhcnM6IE5ldyBm aWxlCiAJKiBwby9QT1RGSUxFUy5pbjogTmV3IGZpbGUKLQkKKwogMjAwMy0xMS0yOCAgU2Vy Z2V5IFBvem55YWtvZmYgIDxncmF5QE1pcmRkaW4uZmFybGVwLm5ldD4KIAogCSogY29uZmln dXJlLmFjOiBBZGRlZCB2YXJpb3VzIGNoZWNrcwpAQCAtODA1LDcgKzgwNSw3IEBAIHUyMDA1 LTA1LTIwICBTZXJnZXkgUG96bnlha29mZiAgPGdyYXlATWlyZGRpbi5mYXJsZXAubmV0Pgog CSogbXQuYzogTGlrZXdpc2UKIAkqIHV0aWwuYzogTGlrZXdpc2UKIAkqIHJ0YXBlbGliLmM6 IExpa2V3aXNlCi0JCisKIDIwMDMtMTEtMjggIFNlcmdleSBQb3pueWFrb2ZmICA8Z3JheUBN aXJkZGluLmZhcmxlcC5uZXQ+CiAKIAkqIFRPRE86IE5ldyBmaWxlCkBAIC04MTYsNyArODE2 LDcgQEAgdTIwMDUtMDUtMjAgIFNlcmdleSBQb3pueWFrb2ZmICA8Z3JheUBNaXJkZGluLmZh cmxlcC5uZXQ+CiAJKiBtYWluLmMgKG1haW4pOiBDYWxsIHNldGxvY2FsZS4gVGhhbmtzCiAJ TWl0c3VydSBDaGluZW4gPG1jaGluZW5AeWFtYXRvLmlibS5jb20+CWZvciB0aGUgcGF0Y2gu CiAJKiBUSEFOS1M6IFVwZGF0ZWQKLQkKKwogMjAwMy0xMS0yMSAgU2VyZ2V5IFBvem55YWtv ZmYgIDxncmF5QE1pcmRkaW4uZmFybGVwLm5ldD4KIAogCSogY29uZmlndXJlLmFjOiBBZGRl ZCB0byB0aGUgcmVwb3NpdG9yeQpAQCAtODI1LDEyICs4MjUsMTIgQEAgdTIwMDUtMDUtMjAg IFNlcmdleSBQb3pueWFrb2ZmICA8Z3JheUBNaXJkZGluLmZhcmxlcC5uZXQ+CiAJKiBSRUFE TUU6IExpa2V3aXNlCiAJKiBBVVRIT1JTOiBMaWtld2lzZQogCSogLmN2c2lnbm9yZTogTGlr ZXdpc2UKLQkKKwogCSogY29uZmlndXJlLmluOiBSZW1vdmVkCiAJKiBNYWtlZmlsZS5pbjog UmVtb3ZlZAogCSogbWFrZWZpbGUucGM6IFJlbW92ZWQKIAkqIGNvbmZpZ3VyZTogUmVtb3Zl ZAotCQorCiAJKiBhbGxvY2EuYzogQWRkZWQgdG8gdGhlIHJlcG9zaXRvcnkKIAkqIGFyZ21h dGNoLmM6IExpa2V3aXNlCiAJKiBiY29weS5jOiBMaWtld2lzZQpAQCAtODYxLDcgKzg2MSw3 IEBAIHUyMDA1LTA1LTIwICBTZXJnZXkgUG96bnlha29mZiAgPGdyYXlATWlyZGRpbi5mYXJs ZXAubmV0PgogCSogdGFyaGRyLmg6IExpa2V3aXNlCiAJKiB4bWFsbG9jLmM6IExpa2V3aXNl CiAJKiB4c3RyZHVwLmM6IExpa2V3aXNlCi0JCisKIAkqIG1ha2VwYXRoLmM6IFVwZGF0ZWQK IAkqIG10LmM6IExpa2V3aXNlLgogCSogcm10LmM6IExpa2V3aXNlLgpAQCAtODcxLDcgKzg3 MSw3IEBAIHUyMDA1LTA1LTIwICBTZXJnZXkgUG96bnlha29mZiAgPGdyYXlATWlyZGRpbi5m YXJsZXAubmV0PgogCSogY29weXBhc3MuYzogTGlrZXdpc2UuCiAJKiBnbG9iYWwuYzogTGlr ZXdpc2UuCiAJKiBtYWluLmM6IExpa2V3aXNlLgotCQorCiBUaHUgSnVuIDEzIDIwOjE0OjQ4 IDIwMDIgIEpvaG4gT2xleW5pY2sgIChqdW9AZ251Lm9yZykKIAkqIGNvcHlpbi5jOiAgU3Ry aXAgbGVhZGluZyAvIG9uIGFic29sdXRlIGZpbGVuYW1lcyBhZnRlcgogCWNvbXBhcmluZyB0 byB0aGUgbGlzdCBvZiBmaWxlcyBzcGVjaWZpZWQgb24gdGhlIGNvbW1hbmQgbGluZQpAQCAt ODg3LDcgKzg4Nyw3IEBAIFN1biBKYW4gMTMgMTg6NDU6MDIgMjAwMiAgSm9obiBPbGV5bmlj ayAgKGp1b0BnbnUub3JnKQogCSogY29weWluLmM6ICBGaXhlZCBhIHByb2JsZW0gc2tpcHBp bmcgZmlsZXMgd2l0aCBtdWx0aXBsZSBsaW5rcwogCWluIGEgbmV3YyBvciBDUkMgZm9ybWF0 IGFyY2hpdmUuICBJZiB0aGUgZmlsZSB3aXRoIHRoZSBzaGFyZWQgY29weQogCW9mIHRoZSBk YXRhIHdhcyBza2lwcGVkLCBidXQgb3RoZXIgbGlua3Mgd2VyZSBub3Qgc2tpcHBlZCwgdGhl Ci0Jb3RoZXIgbGlua3Mgd2VyZSBjcmVhdGVkIGFzIGVtcHR5IGZpbGVzLiAgQnVnIHJlcG9y dGVkIGJ5IAorCW90aGVyIGxpbmtzIHdlcmUgY3JlYXRlZCBhcyBlbXB0eSBmaWxlcy4gIEJ1 ZyByZXBvcnRlZCBieQogCUhlbmRyaWstSmFuIFRob21hc3Nlbi4KIAogVGh1IERlYyAgNiAy MDowNToxMCAyMDAxICBKb2huIE9sZXluaWNrICAoanVvQGdudS5vcmcpCkBAIC05MTQsNyAr OTE0LDcgQEAgVHVlIEphbiAgOSAyMzoxOTozNyAxOTk2ICBKb2huIE9sZXluaWNrICAoanVv QHdvbWJhdC5nbnUuYWkubWl0LmVkdSkKIAogTW9uIEphbiAgOCAxNjo0OTowMSAxOTk2ICBK b2huIE9sZXluaWNrICAoanVvQHdvbWJhdC5nbnUuYWkubWl0LmVkdSkKIAkqIGNvcHlvdXQu YywgY29weXBhc3MuYzogVXNlIHJlc3VsdCBvZiByZWFkbGluaygpIGFzIGxlbmd0aAotCW9m IGxpbmsgbmFtZSBpbnN0ZWFkIG9mIHNpemUgZnJvbSBsc3RhdCgpLiAgT24gc29tZSBPUydz IGxzdGF0KCkgCisJb2YgbGluayBuYW1lIGluc3RlYWQgb2Ygc2l6ZSBmcm9tIGxzdGF0KCku ICBPbiBzb21lIE9TJ3MgbHN0YXQoKQogCWRvZXNuJ3QgcmV0dXJuIHRoZSB0cnVlIGxlbmd0 aCBpbiBzaXplLiAgQnVnIHJlcG9ydGVkIGJ5CiAJUm9iZXJ0IEpvb3AgKHJqQHJhaW5ib3cu SU4tYmVybGluLkRFKS4KIApAQCAtOTg5LDcgKzk4OSw3IEBAIFRodSBTZXAgMjkgMTE6MjE6 MzEgMTk5NCAgSm9obiBPbGV5bmljayAgKGp1b0B3b21iYXQuZ251LmFpLm1pdC5lZHUpCiAJ KiBtdC5jOiBOZWVkIHRvIG9wZW4gdGFwZSBXUl9PTkxZIGZvciBlcmFzZSBjb21tYW5kIChh bmQgcHJvYmFibHkKIAlvdGhlcnM/KS4gIFJlcG9ydGVkIGJ5IHJvYmVydEBoc3QuZS50ZWNo bmlrLnVuaS1rbC5kZSAoUm9iZXJ0CiAJVm9nZWxnZXNhbikuICBBY2NlcHQgYGVqZWN0JyBh cyBhIHN5bm9ueW0gZm9yIGBvZmZsaW5lJy4gIEFjY2VwdAotCWAtdCcgYXMgYSBzeW5vbnlt IGZvciBgLWYnICh0byBiZSBjb21wYXRpYmxlIHdpdGggSFBVWCBtdCwgd2hpY2ggCisJYC10 JyBhcyBhIHN5bm9ueW0gZm9yIGAtZicgKHRvIGJlIGNvbXBhdGlibGUgd2l0aCBIUFVYIG10 LCB3aGljaAogCW9ubHkgYWNjZXB0cyBgLXQnKS4KIAogV2VkIFNlcCAyOCAxMjowMTo1NSAx OTk0ICBKb2huIE9sZXluaWNrICAoanVvQHdvbWJhdC5nbnUuYWkubWl0LmVkdSkKQEAgLTEw MDQsMTIgKzEwMDQsMTIgQEAgV2VkIEF1ZyAyNCAxMjo1NTozOCAxOTk0ICBEYXZpZCBKLiBN YWNLZW56aWUgIChkam1AY2h1cmNoeS5nbnUuYWkubWl0LmVkdSkKIAl3aXRoIGVxdWl2YWxl bnQgY29kZSwgc2luY2UgdGhvc2UgbWFjcm9zIGFyZSBnb2luZyBhd2F5LgogCiBTdW4gRmVi IDEzIDAwOjU2OjQ4IDE5OTQgIEpvaG4gT2xleW5pY2sgIChqdW9AZ29sZG1hbi5nbnUuYWku bWl0LmVkdSkKLQkqIGV4dGVybi5oLCBnbG9iYWwuYywgbWFpbi5jLCB1dGlsLmM6ICBBZGRl ZCBjb2RlIHRvIAotCXRhcGVfYnVmZmVyZWRfcGVlaygpIHRvIHByb3Blcmx5IGhhbmRsZSBs YXJnZSwgY29ycnV0cGVkIAorCSogZXh0ZXJuLmgsIGdsb2JhbC5jLCBtYWluLmMsIHV0aWwu YzogIEFkZGVkIGNvZGUgdG8KKwl0YXBlX2J1ZmZlcmVkX3BlZWsoKSB0byBwcm9wZXJseSBo YW5kbGUgbGFyZ2UsIGNvcnJ1dHBlZAogCWFyY2hpdmVzLCB3aXRob3V0IG92ZXJydW5uaW5n IHRoZSBhbGxvY2F0ZWQgYnVmZmVyIGFuZAotCWR1bXBpbmcgY29yZS4gIEFsc28gY2hhbmdl ZCB0aGUgd2F5IHRoZSBpbnB1dCBhbmQgb3V0cHV0IAorCWR1bXBpbmcgY29yZS4gIEFsc28g Y2hhbmdlZCB0aGUgd2F5IHRoZSBpbnB1dCBhbmQgb3V0cHV0CiAJYnVmZmVycyBhcmUgYWxs b2NhdGVkIGluIGluaXRpYWxpemVfYnVmZmVycygpLgotCQorCiBUdWUgSmFuIDI1IDAxOjA0 OjMyIDE5OTQgIEpvaG4gT2xleW5pY2sgIChqdW9AZ29sZG1hbi5nbnUuYWkubWl0LmVkdSkK IAkqIGNvcHlpbi5jLCBjb3B5b3V0LmMsIGNvcHlwYXNzLmMsIGV4dGVybi5oLCBtYWluLmMs IHRhci5jLCB1dGlsLmM6CiAJUmVkaWQgaS9vIGJ1ZmZlciBjb2RlLiAgUHJldmlvdXNseSwg dGhlIHNhbWUgcm91dGluZXMgYnVmZmVyZWQgaW5wdXQgYW5kCkBAIC0xMDQyLDEzICsxMDQy LDEzIEBAIFR1ZSBKYW4gMjUgMDE6MDQ6MzIgMTk5NCAgSm9obiBPbGV5bmljayAgKGp1b0Bn b2xkbWFuLmdudS5haS5taXQuZWR1KQogCXdyaXRpbmcgc3BhcnNlIGZpbGVzLgogCiBUdWUg RGVjIDI4IDIzOjAxOjM2IDE5OTMgIEpvaG4gT2xleW5pY2sgIChqdW9AZ29sZG1hbi5nbnUu YWkubWl0LmVkdSkKLQkqIHV0aWwuYywgc3lzdGVtLmgsIG1ha2VwYXRoLmMsIGV4dGVybi5o OiBkb24ndCBkZWZpbmUgY2hvd24oKSAKKwkqIHV0aWwuYywgc3lzdGVtLmgsIG1ha2VwYXRo LmMsIGV4dGVybi5oOiBkb24ndCBkZWZpbmUgY2hvd24oKQogCWFuZCBkb24ndCB0eXBlZGVm IHVpZF90IGFuZCBnaWRfdCBpZiB3ZSBhcmUgYmVpbmcgY29tcGlsZWQKIAlieSBESkdQUC4K IAogCSogY29weWluLmMsIGV4dGVybi5oLCBnbG9iYWwuYywgbWFpbi5jOiAgQWRkZWQgc3Vw cG9ydCBmb3IKIAktLXJlbmFtZS1iYXRjaC1maWxlLgotCQorCiAJKiBjb3B5aW4uYywgY29w eW91dC5jLCBleHRlcm4uaDogIENsZWFuZWQgdXAgdG8gcGFzcyBnY2MgLVdhbGwuCiAKIFdl ZCBEZWMgMjIgMDI6MTc6NDQgMTk5MyAgSm9obiBPbGV5bmljayAgKGp1b0Bnb2xkbWFuLmdu dS5haS5taXQuZWR1KQpAQCAtMTA2MiwxMCArMTA2MiwxMCBAQCBXZWQgRGVjIDIyIDAyOjE3 OjQ0IDE5OTMgIEpvaG4gT2xleW5pY2sgIChqdW9AZ29sZG1hbi5nbnUuYWkubWl0LmVkdSkK IAkqIG10LmM6ICBBZGRlZCAiZWplY3QiIGFzIGEgc3lub255bSBmb3IgIm9mZmxpbmUiLgog CiAJKiB1dGlsLmM6ICBTbGlnaHQgbW9kaWZpY2F0aW9uIHRvIHdoZW4gd2UgbHNlZWsgd2l0 aAotCUJST0tFTl9MT05HX1RBUEVfRFJJVkVSIChkbyBpdCBldmVyeSAxR2IsIGluc3RlYWQg CisJQlJPS0VOX0xPTkdfVEFQRV9EUklWRVIgKGRvIGl0IGV2ZXJ5IDFHYiwgaW5zdGVhZAog CW9mIGV2ZXJ5IDJHYikuCiAKLQkqIGNvcHlpbi5jLCBnbG9iYWwuYywgZXh0ZXJuLmg6ICBB ZGRlZCAtLW5vLWFic29sdXRlLXBhdGhzIG9wdGlvbiwgCisJKiBjb3B5aW4uYywgZ2xvYmFs LmMsIGV4dGVybi5oOiAgQWRkZWQgLS1uby1hYnNvbHV0ZS1wYXRocyBvcHRpb24sCiAJdG8g aWdub3JlIGFic29sdXRlIHBhdGhzIGluIGFyY2hpdmVzLgogCiBUdWUgRGVjIDIxIDAxOjMw OjU5IDE5OTMgIEpvaG4gT2xleW5pY2sgIChqdW9AZ29sZG1hbi5nbnUuYWkubWl0LmVkdSkK QEAgLTEwODgsNyArMTA4OCw3IEBAIE1vbiBKdWwgMTkgMjM6MDE6MDAgMTk5MyAgRGF2aWQg Si4gTWFjS2VuemllICAoZGptQGNodXJjaHkuZ251LmFpLm1pdC5lZHUpCiBUaHUgSnVsICA4 IDE5OjQzOjM5IDE5OTMgIERhdmlkIEouIE1hY0tlbnppZSAgKGRqbUBnb2xkbWFuLmdudS5h aS5taXQuZWR1KQogCiAJKiBNYWtlZmlsZS5pbjogQWRkIHJ1bGVzIGZvciByZW1ha2luZyBN YWtlZmlsZSwgY29uZmlndXJlLAotCWNvbmZpZy5zdGF0dXMuIAorCWNvbmZpZy5zdGF0dXMu CiAKIE1vbiBKdWwgIDUgMTQ6NTQ6MDggMTk5MyAgSm9obiBPbGV5bmljayAgKGp1b0BzcGlm Zi5nbnUuYWkubWl0LmVkdSkKIApAQCAtMTEyNSw4ICsxMTI1LDggQEAgV2VkIEFwciAyOCAx MDozNjo1MyAxOTkzICBKb2huIE9sZXluaWNrICAoanVvQGdvbGRtYW4uZ251LmFpLm1pdC5l ZHUpCiAJKiB1dGlsLmM6IEFkZGVkIGNvZGUgdG8gdHJ5IGFuZCB3b3JrIGFyb3VuZCBicm9r ZW4gdGFwZSBkcml2ZXJzCiAJdGhhdCBoYXZlIHByb2JsZW1zIHdpdGggdGFwZXMgPiAyR2Iu CiAKLQkqIGNvcHlvdXQuYyAocHJvY2Vzc19jb3B5X291dCk6IFBhc3MgZmlsZV9oZHIgdG8g Ci0Jd3JpdGVvdXRfb3RoZXJfZGVmZXJzKCkgYW5kIGFkZF9saW5rX2RlZmVyKCkgYnkgcmVm ZXJlbmNlLCAKKwkqIGNvcHlvdXQuYyAocHJvY2Vzc19jb3B5X291dCk6IFBhc3MgZmlsZV9o ZHIgdG8KKwl3cml0ZW91dF9vdGhlcl9kZWZlcnMoKSBhbmQgYWRkX2xpbmtfZGVmZXIoKSBi eSByZWZlcmVuY2UsCiAJbm90IGJ5IHZhbHVlLgogCiAJKiBjb3B5aW4uYyAocHJvY2Vzc19j b3B5X2luKTogUGFzcyBmaWxlX2hkciB0byBkZWZlcl9jb3B5aW4oKQpAQCAtMTEzNiw3ICsx MTM2LDcgQEAgV2VkIEFwciAyOCAxMDozNjo1MyAxOTkzICBKb2huIE9sZXluaWNrICAoanVv QGdvbGRtYW4uZ251LmFpLm1pdC5lZHUpCiAKIEZyaSBBcHIgMTYgMTg6MDE6MTcgMTk5MyAg Sm9obiBPbGV5bmljayAgKGp1b0Bnb2xkbWFuLmdudS5haS5taXQuZWR1KQogCi0JKiBtdC5j LCB1dGlsLmM6IEluY2x1ZGUgPHN5cy9tdGlvLmg+IGlmIEhBVkVfU1lTX01USU9fSCBpcyAK KwkqIG10LmMsIHV0aWwuYzogSW5jbHVkZSA8c3lzL210aW8uaD4gaWYgSEFWRV9TWVNfTVRJ T19IIGlzCiAJZGVmaW5lZCwgbm90IEhBVkVfTVRJT19ILgogCiBXZWQgQXByIDE0IDE3OjM3 OjQ2IDE5OTMgIEpvaG4gT2xleW5pY2sgIChqdW9AZ29sZG1hbi5nbnUuYWkubWl0LmVkdSkK QEAgLTExODAsNyArMTE4MCw3IEBAIE1vbiBNYXIgMjkgMTc6MDQ6MDYgMTk5MyAgSm9obiBP bGV5bmljayAgKGp1b0BoYWwuZ251LmFpLm1pdC5lZHUpCiAJc3ltbGluaygpLgogCiAJKiBj b3B5b3V0LmM6IGZpeGVzIHRvIHByb3Blcmx5IGhhbmRsZSBtdWx0aXBsZSBsaW5rcyBpbiBu ZXdjCi0JYW5kIGNyYyBmb3JtYXQgYXJjaGl2ZXMgKG5ldyByb3V0aW5lcyBsYXN0X2xpbmso KSwgCisJYW5kIGNyYyBmb3JtYXQgYXJjaGl2ZXMgKG5ldyByb3V0aW5lcyBsYXN0X2xpbmso KSwKIAljb3VudF9kZWZlcmVkX2xpbmtzX3RvX2Rldl9pbm8oKSwgYWRkX2xpbmtfZGVmZXIo KSwKIAl3cml0ZW91dF9vdGhlcl9kZWZlcnMoKSwgd3JpdGVvdXRfZmluYWxfZGVmZXJzKCks CiAJd3JpdGVvdXRfZGVmZXJlZF9maWxlKCkpOyBzdXBwb3J0IGZvciBuZXcgYXJmX2hwYmlu YXJ5IGFuZApAQCAtMTIwNSw3ICsxMjA1LDcgQEAgTW9uIE1hciAyOSAxNzowNDowNiAxOTkz ICBKb2huIE9sZXluaWNrICAoanVvQGhhbC5nbnUuYWkubWl0LmVkdSkKIAogCSogc3lzdGVt Lmg6IG5ldyBtYWNybyBVTUFTS0VEX1NZTUxJTksKIAotCSogdGFyLmM6IG1pbm9yIGNoYW5n ZXMgdG8gcmVhZCAoc2xpZ2h0bHkgYnJva2VuPykgU3lzdGVtIFYuNCBwb3NpeCAKKwkqIHRh ci5jOiBtaW5vciBjaGFuZ2VzIHRvIHJlYWQgKHNsaWdodGx5IGJyb2tlbj8pIFN5c3RlbSBW LjQgcG9zaXgKIAl0YXIgYXJjaGl2ZXMgYW5kIEhQVVggcG9zaXggdGFyIGFyY2hpdmVzLgog CiAJKiB1dGlsLmM6IEhQVVggQ0RGIHN1cHBvcnQgKGluY2x1ZGluZyBuZXcgcm91dGluZXMK QEAgLTE1MDMsMTMgKzE1MDMsMTMgQEAgVHVlIEp1biAxMSAxNjo0MDowMiAxOTkxICBEYXZp ZCBKLiBNYWNLZW56aWUgIChkam0gYXQgZ2VlY2guZ251LmFpLm1pdC5lZHUpCiAJTWFrZWZp bGUgZnJvbSBNYWtlZmlsZS5pbi4KIAogCSogY29weWluLmMgKHByb2Nlc3NfY29weV9pbik6 IFVzZSBQT1NJWC4yIGZubWF0Y2ggaW5zdGVhZCBvZgotCWdsb2JfbWF0Y2guIAorCWdsb2Jf bWF0Y2guCiAKIE1vbiBKdW4gMTAgMjI6MTE6MTkgMTk5MSAgRGF2aWQgSi4gTWFjS2Vuemll ICAoZGptIGF0IGdlZWNoLmdudS5haS5taXQuZWR1KQogCiAJKiBnbG9iYWwuYywgZXh0ZXJu Lmg6IE5ldyB2YXJpYWJsZSwgbmFtZV9lbmQuCiAJKiBtYWluLmMgKHByb2Nlc3NfYXJncywg dXNhZ2UpOiBBZGQgLTAgK251bGwgb3B0aW9uIHRvIHNldCBpdC4KLQkqIGNvcHlwYXNzLmMg KHByb2Nlc3NfY29weV9wYXNzKSwgY29weW91dC5jIChwcm9jZXNzX2NvcHlfb3V0KTogCisJ KiBjb3B5cGFzcy5jIChwcm9jZXNzX2NvcHlfcGFzcyksIGNvcHlvdXQuYyAocHJvY2Vzc19j b3B5X291dCk6CiAJVXNlIGl0LgogCiAJKiBkc3RyaW5nLmMgKGRzX2ZnZXRzdHIpOiBOZXcg ZnVuY3Rpb24gbWFkZSBmcm9tIGRzX2ZnZXRzLgpAQCAtMTYwNSw3ICsxNjA1LDcgQEAgU2F0 IEp1bCAgNyAxNDo0ODozNSAxOTkwICBEYXZpZCBKLiBNYWNLZW56aWUgIChkYXZlIGF0IGVk Zm1kKQogCUhpZ2ggc2hvcnQtd29yZCBvZiBgbXRpbWUnIGFuZCBgZmlsZXNpemUnIGFsd2F5 cyBjb21lcyBmaXJzdC4KIAogCSogKHJlYWRfaW5fYXNjaWksIHJlYWRfaW5fYmluYXJ5KTog TmV3IGZ1bmN0aW9ucywgZnJvbSBjb2RlIGluCi0JcmVhZF9pbl9oZWFkZXIuIAorCXJlYWRf aW5faGVhZGVyLgogCShyZWFkX2luX2hlYWRlcik6IFNlYXJjaCBmb3IgdmFsaWQgbWFnaWMg bnVtYmVyLCB0aGVuIGZpbGwgaW4KIAlyZXN0IG9mIGhlYWRlciB1c2luZyByZWFkX2luX2Fz Y2lpIGFuZCByZWFkX2luX2JpbmFyeS4KIAkqIGdsb2JhbC5jLCBleHRlcm4uaDogTmV3IHZh cmlhYmxlLCBgYmluYXJ5X2ZsYWcnLgpAQCAtMTYxOSw3ICsxNjE5LDcgQEAgV2VkIEp1bCAg NCAwMDo0MDo1OCAxOTkwICBEYXZpZCBKLiBNYWNLZW56aWUgIChkam0gYXQgYXBwbGUtZ3Vu a2llcykKIAogCSogY29weWluLmMgKHByb2Nlc3NfY29weV9pbiksIHV0aWwuYyAodG9zc19p bnB1dCwKIAljcmVhdGVfYWxsX2RpcmVjdG9yaWVzLCBhZGRfaW5vZGUpOiBEb24ndCB1c2Ug YGluZGV4JyBhcyBhCi0JdmFyaWFibGUgbmFtZS4gCisJdmFyaWFibGUgbmFtZS4KIAogVHVl IEp1bCAgMyAwMjozMzozNiAxOTkwICBEYXZpZCBKLiBNYWNLZW56aWUgIChkam0gYXQgYXBw bGUtZ3Vua2llcykKIApAQCAtMTY2NSw3ICsxNjY1LDcgQEAgTW9uIEp1bCAgMiAwMzo1Nzo0 MSAxOTkwICBEYXZpZCBKLiBNYWNLZW56aWUgIChkYXZlIGF0IGVkZm1kKQogCWNvcHlwYXNz LmMgKHByb2Nlc3NfY29weV9wYXNzKTogU2V0IGBvdXRwdXRfaXNfc2Vla2FibGUnCiAJY29y cmVjdGx5IGFuZCBjYWxsIGZpbmlzaF9vdXRwdXRfZmlsZS4KIAkqIG1haW4uYyAoaW5pdGlh bGl6ZV9idWZmZXJzKTogQWxsb2NhdGUgc3BhY2UgZm9yIHNlbnRpbmVsIGluCi0JYG91dHB1 dF9idWZmZXInLiAKKwlgb3V0cHV0X2J1ZmZlcicuCiAKIAkqIGdsb2JhbC5jLCBleHRlcm4u aDogTmV3IHZhcmlhYmxlIGBudW1lcmljX3VpZCcuCiAJKiBtYWluLmMgKHByb2Nlc3NfYXJn cyk6IEFjY2VwdCAtbiArbnVtZXJpYy11aWQtZ2lkIG9wdGlvbiwgbGlrZSBscy4KQEAgLTE2 ODcsMTAgKzE2ODcsMTAgQEAgU2F0IEp1biAzMCAxMjo0NDo0NyAxOTkwICBEYXZpZCBKLiBN YWNLZW56aWUgIChkYXZlIGF0IGVkZm1kKQogCiAJKiBnbG9iYWwuYywgZXh0ZXJuLmgsIGNv cHlpbi5jLCBjb3B5b3V0LmMsIHV0aWwuYzogUmVuYW1lCiAJYHtpbnB1dCxvdXRwdXR9X2lz X3JlZ3VsYXInIHRvIGB7aW5wdXQsb3V0cHV0fV9pc19zcGVjaWFsJyBhbmQKLQlyZXZlcnNl IHRoZSB0cnV0aCB2YWx1ZS4gCisJcmV2ZXJzZSB0aGUgdHJ1dGggdmFsdWUuCiAKIAkqIGds b2JhbC5jLCBleHRlcm4uaDogTmV3IHZhcmlhYmxlIGBpbnB1dF9pc19zZWVrYWJsZScgdG8K LQljb250cm9sIHdoZXRoZXIgdG8gc2tpcCBkYXRhIHdpdGggbHNlZWsgb3IgcmVhZC4gCisJ Y29udHJvbCB3aGV0aGVyIHRvIHNraXAgZGF0YSB3aXRoIGxzZWVrIG9yIHJlYWQuCiAJKiBj b3B5aW4uYyAocHJvY2Vzc19jb3B5X2luKTogU2V0IGl0LgogCSogdXRpbC5jICh0b3NzX2lu cHV0KTogVXNlIGl0LgogCkBAIC0xNzA1LDcgKzE3MDUsNyBAQCBTYXQgSnVuIDMwIDEyOjQ0 OjQ3IDE5OTAgIERhdmlkIEouIE1hY0tlbnppZSAgKGRhdmUgYXQgZWRmbWQpCiBTYXQgSnVu IDMwIDAxOjUzOjEyIDE5OTAgIERhdmlkIEouIE1hY0tlbnppZSAgKGRhdmUgYXQgZWRmbWQp CiAKIAkqIGRzdHJpbmcuYyAoZHNfaW5pdCk6IFJldHVybiB2b2lkIGJlY2F1c2UgcmV0dXJu IHZhbHVlIHdhcwotCW5ldmVyIHVzZWQuIAorCW5ldmVyIHVzZWQuCiAJKGRzX3Jlc2l6ZSk6 IERpdHRvLCBhbmQgZnJlZSBvbGQgdmFsdWUgaW5zdGVhZCBvZiBuZXcgb25lLgogCiAJKiB1 dGlsLmMgKGVtcHR5X291dHB1dF9idWZmZXIsIGZpbGxfaW5wdXRfYnVmZmVyLApAQCAtMTcz OCwxMCArMTczOCwxMCBAQCBUaHUgSnVuIDI4IDE2OjA3OjE1IDE5OTAgIERhdmlkIEouIE1h Y0tlbnppZSAgKGRhdmUgYXQgZWRmbWQpCiBTYXQgSnVuIDIzIDIyOjUwOjQ1IDE5OTAgIERh dmlkIEouIE1hY0tlbnppZSAgKGRhdmUgYXQgZWRmbWQpCiAKIAkqIG1haW4uYyAobWFpbik6 IFNldCB1bWFzayB0byAwIHNvIHBlcm1pc3Npb25zIG9mIGNyZWF0ZWQKLQlmaWxlcyBhcmUg cHJlc2VydmVkLiAKKwlmaWxlcyBhcmUgcHJlc2VydmVkLgogCiAJKiBjb3B5aW4uYywgY29w eW91dC5jLCBjb3B5cGFzcy5jLCB1dGlsLmM6IFBhc3MgZmlsZQotCWRlc2NyaXB0b3JzIGFz IGludHMsIG5vdCBwb2ludGVycyB0byBpbnRzLiAKKwlkZXNjcmlwdG9ycyBhcyBpbnRzLCBu b3QgcG9pbnRlcnMgdG8gaW50cy4KIAlDYXN0IGZpbGUgdGltZXN0YW1wcyBhbmQgc2l6ZXMg dG8gbG9uZyAqLCBub3QgaW50ICosIGZvciAxNgogCWJpdCBtYWNoaW5lcy4KIAlVc2UgbHN0 YXQgaW5zdGVhZCBvZiBzdGF0LCBpZiBhdmFpbGFibGUuCkBAIC0xNzc3LDcgKzE3NzcsNyBA QCBUaHUgTWF5IDMxIDIwOjUxOjQzIDE5OTAgIERhdmlkIEouIE1hY0tlbnppZSAgKGRqbSBh dCBhbGJlcnQuYWkubWl0LmVkdSkKIFNhdCBBcHIgMTQgMDI6MzE6MDEgMTk5MCAgRGF2aWQg Si4gTWFjS2VuemllICAoZGptIGF0IGFsYmVydC5haS5taXQuZWR1KQogCiAJKiBjcGlvLmgg KHN0cnVjdCBjcGlvX2hlYWRlcik6IE1ha2UgaW5vZGUsIG1vZGUsIHVpZCwgZ2lkCi0JZmll bGRzIHVuc2lnbmVkLiAKKwlmaWVsZHMgdW5zaWduZWQuCiAKIAkqIHV0aWwuYyAoZ2V0Z3Jv dXApOiBOZXcgZnVuY3Rpb24uCiAJKiBjb3B5aW4uYyAobG9uZ19mb3JtYXQpOiBQcmludCBn cm91cCBuYW1lIG9mIGZpbGVzLgpAQCAtMTc5Myw3ICsxNzkzLDcgQEAgU2F0IEFwciAxNCAw MjozMTowMSAxOTkwICBEYXZpZCBKLiBNYWNLZW56aWUgIChkam0gYXQgYWxiZXJ0LmFpLm1p dC5lZHUpCiAKIAkqIGNvcHlpbi5jIChwcm9jZXNzX2NvcHlfaW4pLCBjb3B5cGFzcy5jIChw cm9jZXNzX2NvcHlfcGFzcyk6CiAJRG9uJ3QgY29tcGxhaW4gaW4gY2hvd24gZmFpbHMgYmVj YXVzZSB0aGUgdXNlciBkb2Vzbid0IGhhdmUKLQlwZXJtaXNzaW9uLiAKKwlwZXJtaXNzaW9u LgogCiBGcmkgQXByIDEzIDEzOjUzOjIwIDE5OTAgIERhdmlkIEouIE1hY0tlbnppZSAgKGRq bSBhdCBhbGJlcnQuYWkubWl0LmVkdSkKIApAQCAtMTg2Miw3ICsxODYyLDcgQEAgU2F0IERl YyAgMiAxMzoyMjozNyAxOTg5ICBEYXZpZCBKLiBNYWNLZW56aWUgIChkam0gYXQgaG9iYmVz LmFpLm1pdC5lZHUpCiAJKiBtYWluLmM6IENoYW5nZSArY29weS1wYXNzIG9wdGlvbiB0byAr cGFzcywgK2NvcHktaW4gdG8gK2luLAogCStjb3B5LW91dCB0byArb3V0LCBhbmQgK21rZGly IHRvICttYWtlLWRpcmVjdG9yaWVzLCBhbmQgYWRkIG51bGwKIAlvcHRpb24gdG8gdGVybWlu YXRlIHRhYmxlLgotCShwcm9jZXNzX2FyZ3MpOiBVc2UgdGhlIHNhbWUgY29kZSB0byBoYW5k bGUgbG9uZyBhbmQgc2hvcnQgbmFtZWQgCisJKHByb2Nlc3NfYXJncyk6IFVzZSB0aGUgc2Ft ZSBjb2RlIHRvIGhhbmRsZSBsb25nIGFuZCBzaG9ydCBuYW1lZAogCW9wdGlvbnMuCiAJKHVz YWdlKTogTWVudGlvbiBsb25nIG9wdGlvbnMgaW4gbWVzc2FnZS4KIAwKZGlmZiAtLWdpdCBh L05FV1MgYi9ORVdTCmluZGV4IDJjN2FkMDYuLjFhMmEwZGEgMTAwNjQ0Ci0tLSBhL05FV1MK KysrIGIvTkVXUwpAQCAtMSw0ICsxLDQgQEAKLUdOVSBjcGlvIE5FV1MgLS0gaGlzdG9yeSBv ZiB1c2VyLXZpc2libGUgY2hhbmdlcy4gMjAyMS0wMS0wOAorR05VIGNwaW8gTkVXUyAtLSBo aXN0b3J5IG9mIHVzZXItdmlzaWJsZSBjaGFuZ2VzLiAyMDIyLTAxLTI4CiBDb3B5cmlnaHQg KEMpIDIwMDMtMjAwNywgMjAwOS0yMDEwLCAyMDE0LTIwMTUsIDIwMTcsIDIwMjAtMjAyMiBG cmVlCiBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiBTZWUgdGhlIGVuZCBvZiBmaWxlIGZv ciBjb3B5aW5nIGNvbmRpdGlvbnMuCkBAIC0yNyw3ICsyNyw3IEBAIG51bWJlci4KIFJlbnVt YmVyIGlub2RlcyB3aGVuIHN0b3JpbmcgdGhlbSBpbiB0aGUgYXJjaGl2ZS4KIAogKiogLS1k ZXZpY2UtaW5kZXBlbmRlbnQgb3IgLS1yZXByb2R1Y2libGUKLUNyZWF0ZSByZXByb2R1Y2li bGUgYXJjaGl2ZXMuICBUaGlzIGlzIGVxdWl2YWxlbnQgdG8gCitDcmVhdGUgcmVwcm9kdWNp YmxlIGFyY2hpdmVzLiAgVGhpcyBpcyBlcXVpdmFsZW50IHRvCiAtLWlnbm9yZS1kZXZubyAt LXJlbnVtYmVyLWlub2Rlcy4KIAwKIFZlcnNpb24gMi4xMSAtIFNlcmdleSBQb3pueWFrb2Zm LCAyMDEwLTAzLTEwCkBAIC0xMDksNyArMTA5LDcgQEAgZGVmYXVsdC4gU2VlIGJlbG93Lgog KiBOZXcgb3B0aW9uIC0tdG8tc3Rkb3V0IGV4dHJhY3RzIGZpbGVzIHRvIHN0YW5kYXJkIG91 dHB1dC4KIAogKiBUaGUgb3V0cHV0IG9mIGBjcGlvIC0taGVscCcgaXMgbGFyZ2VseSBpbXBy b3ZlZC4KLSAgICAgICAKKwogKiBCdWdmaXhlczoKICoqIElmIGEgZmlsZSBncmV3IG4gYnl0 ZXMgaW4gY29weS1wYXNzIG1vZGUsIHRoZXNlIG4gYnl0ZXMgZ290IHByZXBlbmRlZAogdG8g dGhlIGNvbnRlbnRzIG9mIGFsbCBzdWJzZXF1ZW50IGZpbGVzLgpAQCAtMTM1LDcgKzEzNSw3 IEBAIE1ham9yIGNoYW5nZXMgaW4gdmVyc2lvbiAyLjM6CiAKICogaW4gbmV3YyBhbmQgY3Jj IGZvcm1hdCBhcmNoaXZlcywgb25seSBzdG9yZSAxIGNvcHkgb2YgbXVsdGlwbHkgbGlua2Vk IGZpbGVzCiAqIGhhbmRsZSBtdWx0aXBseSBsaW5rZWQgZGV2aWNlcyBwcm9wZXJseQotKiBo YW5kbGUgbXVsdGlwbHkgbGlua2VkIGZpbGVzIHdpdGggY3BpbyAtcGwgZXZlbiB3aGVuIHRo ZSBzb3VyY2UgYW5kIAorKiBoYW5kbGUgbXVsdGlwbHkgbGlua2VkIGZpbGVzIHdpdGggY3Bp byAtcGwgZXZlbiB3aGVuIHRoZSBzb3VyY2UgYW5kCiAgIGRlc3RpbmF0aW9uIGFyZSBvbiBk aWZmZXJlbnQgZmlsZSBzeXN0ZW1zCiAqIHN1cHBvcnQgSFBVWCBDb250ZXh0IERlcGVuZGVu dCBGaWxlcwogKiByZWFkIGFuZCB3cml0ZSBIUFVYIGNwaW8gYXJjaGl2ZXMKZGlmZiAtLWdp dCBhL1JFQURNRS1hbHBoYSBiL1JFQURNRS1hbHBoYQppbmRleCAxMzIzMmJkLi40YjlkZDM4 IDEwMDY0NAotLS0gYS9SRUFETUUtYWxwaGEKKysrIGIvUkVBRE1FLWFscGhhCkBAIC02Nyw2 ICs2NywzIEBAIG1vZGU6IG91dGxpbmUKIHBhcmFncmFwaC1zZXBhcmF0ZTogIlsgCQxdKiQi CiB2ZXJzaW9uLWNvbnRyb2w6IG5ldmVyCiBFbmQ6Ci0KLQotCmRpZmYgLS1naXQgYS9SRUFE TUUtaGFja2luZyBiL1JFQURNRS1oYWNraW5nCmluZGV4IDI2MzYzNTUuLjE5NjY5YjEgMTAw NjQ0Ci0tLSBhL1JFQURNRS1oYWNraW5nCisrKyBiL1JFQURNRS1oYWNraW5nCkBAIC02LDcg KzYsNyBAQCB0aGlzIHBhY2thZ2UuCiBZb3UgbmVlZCB0aGUgZm9sbG93aW5nIHBhY2thZ2Vz IHRvIGJ1aWxkIHRoZSBHaXQgdmVyc2lvbiBvZiBHTlUKIGNwaW8uICBXZSBkbyBub3QgbWFr ZSBhbnkgZWZmb3J0cyB0byBhY2NvbW1vZGF0ZSBvbGRlciB2ZXJzaW9ucyBvZgogdGhlc2Ug cGFja2FnZXMsIHNvIHBsZWFzZSBtYWtlIHN1cmUgdGhhdCB5b3UgaGF2ZSB0aGUgbGF0ZXN0 IHN0YWJsZQotdmVyc2lvbi4gCit2ZXJzaW9uLgogCiAtIEF1dG9tYWtlIDxodHRwOi8vd3d3 LmdudS5vcmcvc29mdHdhcmUvYXV0b21ha2UvPgogLSBBdXRvY29uZiA8aHR0cDovL3d3dy5n bnUub3JnL3NvZnR3YXJlL2F1dG9jb25mLz4KQEAgLTE4LDcgKzE4LDcgQEAgdmVyc2lvbi4K IAogT2J2aW91c2x5LCBpZiB5b3UgYXJlIHJlYWRpbmcgdGhlc2Ugbm90ZXMsIHlvdSBkaWQg bWFuYWdlIHRvIGNsb25lCiBjcGlvIGZyb20gR2l0LiBUaGUgbmV4dCBzdGVwIGlzIHRvIGdl dCBvdGhlciBmaWxlcyBuZWVkZWQgdG8gYnVpbGQsCi13aGljaCBhcmUgZXh0cmFjdGVkIGZy b20gb3RoZXIgc291cmNlIHBhY2thZ2VzOiAKK3doaWNoIGFyZSBleHRyYWN0ZWQgZnJvbSBv dGhlciBzb3VyY2UgcGFja2FnZXM6CiAKIDEuIENoYW5nZSB0byB0aGUgc291cmNlIHRyZWUg ZGlyZWN0b3J5CiAKQEAgLTI2LDcgKzI2LDcgQEAgd2hpY2ggYXJlIGV4dHJhY3RlZCBmcm9t IG90aGVyIHNvdXJjZSBwYWNrYWdlczoKIAogMi4gUnVuCiAKLSAgIC4vYm9vdHN0cmFwIAor ICAgLi9ib290c3RyYXAKIAogT25jZSBkb25lLCBwcm9jZWVkIGFzIGRlc2NyaWJlZCBpbiB0 aGUgZmlsZSBSRUFETUUgKHNlY3Rpb24KIElOU1RBTExBVElPTikuCkBAIC01OCw1ICs1OCwz IEBAIG1vZGU6IG91dGxpbmUKIHBhcmFncmFwaC1zZXBhcmF0ZTogIlsJXkxdKiQiCiB2ZXJz aW9uLWNvbnRyb2w6IG5ldmVyCiBFbmQ6Ci0KLQpkaWZmIC0tZ2l0IGEvVE9ETyBiL1RPRE8K aW5kZXggYTQ4M2EzYi4uMGMxNmE4YiAxMDA2NDQKLS0tIGEvVE9ETworKysgYi9UT0RPCkBA IC0xNSw4ICsxNSw4IEBAIGludG8gdHdvIHBhcnRzLCB0aGUgbWVzc2FnZXMgYXJlIGluIHNv bWVob3cgYXJiaXRyYXJ5IG9yZGVyLgogICAgICAgICAgIHBhdGNoLCBwbGVhc2UgdmVyaWZ5 IHRoZSBwcm9ibGVtIGFuZCB0aGUgcGF0Y2gtY29kZS4gSSdtIG5vdAogICAgICAgICAgIHN1 cmUsIGlmIHRoZSBwcgogICAgICAgICAgIC9hcmNoaXZlL2h0bWwvYnVnLWdudS11dGlscy8y MDAyLTA4L21zZzAwMTIyLmh0bWwgKDQsNTE4IGJ5dGVzKQotICAgICAgICAgIAotKiogVGhl c2UgdHdvIHNlZW0gdG8gYmUgcmVsYXRlZDogCisKKyoqIFRoZXNlIHR3byBzZWVtIHRvIGJl IHJlbGF0ZWQ6CiAqKiogIGNwaW8gY29weS1pbiBhbmQgbXVsdGlwbHktbGlua2VkIGZpbGVz IChzY29yZTogMzUpCiAgICAgICAgICAgQXV0aG9yOiBDaHJpcyBKYWVnZXIgPGNqYWVnZXJA ZW5zaW0uY29tPgogICAgICAgICAgIERhdGU6IFR1ZSwgMDcgQXVnIDIwMDEgMjM6NDY6MDQg LTA3MDAKQEAgLTI1LDcgKzI1LDcgQEAgaW50byB0d28gcGFydHMsIHRoZSBtZXNzYWdlcyBh cmUgaW4gc29tZWhvdyBhcmJpdHJhcnkgb3JkZXIuCiAgICAgICAgICAgb2YgZmlsZXMgYWxs IG9mIHNpemUgMCBpZiB0aGUgbGFzdCBsaW5rZWQgZmlsZSBpcyBub3QgY29waWVkIGluCiAg ICAgICAgICAgZHVlIHRvIHRoCiAgICAgICAgICAgL2FyY2hpdmUvaHRtbC9idWctZ251LXV0 aWxzLzIwMDEtMDgvbXNnMDAwNzQuaHRtbCAoNCwxNDIgYnl0ZXMpCi0gICAgICAgICAgCisK ICoqKiAgKG5vIHN1YmplY3QpIChzY29yZTogMikKICAgICAgICAgICBBdXRob3I6IGJyaWFu QGRlYmlhbi5vcmcgKEJyaWFuIE1heXMpCiAgICAgICAgICAgRGF0ZTogU2F0LCAwNyBKdWwg MjAwMSAxNjozNToxMyAtMDQwMApAQCAtMzQsNyArMzQsNyBAQCBpbnRvIHR3byBwYXJ0cywg dGhlIG1lc3NhZ2VzIGFyZSBpbiBzb21laG93IGFyYml0cmFyeSBvcmRlci4KICAgICAgICAg ICBhbGwgYXJjaGl2ZWQgYXMgaGFyZCBsaW5rcyB0byBlYWNoIG90aGVyIGluIHRoZSBhcmNo aXZlLiBXaGVuCiAgICAgICAgICAgdGhlIHNhbWUgc2V0IG9mIGZpbAogICAgICAgICAgIC9h cmNoaXZlL2h0bWwvYnVnLWdudS11dGlscy8yMDAxLTA3L21zZzAwMDgwLmh0bWwgKDUsNjY2 IGJ5dGVzKQotICAgICAgICAgIAorCiAqKiBUaGVzZSB0b286CiAKICoqKiAgIFJlOiBtaW5v ciBwcm9ibGVtcyB3aXRoIHNsYWNrd2FyZS1jdXJyZW50IChzY29yZTogNykKQEAgLTQzLDcg KzQzLDcgQEAgaW50byB0d28gcGFydHMsIHRoZSBtZXNzYWdlcyBhcmUgaW4gc29tZWhvdyBh cmJpdHJhcnkgb3JkZXIuCiAgICAgICAgICAgImNwaW8gLS1zcGFyc2UiIGNvcnJ1cHRzIGRh dGEuIEEgZml4IGF0dGFjaGVkLiBDLlMuIEF0dGFjaG1lbnQ6CiAgICAgICAgICAgY3Bpby0y LjQuMi1zcGFyc2UuZGlmZiBEZXNjcmlwdGlvbjogVGV4dCBkb2N1bWVudAogICAgICAgICAg IC9hcmNoaXZlL2h0bWwvYnVnLWdudS11dGlscy8yMDAxLTA4L21zZzAwMDAwLmh0bWwgKDMs OTg5IGJ5dGVzKQotICAgICAgICAgIAorCiAqKiogICBjcGlvIC0tc3BhcnNlIChzY29yZTog MzQpCiAgICAgICAgICAgQXV0aG9yOiBDZXphcnkgU2xpd2EgPHNsaXdhQGNmdC5lZHUucGw+ CiAgICAgICAgICAgRGF0ZTogTW9uLCAyNiBNYXIgMjAwMSAxMDo0MzozNCArMDIwMCAoQ0VT VCkKQEAgLTYwLDcgKzYwLDcgQEAgaW50byB0d28gcGFydHMsIHRoZSBtZXNzYWdlcyBhcmUg aW4gc29tZWhvdyBhcmJpdHJhcnkgb3JkZXIuCiAgICAgICAgICAgYXJjaGl2ZWQsIGl0IGFu ZCBhbGwgZmlsZXMgZm9sbG93aW5nIGl0IGluIHRoZSBhcmNoaXZlIGFyZQogICAgICAgICAg IGNvcnJ1cHRlZC4gVGhlIGNyYyBkbwogICAgICAgICAgIC9hcmNoaXZlL2h0bWwvYnVnLWdu dS11dGlscy8yMDAxLTAyL21zZzAwMDYyLmh0bWwgKDQsMjk3IGJ5dGVzKQotICAgICAgICAg IAorCiAqKiogICBjcGlvIHBhc3MtdGhyb3VnaCBjYW4gY29ycnVwdCBmaWxlcyAoc2NvcmU6 IDM2KQogICAgICAgICAgIEF1dGhvcjogIlBhcnJvdHQsIEplZmYiIDxKZWZmLlBhcnJvdHRA c2VhLnNpZW1lbnMuY29tPgogICAgICAgICAgIERhdGU6IE1vbiwgMTYgT2N0IDIwMDAgMTM6 MzI6NTcgLTA0MDAKQEAgLTY5LDcgKzY5LDcgQEAgaW50byB0d28gcGFydHMsIHRoZSBtZXNz YWdlcyBhcmUgaW4gc29tZWhvdyBhcmJpdHJhcnkgb3JkZXIuCiAgICAgICAgICAgYWN0aXZl L2luLXVzZSAoYW5kIGdyb3dpbmcpIGZpbGVzIGFyZSBiZWluZyBjb3BpZWQuIFRoZSBwcm9i bGVtCiAgICAgICAgICAgaXMgdGhhdCB0aGUgZmlsZSBzaXplIGhhcwogICAgICAgICAgIC9h cmNoaXZlL2h0bWwvYnVnLWdudS11dGlscy8yMDAwLTEwL21zZzAwMDg3Lmh0bWwgKDQsOTc0 IGJ5dGVzKQotICAgICAgICAgIAorCiAqKiAgICBjcGlvIDIuNC4yIHVuY29uZGl0aW9uYWxs eSB0YWtlcyB0aGUgdGFwZSBkcml2ZSBvZmZsaW5lIChzY29yZToKICAgICAgICAgICAzOSkK ICAgICAgICAgICBBdXRob3I6IFNjb3R0IExhcnNvbiA8c2Nvd2xAcGxhemEuZHMuYWRwLmNv bT4KQEAgLTc5LDcgKzc5LDcgQEAgaW50byB0d28gcGFydHMsIHRoZSBtZXNzYWdlcyBhcmUg aW4gc29tZWhvdyBhcmJpdHJhcnkgb3JkZXIuCiAgICAgICAgICAgc3VwcG9ydCB0aGlzIHNp bmNlIGl0IHRha2VzIHRoZSB0YXBlIG9mZmxpbmUgKGkuZS4gZWplY3RzIHRoZQogICAgICAg ICAgIHRhcGUpIGFmdGVyIHJlYQogICAgICAgICAgIC9hcmNoaXZlL2h0bWwvYnVnLWdudS11 dGlscy8yMDAxLTAxL21zZzAwMDg3Lmh0bWwgKDQsMjY0IGJ5dGVzKQotICAgICAgICAgIAor CiAqKiAgICBjcGlvIC10IGNhbiBzZWUgaW50ZXJuYXRpb25hbCBmaWxlbmFtZXMsIGZpbmQg LWxzIGFsc28gc3VmZmVycwogICAgICAgICAgIChzY29yZTogMzUpCiAgICAgICAgICAgQXV0 aG9yOiAiRGFuIEphY29ic29uIiA8amlkYW5uaUBraW1vLkZpWGNvbVRIaVMudHc+CkBAIC04 OSw3ICs4OSw3IEBAIGludG8gdHdvIHBhcnRzLCB0aGUgbWVzc2FnZXMgYXJlIGluIHNvbWVo b3cgYXJiaXRyYXJ5IG9yZGVyLgogICAgICAgICAgIGhhcHBlbnMgd2l0aCBmaW5kIC4gLXBy aW50IHZzLiBmaW5kIC4gLWxzIC0tCiAgICAgICAgICAgaHR0cDovL3d3dy5nZW9jaXRpZXMu Y29tL2ppZGFubmkKICAgICAgICAgICAvYXJjaGl2ZS9odG1sL2J1Zy1nbnUtdXRpbHMvMjAw MC0xMi9tc2cwMDE0My5odG1sICg0LDA4NCBieXRlcykKLSAgICAgICAgICAKKwogKiBTdWdn ZXN0aW9ucwogLS0tLS0tLS0tLS0tLQogCkBAIC0xMDEsNyArMTAxLDcgQEAgaW50byB0d28g cGFydHMsIHRoZSBtZXNzYWdlcyBhcmUgaW4gc29tZWhvdyBhcmJpdHJhcnkgb3JkZXIuCiAg ICAgICAgICAgaXMgc3RhcnRlZCBhdXRvbWF0aWNhbGx5IGluIHRoZSBtaWRkbGUgb2YgdGhl IG5pZ2h0LiBUbyBjaGFzZQogICAgICAgICAgIGF3YXkgYWxsIHVzZXJzIHdlIGQKICAgICAg ICAgICAvYXJjaGl2ZS9odG1sL2J1Zy1nbnUtdXRpbHMvMjAwMS0xMi9tc2cwMDI0NC5odG1s ICg3LDQ3NCBieXRlcykKLSAgICAgICAgICAKKwogKiogY3BpbyBzdWdnZXN0aW9uICsgcGF0 Y2ggKHNjb3JlOiAzOCkKICAgICAgICAgICBBdXRob3I6IFRheWxvciBHYXV0aWVyIDx0Z2F1 dGllckBzOC5jb20+CiAgICAgICAgICAgRGF0ZTogRnJpLCAyMCBBcHIgMjAwMSAwOTo0MDow NSAtMDcwMApAQCAtMTExLDcgKzExMSw3IEBAIGludG8gdHdvIHBhcnRzLCB0aGUgbWVzc2Fn ZXMgYXJlIGluIHNvbWVob3cgYXJiaXRyYXJ5IG9yZGVyLgogICAgICAgICAgIGdhdXJhbnRl ZSBhdG9taWNpdHkKICAgICAgICAgICAvYXJjaGl2ZS9odG1sL2J1Zy1nbnUtdXRpbHMvMjAw MS0wNC9tc2cwMDE2OS5odG1sICgxMCw2NzQKICAgICAgICAgICBieXRlcykKLSAgICAgICAg ICAKKwogKiogW2NwaW9dIG1hbiBwYWdlIGVuaGFuY2VtZW50OiBhIEV4YW1wbGUgc2VjdGlv biA/IChzY29yZTogNSkKICAgICAgICAgICBBdXRob3I6IFlhbm5pY2sgUGF0b2lzIDxwYXRv aXNAY2Fsdml4Lm9yZz4KICAgICAgICAgICBEYXRlOiBXZWQsIDI0IE9jdCAyMDAxIDEyOjQ4 OjMzICswMjAwIChDRVNUKQpAQCAtMTI5LDQgKzEyOSwzIEBAIGludG8gdHdvIHBhcnRzLCB0 aGUgbWVzc2FnZXMgYXJlIGluIHNvbWVob3cgYXJiaXRyYXJ5IG9yZGVyLgogICAgICAgICAg IHRocm91Z2ggYSB0YXBlIG9yIHNpbXBseSBmb3IgZGVidWdpbmcuIFRoZSBwYXRjaCBhbG9u ZyB3aXRoIGEKICAgICAgICAgICBEZWJpYW4gcGFja2FnCiAgICAgICAgICAgL2FyY2hpdmUv aHRtbC9idWctZ251LXV0aWxzLzIwMDEtMTAvbXNnMDAwODMuaHRtbCAoNCw1NDggYnl0ZXMp Ci0gICAgICAgICAgCmRpZmYgLS1naXQgYS9hbS9heF9jb21waWxlX2NoZWNrX3JldHR5cGUu bTQgYi9hbS9heF9jb21waWxlX2NoZWNrX3JldHR5cGUubTQKaW5kZXggMGUyMmI2OS4uMTc3 MWQzNiAxMDA2NDQKLS0tIGEvYW0vYXhfY29tcGlsZV9jaGVja19yZXR0eXBlLm00CisrKyBi L2FtL2F4X2NvbXBpbGVfY2hlY2tfcmV0dHlwZS5tNApAQCAtNjgsNyArNjgsNyBAQCBjaGFu Z2VxdW90ZShbLCBdKWRubAogQUNfTVNHX0NIRUNLSU5HKHJldHVybiB0eXBlIG9mICQxKCkp CiBBQ19DQUNIRV9WQUwoQUNfQ1ZfTkFNRSwKIFtmb3IgYWNfdHlwZSBpbiBjaGFyIHNob3J0 IGludCBsb25nICJsb25nIGxvbmciICQ0Ci0gZG8gCisgZG8KICAgQUNfQ09NUElMRV9JRkVM U0UoW0FDX0xBTkdfUFJPR1JBTShbWwogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogJDMKZGlm ZiAtLWdpdCBhL2FtL3BhY2subTQgYi9hbS9wYWNrLm00CmluZGV4IGMwM2M5NDguLjZhODM0 MzggMTAwNjQ0Ci0tLSBhL2FtL3BhY2subTQKKysrIGIvYW0vcGFjay5tNApAQCAtMzEsNyAr MzEsNyBAQCBBQ19ERUZVTihbQ1BJT19QQUNLRURfU1RSVUNUU10sWwogICAgIEFDX0NBQ0hF X1ZBTChjcGlvX2N2X2hhdmVfcHJhZ21hX3BhY2ssWwogICAgICAgQUNfVFJZX1JVTihDUElP X0ZMVVNITEVGVChbCiAgICAgICAgICAgICAgICAgIGludCBtYWluKGludCBhcmdjLCBjaGFy ICoqYXJndikgewotICAgICAgICAgICAgICAgICAjcHJhZ21hIHBhY2soMSkgICAgICAgICAg ICAgICAKKyAgICAgICAgICAgICAgICAgI3ByYWdtYSBwYWNrKDEpCiAgICAgICAgICAgICAg ICAgICAgIHN0cnVjdCB7IGNoYXIgYzsgbG9uZyBsOyB9IHM7CiAgICAgICAgICAgICAgICAg ICAgIHJldHVybiBzaXplb2Yocyk9PXNpemVvZihzLmMpK3NpemVvZihzLmwpID8gMDoxOyB9 IF0pLAogICAgICAgICAgICAgICAgICBbaGF2ZV9wcmFnbWFfcGFjaz15ZXNdLApkaWZmIC0t Z2l0IGEvZG9jL01ha2VmaWxlLmFtIGIvZG9jL01ha2VmaWxlLmFtCmluZGV4IDcxOGU2ODQu LjZmYjVkMWYgMTAwNjQ0Ci0tLSBhL2RvYy9NYWtlZmlsZS5hbQorKysgYi9kb2MvTWFrZWZp bGUuYW0KQEAgLTMyLDcgKzMyLDcgQEAgRVhUUkFfRElTVCA9IGdlbmRvY3Muc2ggZ2VuZG9j c190ZW1wbGF0ZSBtdC4xIHJtdC44CiBHRU5ET0NTPSQoc3JjZGlyKS9nZW5kb2NzLnNoCiBU RVhJMkRWST10ZXhpMmR2aSAtRQogCi0jIE1ha2Ugc3VyZSB5b3Ugc2V0IFRFWElOUFVUIAor IyBNYWtlIHN1cmUgeW91IHNldCBURVhJTlBVVAogbWFudWFsOgogCXJtIC1yZiBtYW51YWwK IAlURVhJTlBVVFM9JChzcmNkaXIpOiQodG9wX3NyY2Rpcikvc2NyaXB0czokJFRFWElOUFVU UyBcCmRpZmYgLS1naXQgYS9kb2MvY3Bpby4xIGIvZG9jL2NwaW8uMQppbmRleCBlZGEzYTBm Li5iM2Q3N2VmIDEwMDY0NAotLS0gYS9kb2MvY3Bpby4xCisrKyBiL2RvYy9jcGlvLjEKQEAg LTEzLDcgKzEzLDcgQEAKIC5cIgogLlwiIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNv cHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiAuXCIgYWxvbmcgd2l0aCBH TlUgY3Bpby4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4K LS5USCBDUElPIDEgIlNlcHRlbWJlciAxOCwgMjAyMCIgIkNQSU8iICJHTlUgQ1BJTyIKKy5U SCBDUElPIDEgIkphbnVhcnkgMjgsIDIwMjIiICJDUElPIiAiR05VIENQSU8iCiAuU0ggTkFN RQogY3BpbyBcLSBjb3B5IGZpbGVzIHRvIGFuZCBmcm9tIGFyY2hpdmVzCiAuU0ggU1lOT1BT SVMKQEAgLTEwOCw3ICsxMDgsNyBAQCBzdXBwbGllZCB3aXRoIHRoZSBcZkJcLVwtZmlsZVxm UiBvcHRpb24pIGFuZCBleHRyYWN0IGZpbGVzIGZyb20gaXQsIG9yCiAoaWYgdGhlIFxmQlwt dFxmUiBvcHRpb24gaXMgZ2l2ZW4pIGxpc3QgaXRzIGNvbnRlbnRzIHRvIHRoZSBzdGFuZGFy ZAogb3V0cHV0LiAgSWYgb25lIG9yIG1vcmUgXGZJcGF0dGVyblxmUnMgYXJlIHN1cHBsaWVk LCByZWFkIG9yIGxpc3Qgb25seQogZmlsZXMgbWF0Y2hpbmcgdGhlc2UgcGF0dGVybnMuICBU aGUgXGZCXC10XGZSIG9wdGlvbiBhbG9uZSBpbXBsaWVzCi1cZkJcLWlcZlIuIAorXGZCXC1p XGZSLgogLlRQCiAuQlIgXC1wICIsICIgXC1cLXBhc3NcLXRocm91Z2gKIFBhc3MtdGhyb3Vn aC4gIFJlYWQgYSBsaXN0IG9mIGZpbGUgbmFtZXMgZnJvbSB0aGUgc3RhbmRhcmQgaW5wdXQg YW5kCkBAIC0yMjksNyArMjI5LDcgQEAgUHJpbnQgXGZJU1RSSU5HXGZSIHdoZW4gdGhlIGVu ZCBvZiBhIHZvbHVtZSBvZiB0aGUgYmFja3VwIG1lZGlhIGlzIHJlYWNoZWQuCiAuVFAKIC5C UiBcLWIgIiwgIiBcLVwtc3dhcAogU3dhcCBib3RoIGhhbGZ3b3JkcyBvZiB3b3JkcyBhbmQg Ynl0ZXMgb2YgaGFsZndvcmRzIGluIHRoZSBkYXRhLgotRXF1aXZhbGVudCB0byBcZkJcLXNT XGZSLiAKK0VxdWl2YWxlbnQgdG8gXGZCXC1zU1xmUi4KIC5UUAogLkJSIFwtZiAiLCAiIFwt XC1ub25tYXRjaGluZwogT25seSBjb3B5IGZpbGVzIHRoYXQgZG8gbm90IG1hdGNoIGFueSBv ZiB0aGUgZ2l2ZW4gcGF0dGVybnMuCkBAIC0zMDAsNyArMzAwLDcgQEAgbmV3bGluZXMuCiAu VFAKIC5CUiBcLWEgIiwgIiBcLVwtcmVzZXRcLWFjY2Vzc1wtdGltZQogUmVzZXQgdGhlIGFj Y2VzcyB0aW1lcyBvZiBmaWxlcyBhZnRlciByZWFkaW5nIHRoZW0uCi0uVFAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgCisuVFAKIFxmQlwtSVxmUiBbW1xmSVVTRVJcZkJAXGZSXVxm SUhPU1RcZkI6XGZSXVxmSUFSQ0hJVkUtTkFNRVxmUgogVXNlIFxmSUFSQ0hJVkUtTkFNRVxm UiBpbnN0ZWFkIG9mIHN0YW5kYXJkIGlucHV0LiBPcHRpb25hbCBcZklVU0VSXGZSIGFuZAog XGZJSE9TVFxmUiBzcGVjaWZ5IHRoZSB1c2VyIGFuZCBob3N0IG5hbWVzIGluIGNhc2Ugb2Yg YSByZW1vdGUKQEAgLTM1Myw0ICszNTMsMyBAQCBUaGVyZSBpcyBOTyBXQVJSQU5UWSwgdG8g dGhlIGV4dGVudCBwZXJtaXR0ZWQgYnkgbGF3LgogLlwiIHRpbWUtc3RhbXAtZW5kOiAiXCIi CiAuXCIgdGltZS1zdGFtcC1saW5lLWxpbWl0OiAyMAogLlwiIGVuZDoKLQpkaWZmIC0tZ2l0 IGEvZG9jL2NwaW8udGV4aSBiL2RvYy9jcGlvLnRleGkKaW5kZXggODI5M2VmNy4uYTM1Nzcw ZSAxMDA2NDQKLS0tIGEvZG9jL2NwaW8udGV4aQorKysgYi9kb2MvY3Bpby50ZXhpCkBAIC02 MSw3ICs2MSw3IEBAIGRvY3VtZW50YXRpb24gYW5kIGlzIGNvbnNpc3RlbnQgd2l0aCBAdmFs dWV7VkVSU0lPTn0uCiBAZW5kIGlmbm90dGV4CiAKIEBtZW51Ci0qIEludHJvZHVjdGlvbjo6 ICAgICAgICAgICAgICAgIAorKiBJbnRyb2R1Y3Rpb246OgogKiBUdXRvcmlhbDo6ICAgICAg ICAgICAgICAgICAgICBHZXR0aW5nIHN0YXJ0ZWQuCiAqIEludm9raW5nIGNwaW86OiAgICAg ICAgICAgICAgIEhvdyB0byBpbnZva2UgQGNvbW1hbmR7Y3Bpb30uCiAqIE1lZGlhOjogICAg ICAgICAgICAgICAgICAgICAgIFVzaW5nIHRhcGVzIGFuZCBvdGhlciBhcmNoaXZlIG1lZGlh LgpAQCAtNzMsMTAgKzczLDEwIEBAIGRvY3VtZW50YXRpb24gYW5kIGlzIGNvbnNpc3RlbnQg d2l0aCBAdmFsdWV7VkVSU0lPTn0uCiAKIEludm9raW5nIGNwaW8KIAotKiBDb3B5LW91dCBt b2RlOjogICAgICAgICAgICAgICAKLSogQ29weS1pbiBtb2RlOjogICAgICAgICAgICAgICAg Ci0qIENvcHktcGFzcyBtb2RlOjogICAgICAgICAgICAgIAotKiBPcHRpb25zOjogICAgICAg ICAgICAgICAgICAgICAKKyogQ29weS1vdXQgbW9kZTo6CisqIENvcHktaW4gbW9kZTo6Cisq IENvcHktcGFzcyBtb2RlOjoKKyogT3B0aW9uczo6CiAKIEBlbmQgZGV0YWlsbWVudQogQGVu ZCBtZW51CkBAIC0yMjAsMTAgKzIyMCwxMCBAQCB0aGUgZGlyZWN0b3J5IEBmaWxle25ldy1k aXJ9LgogQGNpbmRleCBjb21tYW5kIGxpbmUgb3B0aW9ucwogCiBAbWVudQotKiBDb3B5LW91 dCBtb2RlOjogICAgICAgICAgICAgICAKLSogQ29weS1pbiBtb2RlOjogICAgICAgICAgICAg ICAgCi0qIENvcHktcGFzcyBtb2RlOjogICAgICAgICAgICAgIAotKiBPcHRpb25zOjogICAg ICAgICAgICAgICAgICAgICAKKyogQ29weS1vdXQgbW9kZTo6CisqIENvcHktaW4gbW9kZTo6 CisqIENvcHktcGFzcyBtb2RlOjoKKyogT3B0aW9uczo6CiBAZW5kIG1lbnUKIAogQG5vZGUg Q29weS1vdXQgbW9kZQpAQCAtNjk4LDcgKzY5OCw3IEBAIHRvIGF1dG9tYXRpY2FsbHkgZGV0 ZWN0IHRoZSBhcmNoaXZlIGZvcm1hdCwgYW5kIGluIGNvcHktb3V0IG1vZGUgaXMKIEBzYW1w e2Jpbn0uCiAKIEB0YWJsZSBAc2FtcAotQGl0ZW0gYmluICAKK0BpdGVtIGJpbgogVGhlIG9i c29sZXRlIGJpbmFyeSBmb3JtYXQuICgyMTQ3NDgzNjQ3IGJ5dGVzKQogCiBAaXRlbSBvZGMK QEAgLTc2OCw3ICs3NjgsNyBAQCBjdXJyZW50IHZvbHVtZSBudW1iZXIgKHN0YXJ0aW5nIGF0 IDEpLgogCiBAaXRlbSAtbgogQGl0ZW14IC0tbnVtZXJpYy11aWQtZ2lkCi1bQHJlZntjb3B5 LWlufV0gCitbQHJlZntjb3B5LWlufV0KIEAqU2hvdyBudW1lcmljIFVJRCBhbmQgR0lEIGlu c3RlYWQgb2YgdHJhbnNsYXRpbmcgdGhlbSBpbnRvIG5hbWVzIHdoZW4KIHVzaW5nIHRoZSBA b3B0aW9uey0tdmVyYm9zZX0gb3B0aW9uLgogCkBAIC04MjQsNyArODI0LDcgQEAgUnVuIGlu IGNvcHktcGFzcyBtb2RlLgogQCpJbiBjb3B5LWluIGFuZCBjb3B5LXBhc3MgbW9kZSwgc2V0 IHRoZSBvd25lcnNoaXAgb2YgYWxsIGZpbGVzIGNyZWF0ZWQKIHRvIHRoZSBzcGVjaWZpZWQg QHZhcntvd25lcn0gKHRoaXMgb3BlcmF0aW9uIGlzIGFsbG93ZWQgb25seSBmb3IgdGhlCiBz dXBlci11c2VyKS4gSW4gY29weS1vdXQgbW9kZSwgc3RvcmUgdGhlIHN1cHBsaWVkIG93bmVy IGluZm9ybWF0aW9uIGluCi10aGUgYXJjaGl2ZS4gCit0aGUgYXJjaGl2ZS4KIAogVGhlIGFy Z3VtZW50IGNhbiBiZSBlaXRoZXIgdGhlIHVzZXIgbmFtZSBvciB0aGUgdXNlciBuYW1lCiBh bmQgZ3JvdXAgbmFtZSwgc2VwYXJhdGVkIGJ5IGEgZG90IG9yIGEgY29sb24sIG9yIHRoZSBn cm91cCBuYW1lLApAQCAtODU5LDcgKzg1OSw3IEBAIGNwaW8gLS1vd25lciA6KzAKIEBub2lu ZGVudAogSWYgdGhlIGdyb3VwIGlzIG9taXR0ZWQgYnV0IHRoZSBAc2FtcHs6fSBvciBAc2Ft cHsufSBzZXBhcmF0b3IgaXMKIGdpdmVuLCBhcyBpbiB0aGUgc2Vjb25kIGV4YW1wbGUuIHRo ZSBnaXZlbiB1c2VyJ3MgbG9naW4gZ3JvdXAgd2lsbCBiZQotdXNlZC4gIAordXNlZC4KIAog QGl0ZW0gLS1yc2gtY29tbWFuZD1AdmFye2NvbW1hbmR9CiBbQHJlZntjb3B5LWlufSxAcmVm e2NvcHktb3V0fSxAcmVme2NvcHktcGFzc31dCkBAIC05NjgsNyArOTY4LDcgQEAgaW5mb3Jt YXRpb24gd2hlbiByZXBvcnRpbmcgYSBidWcuIFRoZSBpbmZvcm1hdGlvbiBuZWVkZWQgaXM6 CiBAaXRlbSBWZXJzaW9uIG9mIHRoZSBwYWNrYWdlIHlvdSBhcmUgdXNpbmcuCiBAaXRlbSBD b21waWxhdGlvbiBvcHRpb25zIHVzZWQgd2hlbiBjb25maWd1cmluZyB0aGUgcGFja2FnZS4K IEBpdGVtIENvbmRpdGlvbnMgdW5kZXIgd2hpY2ggdGhlIGJ1ZyBhcHBlYXJzLgotQGVuZCBp dGVtaXplIAorQGVuZCBpdGVtaXplCiAKIFNlbmQgeW91ciByZXBvcnQgdG8gQGVtYWlse2J1 Zy1jcGlvQEBnbnUub3JnfS4gIFRoaXMgaXMgYSBwdWJsaWMgbWFpbGluZwogbGlzdDsgYWxs IGNvcnJlc3BvbmRlbmNlIHNlbnQgdG8gaXQgaXMgYXJjaGl2ZWQgYW5kIGlzIGF2YWlsYWJs ZSBhdApkaWZmIC0tZ2l0IGEvZG9jL210LjEgYi9kb2MvbXQuMQppbmRleCBmNDRjNzZlLi5h ODM3MDA1IDEwMDY0NAotLS0gYS9kb2MvbXQuMQorKysgYi9kb2MvbXQuMQpAQCAtMTMsNyAr MTMsNyBAQAogLlwiCiAuXCIgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIC5cIiBhbG9uZyB3aXRoIEdOVSBjcGlv LiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgotLlRIIE1U IDEgIkphbnVhcnkgMjgsIDIwMTQiICJNVCIgIkdOVSBDUElPIgorLlRIIE1UIDEgIkphbnVh cnkgMjgsIDIwMjIiICJNVCIgIkdOVSBDUElPIgogLlNIIE5BTUUKIG10IFwtIGNvbnRyb2wg bWFnbmV0aWMgdGFwZSBkcml2ZSBvcGVyYXRpb24KIC5TSCBTWU5PUFNJUwpAQCAtNTcsNzAg KzU3LDcwIEBAIGFmdGVyIHRoZSBvcGVyYXRpb24gbmFtZSBhbmQgZGVmYXVsdHMgdG8gMS4K IFdyaXRlCiAuSSBjb3VudAogRU9GIG1hcmtzIGF0IGN1cnJlbnQgcG9zaXRpb24uCi0uVFAg CisuVFAKIC5CIGZzZgogRm9yd2FyZCBzcGFjZQogLkkgY291bnQKIGZpbGVzLgogVGhlIHRh cGUgaXMgcG9zaXRpb25lZCBvbiB0aGUgZmlyc3QgYmxvY2sgb2YgdGhlIG5leHQgZmlsZS4K LS5UUCAKKy5UUAogLkIgYnNmCiBCYWNrd2FyZCBzcGFjZQogLkkgY291bnQKIGZpbGVzLgog VGhlIHRhcGUgaXMgcG9zaXRpb25lZCBvbiB0aGUgZmlyc3QgYmxvY2sgb2YgdGhlIG5leHQg ZmlsZS4KLS5UUCAKKy5UUAogLkIgZnNyCiBGb3J3YXJkIHNwYWNlCiAuSSBjb3VudAogcmVj b3Jkcy4KLS5UUCAKKy5UUAogLkIgYnNyCiBCYWNrd2FyZCBzcGFjZQogLkkgY291bnQKIHJl Y29yZHMuCi0uVFAgCisuVFAKIC5CIGJzZm0KIEJhY2t3YXJkIHNwYWNlCiAuSSBjb3VudAog ZmlsZSBtYXJrcy4KIFRoZSB0YXBlIGlzIHBvc2l0aW9uZWQgb24gdGhlIGJlZ2lubmluZy1v Zi10aGUtdGFwZSBzaWRlIG9mCiB0aGUgZmlsZSBtYXJrLgotLlRQIAorLlRQCiAuQiBmc2Zt CiBGb3J3YXJkIHNwYWNlCiAuSSBjb3VudAogZmlsZSBtYXJrcy4KIFRoZSB0YXBlIGlzIHBv c2l0aW9uZWQgb24gdGhlIGJlZ2lubmluZy1vZi10aGUtdGFwZSBzaWRlIG9mCiB0aGUgZmls ZSBtYXJrLgotLlRQIAorLlRQCiAuQiBhc2YKIEFic29sdXRlIHNwYWNlIHRvIGZpbGUgbnVt YmVyCiAuSVIgY291bnQgLgogRXF1aXZhbGVudCB0byByZXdpbmQgZm9sbG93ZWQgYnkgZnNm CiAuSVIgY291bnQgLgotLlRQIAorLlRQCiAuQiBzZWVrCiBTZWVrIHRvIGJsb2NrIG51bWJl cgogLklSIGNvdW50IC4KLS5UUCAKKy5UUAogLkIgZW9tCiBTcGFjZSB0byB0aGUgZW5kIG9m IHRoZSByZWNvcmRlZCBtZWRpYSBvbiB0aGUgdGFwZQogKGZvciBhcHBlbmRpbmcgZmlsZXMg b250byB0YXBlcykuCi0uVFAgCisuVFAKIC5CIHJld2luZAogUmV3aW5kIHRoZSB0YXBlLgot LlRQIAorLlRQCiAuQlIgb2ZmbGluZSAiLCAiIHJld29mZmwKIFJld2luZCB0aGUgdGFwZSBh bmQsIGlmIGFwcGxpY2FibGUsIHVubG9hZCB0aGUgdGFwZS4KLS5UUCAKKy5UUAogLkIgc3Rh dHVzCiBQcmludCBzdGF0dXMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHRhcGUgdW5pdC4KLS5U UCAKKy5UUAogLkIgcmV0ZW5zaW9uCiBSZXdpbmQgdGhlIHRhcGUsIHRoZW4gd2luZCBpdCB0 byB0aGUgZW5kIG9mIHRoZSByZWVsLAogdGhlbiByZXdpbmQgaXQgYWdhaW4uCi0uVFAgCisu VFAKIC5CIGVyYXNlCiBFcmFzZSB0aGUgdGFwZS4KIC5QUApAQCAtMTcyLDQgKzE3MiwzIEBA IFRoZXJlIGlzIE5PIFdBUlJBTlRZLCB0byB0aGUgZXh0ZW50IHBlcm1pdHRlZCBieSBsYXcu CiAuXCIgdGltZS1zdGFtcC1lbmQ6ICJcIiIKIC5cIiB0aW1lLXN0YW1wLWxpbmUtbGltaXQ6 IDIwCiAuXCIgZW5kOgotCmRpZmYgLS1naXQgYS9saWIvTWFrZWZpbGUuYW0gYi9saWIvTWFr ZWZpbGUuYW0KaW5kZXggMzFiOGZhZi4uMjhhNTQ5MCAxMDA2NDQKLS0tIGEvbGliL01ha2Vm aWxlLmFtCisrKyBiL2xpYi9NYWtlZmlsZS5hbQpAQCAtMjYsNyArMjYsNyBAQCBybXQtY29t bWFuZC5oIDogTWFrZWZpbGUKIAkkKEFNX1ZfYXQpbXYgJEAtdCAkQAogQlVJTFRfU09VUkNF UyA9IHJtdC1jb21tYW5kLmgKIENMRUFORklMRVMgPSBybXQtY29tbWFuZC5oIHJtdC1jb21t YW5kLmgtdAotQU1fQ1BQRkxBR1MgPSAtSSQodG9wX3NyY2RpcikvZ251IC1JLi4vIC1JLi4v Z251IAorQU1fQ1BQRkxBR1MgPSAtSSQodG9wX3NyY2RpcikvZ251IC1JLi4vIC1JLi4vZ251 CiAKIG5vaW5zdF9IRUFERVJTID0gc3lzdGVtLmggc3lzdGVtLWlvY3RsLmggcm10LmggcGF4 bGliLmgKIGxpYnBheF9hX1NPVVJDRVMgPSBcCmRpZmYgLS1naXQgYS9wby9QT1RGSUxFUy5p biBiL3BvL1BPVEZJTEVTLmluCmluZGV4IDU0YWU1NjguLjg1MDk4MjYgMTAwNjQ0Ci0tLSBh L3BvL1BPVEZJTEVTLmluCisrKyBiL3BvL1BPVEZJTEVTLmluCkBAIC00Niw1ICs0NiwzIEBA IHNyYy91c2Vyc3BlYy5jCiBzcmMvdXRpbC5jCiAKIHRlc3RzL2dlbmZpbGUuYwotCi0KZGlm ZiAtLWdpdCBhL3NyYy9NYWtlZmlsZS5hbSBiL3NyYy9NYWtlZmlsZS5hbQppbmRleCA0YTJi ZDFlLi4zMGViYThiIDEwMDY0NAotLS0gYS9zcmMvTWFrZWZpbGUuYW0KKysrIGIvc3JjL01h a2VmaWxlLmFtCkBAIC01NCw0ICs1NCwzIEBAIG5vaW5zdF9IRUFERVJTID1cCiAgc2FmZS1z dGF0LmgKIAogTERBREQ9Li4vbGliL2xpYnBheC5hIC4uL2dudS9saWJnbnUuYSBASU5UTExJ QlNACi0KZGlmZiAtLWdpdCBhL3NyYy9jb3B5aW4uYyBiL3NyYy9jb3B5aW4uYwppbmRleCA3 YWQ3OTdhLi5mYjMwY2Y2IDEwMDY0NAotLS0gYS9zcmMvY29weWluLmMKKysrIGIvc3JjL2Nv cHlpbi5jCkBAIC0xMDksNyArMTA5LDcgQEAgc3RhdGljIGNoYXIgKgogZ2V0X2xpbmtfbmFt ZSAoc3RydWN0IGNwaW9fZmlsZV9zdGF0ICpmaWxlX2hkciwgaW50IGluX2ZpbGVfZGVzKQog ewogICBjaGFyICpsaW5rX25hbWU7Ci0gIAorCiAgIGlmIChmaWxlX2hkci0+Y19maWxlc2l6 ZSA8IDAgfHwgZmlsZV9oZHItPmNfZmlsZXNpemUgPiBTSVpFX01BWC0xKQogICAgIHsKICAg ICAgIGVycm9yICgwLCAwLCBfKCIlczogc3RvcmVkIGZpbGVuYW1lIGxlbmd0aCBpcyBvdXQg b2YgcmFuZ2UiKSwKQEAgLTIwNCw3ICsyMDQsNyBAQCB0cnlfZXhpc3RpbmdfZmlsZSAoc3Ry dWN0IGNwaW9fZmlsZV9zdGF0KiBmaWxlX2hkciwgaW50IGluX2ZpbGVfZGVzLAogCSAgdGFw ZV9za2lwX3BhZGRpbmcgKGluX2ZpbGVfZGVzLCBmaWxlX2hkci0+Y19maWxlc2l6ZSk7CiAJ ICByZXR1cm4gLTE7CS8qIEdvIHRvIHRoZSBuZXh0IGZpbGUuICAqLwogCX0KLSAgICAgIGVs c2UgaWYgKFNfSVNESVIgKGZpbGVfc3RhdC5zdF9tb2RlKSAKKyAgICAgIGVsc2UgaWYgKFNf SVNESVIgKGZpbGVfc3RhdC5zdF9tb2RlKQogCQk/IHJtZGlyIChmaWxlX2hkci0+Y19uYW1l KQogCQk6IHVubGluayAoZmlsZV9oZHItPmNfbmFtZSkpCiAJewpAQCAtMjE4LDEwICsyMTgs MTAgQEAgdHJ5X2V4aXN0aW5nX2ZpbGUgKHN0cnVjdCBjcGlvX2ZpbGVfc3RhdCogZmlsZV9o ZHIsIGludCBpbl9maWxlX2RlcywKICAgcmV0dXJuIDA7CiB9CiAMCi0vKiBUaGUgbmV3YyBh bmQgY3JjIGZvcm1hdHMgc3RvcmUgbXVsdGlwbHkgbGlua2VkIGNvcGllcyBvZiB0aGUgc2Ft ZSBmaWxlIAotICAgaW4gdGhlIGFyY2hpdmUgb25seSBvbmNlLiAgVGhlIGFjdHVhbCBkYXRh IGlzIGF0dGFjaGVkIHRvIHRoZSBsYXN0IGxpbmsgCi0gICBpbiB0aGUgYXJjaGl2ZSwgYW5k IHRoZSBvdGhlciBsaW5rcyBhbGwgaGF2ZSBhIGZpbGVzaXplIG9mIDAuICBXaGVuIGEgCi0g ICBmaWxlIGluIHRoZSBhcmNoaXZlIGhhcyBtdWx0aXBsZSBsaW5rcyBhbmQgYSBmaWxlc2l6 ZSBvZiAwLCBpdHMgZGF0YSBpcyAKKy8qIFRoZSBuZXdjIGFuZCBjcmMgZm9ybWF0cyBzdG9y ZSBtdWx0aXBseSBsaW5rZWQgY29waWVzIG9mIHRoZSBzYW1lIGZpbGUKKyAgIGluIHRoZSBh cmNoaXZlIG9ubHkgb25jZS4gIFRoZSBhY3R1YWwgZGF0YSBpcyBhdHRhY2hlZCB0byB0aGUg bGFzdCBsaW5rCisgICBpbiB0aGUgYXJjaGl2ZSwgYW5kIHRoZSBvdGhlciBsaW5rcyBhbGwg aGF2ZSBhIGZpbGVzaXplIG9mIDAuICBXaGVuIGEKKyAgIGZpbGUgaW4gdGhlIGFyY2hpdmUg aGFzIG11bHRpcGxlIGxpbmtzIGFuZCBhIGZpbGVzaXplIG9mIDAsIGl0cyBkYXRhIGlzCiAg ICBwcm9iYWJseSAiYXR0YXRjaGVkIiB0byBhbm90aGVyIGZpbGUgaW4gdGhlIGFyY2hpdmUs IHNvIHdlIGNhbid0IGNyZWF0ZQogICAgaXQgcmlnaHQgYXdheS4gIFdlIGhhdmUgdG8gImRl ZmVyIiBjcmVhdGluZyBpdCB1bnRpbCB3ZSBoYXZlIGNyZWF0ZWQKICAgIHRoZSBmaWxlIHRo YXQgaGFzIHRoZSBkYXRhICJhdHRhdGNoZWQiIHRvIGl0LiAgV2Uga2VlcCBhIGxpc3Qgb2Yg dGhlCkBAIC0zNTcsNyArMzU3LDcgQEAgY3JlYXRlX2ZpbmFsX2RlZmVycyAoKQogICAgICAg LyogRGViaWFuIGhhY2s6ICBUaGlzIHdhcyByZXBvcnRlZCBieSBIb3JzdCBLbm9ibG9jaC4g VGhpcyBidWcgaGFzCiAgICAgICAgICBiZWVuIHJlcG9ydGVkIHRvICJidWctZ251LXV0aWxz QHByZXAuYWkubWl0LmVkdSIuICg5OS8xLzYpIC1CRU0KICAgICAgICAgICovCi0gICAgICBs aW5rX3JlcyA9IGxpbmtfdG9fbWFqX21pbl9pbm8gKGQtPmhlYWRlci5jX25hbWUsIAorICAg ICAgbGlua19yZXMgPSBsaW5rX3RvX21hal9taW5faW5vIChkLT5oZWFkZXIuY19uYW1lLAog CQkgICAgZC0+aGVhZGVyLmNfZGV2X21haiwgZC0+aGVhZGVyLmNfZGV2X21pbiwKIAkJICAg IGQtPmhlYWRlci5jX2lubyk7CiAgICAgICBpZiAobGlua19yZXMgPT0gMCkKQEAgLTQyOSw3 ICs0MjksNyBAQCBjb3B5aW5fcmVndWxhcl9maWxlIChzdHJ1Y3QgY3Bpb19maWxlX3N0YXQq IGZpbGVfaGRyLCBpbnQgaW5fZmlsZV9kZXMpCiAJICAgICB0aGUgYXJjaGl2ZSB3YXMgY3Jl YXRlZCBhbmQgbGF0ZXIgYXBwZW5lZGVkIHRvKS4gKi8KIAkgIC8qIERlYmlhbiBoYWNrOiAo OTcvMS8yKSBUaGlzIHdhcyByZXBvcnRlZCBieSBSb25hbGQKIAkgICAgIEYuIEd1aWxtZXR0 ZSB0byB0aGUgdXBzdHJlYW0gbWFpbnRhaW5lcnMuIC1CRU0gKi8KLQkgIGxpbmtfcmVzID0g bGlua190b19tYWpfbWluX2lubyAoZmlsZV9oZHItPmNfbmFtZSwgCisJICBsaW5rX3JlcyA9 IGxpbmtfdG9fbWFqX21pbl9pbm8gKGZpbGVfaGRyLT5jX25hbWUsCiAJCSAgICBmaWxlX2hk ci0+Y19kZXZfbWFqLCBmaWxlX2hkci0+Y19kZXZfbWluLAogCQkJCQkgIGZpbGVfaGRyLT5j X2lubyk7CiAJICBpZiAobGlua19yZXMgPT0gMCkKQEAgLTQ0Niw3ICs0NDYsNyBAQCBjb3B5 aW5fcmVndWxhcl9maWxlIChzdHJ1Y3QgY3Bpb19maWxlX3N0YXQqIGZpbGVfaGRyLCBpbnQg aW5fZmlsZV9kZXMpCiAJICBpbnQgbGlua19yZXM7CiAJICAvKiBEZWJpYW4gaGFjazogKDk3 LzEvMikgVGhpcyB3YXMgcmVwb3J0ZWQgYnkgUm9uYWxkCiAJICAgICBGLiBHdWlsbWV0dGUg dG8gdGhlIHVwc3RyZWFtIG1haW50YWluZXJzLiAtQkVNICovCi0JICBsaW5rX3JlcyA9IGxp bmtfdG9fbWFqX21pbl9pbm8gKGZpbGVfaGRyLT5jX25hbWUsIAorCSAgbGlua19yZXMgPSBs aW5rX3RvX21hal9taW5faW5vIChmaWxlX2hkci0+Y19uYW1lLAogCQkJCQkgIGZpbGVfaGRy LT5jX2Rldl9tYWosCiAJCQkJCSAgZmlsZV9oZHItPmNfZGV2X21pbiwKIAkJCQkJICBmaWxl X2hkci0+Y19pbm8pOwpAQCAtNDcwLDExICs0NzAsMTEgQEAgY29weWluX3JlZ3VsYXJfZmls ZSAoc3RydWN0IGNwaW9fZmlsZV9zdGF0KiBmaWxlX2hkciwgaW50IGluX2ZpbGVfZGVzKQog CSAgICB9CiAJICByZXR1cm47CiAJfQotICAgIAorCiAgICAgICAvKiBJZiBub3QgbGlua2Vk LCBjb3B5IHRoZSBjb250ZW50cyBvZiB0aGUgZmlsZS4gICovCiAgICAgICBvdXRfZmlsZV9k ZXMgPSBvcGVuIChmaWxlX2hkci0+Y19uYW1lLAogCQkJICAgT19DUkVBVCB8IE9fV1JPTkxZ IHwgT19CSU5BUlksIDA2MDApOwotICAKKwogICAgICAgaWYgKG91dF9maWxlX2RlcyA8IDAg JiYgY3JlYXRlX2Rpcl9mbGFnKQogCXsKIAkgIGNyZWF0ZV9hbGxfZGlyZWN0b3JpZXMgKGZp bGVfaGRyLT5jX25hbWUpOwpAQCAtNDgyLDcgKzQ4Miw3IEBAIGNvcHlpbl9yZWd1bGFyX2Zp bGUgKHN0cnVjdCBjcGlvX2ZpbGVfc3RhdCogZmlsZV9oZHIsIGludCBpbl9maWxlX2RlcykK IAkJCSAgICAgICBPX0NSRUFUIHwgT19XUk9OTFkgfCBPX0JJTkFSWSwKIAkJCSAgICAgICAw NjAwKTsKIAl9Ci0gICAgICAKKwogICAgICAgaWYgKG91dF9maWxlX2RlcyA8IDApCiAJewog CSAgb3Blbl9lcnJvciAoZmlsZV9oZHItPmNfbmFtZSk7CkBAIC00OTEsNyArNDkxLDcgQEAg Y29weWluX3JlZ3VsYXJfZmlsZSAoc3RydWN0IGNwaW9fZmlsZV9zdGF0KiBmaWxlX2hkciwg aW50IGluX2ZpbGVfZGVzKQogCSAgcmV0dXJuOwogCX0KICAgICB9Ci0gIAorCiAgIGNyYyA9 IDA7CiAgIGlmIChzd2FwX2hhbGZ3b3Jkc19mbGFnKQogICAgIHsKQEAgLTUxMSw3ICs1MTEs NyBAQCBjb3B5aW5fcmVndWxhcl9maWxlIChzdHJ1Y3QgY3Bpb19maWxlX3N0YXQqIGZpbGVf aGRyLCBpbnQgaW5fZmlsZV9kZXMpCiAgICAgfQogICBjb3B5X2ZpbGVzX3RhcGVfdG9fZGlz ayAoaW5fZmlsZV9kZXMsIG91dF9maWxlX2RlcywgZmlsZV9oZHItPmNfZmlsZXNpemUpOwog ICBkaXNrX2VtcHR5X291dHB1dF9idWZmZXIgKG91dF9maWxlX2RlcywgdHJ1ZSk7Ci0gIAor CiAgIGlmICh0b19zdGRvdXRfb3B0aW9uKQogICAgIHsKICAgICAgIGlmIChhcmNoaXZlX2Zv cm1hdCA9PSBhcmZfY3JjYXNjaWkpCkBAIC01MjMsNyArNTIzLDcgQEAgY29weWluX3JlZ3Vs YXJfZmlsZSAoc3RydWN0IGNwaW9fZmlsZV9zdGF0KiBmaWxlX2hkciwgaW50IGluX2ZpbGVf ZGVzKQogICAgICAgdGFwZV9za2lwX3BhZGRpbmcgKGluX2ZpbGVfZGVzLCBmaWxlX2hkci0+ Y19maWxlc2l6ZSk7CiAgICAgICByZXR1cm47CiAgICAgfQotICAgICAgCisKICAgc2V0X3Bl cm1zIChvdXRfZmlsZV9kZXMsIGZpbGVfaGRyKTsKIAogICBpZiAoY2xvc2UgKG91dF9maWxl X2RlcykgPCAwKQpAQCAtNTQwLDggKzU0MCw4IEBAIGNvcHlpbl9yZWd1bGFyX2ZpbGUgKHN0 cnVjdCBjcGlvX2ZpbGVfc3RhdCogZmlsZV9oZHIsIGludCBpbl9maWxlX2RlcykKICAgaWYg KGZpbGVfaGRyLT5jX25saW5rID4gMQogICAgICAgJiYgKGFyY2hpdmVfZm9ybWF0ID09IGFy Zl9uZXdhc2NpaSB8fCBhcmNoaXZlX2Zvcm1hdCA9PSBhcmZfY3JjYXNjaWkpICkKICAgICB7 Ci0gICAgICAvKiAoc2VlIGNvbW1lbnQgYWJvdmUgZm9yIGhvdyB0aGUgbmV3YyBhbmQgY3Jj IGZvcm1hdHMgCi0JIHN0b3JlIG11bHRpcGxlIGxpbmtzKS4gIE5vdyB0aGF0IHdlIGhhdmUg dGhlIGRhdGEgCisgICAgICAvKiAoc2VlIGNvbW1lbnQgYWJvdmUgZm9yIGhvdyB0aGUgbmV3 YyBhbmQgY3JjIGZvcm1hdHMKKwkgc3RvcmUgbXVsdGlwbGUgbGlua3MpLiAgTm93IHRoYXQg d2UgaGF2ZSB0aGUgZGF0YQogCSBmb3IgdGhpcyBmaWxlLCBjcmVhdGUgYW55IG90aGVyIGxp bmtzIHRvIGl0IHdoaWNoCiAJIHdlIGRlZmVyZWQuICAqLwogICAgICAgY3JlYXRlX2RlZmVy ZWRfbGlua3MgKGZpbGVfaGRyKTsKQEAgLTU2Myw3ICs1NjMsNyBAQCBjb3B5aW5fZGV2aWNl IChzdHJ1Y3QgY3Bpb19maWxlX3N0YXQqIGZpbGVfaGRyKQogICAgICAgLyogRGViaWFuIGhh Y2s6ICBUaGlzIHdhcyByZXBvcnRlZCBieSBIb3JzdAogCSBLbm9ibG9jaC4gVGhpcyBidWcg aGFzIGJlZW4gcmVwb3J0ZWQgdG8KIAkgImJ1Zy1nbnUtdXRpbHNAcHJlcC5haS5taXQuZWR1 Ii4gKDk5LzEvNikgLUJFTSAqLwotICAgICAgbGlua19yZXMgPSBsaW5rX3RvX21hal9taW5f aW5vIChmaWxlX2hkci0+Y19uYW1lLCAKKyAgICAgIGxpbmtfcmVzID0gbGlua190b19tYWpf bWluX2lubyAoZmlsZV9oZHItPmNfbmFtZSwKIAkJICAgIGZpbGVfaGRyLT5jX2Rldl9tYWos IGZpbGVfaGRyLT5jX2Rldl9taW4sCiAJCSAgICBmaWxlX2hkci0+Y19pbm8pOwogICAgICAg aWYgKGxpbmtfcmVzID09IDApCkBAIC01NzIsNyArNTcyLDcgQEAgY29weWluX2RldmljZSAo c3RydWN0IGNwaW9fZmlsZV9zdGF0KiBmaWxlX2hkcikKIAl9CiAgICAgfQogICBlbHNlIGlm IChhcmNoaXZlX2Zvcm1hdCA9PSBhcmZfdXN0YXIgJiYKLQkgICBmaWxlX2hkci0+Y190YXJf bGlua25hbWUgJiYgCisJICAgZmlsZV9oZHItPmNfdGFyX2xpbmtuYW1lICYmCiAJICAgZmls ZV9oZHItPmNfdGFyX2xpbmtuYW1lIFswXSAhPSAnXDAnKQogICAgIHsKICAgICAgIGludAls aW5rX3JlczsKQEAgLTU5MSw3ICs1OTEsNyBAQCBjb3B5aW5fZGV2aWNlIChzdHJ1Y3QgY3Bp b19maWxlX3N0YXQqIGZpbGVfaGRyKQogCX0KICAgICAgIHJldHVybjsKICAgICB9Ci0gIAor CiAgIHJlcyA9IG1rbm9kIChmaWxlX2hkci0+Y19uYW1lLCBmaWxlX2hkci0+Y19tb2RlLAog CSAgICBtYWtlZGV2IChmaWxlX2hkci0+Y19yZGV2X21haiwgZmlsZV9oZHItPmNfcmRldl9t aW4pKTsKICAgaWYgKHJlcyA8IDAgJiYgY3JlYXRlX2Rpcl9mbGFnKQpAQCAtNjQ3LDcgKzY0 Nyw3IEBAIGNvcHlpbl9saW5rIChzdHJ1Y3QgY3Bpb19maWxlX3N0YXQgKmZpbGVfaGRyLCBp bnQgaW5fZmlsZV9kZXMpCiAgICAgfQogCiAgIGNwaW9fc2FmZXJfbmFtZV9zdWZmaXggKGxp bmtfbmFtZSwgdHJ1ZSwgIW5vX2Fic19wYXRoc19mbGFnLCBmYWxzZSk7Ci0gIAorCiAgIHJl cyA9IFVNQVNLRURfU1lNTElOSyAobGlua19uYW1lLCBmaWxlX2hkci0+Y19uYW1lLAogCQkJ IGZpbGVfaGRyLT5jX21vZGUpOwogICBpZiAocmVzIDwgMCAmJiBjcmVhdGVfZGlyX2ZsYWcp CkBAIC04MTAsNyArODEwLDcgQEAgcmVhZF9wYXR0ZXJuX2ZpbGUgKHZvaWQpCiAgICAgfQog CiAgIGRzX2ZyZWUgKCZwYXR0ZXJuX25hbWUpOwotICAKKwogICBpZiAoZmVycm9yIChwYXR0 ZXJuX2ZwKSB8fCBmY2xvc2UgKHBhdHRlcm5fZnApID09IEVPRikKICAgICBjbG9zZV9lcnJv ciAocGF0dGVybl9maWxlX25hbWUpOwogCkBAIC04NDIsMTQgKzg0MiwxNCBAQCBmcm9tX2Fz Y2lpIChjaGFyIGNvbnN0ICp3aGVyZSwgc2l6ZV90IGRpZ3MsIHVuc2lnbmVkIGxvZ2Jhc2Up CiAgIHdoaWxlICgxKQogICAgIHsKICAgICAgIHVuc2lnbmVkIGQ7Ci0gICAgICAKKwogICAg ICAgY2hhciAqcCA9IHN0cmNociAoY29kZXRhYiwgdG91cHBlciAoKmJ1ZikpOwogICAgICAg aWYgKCFwKQogCXsKIAkgIGVycm9yICgwLCAwLCBfKCJNYWxmb3JtZWQgbnVtYmVyICUuKnMi KSwgKGludCkgZGlncywgd2hlcmUpOwogCSAgYnJlYWs7CiAJfQotICAgICAgCisKICAgICAg IGQgPSBwIC0gY29kZXRhYjsKICAgICAgIGlmICgoZCA+PiBsb2diYXNlKSA+IDEpCiAJewpA QCAtMTIyNCwxMyArMTIyNCwxMyBAQCBwcm9jZXNzX2NvcHlfaW4gKHZvaWQpCiAKICAgbmV3 ZGlyX3VtYXNrID0gdW1hc2sgKDApOyAgICAgLyogUmVzZXQgdW1hc2sgdG8gcHJlc2VydmUg bW9kZXMgb2YKIAkJCQkgICBjcmVhdGVkIGZpbGVzICAqLwotICAKKwogICAvKiBJbml0aWFs aXplIHRoZSBjb3B5IGluLiAgKi8KICAgaWYgKHBhdHRlcm5fZmlsZV9uYW1lKQogICAgIHsK ICAgICAgIHJlYWRfcGF0dGVybl9maWxlICgpOwogICAgIH0KLSAgCisKICAgaWYgKHJlbmFt ZV9iYXRjaF9maWxlKQogICAgIHsKICAgICAgIHJlbmFtZV9pbiA9IGZvcGVuIChyZW5hbWVf YmF0Y2hfZmlsZSwgInIiKTsKQEAgLTEyODEsNyArMTI4MSw3IEBAIHByb2Nlc3NfY29weV9p biAodm9pZCkKICAgb3V0cHV0X2lzX3NlZWthYmxlID0gdHJ1ZTsKIAogICBjaGFuZ2VfZGly ICgpOwotICAKKwogICAvKiBXaGlsZSB0aGVyZSBpcyBtb3JlIGlucHV0IGluIHRoZSBjb2xs ZWN0aW9uLCBwcm9jZXNzIHRoZSBpbnB1dC4gICovCiAgIHdoaWxlICgxKQogICAgIHsKQEAg LTEyOTUsMTggKzEyOTUsMTggQEAgcHJvY2Vzc19jb3B5X2luICh2b2lkKQogCXsKIAkgIHN0 cnVjdCBjcGlvX2ZpbGVfc3RhdCAqaDsKIAkgIGggPSAmZmlsZV9oZHI7Ci0JICBmcHJpbnRm IChzdGRlcnIsIAorCSAgZnByaW50ZiAoc3RkZXJyLAogCQkibWFnaWMgPSAwJW8sIGlubyA9 ICVsZCwgbW9kZSA9IDAlbywgdWlkID0gJWQsIGdpZCA9ICVkXG4iLAogCQloLT5jX21hZ2lj LCAobG9uZyloLT5jX2lubywgaC0+Y19tb2RlLCBoLT5jX3VpZCwgaC0+Y19naWQpOwotCSAg ZnByaW50ZiAoc3RkZXJyLCAKKwkgIGZwcmludGYgKHN0ZGVyciwKIAkJIm5saW5rID0gJWQs IG10aW1lID0gJWQsIGZpbGVzaXplID0gJWQsIGRldl9tYWogPSAweCV4XG4iLAogCQloLT5j X25saW5rLCBoLT5jX210aW1lLCBoLT5jX2ZpbGVzaXplLCBoLT5jX2Rldl9tYWopOwotCSAg ZnByaW50ZiAoc3RkZXJyLCAKKwkgIGZwcmludGYgKHN0ZGVyciwKIAkgICAgICAgICJkZXZf bWluID0gMHgleCwgcmRldl9tYWogPSAweCV4LCByZGV2X21pbiA9IDB4JXgsIG5hbWVzaXpl ID0gJWRcbiIsCiAJCWgtPmNfZGV2X21pbiwgaC0+Y19yZGV2X21haiwgaC0+Y19yZGV2X21p biwgaC0+Y19uYW1lc2l6ZSk7Ci0JICBmcHJpbnRmIChzdGRlcnIsIAorCSAgZnByaW50ZiAo c3RkZXJyLAogCQkiY2hrc3VtID0gJWQsIG5hbWUgPSBcIiVzXCIsIHRhcl9saW5rbmFtZSA9 IFwiJXNcIlxuIiwKLQkJaC0+Y19jaGtzdW0sIGgtPmNfbmFtZSwgCisJCWgtPmNfY2hrc3Vt LCBoLT5jX25hbWUsCiAJCWgtPmNfdGFyX2xpbmtuYW1lID8gaC0+Y190YXJfbGlua25hbWUg OiAiKG51bGwpIiApOwogCiAJfQpAQCAtMTMyMSw3ICsxMzIxLDcgQEAgcHJvY2Vzc19jb3B5 X2luICh2b2lkKQogCiAJICBjcGlvX3NhZmVyX25hbWVfc3VmZml4IChmaWxlX2hkci5jX25h bWUsIGZhbHNlLCAhbm9fYWJzX3BhdGhzX2ZsYWcsCiAJCQkJICBmYWxzZSk7Ci0gICAgICAK KwogCSAgLyogRG9lcyB0aGUgZmlsZSBuYW1lIG1hdGNoIG9uZSBvZiB0aGUgZ2l2ZW4gcGF0 dGVybnM/ICAqLwogCSAgaWYgKG51bV9wYXR0ZXJucyA8PSAwKQogCSAgICBza2lwX2ZpbGUg PSBmYWxzZTsKQEAgLTEzMzYsNyArMTMzNiw3IEBAIHByb2Nlc3NfY29weV9pbiAodm9pZCkK IAkJfQogCSAgICB9CiAJfQotICAgICAgCisKICAgICAgIGlmIChza2lwX2ZpbGUpCiAJewog CSAgLyogSWYgd2UncmUgc2tpcHBpbmcgYSBmaWxlIHdpdGggbGlua3MsIHRoZXJlIG1pZ2h0 IGJlIG90aGVyCkBAIC0xNDI5LDcgKzE0MjksNyBAQCBwcm9jZXNzX2NvcHlfaW4gKHZvaWQp CiAgIGFwcGx5X2RlbGF5ZWRfc2V0X3N0YXQgKCk7CiAKICAgY3Bpb19maWxlX3N0YXRfZnJl ZSAoJmZpbGVfaGRyKTsKLSAgCisKICAgaWYgKGFwcGVuZF9mbGFnKQogICAgIHJldHVybjsK IApAQCAtMTQ0Nyw0ICsxNDQ3LDMgQEAgcHJvY2Vzc19jb3B5X2luICh2b2lkKQogCSAgICAg ICAodW5zaWduZWQgbG9uZykgYmxvY2tzKTsKICAgICB9CiB9Ci0KZGlmZiAtLWdpdCBhL3Ny Yy9jb3B5b3V0LmMgYi9zcmMvY29weW91dC5jCmluZGV4IGE0OWFkNGIuLjdhODdjODMgMTAw NjQ0Ci0tLSBhL3NyYy9jb3B5b3V0LmMKKysrIGIvc3JjL2NvcHlvdXQuYwpAQCAtNjgsNyAr NjgsNyBAQCByZWFkX2Zvcl9jaGVja3N1bSAoaW50IGluX2ZpbGVfZGVzLCBpbnQgZmlsZV9z aXplLCBjaGFyICpmaWxlX25hbWUpCiBzdGF0aWMgdm9pZAogdGFwZV9jbGVhcl9yZXN0X29m X2Jsb2NrIChpbnQgb3V0X2ZpbGVfZGVzKQogewotICB3cml0ZV9udWxzX3RvX2ZpbGUgKGlv X2Jsb2NrX3NpemUgLSBvdXRwdXRfc2l6ZSwgb3V0X2ZpbGVfZGVzLCAKKyAgd3JpdGVfbnVs c190b19maWxlIChpb19ibG9ja19zaXplIC0gb3V0cHV0X3NpemUsIG91dF9maWxlX2RlcywK ICAgICAgICAgICAgICAgICAgICAgICB0YXBlX2J1ZmZlcmVkX3dyaXRlKTsKIH0KIApAQCAt MjM4LDcgKzIzOCw3IEBAIHdyaXRlb3V0X2RlZmVyZWRfZmlsZSAoc3RydWN0IGNwaW9fZmls ZV9zdGF0ICpoZWFkZXIsIGludCBvdXRfZmlsZV9kZXMpCiAvKiBXaGVuIHdyaXRpbmcgbmV3 YyBhbmQgY3JjIGZvcm1hdCBhcmNoaXZlcyB3ZSBkZWZlciBtdWx0aXBseSBsaW5rZWQKICAg IGZpbGVzIHVudGlsIHdlIGhhdmUgc2VlbiBhbGwgb2YgdGhlIGxpbmtzIHRvIHRoZSBmaWxl LiAgSWYgYSBmaWxlCiAgICBoYXMgbGlua3MgdG8gaXQgdGhhdCBhcmVuJ3QgZ29pbmcgaW50 byB0aGUgYXJjaGl2ZSwgdGhlbiB3ZSB3aWxsCi0gICBuZXZlciBzZWUgdGhlICJsYXN0IiBs aW5rIHRvIHRoZSBmaWxlLCBzbyBhdCB0aGUgZW5kIHdlIGp1c3Qgd3JpdGUgCisgICBuZXZl ciBzZWUgdGhlICJsYXN0IiBsaW5rIHRvIHRoZSBmaWxlLCBzbyBhdCB0aGUgZW5kIHdlIGp1 c3Qgd3JpdGUKICAgIGFsbCBvZiB0aGUgbGVmdG92ZXIgZGVmZXJlZCBmaWxlcyBpbnRvIHRo ZSBhcmNoaXZlLiAgKi8KIAogc3RhdGljIHZvaWQKQEAgLTMxMSw3ICszMTEsNyBAQCB0b19h c2NpaV9vcl93YXJuIChjaGFyICp3aGVyZSwgdWludG1heF90IG4sIHNpemVfdCBkaWdpdHMs CiB7CiAgIGlmICh0b19hc2NpaSAod2hlcmUsIG4sIGRpZ2l0cywgbG9nYmFzZSwgZmFsc2Up KQogICAgIGZpZWxkX3dpZHRoX3dhcm5pbmcgKGZpbGVuYW1lLCBmaWVsZG5hbWUpOwotfSAg ICAKK30KIAogaW50CiB0b19hc2NpaV9vcl9lcnJvciAoY2hhciAqd2hlcmUsIHVpbnRtYXhf dCBuLCBzaXplX3QgZGlnaXRzLApAQCAtMzI0LDcgKzMyNCw3IEBAIHRvX2FzY2lpX29yX2Vy cm9yIChjaGFyICp3aGVyZSwgdWludG1heF90IG4sIHNpemVfdCBkaWdpdHMsCiAgICAgICBy ZXR1cm4gMTsKICAgICB9CiAgIHJldHVybiAwOwotfSAgICAKK30KIAogDAogaW50CkBAIC0z ODUsNyArMzg1LDcgQEAgd3JpdGVfb3V0X25ld19hc2NpaV9oZWFkZXIgKGNvbnN0IGNoYXIg Km1hZ2ljX3N0cmluZywKICAgdGFwZV9idWZmZXJlZF93cml0ZSAoZmlsZV9oZHItPmNfbmFt ZSwgb3V0X2RlcywgKGxvbmcpIGZpbGVfaGRyLT5jX25hbWVzaXplKTsKICAgdGFwZV9wYWRf b3V0cHV0IChvdXRfZGVzLCBmaWxlX2hkci0+Y19uYW1lc2l6ZSArIHNpemVvZiBhc2NpaV9o ZWFkZXIpOwogICByZXR1cm4gMDsKLX0gIAorfQogCiBpbnQKIHdyaXRlX291dF9vbGRfYXNj aWlfaGVhZGVyIChkZXZfdCBkZXYsIGRldl90IHJkZXYsCkBAIC0zOTMsNyArMzkzLDcgQEAg d3JpdGVfb3V0X29sZF9hc2NpaV9oZWFkZXIgKGRldl90IGRldiwgZGV2X3QgcmRldiwKIHsK ICAgY2hhciBhc2NpaV9oZWFkZXJbNzZdOwogICBjaGFyICpwID0gYXNjaWlfaGVhZGVyOwot ICAKKwogICB0b19hc2NpaSAocCwgZmlsZV9oZHItPmNfbWFnaWMsIDYsIExHXzgsIGZhbHNl KTsKICAgcCArPSA2OwogICB0b19hc2NpaV9vcl93YXJuIChwLCBkZXYsIDYsIExHXzgsIGZp bGVfaGRyLT5jX25hbWUsIF8oImRldmljZSBudW1iZXIiKSk7CkBAIC00NzQsMjMgKzQ3NCwy MyBAQCB3cml0ZV9vdXRfYmluYXJ5X2hlYWRlciAoZGV2X3QgcmRldiwKICAgc2hvcnRfaGRy LmNfaW5vID0gZmlsZV9oZHItPmNfaW5vICYgMHhGRkZGOwogICBpZiAoc2hvcnRfaGRyLmNf aW5vICE9IGZpbGVfaGRyLT5jX2lubykKICAgICBmaWVsZF93aWR0aF93YXJuaW5nIChmaWxl X2hkci0+Y19uYW1lLCBfKCJpbm9kZSBudW1iZXIiKSk7Ci0gIAorCiAgIHNob3J0X2hkci5j X21vZGUgPSBmaWxlX2hkci0+Y19tb2RlICYgMHhGRkZGOwogICBpZiAoc2hvcnRfaGRyLmNf bW9kZSAhPSBmaWxlX2hkci0+Y19tb2RlKQogICAgIGZpZWxkX3dpZHRoX3dhcm5pbmcgKGZp bGVfaGRyLT5jX25hbWUsIF8oImZpbGUgbW9kZSIpKTsKLSAgCisKICAgc2hvcnRfaGRyLmNf dWlkID0gZmlsZV9oZHItPmNfdWlkICYgMHhGRkZGOwogICBpZiAoc2hvcnRfaGRyLmNfdWlk ICE9IGZpbGVfaGRyLT5jX3VpZCkKICAgICBmaWVsZF93aWR0aF93YXJuaW5nIChmaWxlX2hk ci0+Y19uYW1lLCBfKCJ1aWQiKSk7Ci0gIAorCiAgIHNob3J0X2hkci5jX2dpZCA9IGZpbGVf aGRyLT5jX2dpZCAmIDB4RkZGRjsKICAgaWYgKHNob3J0X2hkci5jX2dpZCAhPSBmaWxlX2hk ci0+Y19naWQpCiAgICAgZmllbGRfd2lkdGhfd2FybmluZyAoZmlsZV9oZHItPmNfbmFtZSwg XygiZ2lkIikpOwotICAKKwogICBzaG9ydF9oZHIuY19ubGluayA9IGZpbGVfaGRyLT5jX25s aW5rICYgMHhGRkZGOwogICBpZiAoc2hvcnRfaGRyLmNfbmxpbmsgIT0gZmlsZV9oZHItPmNf bmxpbmspCiAgICAgZmllbGRfd2lkdGhfd2FybmluZyAoZmlsZV9oZHItPmNfbmFtZSwgXygi bnVtYmVyIG9mIGxpbmtzIikpOwotCQkgICAgICAKKwogICBzaG9ydF9oZHIuY19yZGV2ID0g cmRldjsKICAgc2hvcnRfaGRyLmNfbXRpbWVzWzBdID0gZmlsZV9oZHItPmNfbXRpbWUgPj4g MTY7CiAgIHNob3J0X2hkci5jX210aW1lc1sxXSA9IGZpbGVfaGRyLT5jX210aW1lICYgMHhG RkZGOwpAQCAtNTA0LDcgKzUwNCw3IEBAIHdyaXRlX291dF9iaW5hcnlfaGVhZGVyIChkZXZf dCByZGV2LAogCSAgICAgU1RSSU5HSUZZX0JJR0lOVCAoZmlsZV9oZHItPmNfbmFtZXNpemUs IG1heGJ1ZiksIDB4RkZGRnUpOwogICAgICAgcmV0dXJuIDE7CiAgICAgfQotCQkgICAgICAK KwogICBzaG9ydF9oZHIuY19maWxlc2l6ZXNbMF0gPSBmaWxlX2hkci0+Y19maWxlc2l6ZSA+ PiAxNjsKICAgc2hvcnRfaGRyLmNfZmlsZXNpemVzWzFdID0gZmlsZV9oZHItPmNfZmlsZXNp emUgJiAweEZGRkY7CiAKQEAgLTUxNyw3ICs1MTcsNyBAQCB3cml0ZV9vdXRfYmluYXJ5X2hl YWRlciAoZGV2X3QgcmRldiwKIAkgICAgIFNUUklOR0lGWV9CSUdJTlQgKGZpbGVfaGRyLT5j X25hbWVzaXplLCBtYXhidWYpLCAweEZGRkZGRkZGbHUpOwogICAgICAgcmV0dXJuIDE7CiAg ICAgfQotCQkgICAgICAKKwogICAvKiBPdXRwdXQgdGhlIGZpbGUgaGVhZGVyLiAgKi8KICAg dGFwZV9idWZmZXJlZF93cml0ZSAoKGNoYXIgKikgJnNob3J0X2hkciwgb3V0X2RlcywgMjYp OwogCkBAIC01MzIsMzEgKzUzMiwzMSBAQCB3cml0ZV9vdXRfYmluYXJ5X2hlYWRlciAoZGV2 X3QgcmRldiwKIC8qIFdyaXRlIG91dCBoZWFkZXIgRklMRV9IRFIsIGluY2x1ZGluZyB0aGUg ZmlsZSBuYW1lLCB0byBmaWxlCiAgICBkZXNjcmlwdG9yIE9VVF9ERVMuICAqLwogCi1pbnQg CitpbnQKIHdyaXRlX291dF9oZWFkZXIgKHN0cnVjdCBjcGlvX2ZpbGVfc3RhdCAqZmlsZV9o ZHIsIGludCBvdXRfZGVzKQogewogICBkZXZfdCBkZXY7CiAgIGRldl90IHJkZXY7Ci0gIAor CiAgIHN3aXRjaCAoYXJjaGl2ZV9mb3JtYXQpCiAgICAgewogICAgIGNhc2UgYXJmX25ld2Fz Y2lpOgogICAgICAgcmV0dXJuIHdyaXRlX291dF9uZXdfYXNjaWlfaGVhZGVyICgiMDcwNzAx IiwgZmlsZV9oZHIsIG91dF9kZXMpOwotICAgICAgCisKICAgICBjYXNlIGFyZl9jcmNhc2Np aToKICAgICAgIHJldHVybiB3cml0ZV9vdXRfbmV3X2FzY2lpX2hlYWRlciAoIjA3MDcwMiIs IGZpbGVfaGRyLCBvdXRfZGVzKTsKLSAgICAgIAorCiAgICAgY2FzZSBhcmZfb2xkYXNjaWk6 CiAgICAgICByZXR1cm4gd3JpdGVfb3V0X29sZF9hc2NpaV9oZWFkZXIgKG1ha2VkZXYgKGZp bGVfaGRyLT5jX2Rldl9tYWosCiAJCQkJCQkgIGZpbGVfaGRyLT5jX2Rldl9taW4pLAogCQkJ CQkgbWFrZWRldiAoZmlsZV9oZHItPmNfcmRldl9tYWosCiAJCQkJCQkgIGZpbGVfaGRyLT5j X3JkZXZfbWluKSwKIAkJCQkJIGZpbGVfaGRyLCBvdXRfZGVzKTsKLSAgICAgIAorCiAgICAg Y2FzZSBhcmZfaHBvbGRhc2NpaToKICAgICAgIGhwX2NvbXB1dGVfZGV2IChmaWxlX2hkciwg JmRldiwgJnJkZXYpOwogICAgICAgcmV0dXJuIHdyaXRlX291dF9vbGRfYXNjaWlfaGVhZGVy IChkZXYsIHJkZXYsIGZpbGVfaGRyLCBvdXRfZGVzKTsKLSAgICAgIAorCiAgICAgY2FzZSBh cmZfdGFyOgogICAgIGNhc2UgYXJmX3VzdGFyOgogICAgICAgaWYgKGlzX3Rhcl9maWxlbmFt ZV90b29fbG9uZyAoZmlsZV9oZHItPmNfbmFtZSkpCkBAIC02MjgsNyArNjI4LDcgQEAgcHJv Y2Vzc19jb3B5X291dCAodm9pZCkKICAgICB9CiAKICAgY2hhbmdlX2RpciAoKTsKLSAgCisK ICAgaWYgKGFwcGVuZF9mbGFnKQogICAgIHsKICAgICAgIHByb2Nlc3NfY29weV9pbiAoKTsK QEAgLTY1Miw3ICs2NTIsNyBAQCBwcm9jZXNzX2NvcHlfb3V0ICh2b2lkKQogCXsKIAkgIC8q IFNldCB2YWx1ZXMgaW4gb3V0cHV0IGhlYWRlci4gICovCiAJICBzdGF0X3RvX2NwaW8gKCZm aWxlX2hkciwgJmZpbGVfc3RhdCk7Ci0JICAKKwogCSAgaWYgKGFyY2hpdmVfZm9ybWF0ID09 IGFyZl90YXIgfHwgYXJjaGl2ZV9mb3JtYXQgPT0gYXJmX3VzdGFyKQogCSAgICB7CiAJICAg ICAgaWYgKGZpbGVfaGRyLmNfbW9kZSAmIENQX0lGRElSKQpAQCAtNjYyLDcgKzY2Miw3IEBA IHByb2Nlc3NfY29weV9vdXQgKHZvaWQpCiAJCSAgICBkc19hcHBlbmQgKCZpbnB1dF9uYW1l LCAnLycpOwogCQl9CiAJICAgIH0KLQkgIAorCiAJICBhc3NpZ25fc3RyaW5nICgmb3JpZ19m aWxlX25hbWUsIGlucHV0X25hbWUuZHNfc3RyaW5nKTsKIAkgIGNwaW9fc2FmZXJfbmFtZV9z dWZmaXggKGlucHV0X25hbWUuZHNfc3RyaW5nLCBmYWxzZSwKIAkJCQkgICFub19hYnNfcGF0 aHNfZmxhZywgdHJ1ZSk7CkBAIC03NjAsNyArNzYwLDcgQEAgcHJvY2Vzc19jb3B5X291dCAo dm9pZCkKIAkJCQkJCSAgICBmaWxlX2hkci5jX2Rldl9tYWosCiAJCQkJCQkgICAgZmlsZV9o ZHIuY19kZXZfbWluKSkpCiAJCSAgICB7Ci0JCSAgICAgIC8qIFRoaXMgZmlsZSBpcyBsaW5r ZWQgdG8gYW5vdGhlciBmaWxlIGFscmVhZHkgaW4gdGhlIAorCQkgICAgICAvKiBUaGlzIGZp bGUgaXMgbGlua2VkIHRvIGFub3RoZXIgZmlsZSBhbHJlYWR5IGluIHRoZQogCQkgICAgICAg ICBhcmNoaXZlLCBzbyB3cml0ZSBpdCBvdXQgYXMgYSBoYXJkIGxpbmsuICovCiAJCSAgICAg IGZpbGVfaGRyLmNfbW9kZSA9IChmaWxlX3N0YXQuc3RfbW9kZSAmIDA3Nzc3KTsKIAkJICAg ICAgZmlsZV9oZHIuY19tb2RlIHw9IENQX0lGUkVHOwpAQCAtNzY5LDcgKzc2OSw3IEBAIHBy b2Nlc3NfY29weV9vdXQgKHZvaWQpCiAJCQljb250aW51ZTsKIAkJICAgICAgYnJlYWs7CiAJ CSAgICB9Ci0JCSAgYWRkX2lub2RlIChmaWxlX2hkci5jX2lubywgb3JpZ19maWxlX25hbWUs IAorCQkgIGFkZF9pbm9kZSAoZmlsZV9oZHIuY19pbm8sIG9yaWdfZmlsZV9uYW1lLAogCQkJ ICAgICBmaWxlX2hkci5jX2Rldl9tYWosIGZpbGVfaGRyLmNfZGV2X21pbik7CiAJCX0KIAkg ICAgICBmaWxlX2hkci5jX2ZpbGVzaXplID0gMDsKQEAgLTgyNiw3ICs4MjYsNyBAQCBwcm9j ZXNzX2NvcHlfb3V0ICh2b2lkKQogCSAgICBkZWZhdWx0OgogCSAgICAgIGVycm9yICgwLCAw LCBfKCIlczogdW5rbm93biBmaWxlIHR5cGUiKSwgb3JpZ19maWxlX25hbWUpOwogCSAgICB9 Ci0JICAKKwogCSAgaWYgKHZlcmJvc2VfZmxhZykKIAkgICAgZnByaW50ZiAoc3RkZXJyLCAi JXNcbiIsIG9yaWdfZmlsZV9uYW1lKTsKIAkgIGlmIChkb3RfZmxhZykKQEAgLTgzNSw3ICs4 MzUsNyBAQCBwcm9jZXNzX2NvcHlfb3V0ICh2b2lkKQogICAgIH0KIAogICBmcmVlIChvcmln X2ZpbGVfbmFtZSk7Ci0gIAorCiAgIHdyaXRlb3V0X2ZpbmFsX2RlZmVycyhvdXRfZmlsZV9k ZXMpOwogICAvKiBUaGUgY29sbGVjdGlvbiBpcyBjb21wbGV0ZTsgYXBwZW5kIHRoZSB0cmFp bGVyLiAgKi8KICAgZmlsZV9oZHIuY19pbm8gPSAwOwpAQCAtODcyLDUgKzg3MiwzIEBAIHBy b2Nlc3NfY29weV9vdXQgKHZvaWQpCiAgIGNwaW9fZmlsZV9zdGF0X2ZyZWUgKCZmaWxlX2hk cik7CiAgIGRzX2ZyZWUgKCZpbnB1dF9uYW1lKTsKIH0KLQotCmRpZmYgLS1naXQgYS9zcmMv Y29weXBhc3MuYyBiL3NyYy9jb3B5cGFzcy5jCmluZGV4IGQyNGI4NTcuLjg3ZjA0YjMgMTAw NjQ0Ci0tLSBhL3NyYy9jb3B5cGFzcy5jCisrKyBiL3NyYy9jb3B5cGFzcy5jCkBAIC02Nywx MiArNjcsMTIgQEAgcHJvY2Vzc19jb3B5X3Bhc3MgKHZvaWQpCiAJCQkJICAgY3JlYXRlZCBm aWxlcyAgKi8KIAogICAvKiBJbml0aWFsaXplIHRoZSBjb3B5IHBhc3MuICAqLwotICAKKwog ICBkaXJuYW1lX2xlbiA9IHN0cmxlbiAoZGlyZWN0b3J5X25hbWUpOwogICBpZiAoY2hhbmdl X2RpcmVjdG9yeV9vcHRpb24gJiYgIUlTU0xBU0ggKGRpcmVjdG9yeV9uYW1lWzBdKSkKICAg ICB7CiAgICAgICBjaGFyICpwd2QgPSB4Z2V0Y3dkICgpOwotICAgICAgCisKICAgICAgIGRz X2NvbmNhdCAoJm91dHB1dF9uYW1lLCBwd2QpOwogICAgICAgZHNfYXBwZW5kICgmb3V0cHV0 X25hbWUsICcvJyk7CiAgICAgfQpAQCAtODIsNyArODIsNyBAQCBwcm9jZXNzX2NvcHlfcGFz cyAodm9pZCkKICAgb3V0cHV0X2lzX3NlZWthYmxlID0gdHJ1ZTsKIAogICBjaGFuZ2VfZGly ICgpOwotICAKKwogICAvKiBDb3B5IGZpbGVzIHdpdGggbmFtZXMgcmVhZCBmcm9tIHN0ZGlu LiAgKi8KICAgd2hpbGUgKGRzX2ZnZXRzdHIgKHN0ZGluLCAmaW5wdXRfbmFtZSwgbmFtZV9l bmQpICE9IE5VTEwpCiAgICAgewpAQCAtMTUwLDEyICsxNTAsMTIgQEAgcHJvY2Vzc19jb3B5 X3Bhc3MgKHZvaWQpCiAJICAgIC8qIFVzZXIgc2FpZCB0byBsaW5rIGl0IGlmIHBvc3NpYmxl LiAgVHJ5IGFuZCBsaW5rIHRvCiAJICAgICAgIHRoZSBvcmlnaW5hbCBjb3B5LiAgSWYgdGhh dCBmYWlscyB3ZSdsbCBzdGlsbCB0cnkKIAkgICAgICAgYW5kIGxpbmsgdG8gYSBjb3B5IHdl J3ZlIGFscmVhZHkgbWFkZS4gICovCi0JICAgIGxpbmtfcmVzID0gbGlua190b19uYW1lIChv dXRwdXRfbmFtZS5kc19zdHJpbmcsIAorCSAgICBsaW5rX3JlcyA9IGxpbmtfdG9fbmFtZSAo b3V0cHV0X25hbWUuZHNfc3RyaW5nLAogCQkJCSAgICAgaW5wdXRfbmFtZS5kc19zdHJpbmcp OwogCSAgaWYgKCAobGlua19yZXMgPCAwKSAmJiAoaW5fZmlsZV9zdGF0LnN0X25saW5rID4g MSkgKQotCSAgICBsaW5rX3JlcyA9IGxpbmtfdG9fbWFqX21pbl9pbm8gKG91dHB1dF9uYW1l LmRzX3N0cmluZywgCi0JCQkJbWFqb3IgKGluX2ZpbGVfc3RhdC5zdF9kZXYpLCAKLQkJCQlt aW5vciAoaW5fZmlsZV9zdGF0LnN0X2RldiksIAorCSAgICBsaW5rX3JlcyA9IGxpbmtfdG9f bWFqX21pbl9pbm8gKG91dHB1dF9uYW1lLmRzX3N0cmluZywKKwkJCQltYWpvciAoaW5fZmls ZV9zdGF0LnN0X2RldiksCisJCQkJbWlub3IgKGluX2ZpbGVfc3RhdC5zdF9kZXYpLAogCQkJ CWluX2ZpbGVfc3RhdC5zdF9pbm8pOwogCiAJICAvKiBJZiB0aGUgZmlsZSB3YXMgbm90IGxp bmtlZCwgY29weSBjb250ZW50cyBvZiBmaWxlLiAgKi8KQEAgLTE4NSw3ICsxODUsNyBAQCBw cm9jZXNzX2NvcHlfcGFzcyAodm9pZCkKIAogCSAgICAgIGNvcHlfZmlsZXNfZGlza190b19k aXNrIChpbl9maWxlX2Rlcywgb3V0X2ZpbGVfZGVzLCBpbl9maWxlX3N0YXQuc3Rfc2l6ZSwg aW5wdXRfbmFtZS5kc19zdHJpbmcpOwogCSAgICAgIGRpc2tfZW1wdHlfb3V0cHV0X2J1ZmZl ciAob3V0X2ZpbGVfZGVzLCB0cnVlKTsKLQkgICAgICAKKwogCSAgICAgIHNldF9jb3B5cGFz c19wZXJtcyAob3V0X2ZpbGVfZGVzLAogCQkJCSAgb3V0cHV0X25hbWUuZHNfc3RyaW5nLCAm aW5fZmlsZV9zdGF0KTsKIApAQCAtMTk5LDcgKzE5OSw3IEBAIHByb2Nlc3NfY29weV9wYXNz ICh2b2lkKQogCQkJCSAgb3V0cHV0X25hbWUuZHNfc3RyaW5nLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGluX2ZpbGVfc3RhdC5zdF9hdGltZSwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBpbl9maWxlX3N0YXQuc3RfbXRpbWUpOwotCSAgICAg ICAgfSAKKwkgICAgICAgIH0KIAogCSAgICAgIGlmIChjbG9zZSAoaW5fZmlsZV9kZXMpIDwg MCkKIAkJY2xvc2VfZXJyb3IgKGlucHV0X25hbWUuZHNfc3RyaW5nKTsKQEAgLTIxNCw3ICsy MTQsNyBAQCBwcm9jZXNzX2NvcHlfcGFzcyAodm9pZCkKICAgICAgIGVsc2UgaWYgKFNfSVNE SVIgKGluX2ZpbGVfc3RhdC5zdF9tb2RlKSkKIAl7CiAJICBzdHJ1Y3QgY3Bpb19maWxlX3N0 YXQgZmlsZV9zdGF0OwotCSAgCisKIAkgIHN0YXRfdG9fY3BpbyAoJmZpbGVfc3RhdCwgJmlu X2ZpbGVfc3RhdCk7CiAJICBmaWxlX3N0YXQuY19uYW1lID0gb3V0cHV0X25hbWUuZHNfc3Ry aW5nOwogCSAgY3Bpb19jcmVhdGVfZGlyICgmZmlsZV9zdGF0LCBleGlzdGluZ19kaXIpOwpA QCAtMjMzLDEwICsyMzMsMTAgQEAgcHJvY2Vzc19jb3B5X3Bhc3MgKHZvaWQpCiAJICAgICBT ZXQgbGlua19uYW1lIHRvIHRoZSBvcmlnaW5hbCBmaWxlIG5hbWUuICAqLwogCSAgaWYgKGxp bmtfZmxhZykKIAkgICAgLyogVXNlciBzYWlkIHRvIGxpbmsgaXQgaWYgcG9zc2libGUuICAq LwotCSAgICBsaW5rX3JlcyA9IGxpbmtfdG9fbmFtZSAob3V0cHV0X25hbWUuZHNfc3RyaW5n LCAKKwkgICAgbGlua19yZXMgPSBsaW5rX3RvX25hbWUgKG91dHB1dF9uYW1lLmRzX3N0cmlu ZywKIAkJCQkgICAgIGlucHV0X25hbWUuZHNfc3RyaW5nKTsKIAkgIGlmICggKGxpbmtfcmVz IDwgMCkgJiYgKGluX2ZpbGVfc3RhdC5zdF9ubGluayA+IDEpICkKLQkgICAgbGlua19yZXMg PSBsaW5rX3RvX21hal9taW5faW5vIChvdXRwdXRfbmFtZS5kc19zdHJpbmcsIAorCSAgICBs aW5rX3JlcyA9IGxpbmtfdG9fbWFqX21pbl9pbm8gKG91dHB1dF9uYW1lLmRzX3N0cmluZywK IAkJCW1ham9yIChpbl9maWxlX3N0YXQuc3RfZGV2KSwKIAkJCW1pbm9yIChpbl9maWxlX3N0 YXQuc3RfZGV2KSwKIAkJCWluX2ZpbGVfc3RhdC5zdF9pbm8pOwpAQCAtMzE5LDcgKzMxOSw3 IEBAIHByb2Nlc3NfY29weV9wYXNzICh2b2lkKQogICAgIGZwdXRjICgnXG4nLCBzdGRlcnIp OwogCiAgIGFwcGx5X2RlbGF5ZWRfc2V0X3N0YXQgKCk7Ci0gIAorCiAgIGlmICghcXVpZXRf ZmxhZykKICAgICB7CiAgICAgICBzaXplX3QgYmxvY2tzID0gKG91dHB1dF9ieXRlcyArIGlv X2Jsb2NrX3NpemUgLSAxKSAvIGlvX2Jsb2NrX3NpemU7CkBAIC0zMzMsNyArMzMzLDcgQEAg cHJvY2Vzc19jb3B5X3Bhc3MgKHZvaWQpCiAgIGRzX2ZyZWUgKCZvdXRwdXRfbmFtZSk7CiB9 CiAMCi0vKiBUcnkgYW5kIGNyZWF0ZSBhIGhhcmQgbGluayBmcm9tIEZJTEVfTkFNRSB0byBh bm90aGVyIGZpbGUgCisvKiBUcnkgYW5kIGNyZWF0ZSBhIGhhcmQgbGluayBmcm9tIEZJTEVf TkFNRSB0byBhbm90aGVyIGZpbGUKICAgIHdpdGggdGhlIGdpdmVuIG1ham9yL21pbm9yIGRl dmljZSBudW1iZXIgYW5kIGlub2RlLiAgSWYgbm8gb3RoZXIKICAgIGZpbGUgd2l0aCB0aGUg c2FtZSBtYWpvci9taW5vci9pbm9kZSBudW1iZXJzIGlzIGtub3duLCBhZGQgdGhpcyBmaWxl CiAgICB0byB0aGUgbGlzdCBvZiBrbm93biBmaWxlcyBhbmQgYXNzb2NpYXRlZCBtYWpvci9t aW5vci9pbm9kZSBudW1iZXJzCkBAIC0zNjIsNyArMzYyLDcgQEAgbGlua190b19tYWpfbWlu X2lubyAoY2hhciAqZmlsZV9uYW1lLCBpbnQgc3RfZGV2X21haiwgaW50IHN0X2Rldl9taW4s CiB9CiAMCiAvKiBUcnkgYW5kIGNyZWF0ZSBhIGhhcmQgbGluayBmcm9tIExJTktfTkFNRSB0 byBMSU5LX1RBUkdFVC4gIElmCi0gICBgY3JlYXRlX2Rpcl9mbGFnJyBpcyBzZXQsIGFueSBu b24tZXhpc3RlbnQgKHBhcmVudCkgZGlyZWN0b3JpZXMgCisgICBgY3JlYXRlX2Rpcl9mbGFn JyBpcyBzZXQsIGFueSBub24tZXhpc3RlbnQgKHBhcmVudCkgZGlyZWN0b3JpZXMKICAgIG5l ZWRlZCBieSBMSU5LX05BTUUgd2lsbCBiZSBjcmVhdGVkLiAgSWYgdGhlIGxpbmsgaXMgc3Vj Y2Vzc2Z1bGx5CiAgICBjcmVhdGVkIGFuZCBgdmVyYm9zZV9mbGFnJyBpcyBzZXQsIHByaW50 ICJMSU5LX1RBUkdFVCBsaW5rZWQgdG8gTElOS19OQU1FXG4iLgogICAgSWYgdGhlIGxpbmsg Y2FuIG5vdCBiZSBjcmVhdGVkIGFuZCBgbGlua19mbGFnJyBpcyBzZXQsIHByaW50CmRpZmYg LS1naXQgYS9zcmMvZHN0cmluZy5jIGIvc3JjL2RzdHJpbmcuYwppbmRleCAzZmY4NDRmLi45 NzdjNTM0IDEwMDY0NAotLS0gYS9zcmMvZHN0cmluZy5jCisrKyBiL3NyYy9kc3RyaW5nLmMK QEAgLTEwNyw3ICsxMDcsNyBAQCBkc19hcHBlbmQgKGR5bmFtaWNfc3RyaW5nICpzLCBpbnQg YykKICAgICAgIHMtPmRzX2lkeCsrOwogICAgICAgZHNfcmVzaXplIChzLCAwKTsKICAgICAg IHMtPmRzX3N0cmluZ1tzLT5kc19pZHhdID0gMDsKLSAgICB9ICAgICAgCisgICAgfQogfQog CiB2b2lkCmRpZmYgLS1naXQgYS9zcmMvZHN0cmluZy5oIGIvc3JjL2RzdHJpbmcuaAppbmRl eCA5ZWUxOWJjLi4wZWNlNDlhIDEwMDY0NAotLS0gYS9zcmMvZHN0cmluZy5oCisrKyBiL3Ny Yy9kc3RyaW5nLmgKQEAgLTQ3LDQgKzQ3LDMgQEAgdm9pZCBkc19jb25jYXQgKGR5bmFtaWNf c3RyaW5nICpzLCBjaGFyIGNvbnN0ICpzdHIpOwogI2RlZmluZSBkc19sZW4ocykgKChzKS0+ ZHNfaWR4KQogCiBpbnQgZHNfZW5kc3dpdGggKGR5bmFtaWNfc3RyaW5nICpzLCBpbnQgYyk7 Ci0KZGlmZiAtLWdpdCBhL3NyYy9leHRlcm4uaCBiL3NyYy9leHRlcm4uaAppbmRleCA0NmNh NzA4Li5hODNjYjk3IDEwMDY0NAotLS0gYS9zcmMvZXh0ZXJuLmgKKysrIGIvc3JjL2V4dGVy bi5oCkBAIC0xMjMsNyArMTIzLDcgQEAgdm9pZCBmaWVsZF93aWR0aF9lcnJvciAoY29uc3Qg Y2hhciAqZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmZpZWxkbmFtZSwKIAogLyogY29weXBhc3Mu YyAqLwogdm9pZCBwcm9jZXNzX2NvcHlfcGFzcyAodm9pZCk7Ci1pbnQgbGlua190b19tYWpf bWluX2lubyAoY2hhciAqZmlsZV9uYW1lLCBpbnQgc3RfZGV2X21haiwgCitpbnQgbGlua190 b19tYWpfbWluX2lubyAoY2hhciAqZmlsZV9uYW1lLCBpbnQgc3RfZGV2X21haiwKIAkJCSBp bnQgc3RfZGV2X21pbiwgaW5vX3Qgc3RfaW5vKTsKIGludCBsaW5rX3RvX25hbWUgKGNoYXIg Y29uc3QgKmxpbmtfbmFtZSwgY2hhciBjb25zdCAqbGlua190YXJnZXQpOwogCkBAIC0xODUs NyArMTg1LDcgQEAgdm9pZCBzZXRfbmV3X21lZGlhX21lc3NhZ2UgKGNoYXIgKm1lc3NhZ2Up OwogI2lmZGVmIEhQVVhfQ0RGCiBjaGFyICphZGRfY2RmX2RvdWJsZV9zbGFzaGVzIChjaGFy ICpmaWxlbmFtZSk7CiAjZW5kaWYKLXZvaWQgd3JpdGVfbnVsc190b19maWxlIChvZmZfdCBu dW1fYnl0ZXMsIGludCBvdXRfZGVzLCAKK3ZvaWQgd3JpdGVfbnVsc190b19maWxlIChvZmZf dCBudW1fYnl0ZXMsIGludCBvdXRfZGVzLAogCQkJIHZvaWQgKCp3cml0ZXIpIChjaGFyICpp bl9idWYsCiAJCQkJCSBpbnQgb3V0X2Rlcywgb2ZmX3QgbnVtX2J5dGVzKSk7CiAjZGVmaW5l IERJU0tfSU9fQkxPQ0tfU0laRQk1MTIKQEAgLTIyOSw2ICsyMjksNSBAQCB2b2lkIGRlbGF5 X3NldF9zdGF0IChjaGFyIGNvbnN0ICpmaWxlX25hbWUsIHN0cnVjdCBzdGF0ICpzdCwKIAkJ ICAgICBtb2RlX3QgaW52ZXJ0X3Blcm1pc3Npb25zKTsKIGludCByZXBhaXJfZGVsYXllZF9z ZXRfc3RhdCAoc3RydWN0IGNwaW9fZmlsZV9zdGF0ICpmaWxlX2hkcik7CiB2b2lkIGFwcGx5 X2RlbGF5ZWRfc2V0X3N0YXQgKHZvaWQpOwotICAgICAKLWludCBhcmZfc3RvcmVzX2lub2Rl X3AgKGVudW0gYXJjaGl2ZV9mb3JtYXQgYXJmKTsKIAoraW50IGFyZl9zdG9yZXNfaW5vZGVf cCAoZW51bSBhcmNoaXZlX2Zvcm1hdCBhcmYpOwpkaWZmIC0tZ2l0IGEvc3JjL2ZhdGFsLmMg Yi9zcmMvZmF0YWwuYwppbmRleCBhMTFiZWJmLi43NDE4NGJjIDEwMDY0NAotLS0gYS9zcmMv ZmF0YWwuYworKysgYi9zcmMvZmF0YWwuYwpAQCAtMjUsNCArMjUsMyBAQCBmYXRhbF9leGl0 ICgpCiB7CiAgIGV4aXQgKFBBWEVYSVRfRkFJTFVSRSk7CiB9Ci0KZGlmZiAtLWdpdCBhL3Ny Yy9maWxlbW9kZS5jIGIvc3JjL2ZpbGVtb2RlLmMKaW5kZXggNTc1NGM0OC4uMGE3YzVjYSAx MDA2NDQKLS0tIGEvc3JjL2ZpbGVtb2RlLmMKKysrIGIvc3JjL2ZpbGVtb2RlLmMKQEAgLTI0 MSw0ICsyNDEsMyBAQCBmaWxlbW9kZXN0cmluZyAoc3RydWN0IHN0YXQgKnN0YXRwLCBjaGFy ICpzdHIpCiB7CiAgIG1vZGVfc3RyaW5nIChzdGF0cC0+c3RfbW9kZSwgc3RyKTsKIH0KLQpk aWZmIC0tZ2l0IGEvc3JjL2dsb2JhbC5jIGIvc3JjL2dsb2JhbC5jCmluZGV4IGIyZTBlZjUu Ljg1NDIyNDMgMTAwNjQ0Ci0tLSBhL3NyYy9nbG9iYWwuYworKysgYi9zcmMvZ2xvYmFsLmMK QEAgLTE5NSw0ICsxOTUsMyBAQCBjaGFyICpjaGFuZ2VfZGlyZWN0b3J5X29wdGlvbjsKIAog aW50IHJlbnVtYmVyX2lub2Rlc19vcHRpb247CiBpbnQgaWdub3JlX2Rldm5vX29wdGlvbjsK LQpkaWZmIC0tZ2l0IGEvc3JjL21haW4uYyBiL3NyYy9tYWluLmMKaW5kZXggN2ViOTNjYi4u ODAzMzc4MyAxMDA2NDQKLS0tIGEvc3JjL21haW4uYworKysgYi9zcmMvbWFpbi5jCkBAIC00 OCwxNSArNDgsMTUgQEAKIGVudW0gY3Bpb19vcHRpb25zIHsKICAgTk9fQUJTT0xVVEVfRklM RU5BTUVTX09QVElPTj0yNTYsCiAgIEFCU09MVVRFX0ZJTEVOQU1FU19PUFRJT04sCi0gIE5P X1BSRVNFUlZFX09XTkVSX09QVElPTiwgICAgICAKLSAgT05MWV9WRVJJRllfQ1JDX09QVElP TiwgICAgICAgIAotICBSRU5BTUVfQkFUQ0hfRklMRV9PUFRJT04sICAgICAgCi0gIFJTSF9D T01NQU5EX09QVElPTiwgICAgICAgICAgICAKLSAgUVVJRVRfT1BUSU9OLCAgICAgICAgICAg ICAgICAgIAotICBTUEFSU0VfT1BUSU9OLCAgICAgICAgICAgICAgICAgCi0gIEZPUkNFX0xP Q0FMX09QVElPTiwgICAgICAgICAgICAKLSAgREVCVUdfT1BUSU9OLCAgICAgICAgICAgICAg ICAgIAotICBCTE9DS19TSVpFX09QVElPTiwgICAgICAgICAgICAgCisgIE5PX1BSRVNFUlZF X09XTkVSX09QVElPTiwKKyAgT05MWV9WRVJJRllfQ1JDX09QVElPTiwKKyAgUkVOQU1FX0JB VENIX0ZJTEVfT1BUSU9OLAorICBSU0hfQ09NTUFORF9PUFRJT04sCisgIFFVSUVUX09QVElP TiwKKyAgU1BBUlNFX09QVElPTiwKKyAgRk9SQ0VfTE9DQUxfT1BUSU9OLAorICBERUJVR19P UFRJT04sCisgIEJMT0NLX1NJWkVfT1BUSU9OLAogICBUT19TVERPVVRfT1BUSU9OLAogICBS RU5VTUJFUl9JTk9ERVNfT1BUSU9OLAogICBJR05PUkVfREVWTk9fT1BUSU9OLApAQCAtNzEs NyArNzEsNyBAQCBjb25zdCBjaGFyICpwcm9ncmFtX2F1dGhvcnNbXSA9CiAgICAgIlNlcmdl eSBQb3pueWFrb2ZmIiwKICAgICBOVUxMCiAgIH07Ci0gIAorCiBjb25zdCBjaGFyICphcmdw X3Byb2dyYW1fYnVnX2FkZHJlc3MgPSAiPCIgUEFDS0FHRV9CVUdSRVBPUlQgIj4iOwogc3Rh dGljIGNoYXIgZG9jW10gPSBOXygiR05VIGBjcGlvJyBjb3BpZXMgZmlsZXMgdG8gYW5kIGZy b20gYXJjaGl2ZXNcblwKIFxuXApAQCAtMTA1LDE1ICsxMDUsMTUgQEAgc3RhdGljIHN0cnVj dCBhcmdwX29wdGlvbiBvcHRpb25zW10gPSB7CiAgIHsibGlzdCIsICd0JywgMCwgMCwKICAg IE5fKCJQcmludCBhIHRhYmxlIG9mIGNvbnRlbnRzIG9mIHRoZSBpbnB1dCIpLCBHUklEIH0s CiAjdW5kZWYgR1JJRAotICAKKwogICAvKiAqKioqKioqKioqICovCi0jZGVmaW5lIEdSSUQg MTAwICAKKyNkZWZpbmUgR1JJRCAxMDAKICAge05VTEwsIDAsIE5VTEwsIDAsCiAgICBOXygi T3BlcmF0aW9uIG1vZGlmaWVycyB2YWxpZCBpbiBhbnkgbW9kZToiKSwgR1JJRCB9LAogCiAg IHsiZGlyZWN0b3J5IiwgJ0QnLCBOXygiRElSIiksIDAsCiAgICBOXygiQ2hhbmdlIHRvIGRp cmVjdG9yeSBESVIiKSwgR1JJRCsxIH0sCi0gIAorCiAgIHsiZm9yY2UtbG9jYWwiLCBGT1JD RV9MT0NBTF9PUFRJT04sIDAsIDAsCiAgICBOXygiQXJjaGl2ZSBmaWxlIGlzIGxvY2FsLCBl dmVuIGlmIGl0cyBuYW1lIGNvbnRhaW5zIGNvbG9ucyIpLCBHUklEKzEgfSwKICAgeyJmb3Jt YXQiLCAnSCcsIE5fKCJGT1JNQVQiKSwgMCwKQEAgLTEyNCw3ICsxMjQsNyBAQCBzdGF0aWMg c3RydWN0IGFyZ3Bfb3B0aW9uIG9wdGlvbnNbXSA9IHsKICAgIE5fKCJTZXQgdGhlIEkvTyBi bG9jayBzaXplIHRvIEJMT0NLLVNJWkUgKiA1MTIgYnl0ZXMiKSwgR1JJRCsxIH0sCiAgIHtO VUxMLCAnYycsIE5VTEwsIDAsCiAgICBOXygiVXNlIHRoZSBvbGQgcG9ydGFibGUgKEFTQ0lJ KSBhcmNoaXZlIGZvcm1hdCIpLCBHUklEKzEgfSwKLSAgeyJkb3QiLCAnVicsIE5VTEwsIDAs IAorICB7ImRvdCIsICdWJywgTlVMTCwgMCwKICAgIE5fKCJQcmludCBhIFwiLlwiIGZvciBl YWNoIGZpbGUgcHJvY2Vzc2VkIiksIEdSSUQrMSB9LAogICB7ImlvLXNpemUiLCAnQycsIE5f KCJOVU1CRVIiKSwgMCwKICAgIE5fKCJTZXQgdGhlIEkvTyBibG9jayBzaXplIHRvIHRoZSBn aXZlbiBOVU1CRVIgb2YgYnl0ZXMiKSwgR1JJRCsxIH0sCkBAIC0xNTMsOSArMTUzLDkgQEAg c3RhdGljIHN0cnVjdCBhcmdwX29wdGlvbiBvcHRpb25zW10gPSB7CiAgIHsicnNoLWNvbW1h bmQiLCBSU0hfQ09NTUFORF9PUFRJT04sIE5fKCJDT01NQU5EIiksIDAsCiAgICBOXygiVXNl IENPTU1BTkQgaW5zdGVhZCBvZiByc2giKSwgR1JJRCsxIH0sCiAjdW5kZWYgR1JJRAotICAK KwogICAvKiAqKioqKioqKioqICovCi0jZGVmaW5lIEdSSUQgMjAwICAKKyNkZWZpbmUgR1JJ RCAyMDAKICAge05VTEwsIDAsIE5VTEwsIDAsCiAgICBOXygiT3BlcmF0aW9uIG1vZGlmaWVy cyB2YWxpZCBvbmx5IGluIGNvcHktaW4gbW9kZToiKSwgR1JJRCB9LAogICB7Im5vbm1hdGNo aW5nIiwgJ2YnLCAwLCAwLApAQCAtMTgyLDcgKzE4Miw3IEBAIHN0YXRpYyBzdHJ1Y3QgYXJn cF9vcHRpb24gb3B0aW9uc1tdID0gewogICAgTl8oIkV4dHJhY3QgZmlsZXMgdG8gc3RhbmRh cmQgb3V0cHV0IiksIEdSSUQrMSB9LAogICB7TlVMTCwgJ0knLCBOXygiW1tVU0VSQF1IT1NU Ol1GSUxFLU5BTUUiKSwgMCwKICAgIE5fKCJBcmNoaXZlIGZpbGVuYW1lIHRvIHVzZSBpbnN0 ZWFkIG9mIHN0YW5kYXJkIGlucHV0LiBPcHRpb25hbCBVU0VSIGFuZCBIT1NUIHNwZWNpZnkg dGhlIHVzZXIgYW5kIGhvc3QgbmFtZXMgaW4gY2FzZSBvZiBhIHJlbW90ZSBhcmNoaXZlIiks IEdSSUQrMSB9LAotI3VuZGVmIEdSSUQgICAKKyN1bmRlZiBHUklECiAKICAgLyogKioqKioq KioqKiAqLwogI2RlZmluZSBHUklEIDMwMApAQCAtMjAwLDcgKzIwMCw3IEBAIHN0YXRpYyBz dHJ1Y3QgYXJncF9vcHRpb24gb3B0aW9uc1tdID0gewogICAgTl8oIkNyZWF0ZSBkZXZpY2Ut aW5kZXBlbmRlbnQgKHJlcHJvZHVjaWJsZSkgYXJjaGl2ZXMiKSB9LAogICB7InJlcHJvZHVj aWJsZSIsIDAsIE5VTEwsIE9QVElPTl9BTElBUyB9LAogI3VuZGVmIEdSSUQKLSAgCisKICAg LyogKioqKioqKioqKiAqLwogI2RlZmluZSBHUklEIDQwMAogICB7TlVMTCwgMCwgTlVMTCwg MCwKQEAgLTIwOSw3ICsyMDksNyBAQCBzdGF0aWMgc3RydWN0IGFyZ3Bfb3B0aW9uIG9wdGlv bnNbXSA9IHsKICAgIE5fKCJMaW5rIGZpbGVzIGluc3RlYWQgb2YgY29weWluZyB0aGVtLCB3 aGVuICBwb3NzaWJsZSIpLCBHUklEKzEgfSwKIAogI3VuZGVmIEdSSUQKLSAgCisKICAgLyog KioqKioqKioqKiAqLwogI2RlZmluZSBHUklEIDUwMAogICB7TlVMTCwgMCwgTlVMTCwgMCwK QEAgLTIxOSw3ICsyMTksNyBAQCBzdGF0aWMgc3RydWN0IGFyZ3Bfb3B0aW9uIG9wdGlvbnNb XSA9IHsKICAgIEdSSUQrMSB9LAogICB7Im5vLWFic29sdXRlLWZpbGVuYW1lcyIsIE5PX0FC U09MVVRFX0ZJTEVOQU1FU19PUFRJT04sIDAsIDAsCiAgICBOXygiQ3JlYXRlIGFsbCBmaWxl cyByZWxhdGl2ZSB0byB0aGUgY3VycmVudCBkaXJlY3RvcnkiKSwgR1JJRCsxIH0sCi0jdW5k ZWYgR1JJRCAgCisjdW5kZWYgR1JJRAogICAvKiAqKioqKioqKioqICovCiAjZGVmaW5lIEdS SUQgNjAwCiAgIHtOVUxMLCAwLCBOVUxMLCAwLApAQCAtMjMxLDcgKzIzMSw3IEBAIHN0YXRp YyBzdHJ1Y3QgYXJncF9vcHRpb24gb3B0aW9uc1tdID0gewogICB7InJlc2V0LWFjY2Vzcy10 aW1lIiwgJ2EnLCBOVUxMLCAwLAogICAgTl8oIlJlc2V0IHRoZSBhY2Nlc3MgdGltZXMgb2Yg ZmlsZXMgYWZ0ZXIgcmVhZGluZyB0aGVtIiksIEdSSUQrMSB9LAogCi0jdW5kZWYgR1JJRCAg IAorI3VuZGVmIEdSSUQKICAgLyogKioqKioqKioqKiAqLwogI2RlZmluZSBHUklEIDcwMAog ICB7TlVMTCwgMCwgTlVMTCwgMCwKQEAgLTI0Nyw3ICsyNDcsNyBAQCBzdGF0aWMgc3RydWN0 IGFyZ3Bfb3B0aW9uIG9wdGlvbnNbXSA9IHsKICAgeyJzcGFyc2UiLCBTUEFSU0VfT1BUSU9O LCBOVUxMLCAwLAogICAgTl8oIldyaXRlIGZpbGVzIHdpdGggbGFyZ2UgYmxvY2tzIG9mIHpl cm9zIGFzIHNwYXJzZSBmaWxlcyIpLCBHUklEKzEgfSwKICN1bmRlZiBHUklECi0gIAorCiAg IHswLCAwLCAwLCAwfQogfTsKIApAQCAtMjc1LDEwICsyNzUsMTAgQEAgd2Fybl9jb250cm9s IChjaGFyICphcmcpCiAgICAgICB3YXJuX29wdGlvbiA9IDA7CiAgICAgICByZXR1cm4gMDsK ICAgICB9Ci0gIAorCiAgIGlmIChzdHJsZW4gKGFyZykgPiAyICYmIG1lbWNtcCAoYXJnLCAi bm8tIiwgMykgPT0gMCkKICAgICBvZmZzZXQgPSAzOwotICAgICAgCisKICAgZm9yICh3dCA9 IHdhcm5fdGFiOyB3dC0+bmFtZTsgd3QrKykKICAgICBpZiAoc3RyY21wIChhcmcgKyBvZmZz ZXQsIHd0LT5uYW1lKSA9PSAwKQogICAgICAgewpAQCAtMzQ4LDcgKzM0OCw3IEBAIHBhcnNl X29wdCAoaW50IGtleSwgY2hhciAqYXJnLCBzdHJ1Y3QgYXJncF9zdGF0ZSAqc3RhdGUpCiAg ICAgY2FzZSAnRCc6CiAgICAgICBjaGFuZ2VfZGlyZWN0b3J5X29wdGlvbiA9IGFyZzsKICAg ICAgIGJyZWFrOwotICAgICAgCisKICAgICBjYXNlICdmJzoJCS8qIE9ubHkgY29weSBmaWxl cyBub3QgbWF0Y2hpbmcgcGF0dGVybnMuICAqLwogICAgICAgY29weV9tYXRjaGluZ19maWxl cyA9IGZhbHNlOwogICAgICAgYnJlYWs7CkBAIC0zODUsNyArMzg1LDcgQEAgcGFyc2Vfb3B0 IChpbnQga2V5LCBjaGFyICphcmcsIHN0cnVjdCBhcmdwX3N0YXRlICpzdGF0ZSkKIGludmFs aWQgYXJjaGl2ZSBmb3JtYXQgYCVzJzsgdmFsaWQgZm9ybWF0cyBhcmU6XG5cCiBjcmMgbmV3 YyBvZGMgYmluIHVzdGFyIHRhciAoYWxsLWNhcHMgYWxzbyByZWNvZ25pemVkKSIpLCBhcmcp KTsKICAgICAgIGJyZWFrOwotCSAgCisKICAgICBjYXNlICdpJzoJCS8qIENvcHktaW4gbW9k ZS4gICovCiAgICAgICBpZiAoY29weV9mdW5jdGlvbiAhPSAwKQogCVVTQUdFX0VSUk9SICgo MCwgMCwgXygiTW9kZSBhbHJlYWR5IGRlZmluZWQiKSkpOwpAQCAtNDIzLDEwICs0MjMsMTAg QEAgY3JjIG5ld2Mgb2RjIGJpbiB1c3RhciB0YXIgKGFsbC1jYXBzIGFsc28gcmVjb2duaXpl ZCkiKSwgYXJnKSk7CiAgICAgY2FzZSBBQlNPTFVURV9GSUxFTkFNRVNfT1BUSU9OOgkJLyog LS1hYnNvbHV0ZS1maWxlbmFtZXMgKi8KICAgICAgIG5vX2Fic19wYXRoc19mbGFnID0gZmFs c2U7CiAgICAgICBicmVhazsKLSAgICAgIAorCiAgICAgY2FzZSBOT19QUkVTRVJWRV9PV05F Ul9PUFRJT046CQkvKiAtLW5vLXByZXNlcnZlLW93bmVyICovCiAgICAgICBpZiAoc2V0X293 bmVyX2ZsYWcgfHwgc2V0X2dyb3VwX2ZsYWcpCi0JVVNBR0VfRVJST1IgKCgwLCAwLCAgCisJ VVNBR0VfRVJST1IgKCgwLCAwLAogCQkgICAgICBfKCItLW5vLXByZXNlcnZlLW93bmVyIGNh bm5vdCBiZSB1c2VkIHdpdGggLS1vd25lciIpKSk7CiAgICAgICBub19jaG93bl9mbGFnID0g dHJ1ZTsKICAgICAgIGJyZWFrOwpAQCAtNDU0LDcgKzQ1NCw3IEBAIGNyYyBuZXdjIG9kYyBi aW4gdXN0YXIgdGFyIChhbGwtY2FwcyBhbHNvIHJlY29nbml6ZWQpIiksIGFyZykpOwogICAg IGNhc2UgSUdOT1JFX0RFVk5PX09QVElPTjoKICAgICAgIGlnbm9yZV9kZXZub19vcHRpb24g PSAxOwogICAgICAgYnJlYWs7Ci0gICAgICAKKwogICAgIGNhc2UgUkVOVU1CRVJfSU5PREVT X09QVElPTjoKICAgICAgIHJlbnVtYmVyX2lub2Rlc19vcHRpb24gPSAxOwogICAgICAgYnJl YWs7CkBAIC00NjIsNyArNDYyLDcgQEAgY3JjIG5ld2Mgb2RjIGJpbiB1c3RhciB0YXIgKGFs bC1jYXBzIGFsc28gcmVjb2duaXplZCkiKSwgYXJnKSk7CiAgICAgY2FzZSBERVZJQ0VfSU5E RVBFTkRFTlRfT1BUSU9OOgogICAgICAgaWdub3JlX2Rldm5vX29wdGlvbiA9IHJlbnVtYmVy X2lub2Rlc19vcHRpb24gPSAxOwogICAgICAgYnJlYWs7Ci0gICAgICAKKwogICAgIGNhc2Ug UlNIX0NPTU1BTkRfT1BUSU9OOgogICAgICAgcnNoX2NvbW1hbmRfb3B0aW9uID0gYXJnOwog ICAgICAgYnJlYWs7CkBAIC00ODEsMTIgKzQ4MSwxMiBAQCBjcmMgbmV3YyBvZGMgYmluIHVz dGFyIHRhciAoYWxsLWNhcHMgYWxzbyByZWNvZ25pemVkKSIpLCBhcmcpKTsKIAogICAgIGNh c2UgJ1InOgkJLyogU2V0IHRoZSBvd25lci4gICovCiAgICAgICBpZiAobm9fY2hvd25fZmxh ZykKLQlVU0FHRV9FUlJPUiAoKDAsIDAsICAKKwlVU0FHRV9FUlJPUiAoKDAsIDAsCiAJCSAg ICAgIF8oIi0tb3duZXIgY2Fubm90IGJlIHVzZWQgd2l0aCAtLW5vLXByZXNlcnZlLW93bmVy IikpKTsKICAgICAgIGVsc2UKIAl7CiAJICBjaGFyICplLCAqdSwgKmc7Ci0JICAKKwogCSAg ZSA9IHBhcnNlX3VzZXJfc3BlYyAoYXJnLCAmc2V0X293bmVyLCAmc2V0X2dyb3VwLCAmdSwg JmcpOwogCSAgaWYgKGUpCiAJICAgIFVTQUdFX0VSUk9SICgoMCwgMCwgIiVzOiAlcyIsIGFy ZywgZSkpOwpAQCAtNTMxLDcgKzUzMSw3IEBAIGNyYyBuZXdjIG9kYyBiaW4gdXN0YXIgdGFy IChhbGwtY2FwcyBhbHNvIHJlY29nbml6ZWQpIiksIGFyZykpOwogICAgICAgaWYgKHdhcm5f Y29udHJvbCAoYXJnKSkKIAlVU0FHRV9FUlJPUiAoKDAsIDAsIF8oIkludmFsaWQgdmFsdWUg Zm9yIC0td2FybmluZyBvcHRpb246ICVzIiksIGFyZykpOwogICAgICAgYnJlYWs7Ci0gICAg ICAKKwogICAgIGNhc2UgU1BBUlNFX09QVElPTjoKICAgICAgIHNwYXJzZV9mbGFnID0gdHJ1 ZTsKICAgICAgIGJyZWFrOwpAQCAtNTg1LDcgKzU4NSw3IEBAIHByb2Nlc3NfYXJncyAoaW50 IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgeHN0YXQgPSBsc3RhdDsKIAogICBpZiAoYXJncF9w YXJzZSAoJmFyZ3AsIGFyZ2MsIGFyZ3YsIEFSR1BfSU5fT1JERVIsICZpbmRleCwgTlVMTCkp Ci0gICAgZXhpdCAoUEFYRVhJVF9GQUlMVVJFKTsgCisgICAgZXhpdCAoUEFYRVhJVF9GQUlM VVJFKTsKIAogICAvKiBEbyBlcnJvciBjaGVja2luZyBhbmQgbG9vayBhdCBvdGhlciBhcmdz LiAgKi8KIApAQCAtNjE4LDkgKzYxOCw5IEBAIHByb2Nlc3NfYXJncyAoaW50IGFyZ2MsIGNo YXIgKmFyZ3ZbXSkKIAkgIENIRUNLX1VTQUdFIChyZXRhaW5fdGltZV9mbGFnLCAiLS1wcmVz ZXJ2ZS1tb2RpZmljYXRpb24tdGltZSIsCiAJCSAgICAgICAiLS10by1zdGRvdXQiKTsKIAl9 Ci0gICAgICAKKwogICAgICAgaWYgKGFyY2hpdmVfbmFtZSAmJiBpbnB1dF9hcmNoaXZlX25h bWUpCi0JVVNBR0VfRVJST1IgKCgwLCAwLCAgCisJVVNBR0VfRVJST1IgKCgwLCAwLAogCQkg ICAgICBfKCJCb3RoIC1JIGFuZCAtRiBhcmUgdXNlZCBpbiBjb3B5LWluIG1vZGUiKSkpOwog CiAgICAgICBpZiAoYXJjaGl2ZV9mb3JtYXQgPT0gYXJmX2NyY2FzY2lpKQpAQCAtNjQ5LDE2 ICs2NDksMTYgQEAgcHJvY2Vzc19hcmdzIChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAg ICAgQ0hFQ0tfVVNBR0UgKHN3YXBfaGFsZndvcmRzX2ZsYWcsICItLXN3YXAtaGFsZndvcmRz ICgtLXN3YXApIiwKIAkJICAgIi0tY3JlYXRlIik7CiAgICAgICBDSEVDS19VU0FHRSAodG9f c3Rkb3V0X29wdGlvbiwgIi0tdG8tc3Rkb3V0IiwgIi0tY3JlYXRlIik7Ci0gICAgICAKKwog ICAgICAgaWYgKGFwcGVuZF9mbGFnICYmICEoYXJjaGl2ZV9uYW1lIHx8IG91dHB1dF9hcmNo aXZlX25hbWUpKQotCVVTQUdFX0VSUk9SICgoMCwgMCwgIAorCVVTQUdFX0VSUk9SICgoMCwg MCwKIAkJICAgICAgXygiLS1hcHBlbmQgaXMgdXNlZCBidXQgbm8gYXJjaGl2ZSBmaWxlIG5h bWUgIgogCQkJImlzIGdpdmVuICh1c2UgLUYgb3IgLU8gb3B0aW9ucykiKSkpOwogCiAgICAg ICBDSEVDS19VU0FHRSAocmVuYW1lX2JhdGNoX2ZpbGUsICItLXJlbmFtZS1iYXRjaC1maWxl IiwgIi0tY3JlYXRlIik7CiAgICAgICBDSEVDS19VU0FHRSAoaW5wdXRfYXJjaGl2ZV9uYW1l LCAiLUkiLCAiLS1jcmVhdGUiKTsKICAgICAgIGlmIChhcmNoaXZlX25hbWUgJiYgb3V0cHV0 X2FyY2hpdmVfbmFtZSkKLQlVU0FHRV9FUlJPUiAoKDAsIDAsICAKKwlVU0FHRV9FUlJPUiAo KDAsIDAsCiAJCSAgICAgIF8oIkJvdGggLU8gYW5kIC1GIGFyZSB1c2VkIGluIGNvcHktb3V0 IG1vZGUiKSkpOwogCiAgICAgICBpZiAoYXJjaGl2ZV9mb3JtYXQgPT0gYXJmX3Vua25vd24p CkBAIC02NzgsNyArNjc4LDcgQEAgcHJvY2Vzc19hcmdzIChpbnQgYXJnYywgY2hhciAqYXJn dltdKQogCVVTQUdFX0VSUk9SICgoMCwgMCwgXygiTm90IGVub3VnaCBhcmd1bWVudHMiKSkp OwogCiAgICAgICBpZiAoYXJjaGl2ZV9mb3JtYXQgIT0gYXJmX3Vua25vd24pCi0JVVNBR0Vf RVJST1IgKCgwLCAwLCAgCisJVVNBR0VfRVJST1IgKCgwLCAwLAogCQkgICAgICBfKCJBcmNo aXZlIGZvcm1hdCBpcyBub3Qgc3BlY2lmaWVkIGluIGNvcHktcGFzcyBtb2RlICIKIAkJCSIo dXNlIC0tZm9ybWF0IG9wdGlvbikiKSkpOwogCkBAIC02OTcsMjEgKzY5NywyMSBAQCBwcm9j ZXNzX2FyZ3MgKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICBDSEVDS19VU0FHRSAo cmVudW1iZXJfaW5vZGVzX29wdGlvbiwgIi0tcmVudW1iZXItaW5vZGVzIiwKIAkJICAgIi0t cGFzcy10aHJvdWdoIik7CiAgICAgICBDSEVDS19VU0FHRSAoaWdub3JlX2Rldm5vX29wdGlv biwgIi0taWdub3JlLWRldm5vIiwgIi0tcGFzcy10aHJvdWdoIik7Ci0gICAgICAKKwogICAg ICAgZGlyZWN0b3J5X25hbWUgPSBhcmd2W2luZGV4XTsKICAgICB9CiAKICAgaWYgKGFyY2hp dmVfbmFtZSkKICAgICB7CiAgICAgICBpZiAoY29weV9mdW5jdGlvbiAhPSBwcm9jZXNzX2Nv cHlfaW4gJiYgY29weV9mdW5jdGlvbiAhPSBwcm9jZXNzX2NvcHlfb3V0KQotCWVycm9yIChQ QVhFWElUX0ZBSUxVUkUsIDAsIAorCWVycm9yIChQQVhFWElUX0ZBSUxVUkUsIDAsCiAJICAg ICAgIF8oIi1GIGNhbiBiZSB1c2VkIG9ubHkgd2l0aCAtLWNyZWF0ZSBvciAtLWV4dHJhY3Qi KSk7CiAgICAgICBhcmNoaXZlX2RlcyA9IG9wZW5fYXJjaGl2ZSAoYXJjaGl2ZV9uYW1lKTsK ICAgICAgIGlmIChhcmNoaXZlX2RlcyA8IDApCi0JZXJyb3IgKFBBWEVYSVRfRkFJTFVSRSwg ZXJybm8sIF8oIkNhbm5vdCBvcGVuICVzIiksIAorCWVycm9yIChQQVhFWElUX0ZBSUxVUkUs IGVycm5vLCBfKCJDYW5ub3Qgb3BlbiAlcyIpLAogICAgICAgICAgICAgICAgcXVvdGVhcmdf Y29sb24gKGFyY2hpdmVfbmFtZSkpOwogICAgIH0KLQkJICAgICAKKwogICAvKiBQcmV2ZW50 IFN5c1Ygbm9uLXJvb3QgdXNlcnMgZnJvbSBnaXZpbmcgYXdheSBmaWxlcyBpbmFkdmVydGFu dGx5LgogICAgICBUaGlzIGhhcHBlbnMgYXV0b21hdGljYWxseSBvbiBCU0QsIHdoZXJlIG9u bHkgcm9vdCBjYW4gZ2l2ZQogICAgICBhd2F5IGZpbGVzLiAgKi8KQEAgLTc3NCw3ICs3NzQs NyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICBzZXRfcHJvZ3JhbV9uYW1l IChhcmd2WzBdKTsKICAgYXJncF92ZXJzaW9uX3NldHVwICgiY3BpbyIsIHByb2dyYW1fYXV0 aG9ycyk7CiAgIHByb2Nlc3NfYXJncyAoYXJnYywgYXJndik7Ci0gIAorCiAgIGluaXRpYWxp emVfYnVmZmVycyAoKTsKIAogICAoKmNvcHlfZnVuY3Rpb24pICgpOwpkaWZmIC0tZ2l0IGEv c3JjL21ha2VwYXRoLmMgYi9zcmMvbWFrZXBhdGguYwppbmRleCBiZTU0ZGY4Li5mYTk4YjQ1 IDEwMDY0NAotLS0gYS9zcmMvbWFrZXBhdGguYworKysgYi9zcmMvbWFrZXBhdGguYwpAQCAt OTUsNyArOTUsNyBAQCBtYWtlX3BhdGggKGNoYXIgY29uc3QgKmFyZ3BhdGgsCiAJCQlzdGF0 cy5zdF91aWQgPSBvd25lcjsKIAkJICAgICAgaWYgKGdyb3VwICE9IC0xKQogCQkJc3RhdHMu c3RfZ2lkID0gZ3JvdXA7Ci0JCSAgICAgIAorCiAJCSAgICAgIGRlbGF5X3NldF9zdGF0IChk aXJwYXRoLCAmc3RhdHMsIGludmVydF9wZXJtaXNzaW9ucyk7CiAJCSAgICB9CiAJCX0KQEAg LTExOSw3ICsxMTksNyBAQCBtYWtlX3BhdGggKGNoYXIgY29uc3QgKmFyZ3BhdGgsCiAKICAg ICAgIGlmIChta2RpciAoZGlycGF0aCwgdG1wbW9kZSBeIGludmVydF9wZXJtaXNzaW9ucykp CiAJewotCSAgLyogSW4gc29tZSBjYXNlcywgaWYgdGhlIGZpbmFsIGNvbXBvbmVudCBpbiBk aXJwYXRoIHdhcyBgLicgdGhlbiB3ZSAKKwkgIC8qIEluIHNvbWUgY2FzZXMsIGlmIHRoZSBm aW5hbCBjb21wb25lbnQgaW4gZGlycGF0aCB3YXMgYC4nIHRoZW4gd2UKIAkgICAgIGp1c3Qg Z290IGFuIEVFWElTVCBlcnJvciBmcm9tIHRoYXQgbGFzdCBta2RpcigpLiAgSWYgdGhhdCdz CiAJICAgICB0aGUgY2FzZSwgaWdub3JlIGl0LiAgKi8KIAkgIGlmICggKGVycm5vICE9IEVF WElTVCkgfHwKQEAgLTEzOCwxMCArMTM4LDEwIEBAIG1ha2VfcGF0aCAoY2hhciBjb25zdCAq YXJncGF0aCwKIAkgICAgc3RhdHMuc3RfdWlkID0gb3duZXI7CiAJICBpZiAoZ3JvdXAgIT0g LTEpCiAJICAgIHN0YXRzLnN0X2dpZCA9IGdyb3VwOwotCSAgCisKIAkgIGRlbGF5X3NldF9z dGF0IChkaXJwYXRoLCAmc3RhdHMsIGludmVydF9wZXJtaXNzaW9ucyk7CiAJfQotCQorCiAg ICAgICBpZiAodmVyYm9zZV9mbXRfc3RyaW5nICE9IE5VTEwpCiAJZXJyb3IgKDAsIDAsIHZl cmJvc2VfZm10X3N0cmluZywgZGlycGF0aCk7CiAKZGlmZiAtLWdpdCBhL3NyYy9tdC5jIGIv c3JjL210LmMKaW5kZXggNmE2YjQ3Mi4uMTk5NjkwZCAxMDA2NDQKLS0tIGEvc3JjL210LmMK KysrIGIvc3JjL210LmMKQEAgLTE4Niw3ICsxODYsNyBAQCBzdGF0aWMgc3RydWN0IGFyZ3Bf b3B0aW9uIG9wdGlvbnNbXSA9IHsKIAogY2hhciAqdGFwZWRldjsgICAgICAgICAgICAgICAg ICAgLyogdGFwZSBkZXZpY2UgKi8KIGNoYXIgKnJzaF9jb21tYW5kX29wdGlvbiA9IE5VTEw7 IC8qIHJzaCBjb21tYW5kICovCi1zaG9ydCBvcGVyYXRpb247ICAgICAgICAgICAgICAgICAv KiBvcGVyYXRpb24gY29kZSAqLyAKK3Nob3J0IG9wZXJhdGlvbjsgICAgICAgICAgICAgICAg IC8qIG9wZXJhdGlvbiBjb2RlICovCiBpbnQgY291bnQgPSAxOyAgICAgICAgICAgICAgICAg ICAvKiBjb3VudCAqLwogCiBpbnQgYXJnY250ID0gMDsgICAgICAgICAgICAgICAgICAvKiBu dW1iZXIgb2YgY29tbWFuZCBsaW5lIGFyZ3VtZW50cwpAQCAtMjMyLDcgKzIzMiw3IEBAIHBh cnNlX29wdCAoaW50IGtleSwgY2hhciAqYXJnLCBzdHJ1Y3QgYXJncF9zdGF0ZSAqc3RhdGUp CiAjZW5kaWYKIAl9CiAgICAgICBicmVhazsKLSAgICAgIAorCiAgICAgY2FzZSAnZic6CiAg ICAgY2FzZSAndCc6CiAgICAgICB0YXBlZGV2ID0gYXJnOwpAQCAtMzE5LDcgKzMxOSw3IEBA IG1haW4gKGludCBhcmdjLCBjaGFyICoqYXJndikKICAgc2V0bG9jYWxlIChMQ19BTEwsICIi KTsKICAgYmluZHRleHRkb21haW4gKFBBQ0tBR0UsIExPQ0FMRURJUik7CiAgIHRleHRkb21h aW4gKFBBQ0tBR0UpOwotICAKKwogICBzZXRfcHJvZ3JhbV9uYW1lIChhcmd2WzBdKTsKICAg YXJncF92ZXJzaW9uX3NldHVwICgibXQiLCBwcm9ncmFtX2F1dGhvcnMpOwogICBhcmdtYXRj aF9kaWUgPSBmYXRhbF9leGl0OwpAQCAtMzM5LDcgKzMzOSw3IEBAIG1haW4gKGludCBhcmdj LCBjaGFyICoqYXJndikKICAgICBkZWZhdWx0OgogICAgICAgdGFwZWRlc2MgPSBybXRvcGVu ICh0YXBlZGV2LCBPX1JET05MWSwgMCwgcnNoX2NvbW1hbmRfb3B0aW9uKTsKICAgICB9Ci0g IAorCiAgIGlmICh0YXBlZGVzYyA9PSAtMSkKICAgICBlcnJvciAoTVRfRVhJVF9JTlZPUCwg ZXJybm8sIF8oIiVzOiBybXRvcGVuIGZhaWxlZCIpLCB0YXBlZGV2KTsKICAgY2hlY2tfdHlw ZSAodGFwZWRldiwgdGFwZWRlc2MpOwpAQCAtMzU4LDQgKzM1OCwzIEBAIG1haW4gKGludCBh cmdjLCBjaGFyICoqYXJndikKIAogICBleGl0IChNVF9FWElUX1NVQ0NFU1MpOwogfQotCmRp ZmYgLS1naXQgYS9zcmMvdGFyLmMgYi9zcmMvdGFyLmMKaW5kZXggMjE4ZjAwNS4uZmZiZWY5 YyAxMDA2NDQKLS0tIGEvc3JjL3Rhci5jCisrKyBiL3NyYy90YXIuYwpAQCAtNDIsNyArNDIs NyBAQCBzdGFzaF90YXJfbGlua25hbWUgKGNoYXIgKmxpbmtuYW1lKQogCiAvKiBUcnkgdG8g c3BsaXQgYSBsb25nIGZpbGUgbmFtZSBpbnRvIHByZWZpeCBhbmQgc3VmZml4IHBhcnRzIHNl cGFyYXRlZAogICAgYnkgYSBzbGFzaC4gUmV0dXJuIHRoZSBsZW5ndGggb2YgdGhlIHByZWZp eCAobm90IGNvdW50aW5nIHRoZSBzbGFzaCkuICovCi0gICAKKwogc3RhdGljIHNpemVfdAog c3BsaXRfbG9uZ19uYW1lIChjb25zdCBjaGFyICpuYW1lLCBzaXplX3QgbGVuZ3RoKQogewpA QCAtMzUzLDE0ICszNTMsMTQgQEAgcmVhZF9pbl90YXJfaGVhZGVyIChzdHJ1Y3QgY3Bpb19m aWxlX3N0YXQgKmZpbGVfaGRyLCBpbnQgaW5fZGVzKQogCSAgLyogSWYgYSBQT1NJWCB0YXIg aGVhZGVyIGhhcyBhIHZhbGlkIGxpbmtuYW1lIGl0J3MgYWx3YXlzIHN1cHBvc2VkCiAJICAg ICB0byBzZXQgdHlwZWZsYWcgdG8gYmUgTE5LVFlQRS4gIFN5c3RlbSBWLjQgdGFyIHNlZW1z IHRvCiAJICAgICBiZSBicm9rZW4sIGFuZCBmb3IgZGV2aWNlIGZpbGVzIHdpdGggbXVsdGlw bGUgbGlua3MgaXQKLQkgICAgIHB1dHMgdGhlIG5hbWUgb2YgdGhlIGxpbmsgaW50byBsaW5r bmFtZSwgYnV0IGxlYXZlcyB0eXBlZmxhZyAKKwkgICAgIHB1dHMgdGhlIG5hbWUgb2YgdGhl IGxpbmsgaW50byBsaW5rbmFtZSwgYnV0IGxlYXZlcyB0eXBlZmxhZwogCSAgICAgYXMgQ0hS VFlQRSwgQkxLVFlQRSwgRklGT1RZUEUsIGV0Yy4gICovCiAJICBmaWxlX2hkci0+Y190YXJf bGlua25hbWUgPSBzdGFzaF90YXJfbGlua25hbWUgKHRhcl9oZHItPmxpbmtuYW1lKTsKIAog CSAgLyogRG9lcyBQT1NJWCBzYXkgdGhhdCB0aGUgZmlsZXNpemUgbXVzdCBiZSAwIGZvciBk ZXZpY2VzPyAgV2UKIAkgICAgIGFzc3VtZSBzbywgYnV0IEhQVVgncyBQT1NJWCB0YXIgc2V0 cyBpdCB0byBiZSAxIHdoaWNoIGNhdXNlcwogCSAgICAgdXMgcHJvYmxlbXMgKHdoZW4gcmVh ZGluZyBhbiBhcmNoaXZlIHdlIGFzc3VtZSB3ZSBjYW4gYWx3YXlzCi0JICAgICBza2lwIHRv IHRoZSBuZXh0IGZpbGUgYnkgc2tpcHBpbmcgZmlsZXNpemUgYnl0ZXMpLiAgRm9yIAorCSAg ICAgc2tpcCB0byB0aGUgbmV4dCBmaWxlIGJ5IHNraXBwaW5nIGZpbGVzaXplIGJ5dGVzKS4g IEZvcgogCSAgICAgbm93IGF0IGxlYXN0LCBpdCdzIGVhc2llciB0byBjbGVhciBmaWxlc2l6 ZSBmb3IgZGV2aWNlcywKIAkgICAgIHJhdGhlciB0aGFuIGNoZWNrIGV2ZXJ5d2hlcmUgd2Ug c2tpcCBpbiBjb3B5aW4uYy4gICovCiAJICBmaWxlX2hkci0+Y19maWxlc2l6ZSA9IDA7CmRp ZmYgLS1naXQgYS9zcmMvdXRpbC5jIGIvc3JjL3V0aWwuYwppbmRleCBhYWNmMmJmLi5mNTc2 MmY2IDEwMDY0NAotLS0gYS9zcmMvdXRpbC5jCisrKyBiL3NyYy91dGlsLmMKQEAgLTYwLDgg KzYwLDggQEAgdGFwZV9lbXB0eV9vdXRwdXRfYnVmZmVyIChpbnQgb3V0X2RlcykKICAgc3Rh dGljIGxvbmcgb3V0cHV0X2J5dGVzX2JlZm9yZV9sc2VlayA9IDA7CiAKICAgLyogU29tZSB0 YXBlIGRyaXZlcnMgc2VlbSB0byBoYXZlIGEgc2lnbmVkIGludGVybmFsIHNlZWsgcG9pbnRl ciBhbmQKLSAgICAgdGhleSBsb3NlIGlmIGl0IG92ZXJmbG93cyBhbmQgYmVjb21lcyBuZWdh dGl2ZSAoZS5nLiB3aGVuIHdyaXRpbmcgCi0gICAgIHRhcGVzID4gMkdiKS4gIERvaW5nIGFu IGxzZWVrIChkZXMsIDAsIFNFRUtfU0VUKSBzZWVtcyB0byByZXNldCB0aGUgCisgICAgIHRo ZXkgbG9zZSBpZiBpdCBvdmVyZmxvd3MgYW5kIGJlY29tZXMgbmVnYXRpdmUgKGUuZy4gd2hl biB3cml0aW5nCisgICAgIHRhcGVzID4gMkdiKS4gIERvaW5nIGFuIGxzZWVrIChkZXMsIDAs IFNFRUtfU0VUKSBzZWVtcyB0byByZXNldCB0aGUKICAgICAgc2VlayBwb2ludGVyIGFuZCBw cmV2ZW50IGl0IGZyb20gb3ZlcmZsb3dpbmcuICAqLwogICBpZiAob3V0cHV0X2lzX3NwZWNp YWwKICAgICAgJiYgKCAob3V0cHV0X2J5dGVzX2JlZm9yZV9sc2VlayArPSBvdXRwdXRfc2l6 ZSkgPj0gMTA3Mzc0MTgyNEwpICkKQEAgLTEwNSw3ICsxMDUsNyBAQCBzdGF0aWMgc3NpemVf dCBzcGFyc2Vfd3JpdGUgKGludCBmaWxkZXMsIGNoYXIgKmJ1Ziwgc2l6ZV90IG5ieXRlLCBi b29sIGZsdXNoKTsKICAgIGRlc2NyaXB0b3IgT1VUX0RFUyBhbmQgcmVzZXQgYG91dHB1dF9z aXplJyBhbmQgYG91dF9idWZmJy4KICAgIElmIGBzd2FwcGluZ19oYWxmd29yZHMnIG9yIGBz d2FwcGluZ19ieXRlcycgaXMgc2V0LAogICAgZG8gdGhlIGFwcHJvcHJpYXRlIHN3YXBwaW5n IGZpcnN0LiAgT3VyIGNhbGxlcnMgaGF2ZQotICAgdG8gbWFrZSBzdXJlIHRvIG9ubHkgc2V0 IHRoZXNlIGZsYWdzIGlmIGBvdXRwdXRfc2l6ZScgCisgICB0byBtYWtlIHN1cmUgdG8gb25s eSBzZXQgdGhlc2UgZmxhZ3MgaWYgYG91dHB1dF9zaXplJwogICAgaXMgYXBwcm9wcmlhdGUg KGEgbXVsdGlwbGUgb2YgNCBmb3IgYHN3YXBwaW5nX2hhbGZ3b3JkcycsCiAgICAyIGZvciBg c3dhcHBpbmdfYnl0ZXMnKS4gIFRoZSBmYWN0IHRoYXQgRElTS19JT19CTE9DS19TSVpFCiAg ICBtdXN0IGFsd2F5cyBiZSBhIG11bHRpcGxlIG9mIDQgaGVscHMgdXMgKGFuZCBvdXIgY2Fs bGVycykKQEAgLTE4Nyw4ICsxODcsOCBAQCB0YXBlX2ZpbGxfaW5wdXRfYnVmZmVyIChpbnQg aW5fZGVzLCBpbnQgbnVtX2J5dGVzKQogewogI2lmZGVmIEJST0tFTl9MT05HX1RBUEVfRFJJ VkVSCiAgIC8qIFNvbWUgdGFwZSBkcml2ZXJzIHNlZW0gdG8gaGF2ZSBhIHNpZ25lZCBpbnRl cm5hbCBzZWVrIHBvaW50ZXIgYW5kCi0gICAgIHRoZXkgbG9zZSBpZiBpdCBvdmVyZmxvd3Mg YW5kIGJlY29tZXMgbmVnYXRpdmUgKGUuZy4gd2hlbiB3cml0aW5nIAotICAgICB0YXBlcyA+ IDRHYikuICBEb2luZyBhbiBsc2VlayAoZGVzLCAwLCBTRUVLX1NFVCkgc2VlbXMgdG8gcmVz ZXQgdGhlIAorICAgICB0aGV5IGxvc2UgaWYgaXQgb3ZlcmZsb3dzIGFuZCBiZWNvbWVzIG5l Z2F0aXZlIChlLmcuIHdoZW4gd3JpdGluZworICAgICB0YXBlcyA+IDRHYikuICBEb2luZyBh biBsc2VlayAoZGVzLCAwLCBTRUVLX1NFVCkgc2VlbXMgdG8gcmVzZXQgdGhlCiAgICAgIHNl ZWsgcG9pbnRlciBhbmQgcHJldmVudCBpdCBmcm9tIG92ZXJmbG93aW5nLiAgKi8KICAgaWYg KGlucHV0X2lzX3NwZWNpYWwKICAgICAgICYmICggKGlucHV0X2J5dGVzX2JlZm9yZV9sc2Vl ayArPSBudW1fYnl0ZXMpID49IDEwNzM3NDE4MjRMKSApCkBAIC0zMzEsOCArMzMxLDggQEAg dGFwZV9idWZmZXJlZF9wZWVrIChjaGFyICpwZWVrX2J1ZiwgaW50IGluX2RlcywgaW50IG51 bV9ieXRlcykKIAogI2lmZGVmIEJST0tFTl9MT05HX1RBUEVfRFJJVkVSCiAgIC8qIFNvbWUg dGFwZSBkcml2ZXJzIHNlZW0gdG8gaGF2ZSBhIHNpZ25lZCBpbnRlcm5hbCBzZWVrIHBvaW50 ZXIgYW5kCi0gICAgIHRoZXkgbG9zZSBpZiBpdCBvdmVyZmxvd3MgYW5kIGJlY29tZXMgbmVn YXRpdmUgKGUuZy4gd2hlbiB3cml0aW5nIAotICAgICB0YXBlcyA+IDRHYikuICBEb2luZyBh biBsc2VlayAoZGVzLCAwLCBTRUVLX1NFVCkgc2VlbXMgdG8gcmVzZXQgdGhlIAorICAgICB0 aGV5IGxvc2UgaWYgaXQgb3ZlcmZsb3dzIGFuZCBiZWNvbWVzIG5lZ2F0aXZlIChlLmcuIHdo ZW4gd3JpdGluZworICAgICB0YXBlcyA+IDRHYikuICBEb2luZyBhbiBsc2VlayAoZGVzLCAw LCBTRUVLX1NFVCkgc2VlbXMgdG8gcmVzZXQgdGhlCiAgICAgIHNlZWsgcG9pbnRlciBhbmQg cHJldmVudCBpdCBmcm9tIG92ZXJmbG93aW5nLiAgKi8KICAgaWYgKGlucHV0X2lzX3NwZWNp YWwKICAgICAgICYmICggKGlucHV0X2J5dGVzX2JlZm9yZV9sc2VlayArPSBudW1fYnl0ZXMp ID49IDEwNzM3NDE4MjRMKSApCkBAIC00MTUsMTQgKzQxNSwxNCBAQCB0YXBlX3Rvc3NfaW5w dXQgKGludCBpbl9kZXMsIG9mZl90IG51bV9ieXRlcykKIH0KIAwKIHZvaWQKLXdyaXRlX251 bHNfdG9fZmlsZSAob2ZmX3QgbnVtX2J5dGVzLCBpbnQgb3V0X2RlcywgCit3cml0ZV9udWxz X3RvX2ZpbGUgKG9mZl90IG51bV9ieXRlcywgaW50IG91dF9kZXMsCiAgICAgICAgICAgICAg ICAgICAgIHZvaWQgKCp3cml0ZXIpIChjaGFyICppbl9idWYsIGludCBvdXRfZGVzLCBvZmZf dCBudW1fYnl0ZXMpKQogewogICBvZmZfdAlibG9ja3M7CiAgIG9mZl90CWV4dHJhX2J5dGVz OwogICBvZmZfdAlpOwogICBzdGF0aWMgY2hhciB6ZXJvc181MTJbNTEyXTsKLSAgCisKICAg YmxvY2tzID0gbnVtX2J5dGVzIC8gc2l6ZW9mIHplcm9zXzUxMjsKICAgZXh0cmFfYnl0ZXMg PSBudW1fYnl0ZXMgJSBzaXplb2YgemVyb3NfNTEyOwogICBmb3IgKGkgPSAwOyBpIDwgYmxv Y2tzOyArK2kpCkBAIC02MDIsNyArNjAyLDcgQEAgY3JlYXRlX2FsbF9kaXJlY3RvcmllcyAo Y2hhciBjb25zdCAqbmFtZSkKICAgY2hhciAqZGlyOwogCiAgIGRpciA9IGRpcl9uYW1lIChu YW1lKTsKLSAgCisKICAgaWYgKGRpciA9PSBOVUxMKQogICAgIGVycm9yIChQQVhFWElUX0ZB SUxVUkUsIDAsIF8oInZpcnR1YWwgbWVtb3J5IGV4aGF1c3RlZCIpKTsKIApAQCAtNzA1LDEw ICs3MDUsMTAgQEAgZmluZF9pbm9kZV92YWwgKGlub190IG5vZGVfbnVtLCB1bnNpZ25lZCBs b25nIG1ham9yX251bSwKIAkJIHVuc2lnbmVkIGxvbmcgbWlub3JfbnVtKQogewogICBzdHJ1 Y3QgaW5vZGVfdmFsIHNhbXBsZTsKLSAgCisKICAgaWYgKCFoYXNoX3RhYmxlKQogICAgIHJl dHVybiBOVUxMOwotICAKKwogICBzYW1wbGUuaW5vZGUgPSBub2RlX251bTsKICAgc2FtcGxl Lm1ham9yX251bSA9IG1ham9yX251bTsKICAgc2FtcGxlLm1pbm9yX251bSA9IG1pbm9yX251 bTsKQEAgLTczMyw3ICs3MzMsNyBAQCBhZGRfaW5vZGUgKGlub190IG5vZGVfbnVtLCBjaGFy ICpmaWxlX25hbWUsIHVuc2lnbmVkIGxvbmcgbWFqb3JfbnVtLAogewogICBzdHJ1Y3QgaW5v ZGVfdmFsICp0ZW1wOwogICBzdHJ1Y3QgaW5vZGVfdmFsICplID0gTlVMTDsKLSAgCisKICAg LyogQ3JlYXRlIG5ldyBpbm9kZSByZWNvcmQuICAqLwogICB0ZW1wID0gKHN0cnVjdCBpbm9k ZV92YWwgKikgeG1hbGxvYyAoc2l6ZW9mIChzdHJ1Y3QgaW5vZGVfdmFsKSk7CiAgIHRlbXAt Pmlub2RlID0gbm9kZV9udW07CkBAIC0xMDA0LDcgKzEwMDQsNyBAQCBidWZfYWxsX3plcm9z IChjaGFyICpidWYsIGludCBidWZzaXplKQogCiAvKiBXcml0ZSBOQllURSBieXRlcyBmcm9t IEJVRiB0byBmaWxlIGRlc2NyaXB0b3IgRklMREVTLCB0cnlpbmcgdG8KICAgIGNyZWF0ZSBo b2xlcyBpbnN0ZWFkIG9mIHdyaXRpbmcgYmxvY2tmdWxzIG9mIHplcm9zLgotICAgCisKICAg IFJldHVybiB0aGUgbnVtYmVyIG9mIGJ5dGVzIHdyaXR0ZW4gKGluY2x1ZGluZyBieXRlcyBp biB6ZXJvCiAgICByZWdpb25zKSBvbiBzdWNjZXNzLCAtMSBvbiBlcnJvci4KIApAQCAtMTAy NCw3ICsxMDI0LDcgQEAgc3BhcnNlX3dyaXRlIChpbnQgZmlsZGVzLCBjaGFyICpidWYsIHNp emVfdCBuYnl0ZXMsIGJvb2wgZmx1c2gpCiAKICAgZW51bSB7IGJlZ2luLCBpbl96ZXJvcywg bm90X2luX3plcm9zIH0gc3RhdGUgPQogCQkJICAgZGVsYXllZF9zZWVrX2NvdW50ID8gaW5f emVyb3MgOiBiZWdpbjsKLSAgCisKICAgd2hpbGUgKG5ieXRlcykKICAgICB7CiAgICAgICBz aXplX3QgcmVzdCA9IG5ieXRlczsKQEAgLTEwMzksNyArMTAzOSw3IEBAIHNwYXJzZV93cml0 ZSAoaW50IGZpbGRlcywgY2hhciAqYnVmLCBzaXplX3QgbmJ5dGVzLCBib29sIGZsdXNoKQog CSAgICAgIGlmIChzdGF0ZSA9PSBub3RfaW5femVyb3MpCiAJCXsKIAkJICBzc2l6ZV90IGJ5 dGVzID0gYnVmIC0gc3RhcnRfcHRyICsgcmVzdDsKLQkJICAKKwogCQkgIG4gPSB3cml0ZSAo ZmlsZGVzLCBzdGFydF9wdHIsIGJ5dGVzKTsKIAkJICBpZiAobiA9PSAtMSkKIAkJICAgIHJl dHVybiAtMTsKQEAgLTEwODgsOCArMTA4OCw4IEBAIHNwYXJzZV93cml0ZSAoaW50IGZpbGRl cywgY2hhciAqYnVmLCBzaXplX3QgbmJ5dGVzLCBib29sIGZsdXNoKQogICAgICAgaWYgKG4g IT0gMSkKIAlyZXR1cm4gbjsKICAgICAgIGRlbGF5ZWRfc2Vla19jb3VudCA9IDA7Ci0gICAg fSAgICAgIAotICAKKyAgICB9CisKICAgcmV0dXJuIG53cml0dGVuICsgc2Vla19jb3VudDsK IH0KIApAQCAtMTIyNyw3ICsxMjI3LDcgQEAgc2V0X3Blcm1zIChpbnQgZmQsIHN0cnVjdCBj cGlvX2ZpbGVfc3RhdCAqaGVhZGVyKQogICBpZiAoIW5vX2Nob3duX2ZsYWcpCiAgICAgewog ICAgICAgdWlkX3QgdWlkID0gQ1BJT19VSUQgKGhlYWRlci0+Y191aWQpOwotICAgICAgZ2lk X3QgZ2lkID0gQ1BJT19HSUQgKGhlYWRlci0+Y19naWQpOyAKKyAgICAgIGdpZF90IGdpZCA9 IENQSU9fR0lEIChoZWFkZXItPmNfZ2lkKTsKICAgICAgIGlmICgoZmNob3duX29yX2Nob3du IChmZCwgaGVhZGVyLT5jX25hbWUsIHVpZCwgZ2lkKSA8IDApCiAJICAmJiBlcnJubyAhPSBF UEVSTSkKIAljaG93bl9lcnJvcl9kZXRhaWxzIChoZWFkZXItPmNfbmFtZSwgdWlkLCBnaWQp OwpAQCAtMTI0NCwxMyArMTI0NCwxMyBAQCBzZXRfZmlsZV90aW1lcyAoaW50IGZkLAogCQlj b25zdCBjaGFyICpuYW1lLCB1bnNpZ25lZCBsb25nIGF0aW1lLCB1bnNpZ25lZCBsb25nIG10 aW1lKQogewogICBzdHJ1Y3QgdGltZXNwZWMgdHNbMl07Ci0gIAorCiAgIG1lbXNldCAoJnRz LCAwLCBzaXplb2YgdHMpOwogCiAgIHRzWzBdLnR2X3NlYyA9IGF0aW1lOwogICB0c1sxXS50 dl9zZWMgPSBtdGltZTsKIAotICAvKiBTaWxlbnRseSBpZ25vcmUgRVJPRlMgYmVjYXVzZSBy ZWFkaW5nIHRoZSBmaWxlIHdvbid0IGhhdmUgdXBzZXQgaXRzIAorICAvKiBTaWxlbnRseSBp Z25vcmUgRVJPRlMgYmVjYXVzZSByZWFkaW5nIHRoZSBmaWxlIHdvbid0IGhhdmUgdXBzZXQg aXRzCiAgICAgIHRpbWVzdGFtcCBpZiBpdCdzIG9uIGEgcmVhZC1vbmx5IGZpbGVzeXN0ZW0u ICovCiAgIGlmIChmZHV0aW1lbnMgKGZkLCBuYW1lLCB0cykgPCAwICYmIGVycm5vICE9IEVS T0ZTKQogICAgIHV0aW1lX2Vycm9yIChuYW1lKTsKQEAgLTEzMDIsNyArMTMwMiw3IEBAIGNw aW9fc2FmZXJfbmFtZV9zdWZmaXggKGNoYXIgKm5hbWUsIGJvb2wgbGlua190YXJnZXQsIGJv b2wgYWJzb2x1dGVfbmFtZXMsCiAMCiAvKiBUaGlzIGlzIGEgc2ltcGxpZmllZCBmb3JtIG9m IGRlbGF5ZWQgc2V0X3N0YXQgdXNlZCBieSBHTlUgdGFyLgogICAgV2l0aCB0aGUgdGltZSwg Ym90aCBmb3JtcyB3aWxsIG1lcmdlIGFuZCBwYXNzIHRvIHBheHV0aWxzCi0gICAKKwogICAg TGlzdCBvZiBkaXJlY3RvcmllcyB3aG9zZSBzdGF0dXNlcyB3ZSBuZWVkIHRvIGV4dHJhY3Qg YWZ0ZXIgd2UndmUKICAgIGZpbmlzaGVkIGV4dHJhY3RpbmcgdGhlaXIgc3Vic2lkaWFyeSBm aWxlcy4gIElmIHlvdSBjb25zaWRlciBlYWNoCiAgICBjb250aWd1b3VzIHN1YnNlcXVlbmNl IG9mIGVsZW1lbnRzIG9mIHRoZSBmb3JtIFtEXT9bXkRdKiwgd2hlcmUgW0RdCkBAIC0xNDIw LDcgKzE0MjAsNyBAQCBjcGlvX21rZGlyIChzdHJ1Y3QgY3Bpb19maWxlX3N0YXQgKmZpbGVf aGRyLCBpbnQgKnNldHN0YXRfZGVsYXllZCkKIHsKICAgaW50IHJjOwogICBtb2RlX3QgbW9k ZSA9IGZpbGVfaGRyLT5jX21vZGU7Ci0gIAorCiAgIGlmICghKGZpbGVfaGRyLT5jX21vZGUg JiBTX0lXVVNSKSkKICAgICB7CiAgICAgICByYyA9IG1rZGlyIChmaWxlX2hkci0+Y19uYW1l LCBtb2RlIHwgU19JV1VTUik7CkBAIC0xNDQzLDEwICsxNDQzLDEwIEBAIGNwaW9fY3JlYXRl X2RpciAoc3RydWN0IGNwaW9fZmlsZV9zdGF0ICpmaWxlX2hkciwgaW50IGV4aXN0aW5nX2Rp cikKIHsKICAgaW50IHJlczsJCQkvKiBSZXN1bHQgb2YgdmFyaW91cyBmdW5jdGlvbiBjYWxs cy4gICovCiAgIGludCBzZXRzdGF0X2RlbGF5ZWQgPSAwOwotICAKKwogICBpZiAodG9fc3Rk b3V0X29wdGlvbikKICAgICByZXR1cm4gMDsKLSAgCisKICAgLyogU3RyaXAgYW55IHRyYWls aW5nIGAvJ3Mgb2ZmIHRoZSBmaWxlbmFtZTsgdGFyIHB1dHMKICAgICAgdGhlbSBvbi4gIFdl IG1pZ2h0IGFzIHdlbGwgZG8gaXQgaGVyZSBpbiBjYXNlIGFueWJvZHkKICAgICAgZWxzZSBk b2VzIHRvbywgc2luY2UgdGhleSBjYXVzZSBzdHJhbmdlIHRoaW5ncyB0byBoYXBwZW4uICAq LwpAQCAtMTUzNSw3ICsxNTM1LDcgQEAgYXJmX3N0b3Jlc19pbm9kZV9wIChlbnVtIGFyY2hp dmVfZm9ybWF0IGFyZikKICAgICB9CiAgIHJldHVybiAxOwogfQotICAKKwogdm9pZAogY3Bp b19maWxlX3N0YXRfaW5pdCAoc3RydWN0IGNwaW9fZmlsZV9zdGF0ICpmaWxlX2hkcikKIHsK ZGlmZiAtLWdpdCBhL3N5c2RlcC5tNCBiL3N5c2RlcC5tNAppbmRleCA0N2RmZWYxLi44Nzhm NWY4IDEwMDY0NAotLS0gYS9zeXNkZXAubTQKKysrIGIvc3lzZGVwLm00CkBAIC04Myw0ICs4 MywzIEBAIGRlZmluZShgSU5UUkVUVkFMJywtMSlkbmwKIGRpdmVydCgwKWRubAogUk9IRUFE RVIKICcpCi0KZGlmZiAtLWdpdCBhL3Rlc3RzL0NWRS0yMDE1LTExOTcuYXQgYi90ZXN0cy9D VkUtMjAxNS0xMTk3LmF0CmluZGV4IDNjNjNjYmUuLjUyOTBmNDYgMTAwNjQ0Ci0tLSBhL3Rl c3RzL0NWRS0yMDE1LTExOTcuYXQKKysrIGIvdGVzdHMvQ1ZFLTIwMTUtMTE5Ny5hdApAQCAt NDAsNCArNDAsMyBAQCBkaXIvZmlsZQogMSBibG9jawogXSkKIEFUX0NMRUFOVVAKLQpkaWZm IC0tZ2l0IGEvdGVzdHMvQ1ZFLTIwMTktMTQ4NjYuYXQgYi90ZXN0cy9DVkUtMjAxOS0xNDg2 Ni5hdAppbmRleCA0YjRlN2E2Li4wMGJkYjYxIDEwMDY0NAotLS0gYS90ZXN0cy9DVkUtMjAx OS0xNDg2Ni5hdAorKysgYi90ZXN0cy9DVkUtMjAxOS0xNDg2Ni5hdApAQCAtMjUsNyArMjUs NyBAQCBpZiBnZW5maWxlIC1zIDE2RyAtZiBmaWxlOyB0aGVuCiAgIGV4aXQgJD8KIGVsc2UK ICAgQVRfU0tJUF9URVNUCi1maSAgCitmaQogXSwKIFswXSwKIFtdLApkaWZmIC0tZ2l0IGEv dGVzdHMvTWFrZWZpbGUuYW0gYi90ZXN0cy9NYWtlZmlsZS5hbQppbmRleCBjNDEyYWMzLi43 YWUwNGRiIDEwMDY0NAotLS0gYS90ZXN0cy9NYWtlZmlsZS5hbQorKysgYi90ZXN0cy9NYWtl ZmlsZS5hbQpAQCAtOTQsNCArOTQsMyBAQCBBTV9DUFBGTEFHUyA9IFwKICAtRExPQ0FMRURJ Uj1cIiQobG9jYWxlZGlyKVwiCiAKIExEQUREPS4uL2dudS9saWJnbnUuYSBATElCX0NMT0NL X0dFVFRJTUVAIEBJTlRMTElCU0AKLQpkaWZmIC0tZ2l0IGEvdGVzdHMvYXRsb2NhbC5pbiBi L3Rlc3RzL2F0bG9jYWwuaW4KaW5kZXggNTBiMGEzOC4uOGQ3NThkYSAxMDA2NDQKLS0tIGEv dGVzdHMvYXRsb2NhbC5pbgorKysgYi90ZXN0cy9hdGxvY2FsLmluCkBAIC00LDQgKzQsMyBA QAogIyBGb3VuZGF0aW9uLCBJbmMuCiAKIFBBVEg9QGFic19idWlsZGRpckA6QGFic190b3Bf YnVpbGRkaXJAL3NyYzokdG9wX3NyY2Rpcjokc3JjZGlyOiRQQVRICi0KZGlmZiAtLWdpdCBh L3Rlc3RzL2JpZy1ibG9jay1zaXplLmF0IGIvdGVzdHMvYmlnLWJsb2NrLXNpemUuYXQKaW5k ZXggMDdiNjRlYi4uMGFiNmFjOSAxMDA2NDQKLS0tIGEvdGVzdHMvYmlnLWJsb2NrLXNpemUu YXQKKysrIGIvdGVzdHMvYmlnLWJsb2NrLXNpemUuYXQKQEAgLTIwLDcgKzIwLDcgQEAgQVRf S0VZV09SRFMoW2Jsb2NrIGludGVnZXIgb3ZlcmZsb3ddKQogCiAjIERlc2NyaXB0aW9uOiBD cGlvIHZlcnNpb25zIHVwIHRvIDIuMTIgZGlkIG5vdCBjaGVjayB0aGUgc2l6ZSBvZiB0aGUK ICMgdmFsdWUgc3VwcGxpZWQgdG8gdGhlIC0tYmxvY2stc2l6ZSBhcmd1bWVudC4gVGhpcyBj b3VsZCByZXN1bHQgaW4KLSMgYSBzaWduZWQgaW50ZWdlciBvdmVyZmxvdy4gCisjIGEgc2ln bmVkIGludGVnZXIgb3ZlcmZsb3cuCiAKIEFUX0NIRUNLKFsKIGVjaG8gIkFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEiID4gZmls ZQpAQCAtMzQsNSArMzQsMyBAQCBjcGlvOiBpbnZhbGlkIGJsb2NrIHNpemUKIFRyeSAnY3Bp byAtLWhlbHAnIG9yICdjcGlvIC0tdXNhZ2UnIGZvciBtb3JlIGluZm9ybWF0aW9uLl0KICkK IEFUX0NMRUFOVVAKLQotCmRpZmYgLS1naXQgYS90ZXN0cy9pbm91dC5hdCBiL3Rlc3RzL2lu b3V0LmF0CmluZGV4IDk0ZmZhZWUuLjZlYzhjODEgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2lub3V0 LmF0CisrKyBiL3Rlc3RzL2lub3V0LmF0CkBAIC0yMCw3ICsyMCw3IEBACiBBVF9TRVRVUChb YmFzaWMgZnVuY3Rpb25hbGl0eTogY29weWluL2NvcHlvdXRdKQogQVRfS0VZV09SRFMoW2Nv cHlpbiBjb3B5b3V0XSkKIAotQVRfREFUQShbZmlsZWxpc3RdLFthIDE4CQorQVRfREFUQShb ZmlsZWxpc3RdLFthIDE4CiBiCTEwMjQKIGMJMzU2CiBkCTIwMDAwCmRpZmYgLS1naXQgYS90 ZXN0cy9pbnRlcmRpci5hdCBiL3Rlc3RzL2ludGVyZGlyLmF0CmluZGV4IDg4MTZiMDkuLjRj MDI3ZmMgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2ludGVyZGlyLmF0CisrKyBiL3Rlc3RzL2ludGVy ZGlyLmF0CkBAIC0zNywxMSArMzcsMTEgQEAgZ2VuZmlsZSAtLWZpbGUgZGlyL2ZpbGUKIGVj aG8gQ29weWluZyB0aGUgaGllcmFyY2h5CiBjcGlvIC1wZHZtIGVuL3RvL3RyZSA8IGZpbGVs aXN0IDI+JjEKIGVjaG8gUmVzdWx0cwotZ2VuZmlsZSAtLXN0YXQ9bmFtZSxtb2RlLjc3NyBl biAKLWdlbmZpbGUgLS1zdGF0PW5hbWUsbW9kZS43NzcgZW4vdG8gCi1nZW5maWxlIC0tc3Rh dD1uYW1lLG1vZGUuNzc3IGVuL3RvL3RyZSAKLWdlbmZpbGUgLS1zdGF0PW5hbWUsbW9kZS43 NzcgZW4vdG8vdHJlL2RpciAKLWdlbmZpbGUgLS1zdGF0PW5hbWUsbW9kZS43NzcgZW4vdG8v dHJlL2Rpci9maWxlIAorZ2VuZmlsZSAtLXN0YXQ9bmFtZSxtb2RlLjc3NyBlbgorZ2VuZmls ZSAtLXN0YXQ9bmFtZSxtb2RlLjc3NyBlbi90bworZ2VuZmlsZSAtLXN0YXQ9bmFtZSxtb2Rl Ljc3NyBlbi90by90cmUKK2dlbmZpbGUgLS1zdGF0PW5hbWUsbW9kZS43NzcgZW4vdG8vdHJl L2RpcgorZ2VuZmlsZSAtLXN0YXQ9bmFtZSxtb2RlLjc3NyBlbi90by90cmUvZGlyL2ZpbGUK IF0sCiBbMF0sCiBbQ29weWluZyB0aGUgaGllcmFyY2h5CmRpZmYgLS1naXQgYS90ZXN0cy9z ZXRzdGF0MDEuYXQgYi90ZXN0cy9zZXRzdGF0MDEuYXQKaW5kZXggNmIzNmQyYi4uYjk5NjE3 YSAxMDA2NDQKLS0tIGEvdGVzdHMvc2V0c3RhdDAxLmF0CisrKyBiL3Rlc3RzL3NldHN0YXQw MS5hdApAQCAtNDEsNSArNDEsMyBAQCBnZW5maWxlIC0tc3RhdD1tb2RlLjc3NyBkaXIKIF0p CiAKIEFUX0NMRUFOVVAKLQotCmRpZmYgLS1naXQgYS90ZXN0cy9zZXRzdGF0MDIuYXQgYi90 ZXN0cy9zZXRzdGF0MDIuYXQKaW5kZXggNWVlOTEyZi4uZTIyMjJmZSAxMDA2NDQKLS0tIGEv dGVzdHMvc2V0c3RhdDAyLmF0CisrKyBiL3Rlc3RzL3NldHN0YXQwMi5hdApAQCAtNDYsNSAr NDYsMyBAQCBnZW5maWxlIC0tc3RhdD1tb2RlLjc3NyBkaXIKIF0pCiAKIEFUX0NMRUFOVVAK LQotCmRpZmYgLS1naXQgYS90ZXN0cy9zZXRzdGF0MDMuYXQgYi90ZXN0cy9zZXRzdGF0MDMu YXQKaW5kZXggN2U5MjUwNS4uNzUwZWZlYiAxMDA2NDQKLS0tIGEvdGVzdHMvc2V0c3RhdDAz LmF0CisrKyBiL3Rlc3RzL3NldHN0YXQwMy5hdApAQCAtNDMsNSArNDMsMyBAQCBnZW5maWxl IC0tc3RhdD1tb2RlLjc3NyBuZXdkaXIvZGlyCiBdKQogCiBBVF9DTEVBTlVQCi0KLQpkaWZm IC0tZ2l0IGEvdGVzdHMvc2V0c3RhdDA0LmF0IGIvdGVzdHMvc2V0c3RhdDA0LmF0CmluZGV4 IGE2ZDU2MjMuLmNmZjUxYzAgMTAwNjQ0Ci0tLSBhL3Rlc3RzL3NldHN0YXQwNC5hdAorKysg Yi90ZXN0cy9zZXRzdGF0MDQuYXQKQEAgLTQ3LDUgKzQ3LDMgQEAgZ2VuZmlsZSAtLXN0YXQ9 bW9kZS43NzcgZGlyCiBdKQogCiBBVF9DTEVBTlVQCi0KLQpkaWZmIC0tZ2l0IGEvdGVzdHMv c2V0c3RhdDA1LmF0IGIvdGVzdHMvc2V0c3RhdDA1LmF0CmluZGV4IGFjOTMxMzguLjAzMzVk NmEgMTAwNjQ0Ci0tLSBhL3Rlc3RzL3NldHN0YXQwNS5hdAorKysgYi90ZXN0cy9zZXRzdGF0 MDUuYXQKQEAgLTQ0LDUgKzQ0LDMgQEAgZ2VuZmlsZSAtLXN0YXQ9bW9kZS43NzcgbmV3ZGly L2RpcgogXSkKIAogQVRfQ0xFQU5VUAotCi0KZGlmZiAtLWdpdCBhL3Rlc3RzL3N5bWxpbmst YmFkLWxlbmd0aC5hdCBiL3Rlc3RzL3N5bWxpbmstYmFkLWxlbmd0aC5hdAppbmRleCA4YWYw YjViLi5kMzNjYmNmIDEwMDY0NAotLS0gYS90ZXN0cy9zeW1saW5rLWJhZC1sZW5ndGguYXQK KysrIGIvdGVzdHMvc3ltbGluay1iYWQtbGVuZ3RoLmF0CkBAIC00Niw3ICs0Niw3IEBAIEFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQT0KIAogQVRfQ0hFQ0soWwogYmFzZTY0IC1kIEFSQ0hJVkUu YmFzZTY0ID4gQVJDSElWRSB8fCBBVF9TS0lQX1RFU1QKLVRaPVVUQyBjcGlvIC1udHYgPCBB UkNISVZFIDI+c3RkZXJyIAorVFo9VVRDIGNwaW8gLW50diA8IEFSQ0hJVkUgMj5zdGRlcnIK IGNhdCBzdGRlcnIgfCBncmVwIC12IFwKICAgICAtZSAnc3RvcmVkIGZpbGVuYW1lIGxlbmd0 aCBpcyBvdXQgb2YgcmFuZ2UnIFwKICAgICAtZSAncHJlbWF0dXJlIGVuZCBvZiBmaWxlJyBc CmRpZmYgLS1naXQgYS90ZXN0cy92ZXJzaW9uLmF0IGIvdGVzdHMvdmVyc2lvbi5hdAppbmRl eCBiYzc2MGNlLi5kMWYzZmNmIDEwMDY0NAotLS0gYS90ZXN0cy92ZXJzaW9uLmF0CisrKyBi L3Rlc3RzL3ZlcnNpb24uYXQKQEAgLTMyLDQgKzMyLDMgQEAgZWNobyAnPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0nCiBd KQogCiBBVF9DTEVBTlVQCi0gICAgICAgICAgCi0tIAoyLjMyLjAKCg== --------------0z9l0y8pWavR5OV3QkLpDDW6 Content-Type: text/x-patch; charset=UTF-8; name="0002-build-update-submodules-to-latest.patch" Content-Disposition: attachment; filename="0002-build-update-submodules-to-latest.patch" Content-Transfer-Encoding: base64 RnJvbSA4N2M4Y2FlNWM5NDkyZGM4NmExZWY5ZTQ2Yjk5OWY4NTk5NThhNDc4IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBGcmksIDI4IEphbiAyMDIyIDA4OjM4OjE5IC0wODAwClN1YmplY3Q6IFtQQVRD SCAyLzRdIGJ1aWxkOiB1cGRhdGUgc3VibW9kdWxlcyB0byBsYXRlc3QKCi0tLQogZ251bGli ICAgfCAyICstCiBwYXh1dGlscyB8IDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgMiBpbnNlcnRp b25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2dudWxpYiBiL2dudWxpYgpp bmRleCA3NTU0MWM2Li5hM2UxZTc0IDE2MDAwMAotLS0gYS9nbnVsaWIKKysrIGIvZ251bGli CkBAIC0xICsxIEBACi1TdWJwcm9qZWN0IGNvbW1pdCA3NTU0MWM2YWRhZjZmYzQ1NTQxYTM1 ZDJjODgwM2I5YjY4ZjJhN2ZjCitTdWJwcm9qZWN0IGNvbW1pdCBhM2UxZTc0ZTY1YWYwNjQ5 MjI0ZDg0ODEzZGYyZTllYmVhMmU5YTY3CmRpZmYgLS1naXQgYS9wYXh1dGlscyBiL3BheHV0 aWxzCmluZGV4IDQ1YWYxNjMuLjY4YWYzMTggMTYwMDAwCi0tLSBhL3BheHV0aWxzCisrKyBi L3BheHV0aWxzCkBAIC0xICsxIEBACi1TdWJwcm9qZWN0IGNvbW1pdCA0NWFmMTYzMmFhNjRh NWJhMWIxMDhlMjQ4OTIwZTY3YzE4MGU4NDg1CitTdWJwcm9qZWN0IGNvbW1pdCA2OGFmMzE4 MDgzZWYyMTA0OGU0MWI2ZTMxYWViNDhiZDZhY2JlOTI0Ci0tIAoyLjMyLjAKCg== --------------0z9l0y8pWavR5OV3QkLpDDW6 Content-Type: text/x-patch; charset=UTF-8; name="0003-Fix-integer-overflows-in-timestamp-output.patch" Content-Disposition: attachment; filename="0003-Fix-integer-overflows-in-timestamp-output.patch" Content-Transfer-Encoding: base64 RnJvbSBhZjQ2YTNlMjFkZDVkNzQ3MTBiNjcxMjVhOTg0OGI1YmEyZTAzZTkyIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBTdW4sIDYgRmViIDIwMjIgMTI6Mzk6MzIgLTA4MDAKU3ViamVjdDogW1BBVENI IDMvNF0gRml4IGludGVnZXIgb3ZlcmZsb3dzIGluIHRpbWVzdGFtcCBvdXRwdXQKCiogc3Jj L2NvcHlpbi5jIChsb25nX2Zvcm1hdCk6IEZpeCBzb21lIHVubGlrZWx5IGludGVnZXIgb3Zl cmZsb3cgYnVncy4KV29yayBldmVuIGlmIChjdXJyZW50X3RpbWUgLSB3aGVuKSBvdmVyZmxv d3MsIHdoaWNoIGlzCnBvc3NpYmxlIGlmIHRpbWVfdCBpcyB1bnNpZ25lZC4KRG8gbm90IGFz c3VtZSB0aGF0IHN5c3RlbSBpbnRlZ2VyIHR5cGVzIGZpdCBpbnRvIHVuc2lnbmVkIGxvbmcu ClNpbXBsaWZ5IGJ5IHVzaW5nICVqdS4gIE5vIG5lZWQgZm9yIGxvY2FsIHRidWYgYXJyYXku Ci0tLQogc3JjL2NvcHlpbi5jIHwgNTYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDMyIGluc2VydGlvbnMo KyksIDI0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyYy9jb3B5aW4uYyBiL3NyYy9j b3B5aW4uYwppbmRleCBmYjMwY2Y2Li4wYWYyM2EwIDEwMDY0NAotLS0gYS9zcmMvY29weWlu LmMKKysrIGIvc3JjL2NvcHlpbi5jCkBAIC03MzAsNDIgKzczMCw1MCBAQCB2b2lkCiBsb25n X2Zvcm1hdCAoc3RydWN0IGNwaW9fZmlsZV9zdGF0ICpmaWxlX2hkciwgY2hhciBjb25zdCAq bGlua19uYW1lKQogewogICBjaGFyIG1idWZbMTFdOwotICBjaGFyIHRidWZbNDBdOwotICB0 aW1lX3Qgd2hlbjsKLQogICBtb2RlX3N0cmluZyAoZmlsZV9oZHItPmNfbW9kZSwgbWJ1Zik7 CiAgIG1idWZbMTBdID0gJ1wwJzsKIAotICAvKiBHZXQgdGltZSB2YWx1ZXMgcmVhZHkgdG8g cHJpbnQuICAqLwotICB3aGVuID0gZmlsZV9oZHItPmNfbXRpbWU7Ci0gIHN0cmNweSAodGJ1 ZiwgY3RpbWUgKCZ3aGVuKSk7Ci0gIGlmIChjdXJyZW50X3RpbWUgLSB3aGVuID4gNkwgKiAz MEwgKiAyNEwgKiA2MEwgKiA2MEwKLSAgICAgIHx8IGN1cnJlbnRfdGltZSAtIHdoZW4gPCAw TCkKLSAgICB7Ci0gICAgICAvKiBUaGUgZmlsZSBpcyBvbGRlciB0aGFuIDYgbW9udGhzLCBv ciBpbiB0aGUgZnV0dXJlLgotCSBTaG93IHRoZSB5ZWFyIGluc3RlYWQgb2YgdGhlIHRpbWUg b2YgZGF5LiAgKi8KLSAgICAgIHN0cmNweSAodGJ1ZiArIDExLCB0YnVmICsgMTkpOwotICAg IH0KLSAgdGJ1ZlsxNl0gPSAnXDAnOwotCi0gIHByaW50ZiAoIiVzICUzbHUgIiwgbWJ1Ziwg KHVuc2lnbmVkIGxvbmcpIGZpbGVfaGRyLT5jX25saW5rKTsKKyAgdWludG1heF90IG5saW5r ID0gZmlsZV9oZHItPmNfbmxpbms7CisgIHByaW50ZiAoIiVzICUzanUgIiwgbWJ1Ziwgbmxp bmspOwogCiAgIGlmIChudW1lcmljX3VpZCkKLSAgICBwcmludGYgKCIlLTh1ICUtOHUgIiwg KHVuc2lnbmVkIGludCkgZmlsZV9oZHItPmNfdWlkLAotCSAgICAodW5zaWduZWQgaW50KSBm aWxlX2hkci0+Y19naWQpOworICAgIHsKKyAgICAgIHVpbnRtYXhfdCB1aWQgPSBmaWxlX2hk ci0+Y191aWQsIGdpZCA9IGZpbGVfaGRyLT5jX2dpZDsKKyAgICAgIHByaW50ZiAoIiUtOGp1 ICUtOGp1ICIsIHVpZCwgZ2lkKTsKKyAgICB9CiAgIGVsc2UKICAgICBwcmludGYgKCIlLTgu OHMgJS04LjhzICIsIGdldHVzZXIgKGZpbGVfaGRyLT5jX3VpZCksCiAJICAgIGdldGdyb3Vw IChmaWxlX2hkci0+Y19naWQpKTsKIAogICBpZiAoKGZpbGVfaGRyLT5jX21vZGUgJiBDUF9J Rk1UKSA9PSBDUF9JRkNIUgogICAgICAgfHwgKGZpbGVfaGRyLT5jX21vZGUgJiBDUF9JRk1U KSA9PSBDUF9JRkJMSykKLSAgICBwcmludGYgKCIlM2x1LCAlM2x1ICIsCi0JICAgICh1bnNp Z25lZCBsb25nKSBmaWxlX2hkci0+Y19yZGV2X21haiwKLQkgICAgKHVuc2lnbmVkIGxvbmcp IGZpbGVfaGRyLT5jX3JkZXZfbWluKTsKKyAgICB7CisgICAgICB1aW50bWF4X3QgbWFqID0g ZmlsZV9oZHItPmNfcmRldl9tYWosIG1pbiA9IGZpbGVfaGRyLT5jX3JkZXZfbWluOworICAg ICAgcHJpbnRmICgiJTNqdSwgJTNqdSAiLCBtYWosIG1pbik7CisgICAgfQogICBlbHNlCi0g ICAgcHJpbnRmICgiJTgiUFJJdU1BWCIgIiwgKHVpbnRtYXhfdCkgZmlsZV9oZHItPmNfZmls ZXNpemUpOworICAgIHsKKyAgICAgIHVpbnRtYXhfdCBmaWxlc2l6ZSA9IGZpbGVfaGRyLT5j X2ZpbGVzaXplOworICAgICAgcHJpbnRmICgiJThqdSAiLCBmaWxlc2l6ZSk7CisgICAgfQog Ci0gIHByaW50ZiAoIiVzICIsIHRidWYgKyA0KTsKKyAgLyogR2V0IHRpbWUgdmFsdWVzIHJl YWR5IHRvIHByaW50LiAgRG8gbm90IHdvcnJ5IGFib3V0IGN0aW1lIGZhaWxpbmcsCisgICAg IG9yIGEgeWVhciBvdXRzaWRlIHRoZSByYW5nZSAxMDAwLTk5OTksIHNpbmNlIDAgPD0gV0hF TiA8IDIqKjMzLiAgKi8KKyAgdGltZV90IHdoZW4gPSBmaWxlX2hkci0+Y19tdGltZTsKKyAg Y2hhciAqdGJ1ZiA9IGN0aW1lICgmd2hlbik7CisgIGludCBzaXhfbW9udGhzID0gNiAqIDMw ICogMjQgKiA2MCAqIDYwOworICBib29sIHJlY2VudCA9ICgoY3VycmVudF90aW1lIDwgc2l4 X21vbnRocworCQkgIHx8IGN1cnJlbnRfdGltZSAtIHNpeF9tb250aHMgPD0gd2hlbikKKwkJ ICYmIHdoZW4gPD0gY3VycmVudF90aW1lKTsKKyAgaWYgKCFyZWNlbnQpCisgICAgeworICAg ICAgLyogVGhlIGZpbGUgaXMgb2xkZXIgdGhhbiA2IG1vbnRocywgb3IgaW4gdGhlIGZ1dHVy ZS4KKwkgU2hvdyB0aGUgeWVhciBpbnN0ZWFkIG9mIHRoZSB0aW1lIG9mIGRheS4gICovCisg ICAgICBtZW1jcHkgKHRidWYgKyAxMSwgdGJ1ZiArIDE5LCBzaXplb2YgIiAxOTcwIiAtIDEp OworICAgIH0KKyAgdGJ1ZlsxNl0gPSAnICc7CisgIHRidWZbMTddID0gJ1wwJzsKKyAgcHJp bnRmICgiJXMiLCB0YnVmICsgNCk7CiAKICAgcHJpbnRmICgiJXMiLCBxdW90ZWFyZyAoZmls ZV9oZHItPmNfbmFtZSkpOwogICBpZiAobGlua19uYW1lKQpAQCAtNzczLDcgKzc4MSw3IEBA IGxvbmdfZm9ybWF0IChzdHJ1Y3QgY3Bpb19maWxlX3N0YXQgKmZpbGVfaGRyLCBjaGFyIGNv bnN0ICpsaW5rX25hbWUpCiAgICAgICBwcmludGYgKCIgLT4gIik7CiAgICAgICBwcmludGYg KCIlcyIsIHF1b3RlYXJnIChsaW5rX25hbWUpKTsKICAgICB9Ci0gIHB1dGMgKCdcbicsIHN0 ZG91dCk7CisgIHB1dGNoYXIgKCdcbicpOwogfQogCiAvKiBSZWFkIGEgcGF0dGVybiBmaWxl IChmb3IgdGhlIC1FIG9wdGlvbikuICBQdXQgYSBsaXN0IG9mCi0tIAoyLjMyLjAKCg== --------------0z9l0y8pWavR5OV3QkLpDDW6 Content-Type: text/x-patch; charset=UTF-8; name="0004-Use-GNU-ls-algorithm-for-deciding-timestamp-format.patch" Content-Disposition: attachment; filename*0="0004-Use-GNU-ls-algorithm-for-deciding-timestamp-format.patc"; filename*1="h" Content-Transfer-Encoding: base64 RnJvbSA5NmNkYjcyZWVhZWQ5ZmJlNmEzNDM0ZWFiY2JmOTAwZmRmYzFhNmQ1IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBTdW4sIDYgRmViIDIwMjIgMTM6MzI6MTEgLTA4MDAKU3ViamVjdDogW1BBVENI IDQvNF0gVXNlIEdOVSBscyBhbGdvcml0aG0gZm9yIGRlY2lkaW5nIHRpbWVzdGFtcCBmb3Jt YXQKClByb2JsZW0gcmVwb3J0ZWQgYnkgRGFuIEphY29ic29uIChCdWcjNTA2OTQpLgoqIGdu dWxpYi5tb2R1bGVzOiBBZGQgZ2V0dGltZSwgdGltZXNwZWMuCiogc3JjL2NvcHlpbi5jOiBJ bmNsdWRlIHRpbWVzcGVjLmguCihjdXJyZW50X3RpbWUpOiBOb3cgc3RydWN0IHRpbWVzcGVj LCBub3QgdGltZV90LiAgQWxsIHVzZXMgY2hhbmdlZC4KKGxvbmdfZm9ybWF0KTogV2hlbiBm b3JtYXR0aW5nIGEgdGltZXN0YW1wLCB1c2UgdGhlIHNhbWUgYWxnb3JpdGhtIHRoYXQKR05V IGxzIGRvZXMgdG8gZGVjaWRlIHdoZXRoZXIgYSBmaWxlIGlzIHJlY2VudC4KLS0tCiBnbnVs aWIubW9kdWxlcyB8ICAyICsrCiBzcmMvY29weWluLmMgICB8IDMwICsrKysrKysrKysrKysr KysrKysrKystLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRpb25zKCspLCA4 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2dudWxpYi5tb2R1bGVzIGIvZ251bGliLm1v ZHVsZXMKaW5kZXggMTUwMzdhMC4uNjRjZGEwYSAxMDA2NDQKLS0tIGEvZ251bGliLm1vZHVs ZXMKKysrIGIvZ251bGliLm1vZHVsZXMKQEAgLTEyLDYgKzEyLDcgQEAgZm5tYXRjaC1nbnUK IGZ1bGwtd3JpdGUKIGdldGxpbmUKIGdldHRleHQtaAorZ2V0dGltZQogZ2l0bG9nLXRvLWNo YW5nZWxvZwogaGFzaAogaW50dG9zdHIKQEAgLTI0LDYgKzI1LDcgQEAgc3RkYm9vbAogc3Rk aW50CiBzdHBjcHkKIHN0cmVycm9yCit0aW1lc3BlYwogdW5sb2NrZWQtaW8KIHV0aW1lbnMK IHhhbGxvYwpkaWZmIC0tZ2l0IGEvc3JjL2NvcHlpbi5jIGIvc3JjL2NvcHlpbi5jCmluZGV4 IDBhZjIzYTAuLjI4ZDBjMzMgMTAwNjQ0Ci0tLSBhL3NyYy9jb3B5aW4uYworKysgYi9zcmMv Y29weWluLmMKQEAgLTMxLDYgKzMxLDcgQEAKICNpZm5kZWYJRk5NX1BBVEhOQU1FCiAjIGlu Y2x1ZGUgPGZubWF0Y2guaD4KICNlbmRpZgorI2luY2x1ZGUgPHRpbWVzcGVjLmg+CiAKICNp Zm5kZWYgSEFWRV9MQ0hPV04KICMgZGVmaW5lIGxjaG93bihmLHUsZykgMApAQCAtNzE5LDcg KzcyMCw3IEBAIGNvcHlpbl9maWxlIChzdHJ1Y3QgY3Bpb19maWxlX3N0YXQgKmZpbGVfaGRy LCBpbnQgaW5fZmlsZV9kZXMpCiAMCiAKIC8qIEN1cnJlbnQgdGltZSBmb3IgdmVyYm9zZSB0 YWJsZS4gICovCi1zdGF0aWMgdGltZV90IGN1cnJlbnRfdGltZTsKK3N0YXRpYyBzdHJ1Y3Qg dGltZXNwZWMgY3VycmVudF90aW1lOwogCiAKIC8qIFByaW50IHRoZSBmaWxlIGRlc2NyaWJl ZCBieSBGSUxFX0hEUiBpbiBsb25nIGZvcm1hdC4KQEAgLTc2MSwxMCArNzYyLDI1IEBAIGxv bmdfZm9ybWF0IChzdHJ1Y3QgY3Bpb19maWxlX3N0YXQgKmZpbGVfaGRyLCBjaGFyIGNvbnN0 ICpsaW5rX25hbWUpCiAgICAgIG9yIGEgeWVhciBvdXRzaWRlIHRoZSByYW5nZSAxMDAwLTk5 OTksIHNpbmNlIDAgPD0gV0hFTiA8IDIqKjMzLiAgKi8KICAgdGltZV90IHdoZW4gPSBmaWxl X2hkci0+Y19tdGltZTsKICAgY2hhciAqdGJ1ZiA9IGN0aW1lICgmd2hlbik7Ci0gIGludCBz aXhfbW9udGhzID0gNiAqIDMwICogMjQgKiA2MCAqIDYwOwotICBib29sIHJlY2VudCA9ICgo Y3VycmVudF90aW1lIDwgc2l4X21vbnRocwotCQkgIHx8IGN1cnJlbnRfdGltZSAtIHNpeF9t b250aHMgPD0gd2hlbikKLQkJICYmIHdoZW4gPD0gY3VycmVudF90aW1lKTsKKworICAvKiBJ ZiB0aGUgZmlsZSBhcHBlYXJzIHRvIGJlIGluIHRoZSBmdXR1cmUsIHVwZGF0ZSB0aGUgY3Vy cmVudAorICAgICB0aW1lLCBpbiBjYXNlIHRoZSBmaWxlIGhhcHBlbnMgdG8gaGF2ZSBiZWVu IG1vZGlmaWVkIHNpbmNlCisgICAgIHRoZSBsYXN0IHRpbWUgd2UgY2hlY2tlZCB0aGUgY2xv Y2suICAqLworICBzdHJ1Y3QgdGltZXNwZWMgd2hlbl90aW1lc3BlYyA9IHsgLnR2X3NlYyA9 IHdoZW4gfTsKKyAgaWYgKHRpbWVzcGVjX2NtcCAoY3VycmVudF90aW1lLCB3aGVuX3RpbWVz cGVjKSA8IDApCisgICAgY3VycmVudF90aW1lID0gY3VycmVudF90aW1lc3BlYyAoKTsKKwor ICAvKiBDb25zaWRlciBhIHRpbWUgdG8gYmUgcmVjZW50IGlmIGl0IGlzIHdpdGhpbiB0aGUg cGFzdCBzaXggbW9udGhzLgorICAgICBVc2UgdGhlIHNhbWUgYWxnb3JpdGhtIHRoYXQgR05V ICdscycgZG9lcywgZm9yIGNvbnNpc3RlbmN5LgorICAgICBBIEdyZWdvcmlhbiB5ZWFyIGhh cyAzNjUuMjQyNSAqIDI0ICogNjAgKiA2MCA9PSAzMTU1Njk1MiBzZWNvbmRzCisgICAgIG9u IHRoZSBhdmVyYWdlLiAgV3JpdGUgdGhpcyB2YWx1ZSBhcyBhbiBpbnRlZ2VyIGNvbnN0YW50 IHRvCisgICAgIGF2b2lkIGZsb2F0aW5nIHBvaW50IGhhc3NsZXMuICAqLworICBzdHJ1Y3Qg dGltZXNwZWMgc2l4X21vbnRoc19hZ28gPSB7CisgICAgLnR2X3NlYyA9IGN1cnJlbnRfdGlt ZS50dl9zZWMgLSAzMTU1Njk1MiAvIDIsCisgICAgLnR2X25zZWMgPSBjdXJyZW50X3RpbWUu dHZfbnNlYworICB9OworICBib29sIHJlY2VudCA9ICh0aW1lc3BlY19jbXAgKHNpeF9tb250 aHNfYWdvLCB3aGVuX3RpbWVzcGVjKSA8IDAKKwkJICYgdGltZXNwZWNfY21wICh3aGVuX3Rp bWVzcGVjLCBjdXJyZW50X3RpbWUpIDwgMCk7CiAgIGlmICghcmVjZW50KQogICAgIHsKICAg ICAgIC8qIFRoZSBmaWxlIGlzIG9sZGVyIHRoYW4gNiBtb250aHMsIG9yIGluIHRoZSBmdXR1 cmUuCkBAIC0xMjY0LDkgKzEyODAsNyBAQCBwcm9jZXNzX2NvcHlfaW4gKHZvaWQpCiAKICAg LyogR2V0IGRhdGUgYW5kIHRpbWUgaWYgbmVlZGVkIGZvciBwcm9jZXNzaW5nIHRoZSB0YWJs ZSBvcHRpb24uICAqLwogICBpZiAodGFibGVfZmxhZyAmJiB2ZXJib3NlX2ZsYWcpCi0gICAg ewotICAgICAgdGltZSAoJmN1cnJlbnRfdGltZSk7Ci0gICAgfQorICAgIGN1cnJlbnRfdGlt ZSA9IGN1cnJlbnRfdGltZXNwZWMgKCk7CiAKICAgLyogQ2hlY2sgd2hldGhlciB0aGUgaW5w dXQgZmlsZSBtaWdodCBiZSBhIHRhcGUuICAqLwogICBpbl9maWxlX2RlcyA9IGFyY2hpdmVf ZGVzOwotLSAKMi4zMi4wCgo= --------------0z9l0y8pWavR5OV3QkLpDDW6-- ------------=_1644202442-4009-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 20 Sep 2021 05:31:59 +0000 Received: from localhost ([127.0.0.1]:40600 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mSBuI-0007tE-VO for submit@debbugs.gnu.org; Mon, 20 Sep 2021 01:31:59 -0400 Received: from lists.gnu.org ([209.51.188.17]:52350) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mSBuG-0007t5-JF for submit@debbugs.gnu.org; Mon, 20 Sep 2021 01:31:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50336) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mSBuG-0006EV-7L; Mon, 20 Sep 2021 01:31:56 -0400 Received: from bumble.maple.relay.mailchannels.net ([23.83.214.25]:7487) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mSBuD-0003b7-AB; Mon, 20 Sep 2021 01:31:55 -0400 X-Sender-Id: dreamhost|x-authsender|jidanni@jidanni.org Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 6DE0C341A14; Mon, 20 Sep 2021 05:31:50 +0000 (UTC) Received: from pdx1-sub0-mail-a8.g.dreamhost.com (100-96-133-192.trex.outbound.svc.cluster.local [100.96.133.192]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id E583D34133C; Mon, 20 Sep 2021 05:31:49 +0000 (UTC) X-Sender-Id: dreamhost|x-authsender|jidanni@jidanni.org Received: from pdx1-sub0-mail-a8.g.dreamhost.com (pop.dreamhost.com [64.90.62.162]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384) by 100.96.133.192 (trex/6.4.3); Mon, 20 Sep 2021 05:31:50 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|jidanni@jidanni.org X-MailChannels-Auth-Id: dreamhost X-Decisive-Callous: 381d5dcf15f934d7_1632115910163_632532957 X-MC-Loop-Signature: 1632115910163:3166269346 X-MC-Ingress-Time: 1632115910162 Received: from pdx1-sub0-mail-a8.g.dreamhost.com (localhost [127.0.0.1]) by pdx1-sub0-mail-a8.g.dreamhost.com (Postfix) with ESMTP id E7C948A5C1; Sun, 19 Sep 2021 22:31:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=jidanni.org; h=from:to :subject:date:message-id:mime-version:content-type; s= jidanni.org; bh=Ghlw+bTX4ucvs4XCMbmOSy/8Yu4=; b=AU/oQi28Taatw45n uLtlHH1prOulASSFS29etXWg9tXAZsgNpJBr89/OCqDm3MFlqdnMPxZ8vK02JH7l zLtqMeGB9ePEelfU/+MHGlkhycKEjRMs/wxu1LnDw8thtBiCF5YlfdT8ub+zreeR gc+iHIa3peGYe039Kfz72YoOqDU= Received: from jidanni.org (114-46-58-228.dynamic-ip.hinet.net [114.46.58.228]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: jidanni@jidanni.org) by pdx1-sub0-mail-a8.g.dreamhost.com (Postfix) with ESMTPSA id 46C068A59C; Sun, 19 Sep 2021 22:31:48 -0700 (PDT) X-DH-BACKEND: pdx1-sub0-mail-a8 From: =?utf-8?B?56mN5Li55bC8?= Dan Jacobson To: bug-coreutils@gnu.org, bug-cpio@gnu.org Subject: ls and cpio's idea of "six months ago" are slightly different Date: Mon, 20 Sep 2021 13:06:36 +0800 Message-ID: <8735pzg7j7.8.fsf@jidanni.org> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=23.83.214.25; envelope-from=jidanni@jidanni.org; helo=bumble.maple.relay.mailchannels.net X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) What a headache. "Six months ago" means slightly different things to cpio and ls. And ls documents do say exactly what, and cpio documents don't even say six months. $ cat prover set -eu cd /tmp for i in `seq 170 190` do touch -d "$i days ago" x { env - ls -l x|tr -s ' ' ls x|cpio -o 2>&-|cpio -tv 2>&-|tr -s ' ' } > z if test `sort -u z|wc -l` != 1 then cat z; echo fi done $ sh prover -rw-r--r-- 1 jidanni jidanni 0 Mar 23 12:47 x -rw-r--r-- 1 jidanni jidanni 0 Mar 23 2021 x -rw-r--r-- 1 jidanni jidanni 0 Mar 22 12:47 x -rw-r--r-- 1 jidanni jidanni 0 Mar 22 2021 x So two things that should look the same ... don't. What's worse is there is no option to change cpio's date format. Well then just change ls's date format to match cpio's right? Well yes, but then there is no way to change ls's idea of six months, even if we examined cpio's source code to find out what it uses. $ ls --version ls (GNU coreutils) 8.32 Copyright (C) 2020 Free Software Foundation, Inc. $ cpio --version cpio (GNU cpio) 2.13 Copyright (C) 2017 Free Software Foundation, Inc. ------------=_1644202442-4009-1--