From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 4CBC9C54E69 for ; Mon, 18 Mar 2024 21:02:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References:Message-Id :MIME-Version:Subject:Date:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=YdkBLq2fo65xJzCvRN7/KWV0pPwMBtTLaNp/OtEb7ik=; b=jHD/cGVKsn2kBk eJl2pKYsu4ZP7DooLTh2Vw2R4A+Su+SFrs2gUC6L6RkdKFy8eW2NWDga57o6eUVBvpMJ8hLQ3xz55 HR1ZbruiGgdBelxWnU1sfR62SdUzWXw7vAZ5EPfqlnwJDzMlXwCQN2gG6E+TzqVhJthweU6tIVsAs lBFkGGZTTWWEKZPkWvpuKJrJJjea+SSjrmv4rEWmps75bqCvgsuPdmD4dsGAlp4RCjdz1HXwgdDs3 BfOY5xsC7/QY3ja7s83afOxN2VsGaPzQGFLvIugN16yBCRw4aTPRUom69Ag9hOSnkqlh2nTogrIsB k2IDx3yt8JiXAxt6vKpw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rmK88-0000000A7vD-2PAb; Mon, 18 Mar 2024 21:02:48 +0000 Received: from todd.t-8ch.de ([2a01:4f8:c010:41de::1]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rlETi-00000001XBi-3a1Y; Fri, 15 Mar 2024 20:48:49 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1710535699; bh=hccxx2UrNcPilqq2dEB/zO8lgaRy4vFcvfyKGNpTTKE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=J6/pl2CROMvE8X3YIh/Nk1y5EcWGa+bR5RixwrlxROwmmrbY+5Gxjshs2+d+LeX4P R7PYzE8jyc+IJUlHIHnCo0kDOC38Z1BDLB95rEJH0aJyrsvJvlO/edrTGxeNzVWvqE 3h34bBhTZhkXyNxhw+M6ZaciGY+bBP1mJzveGq0A= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Date: Fri, 15 Mar 2024 21:48:09 +0100 Subject: [PATCH 11/11] sysctl: treewide: constify the ctl_table argument of handlers MIME-Version: 1.0 Message-Id: <20240315-sysctl-const-handler-v1-11-1322ac7cb03d@weissschuh.net> References: <20240315-sysctl-const-handler-v1-0-1322ac7cb03d@weissschuh.net> In-Reply-To: <20240315-sysctl-const-handler-v1-0-1322ac7cb03d@weissschuh.net> To: Greg Kroah-Hartman , Kees Cook , Alexei Starovoitov , Daniel Borkmann , John Fastabend , Andrii Nakryiko , Martin KaFai Lau , Eduard Zingerman , Song Liu , Yonghong Song , KP Singh , Stanislav Fomichev , Hao Luo , Jiri Olsa , Muchun Song , Andrew Morton , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , David Ahern , Simon Horman , Julian Anastasov , Pablo Neira Ayuso , Jozsef Kadlecsik , Florian Westphal , Luis Chamberlain , Joel Granados , Catalin Marinas , Will Deacon , Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Gerald Schaefer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , Phillip Potter , Theodore Ts'o , "Jason A. Donenfeld" , Sudip Mukherjee , Mark Rutland , Atish Patra , Anup Patel , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexander Viro , Christian Brauner , Jan Kara , Eric Biederman , Chandan Babu R , "Darrick J. Wong" , Steven Rostedt , Masami Hiramatsu , Peter Zijlstra , Arnaldo Carvalho de Melo , Namhyung Kim , Alexander Shishkin , Ian Rogers , Adrian Hunter , Balbir Singh , "Naveen N. Rao" , Anil S Keshavamurthy , Petr Mladek , John Ogness , Sergey Senozhatsky , Juri Lelli , Vincent Guittot , Dietmar Eggemann , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , Andy Lutomirski , Will Drewry , John Stultz , Stephen Boyd , Mathieu Desnoyers , "Matthew Wilcox (Oracle)" , Roopa Prabhu , Nikolay Aleksandrov , Remi Denis-Courmont , Allison Henderson , Marcelo Ricardo Leitner , Xin Long , Chuck Lever , Jeff Layton , Neil Brown , Olga Kornievskaia , Dai Ngo , Tom Talpey , Trond Myklebust , Anna Schumaker , John Johansen , Paul Moore , James Morris , "Serge E. Hallyn" , Alexander Popov Cc: linux-hardening@vger.kernel.org, linux-kernel@vger.kernel.org, bpf@vger.kernel.org, linux-mm@kvack.org, netdev@vger.kernel.org, lvs-devel@vger.kernel.org, netfilter-devel@vger.kernel.org, coreteam@netfilter.org, linux-fsdevel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-s390@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-xfs@vger.kernel.org, linux-trace-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, kexec@lists.infradead.org, bridge@lists.linux.dev, linux-rdma@vger.kernel.org, rds-devel@oss.oracle.com, linux-sctp@vger.kernel.org, linux-nfs@vger.kernel.org, apparmor@lists.ubuntu.com, linux-security-module@vger.kernel.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.13.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1710535695; l=112761; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=hccxx2UrNcPilqq2dEB/zO8lgaRy4vFcvfyKGNpTTKE=; b=Y/YcmLFIBfed1oYW4aBK76N8hTrI1Z5ECDFj9zpVN2k8qy0ZL7AtOEb4Gv2yCuvDV41iShQxU BFgIV3WdvyaBbT8TUPU+DDlwMiLp3XX6s3dAlneGcg2BtszsUoYjXOk X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Mailman-Approved-At: Mon, 18 Mar 2024 14:02:37 -0700 X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org QWRhcHQgdGhlIHByb2NfaGFuZGVyIGZ1bmN0aW9uIHNpZ25hdHVyZSB0byBtYWtlIGl0IGNsZWFy IHRoYXQgaGFuZGxlcnMKYXJlIG5vdCBzdXBwb3NlZCB0byBtb2RpZnkgdGhlaXIgY3RsX3RhYmxl IGFyZ3VtZW50LgoKVGhpcyBpcyBhIHByZXJlcXVpc2l0ZSB0byBtb3ZpbmcgdGhlIHN0YXRpYyBj dGxfdGFibGUgc3RydWN0cyBpbnRvCi5yb2RhdGEuCkJ5IG1pZ3JhdGluZyBhbGwgaGFuZGxlcnMg YXQgb25jZSBhIGxlbmd0aHkgdHJhbnNpdGlvbiBjYW4gYmUgYXZvaWRlZC4KClRoZSBwYXRjaCB3 YXMgbW9zdGx5IGdlbmVyYXRlZCBieSBjb2NjaW5lbGxlIHdpdGggdGhlIGZvbGxvd2luZyBzY3Jp cHQ6CgogICAgQEAKICAgIGlkZW50aWZpZXIgZnVuYywgY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5w LCBwcG9zOwogICAgQEAKCiAgICBpbnQgZnVuYygKICAgIC0gc3RydWN0IGN0bF90YWJsZSAqY3Rs LAogICAgKyBjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsCiAgICAgIGludCB3cml0ZSwgdm9p ZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKICAgIHsgLi4uIH0KCkluIGFk ZGl0aW9uIHRvIHRoZSBzY3JpcHRlZCBjaGFuZ2VzIHNvbWUgb3RoZXIgY2hhbmdlcyBhcmUgZG9u ZToKCiogdGhlIHR5cGVkZWYgcHJvY19oYW5kbGVyIGlzIGFkYXB0ZWQKCiogdGhlIHByb3RvdHlw ZXMgb2Ygbm9uLXN0YXRpYyBoYW5kbGVyIGFyZSBhZGFwdGVkCgoqIGtlcm5lbC9zZWNjb21wLmM6 e3JlYWQsd3JpdGV9X2FjdGlvbnNfbG9nZ2VkKCkgYW5kCiAga2VybmVsL3dhdGNoZG9nLmM6cHJv Y193YXRjaGRvZ19jb21tb24oKSBhcmUgYWRhcHRlZCBhcyB0aGV5IG5lZWQgdG8KICBhZGFwdGVk IHRvZ2V0aGVyIHdpdGggdGhlIGhhbmRsZXJzIGZvciB0eXBlLWNvbnNpc3RlbmN5IHJlYXNvbnMK ClNpZ25lZC1vZmYtYnk6IFRob21hcyBXZWnDn3NjaHVoIDxsaW51eEB3ZWlzc3NjaHVoLm5ldD4K LS0tCiBhcmNoL2FybTY0L2tlcm5lbC9hcm12OF9kZXByZWNhdGVkLmMgICAgICB8ICAyICstCiBh cmNoL2FybTY0L2tlcm5lbC9mcHNpbWQuYyAgICAgICAgICAgICAgICB8ICAyICstCiBhcmNoL3Mz OTAvYXBwbGRhdGEvYXBwbGRhdGFfYmFzZS5jICAgICAgICB8IDEwICsrLS0KIGFyY2gvczM5MC9r ZXJuZWwvZGVidWcuYyAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGFyY2gvczM5MC9rZXJuZWwv dG9wb2xvZ3kuYyAgICAgICAgICAgICAgIHwgIDIgKy0KIGFyY2gvczM5MC9tbS9jbW0uYyAgICAg ICAgICAgICAgICAgICAgICAgIHwgIDYgKy0tCiBhcmNoL3g4Ni9rZXJuZWwvaXRtdC5jICAgICAg ICAgICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL2Nkcm9tL2Nkcm9tLmMgICAgICAgICAgICAg ICAgICAgICB8ICA2ICstLQogZHJpdmVycy9jaGFyL3JhbmRvbS5jICAgICAgICAgICAgICAgICAg ICAgfCAgNSArLQogZHJpdmVycy9tYWNpbnRvc2gvbWFjX2hpZC5jICAgICAgICAgICAgICAgfCAg MiArLQogZHJpdmVycy9uZXQvdnJmLmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQog ZHJpdmVycy9wYXJwb3J0L3Byb2Nmcy5jICAgICAgICAgICAgICAgICAgfCAxNCArKy0tLQogZHJp dmVycy9wZXJmL2FybV9wbXV2My5jICAgICAgICAgICAgICAgICAgfCAgNiArKy0KIGRyaXZlcnMv cGVyZi9yaXNjdl9wbXVfc2JpLmMgICAgICAgICAgICAgIHwgIDIgKy0KIGZzL2NvcmVkdW1wLmMg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKy0KIGZzL2RjYWNoZS5jICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDMgKy0KIGZzL2Ryb3BfY2FjaGVzLmMgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDQgKy0KIGZzL2V4ZWMuYyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgIDYgKystCiBmcy9maWxlX3RhYmxlLmMgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAzICstCiBmcy9mcy13cml0ZWJhY2suYyAgICAgICAgICAgICAgICAgICAgICAgICB8 ICAyICstCiBmcy9pbm9kZS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAzICst CiBmcy9waXBlLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCiBmcy9x dW90YS9kcXVvdC5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICstCiBmcy94ZnMveGZz X3N5c2N0bC5jICAgICAgICAgICAgICAgICAgICAgICB8IDMzICsrKysrKy0tLS0tLQogaW5jbHVk ZS9saW51eC9mdHJhY2UuaCAgICAgICAgICAgICAgICAgICAgfCAgNCArLQogaW5jbHVkZS9saW51 eC9tbS5oICAgICAgICAgICAgICAgICAgICAgICAgfCAgOCArLS0KIGluY2x1ZGUvbGludXgvcGVy Zl9ldmVudC5oICAgICAgICAgICAgICAgIHwgIDYgKy0tCiBpbmNsdWRlL2xpbnV4L3NlY3VyaXR5 LmggICAgICAgICAgICAgICAgICB8ICAyICstCiBpbmNsdWRlL2xpbnV4L3N5c2N0bC5oICAgICAg ICAgICAgICAgICAgICB8IDM0ICsrKysrKy0tLS0tLQogaW5jbHVkZS9saW51eC92bXN0YXQuaCAg ICAgICAgICAgICAgICAgICAgfCAgNiArLS0KIGluY2x1ZGUvbGludXgvd3JpdGViYWNrLmggICAg ICAgICAgICAgICAgIHwgIDIgKy0KIGluY2x1ZGUvbmV0L25kaXNjLmggICAgICAgICAgICAgICAg ICAgICAgIHwgIDIgKy0KIGluY2x1ZGUvbmV0L25laWdoYm91ci5oICAgICAgICAgICAgICAgICAg IHwgIDYgKy0tCiBpbmNsdWRlL25ldC9uZXRmaWx0ZXIvbmZfaG9va3NfbHd0dW5uZWwuaCB8ICAy ICstCiBpcGMvaXBjX3N5c2N0bC5jICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE0ICsrLS0t CiBrZXJuZWwvYnBmL3N5c2NhbGwuYyAgICAgICAgICAgICAgICAgICAgICB8ICA0ICstCiBrZXJu ZWwvZGVsYXlhY2N0LmMgICAgICAgICAgICAgICAgICAgICAgICB8ICA1ICstCiBrZXJuZWwvZXZl bnRzL2NhbGxjaGFpbi5jICAgICAgICAgICAgICAgICB8ICAyICstCiBrZXJuZWwvZXZlbnRzL2Nv cmUuYyAgICAgICAgICAgICAgICAgICAgICB8ICA5ICsrLS0KIGtlcm5lbC9mb3JrLmMgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGtlcm5lbC9odW5nX3Rhc2suYyAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDcgKy0tCiBrZXJuZWwva2V4ZWNfY29yZS5jICAgICAgICAgICAg ICAgICAgICAgICB8ICAyICstCiBrZXJuZWwva3Byb2Jlcy5jICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAyICstCiBrZXJuZWwvbGF0ZW5jeXRvcC5jICAgICAgICAgICAgICAgICAgICAgICB8 ICA1ICstCiBrZXJuZWwvcGlkX25hbWVzcGFjZS5jICAgICAgICAgICAgICAgICAgICB8ICA0ICst CiBrZXJuZWwvcGlkX3N5c2N0bC5oICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCiBrZXJu ZWwvcHJpbnRrL2ludGVybmFsLmggICAgICAgICAgICAgICAgICB8ICAyICstCiBrZXJuZWwvcHJp bnRrL3ByaW50ay5jICAgICAgICAgICAgICAgICAgICB8ICAyICstCiBrZXJuZWwvcHJpbnRrL3N5 c2N0bC5jICAgICAgICAgICAgICAgICAgICB8ICA2ICsrLQoga2VybmVsL3NjaGVkL2NvcmUuYyAg ICAgICAgICAgICAgICAgICAgICAgfCAxNSArKystLS0KIGtlcm5lbC9zY2hlZC9ydC5jICAgICAg ICAgICAgICAgICAgICAgICAgIHwgMjAgKysrKy0tLQoga2VybmVsL3NjaGVkL3RvcG9sb2d5LmMg ICAgICAgICAgICAgICAgICAgfCAgNiArKy0KIGtlcm5lbC9zZWNjb21wLmMgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgIDcgKy0tCiBrZXJuZWwvc3RhY2tsZWFrLmMgICAgICAgICAgICAgICAg ICAgICAgICB8ICA1ICstCiBrZXJuZWwvc3lzY3RsLmMgICAgICAgICAgICAgICAgICAgICAgICAg ICB8IDg4ICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0KIGtlcm5lbC90aW1lL3RpbWVy LmMgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKy0KIGtlcm5lbC90cmFjZS9mdHJhY2UuYyAg ICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGtlcm5lbC90cmFjZS90cmFjZS5jICAgICAgICAg ICAgICAgICAgICAgIHwgIDIgKy0KIGtlcm5lbC90cmFjZS90cmFjZV9ldmVudHNfdXNlci5jICAg ICAgICAgIHwgIDMgKy0KIGtlcm5lbC90cmFjZS90cmFjZV9zdGFjay5jICAgICAgICAgICAgICAg IHwgIDIgKy0KIGtlcm5lbC91bWguYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDQg Ky0KIGtlcm5lbC91dHNuYW1lX3N5c2N0bC5jICAgICAgICAgICAgICAgICAgIHwgIDQgKy0KIGtl cm5lbC93YXRjaGRvZy5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTUgKysrLS0tCiBtbS9j b21wYWN0aW9uLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE3ICsrKy0tLQogbW0vaHVn ZXRsYi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxNiArKystLS0KIG1tL3BhZ2Ut d3JpdGViYWNrLmMgICAgICAgICAgICAgICAgICAgICAgIHwgMjcgKysrKysrLS0tLQogbW0vcGFn ZV9hbGxvYy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCA0MyArKysrKysrKysrLS0tLS0K IG1tL3V0aWwuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTUgKysrLS0tCiBt bS92bXN0YXQuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA2ICstLQogbmV0L2Jy aWRnZS9icl9uZXRmaWx0ZXJfaG9va3MuYyAgICAgICAgICAgfCAgMiArLQogbmV0L2NvcmUvbmVp Z2hib3VyLmMgICAgICAgICAgICAgICAgICAgICAgfCAyNCArKysrKy0tLS0KIG5ldC9jb3JlL3N5 c2N0bF9uZXRfY29yZS5jICAgICAgICAgICAgICAgIHwgMjQgKysrKystLS0tCiBuZXQvaXB2NC9k ZXZpbmV0LmMgICAgICAgICAgICAgICAgICAgICAgICB8ICA2ICstLQogbmV0L2lwdjQvcm91dGUu YyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArLQogbmV0L2lwdjQvc3lzY3RsX25ldF9p cHY0LmMgICAgICAgICAgICAgICAgfCAzNCArKysrKystLS0tLS0KIG5ldC9pcHY2L2FkZHJjb25m LmMgICAgICAgICAgICAgICAgICAgICAgIHwgMzAgKysrKysrLS0tLS0KIG5ldC9pcHY2L25kaXNj LmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDUgKy0KIG5ldC9pcHY2L3JvdXRlLmMgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKy0KIG5ldC9pcHY2L3N5c2N0bF9uZXRfaXB2Ni5j ICAgICAgICAgICAgICAgIHwgIDYgKystCiBuZXQvbXBscy9hZl9tcGxzLmMgICAgICAgICAgICAg ICAgICAgICAgICB8ICA0ICstCiBuZXQvbmV0ZmlsdGVyL2lwdnMvaXBfdnNfY3RsLmMgICAgICAg ICAgICB8IDEyICsrLS0tCiBuZXQvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19zdGFuZGFsb25lLmMg ICB8ICAyICstCiBuZXQvbmV0ZmlsdGVyL25mX2hvb2tzX2x3dHVubmVsLmMgICAgICAgICB8ICAy ICstCiBuZXQvbmV0ZmlsdGVyL25mX2xvZy5jICAgICAgICAgICAgICAgICAgICB8ICA0ICstCiBu ZXQvcGhvbmV0L3N5c2N0bC5jICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCiBuZXQvcmRz L3RjcC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICstCiBuZXQvc2N0cC9zeXNj dGwuYyAgICAgICAgICAgICAgICAgICAgICAgICB8IDMwICsrKysrKy0tLS0tCiBuZXQvc3VucnBj L3N5c2N0bC5jICAgICAgICAgICAgICAgICAgICAgICB8ICA1ICstCiBuZXQvc3VucnBjL3hwcnRy ZG1hL3N2Y19yZG1hLmMgICAgICAgICAgICB8ICAyICstCiBzZWN1cml0eS9hcHBhcm1vci9sc20u YyAgICAgICAgICAgICAgICAgICB8ICAyICstCiBzZWN1cml0eS9taW5fYWRkci5jICAgICAgICAg ICAgICAgICAgICAgICB8ICAyICstCiBzZWN1cml0eS95YW1hL3lhbWFfbHNtLmMgICAgICAgICAg ICAgICAgICB8ICAyICstCiA5MiBmaWxlcyBjaGFuZ2VkLCA0MzMgaW5zZXJ0aW9ucygrKSwgMzQ3 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2FyY2gvYXJtNjQva2VybmVsL2FybXY4X2RlcHJl Y2F0ZWQuYyBiL2FyY2gvYXJtNjQva2VybmVsL2FybXY4X2RlcHJlY2F0ZWQuYwppbmRleCBkZDZj ZTg2ZDQzMzIuLmEzMDg1Y2I2ODg1MiAxMDA2NDQKLS0tIGEvYXJjaC9hcm02NC9rZXJuZWwvYXJt djhfZGVwcmVjYXRlZC5jCisrKyBiL2FyY2gvYXJtNjQva2VybmVsL2FybXY4X2RlcHJlY2F0ZWQu YwpAQCAtNTA0LDcgKzUwNCw3IEBAIHN0YXRpYyBpbnQgdXBkYXRlX2luc25fZW11bGF0aW9uX21v ZGUoc3RydWN0IGluc25fZW11bGF0aW9uICppbnNuLAogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRp YyBpbnQgZW11bGF0aW9uX3Byb2NfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAorc3RhdGljIGludCBlbXVsYXRpb25fcHJvY19oYW5kbGVyKGNvbnN0IHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJICB2b2lkICpidWZmZXIsIHNpemVfdCAq bGVucCwKIAkJCQkgIGxvZmZfdCAqcHBvcykKIHsKZGlmZiAtLWdpdCBhL2FyY2gvYXJtNjQva2Vy bmVsL2Zwc2ltZC5jIGIvYXJjaC9hcm02NC9rZXJuZWwvZnBzaW1kLmMKaW5kZXggZWJiMDE1ODk5 N2NhLi45OGVmYjU4N2VmMzYgMTAwNjQ0Ci0tLSBhL2FyY2gvYXJtNjQva2VybmVsL2Zwc2ltZC5j CisrKyBiL2FyY2gvYXJtNjQva2VybmVsL2Zwc2ltZC5jCkBAIC01MzUsNyArNTM1LDcgQEAgc3Rh dGljIHVuc2lnbmVkIGludCBmaW5kX3N1cHBvcnRlZF92ZWN0b3JfbGVuZ3RoKGVudW0gdmVjX3R5 cGUgdHlwZSwKIAogI2lmIGRlZmluZWQoQ09ORklHX0FSTTY0X1NWRSkgJiYgZGVmaW5lZChDT05G SUdfU1lTQ1RMKQogCi1zdGF0aWMgaW50IHZlY19wcm9jX2RvX2RlZmF1bHRfdmwoc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgdmVjX3Byb2NfZG9fZGVmYXVs dF92bChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCSAgdm9p ZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgdmxfaW5m byAqaW5mbyA9IHRhYmxlLT5leHRyYTE7CmRpZmYgLS1naXQgYS9hcmNoL3MzOTAvYXBwbGRhdGEv YXBwbGRhdGFfYmFzZS5jIGIvYXJjaC9zMzkwL2FwcGxkYXRhL2FwcGxkYXRhX2Jhc2UuYwppbmRl eCBjMjk3OGNiMDNiMzYuLjkxYTMwZTAxN2Q2NSAxMDA2NDQKLS0tIGEvYXJjaC9zMzkwL2FwcGxk YXRhL2FwcGxkYXRhX2Jhc2UuYworKysgYi9hcmNoL3MzOTAvYXBwbGRhdGEvYXBwbGRhdGFfYmFz ZS5jCkBAIC00Niw5ICs0Niw5IEBACiAgKiAvcHJvYyBlbnRyaWVzIChzeXNjdGwpCiAgKi8KIHN0 YXRpYyBjb25zdCBjaGFyIGFwcGxkYXRhX3Byb2NfbmFtZVtBUFBMREFUQV9QUk9DX05BTUVfTEVO R1RIXSA9ICJhcHBsZGF0YSI7Ci1zdGF0aWMgaW50IGFwcGxkYXRhX3RpbWVyX2hhbmRsZXIoc3Ry dWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IGFwcGxkYXRhX3RpbWVy X2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJICB2 b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKLXN0YXRpYyBpbnQgYXBw bGRhdGFfaW50ZXJ2YWxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwK K3N0YXRpYyBpbnQgYXBwbGRhdGFfaW50ZXJ2YWxfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3Rh YmxlICpjdGwsIGludCB3cml0ZSwKIAkJCQkgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5w LCBsb2ZmX3QgKnBwb3MpOwogCiBzdGF0aWMgc3RydWN0IGN0bF90YWJsZV9oZWFkZXIgKmFwcGxk YXRhX3N5c2N0bF9oZWFkZXI7CkBAIC0xOTksNyArMTk5LDcgQEAgc3RhdGljIHZvaWQgX19hcHBs ZGF0YV92dGltZXJfc2V0dXAoaW50IGNtZCkKICAqIFN0YXJ0L1N0b3AgdGltZXIsIHNob3cgc3Rh dHVzIG9mIHRpbWVyICgwID0gbm90IGFjdGl2ZSwgMSA9IGFjdGl2ZSkKICAqLwogc3RhdGljIGlu dAotYXBwbGRhdGFfdGltZXJfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0 ZSwKK2FwcGxkYXRhX3RpbWVyX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBp bnQgd3JpdGUsCiAJCQkgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9z KQogewogCWludCB0aW1lcl9hY3RpdmUgPSBhcHBsZGF0YV90aW1lcl9hY3RpdmU7CkBAIC0yMzIs NyArMjMyLDcgQEAgYXBwbGRhdGFfdGltZXJfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICpjdGws IGludCB3cml0ZSwKICAqIGN1cnJlbnQgdGltZXIgaW50ZXJ2YWwuCiAgKi8KIHN0YXRpYyBpbnQK LWFwcGxkYXRhX2ludGVydmFsX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3Jp dGUsCithcHBsZGF0YV9pbnRlcnZhbF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0 bCwgaW50IHdyaXRlLAogCQkJICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAq cHBvcykKIHsKIAlpbnQgaW50ZXJ2YWwgPSBhcHBsZGF0YV9pbnRlcnZhbDsKQEAgLTI2Miw3ICsy NjIsNyBAQCBhcHBsZGF0YV9pbnRlcnZhbF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwg aW50IHdyaXRlLAogICogbW9uaXRvcmluZyAoMCA9IG5vdCBpbiBwcm9jZXNzLCAxID0gaW4gcHJv Y2VzcykKICAqLwogc3RhdGljIGludAotYXBwbGRhdGFfZ2VuZXJpY19oYW5kbGVyKHN0cnVjdCBj dGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorYXBwbGRhdGFfZ2VuZXJpY19oYW5kbGVyKGNvbnN0 IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJICAgdm9pZCAqYnVmZmVyLCBz aXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgYXBwbGRhdGFfb3BzICpvcHMg PSBOVUxMLCAqdG1wX29wczsKZGlmZiAtLWdpdCBhL2FyY2gvczM5MC9rZXJuZWwvZGVidWcuYyBi L2FyY2gvczM5MC9rZXJuZWwvZGVidWcuYwppbmRleCA4NTMyOGEwZWYzYjYuLmJjZTUwY2E3NWVh NyAxMDA2NDQKLS0tIGEvYXJjaC9zMzkwL2tlcm5lbC9kZWJ1Zy5jCisrKyBiL2FyY2gvczM5MC9r ZXJuZWwvZGVidWcuYwpAQCAtOTU0LDcgKzk1NCw3IEBAIHN0YXRpYyBpbnQgZGVidWdfYWN0aXZl ID0gMTsKICAqIGFsd2F5cyBhbGxvdyByZWFkLCBhbGxvdyB3cml0ZSBvbmx5IGlmIGRlYnVnX3N0 b3BwYWJsZSBpcyBzZXQgb3IKICAqIGlmIGRlYnVnX2FjdGl2ZSBpcyBhbHJlYWR5IG9mZgogICov Ci1zdGF0aWMgaW50IHMzOTBkYmZfcHJvY2FjdGl2ZShzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwg aW50IHdyaXRlLAorc3RhdGljIGludCBzMzkwZGJmX3Byb2NhY3RpdmUoY29uc3Qgc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaWYgKCF3cml0ZSB8fCBkZWJ1Z19zdG9wcGFibGUg fHwgIWRlYnVnX2FjdGl2ZSkKZGlmZiAtLWdpdCBhL2FyY2gvczM5MC9rZXJuZWwvdG9wb2xvZ3ku YyBiL2FyY2gvczM5MC9rZXJuZWwvdG9wb2xvZ3kuYwppbmRleCA4OWU5MWI4Y2U4NDIuLjFkZjNk YzExODY5NiAxMDA2NDQKLS0tIGEvYXJjaC9zMzkwL2tlcm5lbC90b3BvbG9neS5jCisrKyBiL2Fy Y2gvczM5MC9rZXJuZWwvdG9wb2xvZ3kuYwpAQCAtNjAwLDcgKzYwMCw3IEBAIHN0YXRpYyBpbnQg X19pbml0IHRvcG9sb2d5X3NldHVwKGNoYXIgKnN0cikKIH0KIGVhcmx5X3BhcmFtKCJ0b3BvbG9n eSIsIHRvcG9sb2d5X3NldHVwKTsKIAotc3RhdGljIGludCB0b3BvbG9neV9jdGxfaGFuZGxlcihz dHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgdG9wb2xvZ3lfY3Rs X2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJdm9p ZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgZW5hYmxlZCA9 IHRvcG9sb2d5X2lzX2VuYWJsZWQoKTsKZGlmZiAtLWdpdCBhL2FyY2gvczM5MC9tbS9jbW0uYyBi L2FyY2gvczM5MC9tbS9jbW0uYwppbmRleCBmOGIxM2YyNDc2NDYuLjFkNjc0OWUwOTVmNyAxMDA2 NDQKLS0tIGEvYXJjaC9zMzkwL21tL2NtbS5jCisrKyBiL2FyY2gvczM5MC9tbS9jbW0uYwpAQCAt MjQzLDcgKzI0Myw3IEBAIHN0YXRpYyBpbnQgY21tX3NraXBfYmxhbmtzKGNoYXIgKmNwLCBjaGFy ICoqZW5kcCkKIAlyZXR1cm4gc3RyICE9IGNwOwogfQogCi1zdGF0aWMgaW50IGNtbV9wYWdlc19o YW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBjbW1f cGFnZXNfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJ CSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlsb25n IG5yID0gY21tX2dldF9wYWdlcygpOwpAQCAtMjYyLDcgKzI2Miw3IEBAIHN0YXRpYyBpbnQgY21t X3BhZ2VzX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0dXJu IDA7CiB9CiAKLXN0YXRpYyBpbnQgY21tX3RpbWVkX3BhZ2VzX2hhbmRsZXIoc3RydWN0IGN0bF90 YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IGNtbV90aW1lZF9wYWdlc19oYW5kbGVy KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJCSAgIHZvaWQgKmJ1 ZmZlciwgc2l6ZV90ICpsZW5wLAogCQkJCSAgIGxvZmZfdCAqcHBvcykKIHsKQEAgLTI4Miw3ICsy ODIsNyBAQCBzdGF0aWMgaW50IGNtbV90aW1lZF9wYWdlc19oYW5kbGVyKHN0cnVjdCBjdGxfdGFi bGUgKmN0bCwgaW50IHdyaXRlLAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGNtbV90aW1l b3V0X2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50 IGNtbV90aW1lb3V0X2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3Jp dGUsCiAJCQkgICAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK IHsKIAljaGFyIGJ1Zls2NF0sICpwOwpkaWZmIC0tZ2l0IGEvYXJjaC94ODYva2VybmVsL2l0bXQu YyBiL2FyY2gveDg2L2tlcm5lbC9pdG10LmMKaW5kZXggOWE3YzAzZDQ3ODYxLi41MWI4MDVjNzI3 ZmMgMTAwNjQ0Ci0tLSBhL2FyY2gveDg2L2tlcm5lbC9pdG10LmMKKysrIGIvYXJjaC94ODYva2Vy bmVsL2l0bXQuYwpAQCAtMzgsNyArMzgsNyBAQCBzdGF0aWMgYm9vbCBfX3JlYWRfbW9zdGx5IHNj aGVkX2l0bXRfY2FwYWJsZTsKICAqLwogdW5zaWduZWQgaW50IF9fcmVhZF9tb3N0bHkgc3lzY3Rs X3NjaGVkX2l0bXRfZW5hYmxlZDsKIAotc3RhdGljIGludCBzY2hlZF9pdG10X3VwZGF0ZV9oYW5k bGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHNjaGVk X2l0bXRfdXBkYXRlX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKIAkJCQkgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3Mp CiB7CiAJdW5zaWduZWQgaW50IG9sZF9zeXNjdGw7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2Nkcm9t L2Nkcm9tLmMgYi9kcml2ZXJzL2Nkcm9tL2Nkcm9tLmMKaW5kZXggYTVlMDcyNzBlMGQ0Li4yZDVl NGFkY2ZjMWYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvY2Ryb20vY2Ryb20uYworKysgYi9kcml2ZXJz L2Nkcm9tL2Nkcm9tLmMKQEAgLTM0NzMsOCArMzQ3Myw4IEBAIHN0YXRpYyBpbnQgY2Ryb21fcHJp bnRfaW5mbyhjb25zdCBjaGFyICpoZWFkZXIsIGludCB2YWwsIGNoYXIgKmluZm8sCiAJcmV0dXJu IDA7CiB9CiAKLXN0YXRpYyBpbnQgY2Ryb21fc3lzY3RsX2luZm8oc3RydWN0IGN0bF90YWJsZSAq Y3RsLCBpbnQgd3JpdGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpidWZmZXIs IHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQorc3RhdGljIGludCBjZHJvbV9zeXNjdGxfaW5m byhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKKwkJCSAgICAgdm9pZCAq YnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgcG9zOwogCWNoYXIg KmluZm8gPSBjZHJvbV9zeXNjdGxfc2V0dGluZ3MuaW5mbzsKQEAgLTM1ODYsNyArMzU4Niw3IEBA IHN0YXRpYyB2b2lkIGNkcm9tX3VwZGF0ZV9zZXR0aW5ncyh2b2lkKQogCW11dGV4X3VubG9jaygm Y2Ryb21fbXV0ZXgpOwogfQogCi1zdGF0aWMgaW50IGNkcm9tX3N5c2N0bF9oYW5kbGVyKHN0cnVj dCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBjZHJvbV9zeXNjdGxfaGFu ZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJCQl2b2lkICpi dWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCByZXQ7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2NoYXIvcmFuZG9tLmMgYi9kcml2ZXJzL2NoYXIvcmFuZG9tLmMKaW5kZXgg NDU2YmUyOGJhNjdjLi4wNTVlZDBhYTFkZTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvY2hhci9yYW5k b20uYworKysgYi9kcml2ZXJzL2NoYXIvcmFuZG9tLmMKQEAgLTE2MDQsNyArMTYwNCw3IEBAIHN0 YXRpYyB1OCBzeXNjdGxfYm9vdGlkW1VVSURfU0laRV07CiAgKiBVVUlELiBUaGUgZGlmZmVyZW5j ZSBpcyBpbiB3aGV0aGVyIHRhYmxlLT5kYXRhIGlzIE5VTEw7IGlmIGl0IGlzLAogICogdGhlbiBh IG5ldyBVVUlEIGlzIGdlbmVyYXRlZCBhbmQgcmV0dXJuZWQgdG8gdGhlIHVzZXIuCiAgKi8KLXN0 YXRpYyBpbnQgcHJvY19kb191dWlkKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs IHZvaWQgKmJ1ZiwKK3N0YXRpYyBpbnQgcHJvY19kb191dWlkKGNvbnN0IHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZiwKIAkJCXNpemVfdCAqbGVucCwgbG9mZl90 ICpwcG9zKQogewogCXU4IHRtcF91dWlkW1VVSURfU0laRV0sICp1dWlkOwpAQCAtMTYzNSw3ICsx NjM1LDggQEAgc3RhdGljIGludCBwcm9jX2RvX3V1aWQoc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwgdm9pZCAqYnVmLAogfQogCiAvKiBUaGUgc2FtZSBhcyBwcm9jX2RvaW50dmVj LCBidXQgd3JpdGVzIGRvbid0IGNoYW5nZSBhbnl0aGluZy4gKi8KLXN0YXRpYyBpbnQgcHJvY19k b19yb2ludHZlYyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWYs CitzdGF0aWMgaW50IHByb2NfZG9fcm9pbnR2ZWMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFi bGUsIGludCB3cml0ZSwKKwkJCSAgICB2b2lkICpidWYsCiAJCQkgICAgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpCiB7CiAJcmV0dXJuIHdyaXRlID8gMCA6IHByb2NfZG9pbnR2ZWModGFibGUs IDAsIGJ1ZiwgbGVucCwgcHBvcyk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL21hY2ludG9zaC9tYWNf aGlkLmMgYi9kcml2ZXJzL21hY2ludG9zaC9tYWNfaGlkLmMKaW5kZXggMWFlMzUzOWJlZmY1Li44 OTEwNDdjOGExMTAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbWFjaW50b3NoL21hY19oaWQuYworKysg Yi9kcml2ZXJzL21hY2ludG9zaC9tYWNfaGlkLmMKQEAgLTE4Miw3ICsxODIsNyBAQCBzdGF0aWMg dm9pZCBtYWNfaGlkX3N0b3BfZW11bGF0aW9uKHZvaWQpCiAJbWFjX2hpZF9kZXN0cm95X2VtdW1v dXNlKCk7CiB9CiAKLXN0YXRpYyBpbnQgbWFjX2hpZF90b2dnbGVfZW11bW91c2Uoc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgbWFjX2hpZF90b2dnbGVfZW11 bW91c2UoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQkgICB2 b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCAqdmFscCA9 IHRhYmxlLT5kYXRhOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvdnJmLmMgYi9kcml2ZXJzL25l dC92cmYuYwppbmRleCBiYjk1Y2U0M2NkOTcuLjVkNDI4M2MyYzAyMiAxMDA2NDQKLS0tIGEvZHJp dmVycy9uZXQvdnJmLmMKKysrIGIvZHJpdmVycy9uZXQvdnJmLmMKQEAgLTE5MDgsNyArMTkwOCw3 IEBAIHN0YXRpYyBpbnQgdnJmX3N0cmljdF9tb2RlX2NoYW5nZShzdHJ1Y3QgdnJmX21hcCAqdm1h cCwgYm9vbCBuZXdfbW9kZSkKIAlyZXR1cm4gcmVzOwogfQogCi1zdGF0aWMgaW50IHZyZl9zaGFy ZWRfdGFibGVfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3Rh dGljIGludCB2cmZfc2hhcmVkX3RhYmxlX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKIAkJCQkgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgbmV0ICpuZXQgPSAoc3RydWN0IG5ldCAqKXRhYmxlLT5l eHRyYTE7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3BhcnBvcnQvcHJvY2ZzLmMgYi9kcml2ZXJzL3Bh cnBvcnQvcHJvY2ZzLmMKaW5kZXggYmQzODg1NjBlZDU5Li4yMzQ5YjVkZmVjZTQgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvcGFycG9ydC9wcm9jZnMuYworKysgYi9kcml2ZXJzL3BhcnBvcnQvcHJvY2Zz LmMKQEAgLTMzLDggKzMzLDggQEAKICNkZWZpbmUgUEFSUE9SVF9NSU5fU1BJTlRJTUVfVkFMVUUg MQogI2RlZmluZSBQQVJQT1JUX01BWF9TUElOVElNRV9WQUxVRSAxMDAwCiAKLXN0YXRpYyBpbnQg ZG9fYWN0aXZlX2RldmljZShzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAotCQkg ICAgICB2b2lkICpyZXN1bHQsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQorc3RhdGljIGlu dCBkb19hY3RpdmVfZGV2aWNlKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCisJCQkgICAgdm9pZCAqcmVzdWx0LCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsK IAlzdHJ1Y3QgcGFycG9ydCAqcG9ydCA9IChzdHJ1Y3QgcGFycG9ydCAqKXRhYmxlLT5leHRyYTE7 CiAJY2hhciBidWZmZXJbMjU2XTsKQEAgLTcwLDcgKzcwLDcgQEAgc3RhdGljIGludCBkb19hY3Rp dmVfZGV2aWNlKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiB9CiAKICNpZmRl ZiBDT05GSUdfUEFSUE9SVF8xMjg0Ci1zdGF0aWMgaW50IGRvX2F1dG9wcm9iZShzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBkb19hdXRvcHJvYmUoY29uc3Qg c3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCXZvaWQgKnJlc3VsdCwgc2l6 ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IHBhcnBvcnRfZGV2aWNlX2luZm8g KmluZm8gPSB0YWJsZS0+ZXh0cmEyOwpAQCAtMTEzLDcgKzExMyw3IEBAIHN0YXRpYyBpbnQgZG9f YXV0b3Byb2JlKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiB9CiAjZW5kaWYg LyogSUVFRTEyODQuMyBzdXBwb3J0LiAqLwogCi1zdGF0aWMgaW50IGRvX2hhcmR3YXJlX2Jhc2Vf YWRkcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBkb19o YXJkd2FyZV9iYXNlX2FkZHIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwKIAkJCQkgdm9pZCAqcmVzdWx0LCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlz dHJ1Y3QgcGFycG9ydCAqcG9ydCA9IChzdHJ1Y3QgcGFycG9ydCAqKXRhYmxlLT5leHRyYTE7CkBA IC0xNDAsNyArMTQwLDcgQEAgc3RhdGljIGludCBkb19oYXJkd2FyZV9iYXNlX2FkZHIoc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGlu dCBkb19oYXJkd2FyZV9pcnEoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0 YXRpYyBpbnQgZG9faGFyZHdhcmVfaXJxKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCiAJCQkgICB2b2lkICpyZXN1bHQsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9z KQogewogCXN0cnVjdCBwYXJwb3J0ICpwb3J0ID0gKHN0cnVjdCBwYXJwb3J0ICopdGFibGUtPmV4 dHJhMTsKQEAgLTE2Nyw3ICsxNjcsNyBAQCBzdGF0aWMgaW50IGRvX2hhcmR3YXJlX2lycShzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCXJldHVybiAwOwogfQogCi1zdGF0aWMg aW50IGRvX2hhcmR3YXJlX2RtYShzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAor c3RhdGljIGludCBkb19oYXJkd2FyZV9kbWEoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwKIAkJCSAgIHZvaWQgKnJlc3VsdCwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBw b3MpCiB7CiAJc3RydWN0IHBhcnBvcnQgKnBvcnQgPSAoc3RydWN0IHBhcnBvcnQgKil0YWJsZS0+ ZXh0cmExOwpAQCAtMTk0LDcgKzE5NCw3IEBAIHN0YXRpYyBpbnQgZG9faGFyZHdhcmVfZG1hKHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRp YyBpbnQgZG9faGFyZHdhcmVfbW9kZXMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwKK3N0YXRpYyBpbnQgZG9faGFyZHdhcmVfbW9kZXMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKIAkJCSAgICAgdm9pZCAqcmVzdWx0LCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgcGFycG9ydCAqcG9ydCA9IChzdHJ1Y3QgcGFycG9ydCAq KXRhYmxlLT5leHRyYTE7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3BlcmYvYXJtX3BtdXYzLmMgYi9k cml2ZXJzL3BlcmYvYXJtX3BtdXYzLmMKaW5kZXggMjNmYTZjNWRhODJjLi44M2QxMmRjODMzMTMg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvcGVyZi9hcm1fcG11djMuYworKysgYi9kcml2ZXJzL3BlcmYv YXJtX3BtdXYzLmMKQEAgLTEyNTMsOCArMTI1MywxMCBAQCBzdGF0aWMgdm9pZCBhcm12OHBtdV9k aXNhYmxlX3VzZXJfYWNjZXNzX2lwaSh2b2lkICp1bnVzZWQpCiAJYXJtdjhwbXVfZGlzYWJsZV91 c2VyX2FjY2VzcygpOwogfQogCi1zdGF0aWMgaW50IGFybXY4cG11X3Byb2NfdXNlcl9hY2Nlc3Nf aGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAotCQl2b2lkICpidWZm ZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQorc3RhdGljIGludCBhcm12OHBtdV9wcm9j X3VzZXJfYWNjZXNzX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCisJCQkJ CSAgICAgaW50IHdyaXRlLAorCQkJCQkgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLAor CQkJCQkgICAgIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgcmV0ID0gcHJvY19kb2ludHZlY19taW5t YXgodGFibGUsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpOwogCWlmIChyZXQgfHwgIXdyaXRl IHx8IHN5c2N0bF9wZXJmX3VzZXJfYWNjZXNzKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9wZXJmL3Jp c2N2X3BtdV9zYmkuYyBiL2RyaXZlcnMvcGVyZi9yaXNjdl9wbXVfc2JpLmMKaW5kZXggOGNiZTZl NWY5YzM5Li45YmVkYTc1ZTJlMTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvcGVyZi9yaXNjdl9wbXVf c2JpLmMKKysrIGIvZHJpdmVycy9wZXJmL3Jpc2N2X3BtdV9zYmkuYwpAQCAtMTAxMyw3ICsxMDEz LDcgQEAgc3RhdGljIHZvaWQgcmlzY3ZfcG11X3VwZGF0ZV9jb3VudGVyX2FjY2Vzcyh2b2lkICpp bmZvKQogCQljc3Jfd3JpdGUoQ1NSX1NDT1VOVEVSRU4sIDB4Mik7CiB9CiAKLXN0YXRpYyBpbnQg cmlzY3ZfcG11X3Byb2NfdXNlcl9hY2Nlc3NfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJs ZSwKK3N0YXRpYyBpbnQgcmlzY3ZfcG11X3Byb2NfdXNlcl9hY2Nlc3NfaGFuZGxlcihjb25zdCBz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKIAkJCQkJICAgICAgaW50IHdyaXRlLCB2b2lkICpidWZm ZXIsCiAJCQkJCSAgICAgIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewpkaWZmIC0tZ2l0 IGEvZnMvY29yZWR1bXAuYyBiL2ZzL2NvcmVkdW1wLmMKaW5kZXggYmU2NDAzYjRiMTRiLi4zYzlh OTc4MmVjMDUgMTAwNjQ0Ci0tLSBhL2ZzL2NvcmVkdW1wLmMKKysrIGIvZnMvY29yZWR1bXAuYwpA QCAtOTg4LDggKzk4OCw4IEBAIHZvaWQgdmFsaWRhdGVfY29yZWR1bXBfc2FmZXR5KHZvaWQpCiAJ fQogfQogCi1zdGF0aWMgaW50IHByb2NfZG9zdHJpbmdfY29yZWR1bXAoc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKLQkJICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9m Zl90ICpwcG9zKQorc3RhdGljIGludCBwcm9jX2Rvc3RyaW5nX2NvcmVkdW1wKGNvbnN0IHN0cnVj dCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCisJCQkJICB2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCBlcnJvciA9IHByb2NfZG9zdHJpbmcodGFi bGUsIHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpOwogCmRpZmYgLS1naXQgYS9mcy9kY2FjaGUu YyBiL2ZzL2RjYWNoZS5jCmluZGV4IDcxYThlOTQzYTBmYS4uMDExOGU0NzU3OGMyIDEwMDY0NAot LS0gYS9mcy9kY2FjaGUuYworKysgYi9mcy9kY2FjaGUuYwpAQCAtMTc0LDcgKzE3NCw4IEBAIHN0 YXRpYyBsb25nIGdldF9ucl9kZW50cnlfbmVnYXRpdmUodm9pZCkKIAlyZXR1cm4gc3VtIDwgMCA/ IDAgOiBzdW07CiB9CiAKLXN0YXRpYyBpbnQgcHJvY19ucl9kZW50cnkoc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAorc3RhdGljIGludCBwcm9jX25yX2Rl bnRyeShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorCQkJICB2b2lk ICpidWZmZXIsCiAJCQkgIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWRlbnRyeV9z dGF0Lm5yX2RlbnRyeSA9IGdldF9ucl9kZW50cnkoKTsKZGlmZiAtLWdpdCBhL2ZzL2Ryb3BfY2Fj aGVzLmMgYi9mcy9kcm9wX2NhY2hlcy5jCmluZGV4IGI5NTc1OTU3YTdjMi4uMDIzNDgyODIzZmYx IDEwMDY0NAotLS0gYS9mcy9kcm9wX2NhY2hlcy5jCisrKyBiL2ZzL2Ryb3BfY2FjaGVzLmMKQEAg LTQ4LDggKzQ4LDggQEAgc3RhdGljIHZvaWQgZHJvcF9wYWdlY2FjaGVfc2Ioc3RydWN0IHN1cGVy X2Jsb2NrICpzYiwgdm9pZCAqdW51c2VkKQogCWlwdXQodG9wdXRfaW5vZGUpOwogfQogCi1pbnQg ZHJvcF9jYWNoZXNfc3lzY3RsX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKLQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbmd0aCwgbG9mZl90ICpwcG9zKQoraW50 IGRyb3BfY2FjaGVzX3N5c2N0bF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsCisJCQkgICAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbmd0aCwgbG9m Zl90ICpwcG9zKQogewogCWludCByZXQ7CiAKZGlmZiAtLWdpdCBhL2ZzL2V4ZWMuYyBiL2ZzL2V4 ZWMuYwppbmRleCBmZjZmMjY2NzFjZmMuLjFlMTdhNzk4MDUzYiAxMDA2NDQKLS0tIGEvZnMvZXhl Yy5jCisrKyBiL2ZzL2V4ZWMuYwpAQCAtMjE2MSw4ICsyMTYxLDEwIEBAIENPTVBBVF9TWVNDQUxM X0RFRklORTUoZXhlY3ZlYXQsIGludCwgZmQsCiAKICNpZmRlZiBDT05GSUdfU1lTQ1RMCiAKLXN0 YXRpYyBpbnQgcHJvY19kb2ludHZlY19taW5tYXhfY29yZWR1bXAoc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKLQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAq cHBvcykKK3N0YXRpYyBpbnQgcHJvY19kb2ludHZlY19taW5tYXhfY29yZWR1bXAoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsCisJCQkJCSBpbnQgd3JpdGUsCisJCQkJCSB2b2lkICpidWZm ZXIsIHNpemVfdCAqbGVucCwKKwkJCQkJIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgZXJyb3IgPSBw cm9jX2RvaW50dmVjX21pbm1heCh0YWJsZSwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7CiAK ZGlmZiAtLWdpdCBhL2ZzL2ZpbGVfdGFibGUuYyBiL2ZzL2ZpbGVfdGFibGUuYwppbmRleCA0ZjAz YmVlZDQ3MzcuLjFkNGY3MTA3MmQyOCAxMDA2NDQKLS0tIGEvZnMvZmlsZV90YWJsZS5jCisrKyBi L2ZzL2ZpbGVfdGFibGUuYwpAQCAtOTYsNyArOTYsOCBAQCBFWFBPUlRfU1lNQk9MX0dQTChnZXRf bWF4X2ZpbGVzKTsKIC8qCiAgKiBIYW5kbGUgbnJfZmlsZXMgc3lzY3RsCiAgKi8KLXN0YXRpYyBp bnQgcHJvY19ucl9maWxlcyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lk ICpidWZmZXIsCitzdGF0aWMgaW50IHByb2NfbnJfZmlsZXMoY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKKwkJCSB2b2lkICpidWZmZXIsCiAJCQkgc2l6ZV90ICpsZW5w LCBsb2ZmX3QgKnBwb3MpCiB7CiAJZmlsZXNfc3RhdC5ucl9maWxlcyA9IGdldF9ucl9maWxlcygp OwpkaWZmIC0tZ2l0IGEvZnMvZnMtd3JpdGViYWNrLmMgYi9mcy9mcy13cml0ZWJhY2suYwppbmRl eCBlNGYxN2M1M2RkZmMuLjUzNWExMTA4OTYwZiAxMDA2NDQKLS0tIGEvZnMvZnMtd3JpdGViYWNr LmMKKysrIGIvZnMvZnMtd3JpdGViYWNrLmMKQEAgLTI0MDQsNyArMjQwNCw3IEBAIHN0YXRpYyBp bnQgX19pbml0IHN0YXJ0X2RpcnR5dGltZV93cml0ZWJhY2sodm9pZCkKIH0KIF9faW5pdGNhbGwo c3RhcnRfZGlydHl0aW1lX3dyaXRlYmFjayk7CiAKLWludCBkaXJ0eXRpbWVfaW50ZXJ2YWxfaGFu ZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IGRpcnR5dGltZV9p bnRlcnZhbF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs CiAJCQkgICAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsK IAlpbnQgcmV0OwpkaWZmIC0tZ2l0IGEvZnMvaW5vZGUuYyBiL2ZzL2lub2RlLmMKaW5kZXggM2E0 MWY4M2E0YmE1Li4zYjViYmI3MGExOGMgMTAwNjQ0Ci0tLSBhL2ZzL2lub2RlLmMKKysrIGIvZnMv aW5vZGUuYwpAQCAtMTA3LDcgKzEwNyw4IEBAIGxvbmcgZ2V0X25yX2RpcnR5X2lub2Rlcyh2b2lk KQogICovCiBzdGF0aWMgc3RydWN0IGlub2Rlc19zdGF0X3QgaW5vZGVzX3N0YXQ7CiAKLXN0YXRp YyBpbnQgcHJvY19ucl9pbm9kZXMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwg dm9pZCAqYnVmZmVyLAorc3RhdGljIGludCBwcm9jX25yX2lub2Rlcyhjb25zdCBzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorCQkJICB2b2lkICpidWZmZXIsCiAJCQkgIHNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWlub2Rlc19zdGF0Lm5yX2lub2RlcyA9IGdldF9u cl9pbm9kZXMoKTsKZGlmZiAtLWdpdCBhL2ZzL3BpcGUuYyBiL2ZzL3BpcGUuYwppbmRleCA1MGM4 YTg1OTZiNTIuLjdkZmYyYWE1MGE2ZCAxMDA2NDQKLS0tIGEvZnMvcGlwZS5jCisrKyBiL2ZzL3Bp cGUuYwpAQCAtMTQ2OSw3ICsxNDY5LDcgQEAgc3RhdGljIGludCBkb19wcm9jX2RvcGlwZV9tYXhf c2l6ZV9jb252KHVuc2lnbmVkIGxvbmcgKmx2YWxwLAogCXJldHVybiAwOwogfQogCi1zdGF0aWMg aW50IHByb2NfZG9waXBlX21heF9zaXplKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCitzdGF0aWMgaW50IHByb2NfZG9waXBlX21heF9zaXplKGNvbnN0IHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlyZXR1cm4gZG9fcHJvY19kb3VpbnR2ZWModGFibGUsIHdyaXRlLCBi dWZmZXIsIGxlbnAsIHBwb3MsCmRpZmYgLS1naXQgYS9mcy9xdW90YS9kcXVvdC5jIGIvZnMvcXVv dGEvZHF1b3QuYwppbmRleCBkYWNiZWU0NTVjMDMuLmIzM2RmNDU0MjZmNCAxMDA2NDQKLS0tIGEv ZnMvcXVvdGEvZHF1b3QuYworKysgYi9mcy9xdW90YS9kcXVvdC5jCkBAIC0yOTExLDggKzI5MTEs OCBAQCBjb25zdCBzdHJ1Y3QgcXVvdGFjdGxfb3BzIGRxdW90X3F1b3RhY3RsX3N5c2ZpbGVfb3Bz ID0gewogfTsKIEVYUE9SVF9TWU1CT0woZHF1b3RfcXVvdGFjdGxfc3lzZmlsZV9vcHMpOwogCi1z dGF0aWMgaW50IGRvX3Byb2NfZHFzdGF0cyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdy aXRlLAotCQkgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitz dGF0aWMgaW50IGRvX3Byb2NfZHFzdGF0cyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwg aW50IHdyaXRlLAorCQkJICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBv cykKIHsKIAl1bnNpZ25lZCBpbnQgdHlwZSA9ICh1bnNpZ25lZCBsb25nICopdGFibGUtPmRhdGEg LSBkcXN0YXRzLnN0YXQ7CiAJczY0IHZhbHVlID0gcGVyY3B1X2NvdW50ZXJfc3VtKCZkcXN0YXRz LmNvdW50ZXJbdHlwZV0pOwpkaWZmIC0tZ2l0IGEvZnMveGZzL3hmc19zeXNjdGwuYyBiL2ZzL3hm cy94ZnNfc3lzY3RsLmMKaW5kZXggYTE5MWY2NTYwZjk4Li5hM2NhMTkyZWNhNzkgMTAwNjQ0Ci0t LSBhL2ZzL3hmcy94ZnNfc3lzY3RsLmMKKysrIGIvZnMveGZzL3hmc19zeXNjdGwuYwpAQCAtMTAs MTIgKzEwLDExIEBAIHN0YXRpYyBzdHJ1Y3QgY3RsX3RhYmxlX2hlYWRlciAqeGZzX3RhYmxlX2hl YWRlcjsKIAogI2lmZGVmIENPTkZJR19QUk9DX0ZTCiBTVEFUSUMgaW50Ci14ZnNfc3RhdHNfY2xl YXJfcHJvY19oYW5kbGVyKAotCXN0cnVjdCBjdGxfdGFibGUJKmN0bCwKLQlpbnQJCQl3cml0ZSwK LQl2b2lkCQkJKmJ1ZmZlciwKLQlzaXplX3QJCQkqbGVucCwKLQlsb2ZmX3QJCQkqcHBvcykKK3hm c19zdGF0c19jbGVhcl9wcm9jX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLAor CQkJICAgICBpbnQJCQl3cml0ZSwKKwkJCSAgICAgdm9pZAkJCSpidWZmZXIsCisJCQkgICAgIHNp emVfdAkJCSpsZW5wLAorCQkJICAgICBsb2ZmX3QJCQkqcHBvcykKIHsKIAlpbnQJCXJldCwgKnZh bHAgPSBjdGwtPmRhdGE7CiAKQEAgLTMwLDEyICsyOSwxMSBAQCB4ZnNfc3RhdHNfY2xlYXJfcHJv Y19oYW5kbGVyKAogfQogCiBTVEFUSUMgaW50Ci14ZnNfcGFuaWNfbWFza19wcm9jX2hhbmRsZXIo Ci0Jc3RydWN0IGN0bF90YWJsZQkqY3RsLAotCWludAkJCXdyaXRlLAotCXZvaWQJCQkqYnVmZmVy LAotCXNpemVfdAkJCSpsZW5wLAotCWxvZmZfdAkJCSpwcG9zKQoreGZzX3BhbmljX21hc2tfcHJv Y19oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwKKwkJCSAgICBpbnQJCQl3cml0 ZSwKKwkJCSAgICB2b2lkCQkJKmJ1ZmZlciwKKwkJCSAgICBzaXplX3QJCQkqbGVucCwKKwkJCSAg ICBsb2ZmX3QJCQkqcHBvcykKIHsKIAlpbnQJCXJldCwgKnZhbHAgPSBjdGwtPmRhdGE7CiAKQEAg LTUxLDEyICs0OSwxMSBAQCB4ZnNfcGFuaWNfbWFza19wcm9jX2hhbmRsZXIoCiAjZW5kaWYgLyog Q09ORklHX1BST0NfRlMgKi8KIAogU1RBVElDIGludAoteGZzX2RlcHJlY2F0ZWRfZG9pbnR2ZWNf bWlubWF4KAotCXN0cnVjdCBjdGxfdGFibGUJKmN0bCwKLQlpbnQJCQl3cml0ZSwKLQl2b2lkCQkJ KmJ1ZmZlciwKLQlzaXplX3QJCQkqbGVucCwKLQlsb2ZmX3QJCQkqcHBvcykKK3hmc19kZXByZWNh dGVkX2RvaW50dmVjX21pbm1heChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsCisJCQkgICAg ICAgaW50CQkJd3JpdGUsCisJCQkgICAgICAgdm9pZAkJCSpidWZmZXIsCisJCQkgICAgICAgc2l6 ZV90CQkJKmxlbnAsCisJCQkgICAgICAgbG9mZl90CQkJKnBwb3MpCiB7CiAJaWYgKHdyaXRlKSB7 CiAJCXByaW50a19yYXRlbGltaXRlZChLRVJOX1dBUk5JTkcKZGlmZiAtLWdpdCBhL2luY2x1ZGUv bGludXgvZnRyYWNlLmggYi9pbmNsdWRlL2xpbnV4L2Z0cmFjZS5oCmluZGV4IGU4OTIxODcxZWY5 YS4uM2UxMGZlNjFjMmJmIDEwMDY0NAotLS0gYS9pbmNsdWRlL2xpbnV4L2Z0cmFjZS5oCisrKyBi L2luY2x1ZGUvbGludXgvZnRyYWNlLmgKQEAgLTQ3MCw3ICs0NzAsNyBAQCBzdGF0aWMgaW5saW5l IHZvaWQgYXJjaF9mdHJhY2Vfc2V0X2RpcmVjdF9jYWxsZXIoc3RydWN0IGZ0cmFjZV9yZWdzICpm cmVncywKIAogZXh0ZXJuIGludCBzdGFja190cmFjZXJfZW5hYmxlZDsKIAotaW50IHN0YWNrX3Ry YWNlX3N5c2N0bChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZm ZXIsCitpbnQgc3RhY2tfdHJhY2Vfc3lzY3RsKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKIAkJICAgICAgIHNpemVfdCAqbGVucCwgbG9mZl90 ICpwcG9zKTsKIAogLyogRE8gTk9UIE1PRElGWSBUSElTIFZBUklBQkxFIERJUkVDVExZISAqLwpA QCAtMTE1Nyw3ICsxMTU3LDcgQEAgZXh0ZXJuIGludCB0cmFjZXBvaW50X3ByaW50azsKIGV4dGVy biB2b2lkIGRpc2FibGVfdHJhY2Vfb25fd2FybmluZyh2b2lkKTsKIGV4dGVybiBpbnQgX19kaXNh YmxlX3RyYWNlX29uX3dhcm5pbmc7CiAKLWludCB0cmFjZXBvaW50X3ByaW50a19zeXNjdGwoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCB0cmFjZXBvaW50X3ByaW50a19z eXNjdGwoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAgICAg dm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7CiAKICNlbHNlIC8qIENP TkZJR19UUkFDSU5HICovCmRpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L21tLmggYi9pbmNsdWRl L2xpbnV4L21tLmgKaW5kZXggMDQzNmI5MTlmMWM3Li5mMDQ3YjU3NTJhNzggMTAwNjQ0Ci0tLSBh L2luY2x1ZGUvbGludXgvbW0uaAorKysgYi9pbmNsdWRlL2xpbnV4L21tLmgKQEAgLTIwMywxMSAr MjAzLDExIEBAIGV4dGVybiBpbnQgc3lzY3RsX292ZXJjb21taXRfbWVtb3J5OwogZXh0ZXJuIGlu dCBzeXNjdGxfb3ZlcmNvbW1pdF9yYXRpbzsKIGV4dGVybiB1bnNpZ25lZCBsb25nIHN5c2N0bF9v dmVyY29tbWl0X2tieXRlczsKIAotaW50IG92ZXJjb21taXRfcmF0aW9faGFuZGxlcihzdHJ1Y3Qg Y3RsX3RhYmxlICosIGludCwgdm9pZCAqLCBzaXplX3QgKiwKK2ludCBvdmVyY29tbWl0X3JhdGlv X2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQgKiwgc2l6ZV90ICos CiAJCWxvZmZfdCAqKTsKLWludCBvdmVyY29tbWl0X2tieXRlc19oYW5kbGVyKHN0cnVjdCBjdGxf dGFibGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLAoraW50IG92ZXJjb21taXRfa2J5dGVzX2hh bmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQgKiwgc2l6ZV90ICosCiAJ CWxvZmZfdCAqKTsKLWludCBvdmVyY29tbWl0X3BvbGljeV9oYW5kbGVyKHN0cnVjdCBjdGxfdGFi bGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLAoraW50IG92ZXJjb21taXRfcG9saWN5X2hhbmRs ZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQgKiwgc2l6ZV90ICosCiAJCWxv ZmZfdCAqKTsKIAogI2lmIGRlZmluZWQoQ09ORklHX1NQQVJTRU1FTSkgJiYgIWRlZmluZWQoQ09O RklHX1NQQVJTRU1FTV9WTUVNTUFQKQpAQCAtMzgzNyw3ICszODM3LDcgQEAgZXh0ZXJuIGJvb2wg cHJvY2Vzc19zaGFyZXNfbW0oc3RydWN0IHRhc2tfc3RydWN0ICpwLCBzdHJ1Y3QgbW1fc3RydWN0 ICptbSk7CiAKICNpZmRlZiBDT05GSUdfU1lTQ1RMCiBleHRlcm4gaW50IHN5c2N0bF9kcm9wX2Nh Y2hlczsKLWludCBkcm9wX2NhY2hlc19zeXNjdGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICos IGludCwgdm9pZCAqLCBzaXplX3QgKiwKK2ludCBkcm9wX2NhY2hlc19zeXNjdGxfaGFuZGxlcihj b25zdCBzdHJ1Y3QgY3RsX3RhYmxlICosIGludCwgdm9pZCAqLCBzaXplX3QgKiwKIAkJbG9mZl90 ICopOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvcGVyZl9ldmVudC5oIGIv aW5jbHVkZS9saW51eC9wZXJmX2V2ZW50LmgKaW5kZXggZDJhMTVjMGM2ZjhhLi43MDdkNWZlNWRh OWMgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvbGludXgvcGVyZl9ldmVudC5oCisrKyBiL2luY2x1ZGUv bGludXgvcGVyZl9ldmVudC5oCkBAIC0xNTk4LDExICsxNTk4LDExIEBAIGV4dGVybiBpbnQgc3lz Y3RsX3BlcmZfY3B1X3RpbWVfbWF4X3BlcmNlbnQ7CiAKIGV4dGVybiB2b2lkIHBlcmZfc2FtcGxl X2V2ZW50X3Rvb2sodTY0IHNhbXBsZV9sZW5fbnMpOwogCi1pbnQgcGVyZl9ldmVudF9tYXhfc2Ft cGxlX3JhdGVfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50 IHBlcmZfZXZlbnRfbWF4X3NhbXBsZV9yYXRlX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKIAkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZf dCAqcHBvcyk7Ci1pbnQgcGVyZl9jcHVfdGltZV9tYXhfcGVyY2VudF9oYW5kbGVyKHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgcGVyZl9jcHVfdGltZV9tYXhfcGVyY2Vu dF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCXZv aWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwotaW50IHBlcmZfZXZlbnRf bWF4X3N0YWNrX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2lu dCBwZXJmX2V2ZW50X21heF9zdGFja19oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRh YmxlLCBpbnQgd3JpdGUsCiAJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBw b3MpOwogCiAvKiBBY2Nlc3MgdG8gcGVyZl9ldmVudF9vcGVuKDIpIHN5c2NhbGwuICovCmRpZmYg LS1naXQgYS9pbmNsdWRlL2xpbnV4L3NlY3VyaXR5LmggYi9pbmNsdWRlL2xpbnV4L3NlY3VyaXR5 LmgKaW5kZXggZjI0OWY1YjlhOWQ3Li5mMTJkMWI3ZDY1MGUgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUv bGludXgvc2VjdXJpdHkuaAorKysgYi9pbmNsdWRlL2xpbnV4L3NlY3VyaXR5LmgKQEAgLTIyOCw3 ICsyMjgsNyBAQCBzdHJ1Y3QgcmVxdWVzdF9zb2NrOwogI2RlZmluZSBMU01fVU5TQUZFX05PX05F V19QUklWUwk0CiAKICNpZmRlZiBDT05GSUdfTU1VCi1leHRlcm4gaW50IG1tYXBfbWluX2FkZHJf aGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorZXh0ZXJuIGludCBt bWFwX21pbl9hZGRyX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7CiAj ZW5kaWYKIApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9zeXNjdGwuaCBiL2luY2x1ZGUvbGlu dXgvc3lzY3RsLmgKaW5kZXggOTllYTI2YjE2YzBkLi45NzkwMWRhZTEzNDggMTAwNjQ0Ci0tLSBh L2luY2x1ZGUvbGludXgvc3lzY3RsLmgKKysrIGIvaW5jbHVkZS9saW51eC9zeXNjdGwuaApAQCAt NjEsMzEgKzYxLDMxIEBAIGV4dGVybiBjb25zdCBpbnQgc3lzY3RsX3ZhbHNbXTsKIAogZXh0ZXJu IGNvbnN0IHVuc2lnbmVkIGxvbmcgc3lzY3RsX2xvbmdfdmFsc1tdOwogCi10eXBlZGVmIGludCBw cm9jX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZl ciwKK3R5cGVkZWYgaW50IHByb2NfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGws IGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogCQlzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7 CiAKLWludCBwcm9jX2Rvc3RyaW5nKHN0cnVjdCBjdGxfdGFibGUgKiwgaW50LCB2b2lkICosIHNp emVfdCAqLCBsb2ZmX3QgKik7Ci1pbnQgcHJvY19kb2Jvb2woc3RydWN0IGN0bF90YWJsZSAqdGFi bGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAoraW50IHByb2NfZG9zdHJpbmcoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQgKiwgc2l6ZV90ICosIGxvZmZfdCAqKTsKK2ludCBw cm9jX2RvYm9vbChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lk ICpidWZmZXIsCiAJCXNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKLWludCBwcm9jX2RvaW50 dmVjKHN0cnVjdCBjdGxfdGFibGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLCBsb2ZmX3QgKik7 Ci1pbnQgcHJvY19kb3VpbnR2ZWMoc3RydWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQgKiwgc2l6 ZV90ICosIGxvZmZfdCAqKTsKLWludCBwcm9jX2RvaW50dmVjX21pbm1heChzdHJ1Y3QgY3RsX3Rh YmxlICosIGludCwgdm9pZCAqLCBzaXplX3QgKiwgbG9mZl90ICopOwotaW50IHByb2NfZG91aW50 dmVjX21pbm1heChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZm ZXIsCitpbnQgcHJvY19kb2ludHZlYyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICosIGludCwgdm9p ZCAqLCBzaXplX3QgKiwgbG9mZl90ICopOworaW50IHByb2NfZG91aW50dmVjKGNvbnN0IHN0cnVj dCBjdGxfdGFibGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLCBsb2ZmX3QgKik7CitpbnQgcHJv Y19kb2ludHZlY19taW5tYXgoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQgKiwg c2l6ZV90ICosIGxvZmZfdCAqKTsKK2ludCBwcm9jX2RvdWludHZlY19taW5tYXgoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogCQlzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcyk7Ci1pbnQgcHJvY19kb3U4dmVjX21pbm1heChzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCitpbnQgcHJvY19kb3U4dmVj X21pbm1heChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpi dWZmZXIsCiAJCQlzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7Ci1pbnQgcHJvY19kb2ludHZl Y19qaWZmaWVzKHN0cnVjdCBjdGxfdGFibGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLCBsb2Zm X3QgKik7Ci1pbnQgcHJvY19kb2ludHZlY19tc19qaWZmaWVzX21pbm1heChzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHByb2NfZG9pbnR2ZWNfamlmZmllcyhjb25zdCBz dHJ1Y3QgY3RsX3RhYmxlICosIGludCwgdm9pZCAqLCBzaXplX3QgKiwgbG9mZl90ICopOworaW50 IHByb2NfZG9pbnR2ZWNfbXNfamlmZmllc19taW5tYXgoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKIAkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAq cHBvcyk7Ci1pbnQgcHJvY19kb2ludHZlY191c2VyaHpfamlmZmllcyhzdHJ1Y3QgY3RsX3RhYmxl ICosIGludCwgdm9pZCAqLCBzaXplX3QgKiwKK2ludCBwcm9jX2RvaW50dmVjX3VzZXJoel9qaWZm aWVzKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLAogCQls b2ZmX3QgKik7Ci1pbnQgcHJvY19kb2ludHZlY19tc19qaWZmaWVzKHN0cnVjdCBjdGxfdGFibGUg KiwgaW50LCB2b2lkICosIHNpemVfdCAqLAoraW50IHByb2NfZG9pbnR2ZWNfbXNfamlmZmllcyhj b25zdCBzdHJ1Y3QgY3RsX3RhYmxlICosIGludCwgdm9pZCAqLCBzaXplX3QgKiwKIAkJbG9mZl90 ICopOwotaW50IHByb2NfZG91bG9uZ3ZlY19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAqLCBpbnQs IHZvaWQgKiwgc2l6ZV90ICosIGxvZmZfdCAqKTsKLWludCBwcm9jX2RvdWxvbmd2ZWNfbXNfamlm Zmllc19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCwgdm9pZCAqLAoraW50IHBy b2NfZG91bG9uZ3ZlY19taW5tYXgoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQg Kiwgc2l6ZV90ICosIGxvZmZfdCAqKTsKK2ludCBwcm9jX2RvdWxvbmd2ZWNfbXNfamlmZmllc19t aW5tYXgoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCwgdm9pZCAqLAogCQlzaXpl X3QgKiwgbG9mZl90ICopOwotaW50IHByb2NfZG9fbGFyZ2VfYml0bWFwKHN0cnVjdCBjdGxfdGFi bGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLCBsb2ZmX3QgKik7Ci1pbnQgcHJvY19kb19zdGF0 aWNfa2V5KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwK K2ludCBwcm9jX2RvX2xhcmdlX2JpdG1hcChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICosIGludCwg dm9pZCAqLCBzaXplX3QgKiwgbG9mZl90ICopOworaW50IHByb2NfZG9fc3RhdGljX2tleShjb25z dCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiAJCXNp emVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKIAogLyoKQEAgLTI4OCw3ICsyODgsNyBAQCBzdGF0 aWMgaW5saW5lIGJvb2wgc3lzY3RsX2lzX2FsaWFzKGNoYXIgKnBhcmFtKQogfQogI2VuZGlmIC8q IENPTkZJR19TWVNDVEwgKi8KIAotaW50IHN5c2N0bF9tYXhfdGhyZWFkcyhzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCitpbnQgc3lzY3RsX21heF90aHJl YWRzKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZl ciwKIAkJc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwogCiAjZW5kaWYgLyogX0xJTlVYX1NZ U0NUTF9IICovCmRpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L3Ztc3RhdC5oIGIvaW5jbHVkZS9s aW51eC92bXN0YXQuaAppbmRleCAzNDM5MDZhOThkNmUuLjAyODJhYmE0ZmFhMCAxMDA2NDQKLS0t IGEvaW5jbHVkZS9saW51eC92bXN0YXQuaAorKysgYi9pbmNsdWRlL2xpbnV4L3Ztc3RhdC5oCkBA IC0xNyw3ICsxNyw3IEBAIGV4dGVybiBpbnQgc3lzY3RsX3N0YXRfaW50ZXJ2YWw7CiAjZGVmaW5l IERJU0FCTEVfTlVNQV9TVEFUICAgMAogZXh0ZXJuIGludCBzeXNjdGxfdm1fbnVtYV9zdGF0Owog REVDTEFSRV9TVEFUSUNfS0VZX1RSVUUodm1fbnVtYV9zdGF0X2tleSk7Ci1pbnQgc3lzY3RsX3Zt X251bWFfc3RhdF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitp bnQgc3lzY3RsX3ZtX251bWFfc3RhdF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRh YmxlLCBpbnQgd3JpdGUsCiAJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAq cHBvcyk7CiAjZW5kaWYKIApAQCAtMzAxLDggKzMwMSw4IEBAIHZvaWQgY3B1X3ZtX3N0YXRzX2Zv bGQoaW50IGNwdSk7CiB2b2lkIHJlZnJlc2hfem9uZV9zdGF0X3RocmVzaG9sZHModm9pZCk7CiAK IHN0cnVjdCBjdGxfdGFibGU7Ci1pbnQgdm1zdGF0X3JlZnJlc2goc3RydWN0IGN0bF90YWJsZSAq LCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLAotCQlsb2ZmX3QgKnBwb3Mp OworaW50IHZtc3RhdF9yZWZyZXNoKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKiwgaW50IHdyaXRl LCB2b2lkICpidWZmZXIsCisJCXNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKIAogdm9pZCBk cmFpbl96b25lc3RhdChzdHJ1Y3Qgem9uZSAqem9uZSwgc3RydWN0IHBlcl9jcHVfem9uZXN0YXQg Kik7CiAKZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvd3JpdGViYWNrLmggYi9pbmNsdWRlL2xp bnV4L3dyaXRlYmFjay5oCmluZGV4IDk4NDVjYjYyZTQwYi4uZTU4YjAzOWFhNTkyIDEwMDY0NAot LS0gYS9pbmNsdWRlL2xpbnV4L3dyaXRlYmFjay5oCisrKyBiL2luY2x1ZGUvbGludXgvd3JpdGVi YWNrLmgKQEAgLTM1MCw3ICszNTAsNyBAQCBleHRlcm4gdW5zaWduZWQgaW50IGRpcnR5X2V4cGly ZV9pbnRlcnZhbDsKIGV4dGVybiB1bnNpZ25lZCBpbnQgZGlydHl0aW1lX2V4cGlyZV9pbnRlcnZh bDsKIGV4dGVybiBpbnQgbGFwdG9wX21vZGU7CiAKLWludCBkaXJ0eXRpbWVfaW50ZXJ2YWxfaGFu ZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IGRpcnR5dGltZV9p bnRlcnZhbF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs CiAJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwogCiB2b2lkIGds b2JhbF9kaXJ0eV9saW1pdHModW5zaWduZWQgbG9uZyAqcGJhY2tncm91bmQsIHVuc2lnbmVkIGxv bmcgKnBkaXJ0eSk7CmRpZmYgLS1naXQgYS9pbmNsdWRlL25ldC9uZGlzYy5oIGIvaW5jbHVkZS9u ZXQvbmRpc2MuaAppbmRleCA5YmJkZjZlYWE5NDIuLjdhNTMzZDViMWQ1OSAxMDA2NDQKLS0tIGEv aW5jbHVkZS9uZXQvbmRpc2MuaAorKysgYi9pbmNsdWRlL25ldC9uZGlzYy5oCkBAIC00ODYsNyAr NDg2LDcgQEAgdm9pZCBpZ21wNl9ldmVudF9yZXBvcnQoc3RydWN0IHNrX2J1ZmYgKnNrYik7CiAK IAogI2lmZGVmIENPTkZJR19TWVNDVEwKLWludCBuZGlzY19pZmluZm9fc3lzY3RsX2NoYW5nZShz dHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK2ludCBuZGlzY19pZmluZm9fc3lzY3Rs X2NoYW5nZShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJCSAgICAg ICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKICNlbmRpZgogCmRp ZmYgLS1naXQgYS9pbmNsdWRlL25ldC9uZWlnaGJvdXIuaCBiL2luY2x1ZGUvbmV0L25laWdoYm91 ci5oCmluZGV4IDBkMjgxNzIxOTNmYS4uYTQ0ZjI2MmE3Mzg0IDEwMDY0NAotLS0gYS9pbmNsdWRl L25ldC9uZWlnaGJvdXIuaAorKysgYi9pbmNsdWRlL25ldC9uZWlnaGJvdXIuaApAQCAtNDEyLDEy ICs0MTIsMTIgQEAgdm9pZCAqbmVpZ2hfc2VxX3N0YXJ0KHN0cnVjdCBzZXFfZmlsZSAqLCBsb2Zm X3QgKiwgc3RydWN0IG5laWdoX3RhYmxlICosCiB2b2lkICpuZWlnaF9zZXFfbmV4dChzdHJ1Y3Qg c2VxX2ZpbGUgKiwgdm9pZCAqLCBsb2ZmX3QgKik7CiB2b2lkIG5laWdoX3NlcV9zdG9wKHN0cnVj dCBzZXFfZmlsZSAqLCB2b2lkICopOwogCi1pbnQgbmVpZ2hfcHJvY19kb2ludHZlYyhzdHJ1Y3Qg Y3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK2ludCBuZWlnaF9wcm9jX2RvaW50dmVjKGNvbnN0 IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJdm9pZCAqYnVmZmVyLCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7Ci1pbnQgbmVpZ2hfcHJvY19kb2ludHZlY19qaWZmaWVz KHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAoraW50IG5laWdoX3Byb2NfZG9pbnR2 ZWNfamlmZmllcyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJCQl2 b2lkICpidWZmZXIsCiAJCQkJc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwotaW50IG5laWdo X3Byb2NfZG9pbnR2ZWNfbXNfamlmZmllcyhzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0 ZSwKK2ludCBuZWlnaF9wcm9jX2RvaW50dmVjX21zX2ppZmZpZXMoY29uc3Qgc3RydWN0IGN0bF90 YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAs IGxvZmZfdCAqcHBvcyk7CiAKIGludCBuZWlnaF9zeXNjdGxfcmVnaXN0ZXIoc3RydWN0IG5ldF9k ZXZpY2UgKmRldiwgc3RydWN0IG5laWdoX3Bhcm1zICpwLApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9u ZXQvbmV0ZmlsdGVyL25mX2hvb2tzX2x3dHVubmVsLmggYi9pbmNsdWRlL25ldC9uZXRmaWx0ZXIv bmZfaG9va3NfbHd0dW5uZWwuaAppbmRleCA1MmUyNzkyMGY4MjkuLmNlZjdhNGViOGY5NyAxMDA2 NDQKLS0tIGEvaW5jbHVkZS9uZXQvbmV0ZmlsdGVyL25mX2hvb2tzX2x3dHVubmVsLmgKKysrIGIv aW5jbHVkZS9uZXQvbmV0ZmlsdGVyL25mX2hvb2tzX2x3dHVubmVsLmgKQEAgLTIsNiArMiw2IEBA CiAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KIAogI2lmZGVmIENPTkZJR19TWVNDVEwKLWludCBu Zl9ob29rc19sd3R1bm5lbF9zeXNjdGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwg aW50IHdyaXRlLAoraW50IG5mX2hvb2tzX2x3dHVubmVsX3N5c2N0bF9oYW5kbGVyKGNvbnN0IHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJICAgICB2b2lkICpidWZmZXIs IHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvaXBjL2lw Y19zeXNjdGwuYyBiL2lwYy9pcGNfc3lzY3RsLmMKaW5kZXggNDVjYjFkYWJjZTI5Li5jNDBlOTM4 NGZiMWIgMTAwNjQ0Ci0tLSBhL2lwYy9pcGNfc3lzY3RsLmMKKysrIGIvaXBjL2lwY19zeXNjdGwu YwpAQCAtMTcsOCArMTcsMTAgQEAKICNpbmNsdWRlIDxsaW51eC9jcmVkLmg+CiAjaW5jbHVkZSAi dXRpbC5oIgogCi1zdGF0aWMgaW50IHByb2NfaXBjX2RvaW50dmVjX21pbm1heF9vcnBoYW5zKHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCXZvaWQgKmJ1ZmZlciwgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IHByb2NfaXBjX2RvaW50dmVjX21pbm1h eF9vcnBoYW5zKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLAorCQkJCQkgICAgaW50IHdy aXRlLAorCQkJCQkgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsCisJCQkJCSAgICBsb2Zm X3QgKnBwb3MpCiB7CiAJc3RydWN0IGlwY19uYW1lc3BhY2UgKm5zID0KIAkJY29udGFpbmVyX29m KHRhYmxlLT5kYXRhLCBzdHJ1Y3QgaXBjX25hbWVzcGFjZSwgc2htX3JtaWRfZm9yY2VkKTsKQEAg LTMzLDggKzM1LDggQEAgc3RhdGljIGludCBwcm9jX2lwY19kb2ludHZlY19taW5tYXhfb3JwaGFu cyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCXJldHVybiBlcnI7CiB9CiAK LXN0YXRpYyBpbnQgcHJvY19pcGNfYXV0b19tc2dtbmkoc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwKLQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK K3N0YXRpYyBpbnQgcHJvY19pcGNfYXV0b19tc2dtbmkoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKKwkJCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90 ICpwcG9zKQogewogCXN0cnVjdCBjdGxfdGFibGUgaXBjX3RhYmxlOwogCWludCBkdW1teSA9IDA7 CkBAIC00OCw4ICs1MCw4IEBAIHN0YXRpYyBpbnQgcHJvY19pcGNfYXV0b19tc2dtbmkoc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAlyZXR1cm4gcHJvY19kb2ludHZlY19taW5t YXgoJmlwY190YWJsZSwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7CiB9CiAKLXN0YXRpYyBp bnQgcHJvY19pcGNfc2VtX2RvaW50dmVjKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCi0Jdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBp bnQgcHJvY19pcGNfc2VtX2RvaW50dmVjKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCisJCQkJIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3Mp CiB7CiAJc3RydWN0IGlwY19uYW1lc3BhY2UgKm5zID0KIAkJY29udGFpbmVyX29mKHRhYmxlLT5k YXRhLCBzdHJ1Y3QgaXBjX25hbWVzcGFjZSwgc2VtX2N0bHMpOwpkaWZmIC0tZ2l0IGEva2VybmVs L2JwZi9zeXNjYWxsLmMgYi9rZXJuZWwvYnBmL3N5c2NhbGwuYwppbmRleCBhZTJmZjczYmRlN2Uu LjA4ZjkyZmIzY2VmYSAxMDA2NDQKLS0tIGEva2VybmVsL2JwZi9zeXNjYWxsLmMKKysrIGIva2Vy bmVsL2JwZi9zeXNjYWxsLmMKQEAgLTU5MDQsNyArNTkwNCw3IEBAIGNvbnN0IHN0cnVjdCBicGZf cHJvZ19vcHMgYnBmX3N5c2NhbGxfcHJvZ19vcHMgPSB7CiB9OwogCiAjaWZkZWYgQ09ORklHX1NZ U0NUTAotc3RhdGljIGludCBicGZfc3RhdHNfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJs ZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBicGZfc3RhdHNfaGFuZGxlcihjb25zdCBzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICAgICB2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBzdGF0aWNfa2V5ICprZXkgPSAoc3Ry dWN0IHN0YXRpY19rZXkgKil0YWJsZS0+ZGF0YTsKQEAgLTU5MzksNyArNTkzOSw3IEBAIHZvaWQg X193ZWFrIHVucHJpdl9lYnBmX25vdGlmeShpbnQgbmV3X3N0YXRlKQogewogfQogCi1zdGF0aWMg aW50IGJwZl91bnByaXZfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRl LAorc3RhdGljIGludCBicGZfdW5wcml2X2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKIAkJCSAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldCwgdW5wcml2X2VuYWJsZSA9ICooaW50ICopdGFibGUt PmRhdGE7CmRpZmYgLS1naXQgYS9rZXJuZWwvZGVsYXlhY2N0LmMgYi9rZXJuZWwvZGVsYXlhY2N0 LmMKaW5kZXggNmYwYzM1OGU3M2Q4Li41MTM3OTFlZjU3M2QgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9k ZWxheWFjY3QuYworKysgYi9rZXJuZWwvZGVsYXlhY2N0LmMKQEAgLTQ0LDggKzQ0LDkgQEAgdm9p ZCBkZWxheWFjY3RfaW5pdCh2b2lkKQogfQogCiAjaWZkZWYgQ09ORklHX1BST0NfU1lTQ1RMCi1z dGF0aWMgaW50IHN5c2N0bF9kZWxheWFjY3Qoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwgdm9pZCAqYnVmZmVyLAotCQkgICAgIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQor c3RhdGljIGludCBzeXNjdGxfZGVsYXlhY2N0KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsCisJCQkgICAgdm9pZCAqYnVmZmVyLAorCQkJICAgIHNpemVfdCAqbGVucCwg bG9mZl90ICpwcG9zKQogewogCWludCBzdGF0ZSA9IGRlbGF5YWNjdF9vbjsKIAlzdHJ1Y3QgY3Rs X3RhYmxlIHQ7CmRpZmYgLS1naXQgYS9rZXJuZWwvZXZlbnRzL2NhbGxjaGFpbi5jIGIva2VybmVs L2V2ZW50cy9jYWxsY2hhaW4uYwppbmRleCAxMjczYmU4NDM5MmMuLmJkNTY5OWY4NjljMyAxMDA2 NDQKLS0tIGEva2VybmVsL2V2ZW50cy9jYWxsY2hhaW4uYworKysgYi9rZXJuZWwvZXZlbnRzL2Nh bGxjaGFpbi5jCkBAIC0yMjksNyArMjI5LDcgQEAgZ2V0X3BlcmZfY2FsbGNoYWluKHN0cnVjdCBw dF9yZWdzICpyZWdzLCB1MzIgaW5pdF9uciwgYm9vbCBrZXJuZWwsIGJvb2wgdXNlciwKICAqIFVz ZWQgZm9yIHN5c2N0bF9wZXJmX2V2ZW50X21heF9zdGFjayBhbmQKICAqIHN5c2N0bF9wZXJmX2V2 ZW50X21heF9jb250ZXh0c19wZXJfc3RhY2suCiAgKi8KLWludCBwZXJmX2V2ZW50X21heF9zdGFj a19oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgcGVyZl9l dmVudF9tYXhfc3RhY2tfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAogCQkJCSB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQog ewogCWludCAqdmFsdWUgPSB0YWJsZS0+ZGF0YTsKZGlmZiAtLWdpdCBhL2tlcm5lbC9ldmVudHMv Y29yZS5jIGIva2VybmVsL2V2ZW50cy9jb3JlLmMKaW5kZXggNzI0ZTZkN2UxMjhmLi5lMjk1NWUw ZDlmNDQgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9ldmVudHMvY29yZS5jCisrKyBiL2tlcm5lbC9ldmVu dHMvY29yZS5jCkBAIC00NTAsNyArNDUwLDggQEAgc3RhdGljIHZvaWQgdXBkYXRlX3BlcmZfY3B1 X2xpbWl0cyh2b2lkKQogCiBzdGF0aWMgYm9vbCBwZXJmX3JvdGF0ZV9jb250ZXh0KHN0cnVjdCBw ZXJmX2NwdV9wbXVfY29udGV4dCAqY3BjKTsKIAotaW50IHBlcmZfZXZlbnRfbWF4X3NhbXBsZV9y YXRlX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBwZXJm X2V2ZW50X21heF9zYW1wbGVfcmF0ZV9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRh YmxlLAorCQkJCSAgICAgICBpbnQgd3JpdGUsCiAJCQkJICAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6 ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldDsKQEAgLTQ3NCw4ICs0NzUsMTAg QEAgaW50IHBlcmZfZXZlbnRfbWF4X3NhbXBsZV9yYXRlX2hhbmRsZXIoc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKIAogaW50IHN5c2N0bF9wZXJmX2NwdV90aW1lX21heF9wZXJj ZW50IF9fcmVhZF9tb3N0bHkgPSBERUZBVUxUX0NQVV9USU1FX01BWF9QRVJDRU5UOwogCi1pbnQg cGVyZl9jcHVfdGltZV9tYXhfcGVyY2VudF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsCi0JCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3Mp CitpbnQgcGVyZl9jcHVfdGltZV9tYXhfcGVyY2VudF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLAorCQkJCSAgICAgIGludCB3cml0ZSwKKwkJCQkgICAgICB2b2lkICpidWZm ZXIsIHNpemVfdCAqbGVucCwKKwkJCQkgICAgICBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldCA9 IHByb2NfZG9pbnR2ZWNfbWlubWF4KHRhYmxlLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsK IApkaWZmIC0tZ2l0IGEva2VybmVsL2ZvcmsuYyBiL2tlcm5lbC9mb3JrLmMKaW5kZXggMzlhNTA0 NmMyZjBiLi43YmUxZGMwMzVmZTEgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9mb3JrLmMKKysrIGIva2Vy bmVsL2ZvcmsuYwpAQCAtMzQxNyw3ICszNDE3LDcgQEAgaW50IHVuc2hhcmVfZmlsZXModm9pZCkK IAlyZXR1cm4gMDsKIH0KIAotaW50IHN5c2N0bF9tYXhfdGhyZWFkcyhzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHN5c2N0bF9tYXhfdGhyZWFkcyhjb25zdCBzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkgICAgICAgdm9pZCAqYnVmZmVyLCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgY3RsX3RhYmxlIHQ7CmRpZmYgLS1n aXQgYS9rZXJuZWwvaHVuZ190YXNrLmMgYi9rZXJuZWwvaHVuZ190YXNrLmMKaW5kZXggYjJmYzI3 MjdkNjU0Li4wMDNmMGY1Y2IxMTEgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9odW5nX3Rhc2suYworKysg Yi9rZXJuZWwvaHVuZ190YXNrLmMKQEAgLTIzOSw5ICsyMzksMTAgQEAgc3RhdGljIGxvbmcgaHVu Z190aW1lb3V0X2ppZmZpZXModW5zaWduZWQgbG9uZyBsYXN0X2NoZWNrZWQsCiAvKgogICogUHJv Y2VzcyB1cGRhdGluZyBvZiB0aW1lb3V0IHN5c2N0bAogICovCi1zdGF0aWMgaW50IHByb2NfZG9o dW5nX3Rhc2tfdGltZW91dF9zZWNzKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs Ci0JCQkJICB2b2lkICpidWZmZXIsCi0JCQkJICBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK K3N0YXRpYyBpbnQgcHJvY19kb2h1bmdfdGFza190aW1lb3V0X3NlY3MoY29uc3Qgc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsCisJCQkJCSBpbnQgd3JpdGUsCisJCQkJCSB2b2lkICpidWZmZXIsCisJ CQkJCSBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgcmV0OwogCmRpZmYgLS1n aXQgYS9rZXJuZWwva2V4ZWNfY29yZS5jIGIva2VybmVsL2tleGVjX2NvcmUuYwppbmRleCAwZTk2 ZjZiMjQzNDQuLmE2OTk1YmI4OWVlZiAxMDA2NDQKLS0tIGEva2VybmVsL2tleGVjX2NvcmUuYwor KysgYi9rZXJuZWwva2V4ZWNfY29yZS5jCkBAIC04ODgsNyArODg4LDcgQEAgc3RydWN0IGtpbWFn ZSAqa2V4ZWNfY3Jhc2hfaW1hZ2U7CiBzdGF0aWMgaW50IGtleGVjX2xvYWRfZGlzYWJsZWQ7CiAK ICNpZmRlZiBDT05GSUdfU1lTQ1RMCi1zdGF0aWMgaW50IGtleGVjX2xpbWl0X2hhbmRsZXIoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQga2V4ZWNfbGltaXRf aGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICAg ICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0 IGtleGVjX2xvYWRfbGltaXQgKmxpbWl0ID0gdGFibGUtPmRhdGE7CmRpZmYgLS1naXQgYS9rZXJu ZWwva3Byb2Jlcy5jIGIva2VybmVsL2twcm9iZXMuYwppbmRleCA5ZDkwOTVlODE3OTIuLjgzNzcx YzQ0ZmMzYSAxMDA2NDQKLS0tIGEva2VybmVsL2twcm9iZXMuYworKysgYi9rZXJuZWwva3Byb2Jl cy5jCkBAIC05MzksNyArOTM5LDcgQEAgc3RhdGljIHZvaWQgdW5vcHRpbWl6ZV9hbGxfa3Byb2Jl cyh2b2lkKQogCiBzdGF0aWMgREVGSU5FX01VVEVYKGtwcm9iZV9zeXNjdGxfbXV0ZXgpOwogc3Rh dGljIGludCBzeXNjdGxfa3Byb2Jlc19vcHRpbWl6YXRpb247Ci1zdGF0aWMgaW50IHByb2Nfa3By b2Jlc19vcHRpbWl6YXRpb25faGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKK3N0YXRp YyBpbnQgcHJvY19rcHJvYmVzX29wdGltaXphdGlvbl9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLAogCQkJCQkgICAgIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogCQkJCQkg ICAgIHNpemVfdCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3MpCiB7CmRpZmYgLS1naXQgYS9rZXJuZWwv bGF0ZW5jeXRvcC5jIGIva2VybmVsL2xhdGVuY3l0b3AuYwppbmRleCA3ODEyNDkwOThjYjYuLjBh NWMyMmIxOTgyMSAxMDA2NDQKLS0tIGEva2VybmVsL2xhdGVuY3l0b3AuYworKysgYi9rZXJuZWwv bGF0ZW5jeXRvcC5jCkBAIC02NSw4ICs2NSw5IEBAIHN0YXRpYyBzdHJ1Y3QgbGF0ZW5jeV9yZWNv cmQgbGF0ZW5jeV9yZWNvcmRbTUFYTFJdOwogaW50IGxhdGVuY3l0b3BfZW5hYmxlZDsKIAogI2lm ZGVmIENPTkZJR19TWVNDVEwKLXN0YXRpYyBpbnQgc3lzY3RsX2xhdGVuY3l0b3Aoc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAotCQlzaXplX3QgKmxlbnAs IGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgc3lzY3RsX2xhdGVuY3l0b3AoY29uc3Qgc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKKwkJCSAgICAgdm9pZCAqYnVmZmVyLAorCQkJ ICAgICBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgZXJyOwogCmRpZmYgLS1n aXQgYS9rZXJuZWwvcGlkX25hbWVzcGFjZS5jIGIva2VybmVsL3BpZF9uYW1lc3BhY2UuYwppbmRl eCA3YWRlMjBlOTUyMzIuLjAwOGMzMmYxMWJiYyAxMDA2NDQKLS0tIGEva2VybmVsL3BpZF9uYW1l c3BhY2UuYworKysgYi9rZXJuZWwvcGlkX25hbWVzcGFjZS5jCkBAIC0yNzcsOCArMjc3LDggQEAg dm9pZCB6YXBfcGlkX25zX3Byb2Nlc3NlcyhzdHJ1Y3QgcGlkX25hbWVzcGFjZSAqcGlkX25zKQog fQogCiAjaWZkZWYgQ09ORklHX0NIRUNLUE9JTlRfUkVTVE9SRQotc3RhdGljIGludCBwaWRfbnNf Y3RsX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKLQkJdm9pZCAq YnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgcGlkX25zX2N0 bF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCisJCQkg ICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVj dCBwaWRfbmFtZXNwYWNlICpwaWRfbnMgPSB0YXNrX2FjdGl2ZV9waWRfbnMoY3VycmVudCk7CiAJ c3RydWN0IGN0bF90YWJsZSB0bXAgPSAqdGFibGU7CmRpZmYgLS1naXQgYS9rZXJuZWwvcGlkX3N5 c2N0bC5oIGIva2VybmVsL3BpZF9zeXNjdGwuaAppbmRleCAyZWU0MWEzYTFkZmQuLmExYjQ3YWQx MGViYyAxMDA2NDQKLS0tIGEva2VybmVsL3BpZF9zeXNjdGwuaAorKysgYi9rZXJuZWwvcGlkX3N5 c2N0bC5oCkBAIC01LDcgKzUsNyBAQAogI2luY2x1ZGUgPGxpbnV4L3BpZF9uYW1lc3BhY2UuaD4K IAogI2lmIGRlZmluZWQoQ09ORklHX1NZU0NUTCkgJiYgZGVmaW5lZChDT05GSUdfTUVNRkRfQ1JF QVRFKQotc3RhdGljIGludCBwaWRfbWZkX25vZXhlY19kb2ludHZlY19taW5tYXgoc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsCitzdGF0aWMgaW50IHBpZF9tZmRfbm9leGVjX2RvaW50dmVjX21pbm1h eChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKIAlpbnQgd3JpdGUsIHZvaWQgKmJ1Ziwg c2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IHBpZF9uYW1lc3BhY2UgKm5z ID0gdGFza19hY3RpdmVfcGlkX25zKGN1cnJlbnQpOwpkaWZmIC0tZ2l0IGEva2VybmVsL3ByaW50 ay9pbnRlcm5hbC5oIGIva2VybmVsL3ByaW50ay9pbnRlcm5hbC5oCmluZGV4IDZjMmFmZWU1ZWY2 Mi4uMTlkY2M1ODMyNjUxIDEwMDY0NAotLS0gYS9rZXJuZWwvcHJpbnRrL2ludGVybmFsLmgKKysr IGIva2VybmVsL3ByaW50ay9pbnRlcm5hbC5oCkBAIC04LDcgKzgsNyBAQAogCiAjaWYgZGVmaW5l ZChDT05GSUdfUFJJTlRLKSAmJiBkZWZpbmVkKENPTkZJR19TWVNDVEwpCiB2b2lkIF9faW5pdCBw cmludGtfc3lzY3RsX2luaXQodm9pZCk7Ci1pbnQgZGV2a21zZ19zeXNjdGxfc2V0X2xvZ2x2bChz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IGRldmttc2dfc3lzY3RsX3Nl dF9sb2dsdmwoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAg ICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwogI2Vsc2UKICNk ZWZpbmUgcHJpbnRrX3N5c2N0bF9pbml0KCkgZG8geyB9IHdoaWxlICgwKQpkaWZmIC0tZ2l0IGEv a2VybmVsL3ByaW50ay9wcmludGsuYyBiL2tlcm5lbC9wcmludGsvcHJpbnRrLmMKaW5kZXggY2E1 MTQ2MDA2Yjk0Li5jOTZhZTE2Y2EyY2QgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9wcmludGsvcHJpbnRr LmMKKysrIGIva2VybmVsL3ByaW50ay9wcmludGsuYwpAQCAtMTk3LDcgKzE5Nyw3IEBAIF9fc2V0 dXAoInByaW50ay5kZXZrbXNnPSIsIGNvbnRyb2xfZGV2a21zZyk7CiAKIGNoYXIgZGV2a21zZ19s b2dfc3RyW0RFVktNU0dfU1RSX01BWF9TSVpFXSA9ICJyYXRlbGltaXQiOwogI2lmIGRlZmluZWQo Q09ORklHX1BSSU5USykgJiYgZGVmaW5lZChDT05GSUdfU1lTQ1RMKQotaW50IGRldmttc2dfc3lz Y3RsX3NldF9sb2dsdmwoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBk ZXZrbXNnX3N5c2N0bF9zZXRfbG9nbHZsKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCiAJCQkgICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpw cG9zKQogewogCWNoYXIgb2xkX3N0cltERVZLTVNHX1NUUl9NQVhfU0laRV07CmRpZmYgLS1naXQg YS9rZXJuZWwvcHJpbnRrL3N5c2N0bC5jIGIva2VybmVsL3ByaW50ay9zeXNjdGwuYwppbmRleCBj MjI4MzQzZWViOTcuLjI1NzE2NTFhYTFjZSAxMDA2NDQKLS0tIGEva2VybmVsL3ByaW50ay9zeXNj dGwuYworKysgYi9rZXJuZWwvcHJpbnRrL3N5c2N0bC5jCkBAIC0xMSw4ICsxMSwxMCBAQAogCiBz dGF0aWMgY29uc3QgaW50IHRlbl90aG91c2FuZCA9IDEwMDAwOwogCi1zdGF0aWMgaW50IHByb2Nf ZG9pbnR2ZWNfbWlubWF4X3N5c2FkbWluKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCi0JCQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRp YyBpbnQgcHJvY19kb2ludHZlY19taW5tYXhfc3lzYWRtaW4oY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsCisJCQkJCSBpbnQgd3JpdGUsCisJCQkJCSB2b2lkICpidWZmZXIsIHNpemVfdCAq bGVucCwKKwkJCQkJIGxvZmZfdCAqcHBvcykKIHsKIAlpZiAod3JpdGUgJiYgIWNhcGFibGUoQ0FQ X1NZU19BRE1JTikpCiAJCXJldHVybiAtRVBFUk07CmRpZmYgLS1naXQgYS9rZXJuZWwvc2NoZWQv Y29yZS5jIGIva2VybmVsL3NjaGVkL2NvcmUuYwppbmRleCAwNjIxZTRlZTMxZGUuLmVhMTQzYmI2 M2Y2MyAxMDA2NDQKLS0tIGEva2VybmVsL3NjaGVkL2NvcmUuYworKysgYi9rZXJuZWwvc2NoZWQv Y29yZS5jCkBAIC0xODM1LDggKzE4MzUsMTAgQEAgc3RhdGljIHZvaWQgdWNsYW1wX3N5bmNfdXRp bF9taW5fcnRfZGVmYXVsdCh2b2lkKQogCQl1Y2xhbXBfdXBkYXRlX3V0aWxfbWluX3J0X2RlZmF1 bHQocCk7CiB9CiAKLXN0YXRpYyBpbnQgc3lzY3RsX3NjaGVkX3VjbGFtcF9oYW5kbGVyKHN0cnVj dCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCQkJdm9pZCAqYnVmZmVyLCBzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgc3lzY3RsX3NjaGVkX3VjbGFtcF9oYW5k bGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLAorCQkJCSAgICAgICBpbnQgd3JpdGUs CisJCQkJICAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLAorCQkJCSAgICAgICBsb2Zm X3QgKnBwb3MpCiB7CiAJYm9vbCB1cGRhdGVfcm9vdF90ZyA9IGZhbHNlOwogCWludCBvbGRfbWlu LCBvbGRfbWF4LCBvbGRfbWluX3J0OwpAQCAtNDYwMyw4ICs0NjA1LDggQEAgc3RhdGljIHZvaWQg cmVzZXRfbWVtb3J5X3RpZXJpbmcodm9pZCkKIAl9CiB9CiAKLXN0YXRpYyBpbnQgc3lzY3RsX251 bWFfYmFsYW5jaW5nKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCQkgIHZv aWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IHN5c2N0 bF9udW1hX2JhbGFuY2luZyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRl LAorCQkJCSB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0 cnVjdCBjdGxfdGFibGUgdDsKIAlpbnQgZXJyOwpAQCAtNDY3Miw4ICs0Njc0LDkgQEAgc3RhdGlj IGludCBfX2luaXQgc2V0dXBfc2NoZWRzdGF0cyhjaGFyICpzdHIpCiBfX3NldHVwKCJzY2hlZHN0 YXRzPSIsIHNldHVwX3NjaGVkc3RhdHMpOwogCiAjaWZkZWYgQ09ORklHX1BST0NfU1lTQ1RMCi1z dGF0aWMgaW50IHN5c2N0bF9zY2hlZHN0YXRzKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsIHZvaWQgKmJ1ZmZlciwKLQkJc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitzdGF0 aWMgaW50IHN5c2N0bF9zY2hlZHN0YXRzKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCisJCQkgICAgIHZvaWQgKmJ1ZmZlciwKKwkJCSAgICAgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IGN0bF90YWJsZSB0OwogCWludCBlcnI7CmRpZmYgLS1n aXQgYS9rZXJuZWwvc2NoZWQvcnQuYyBiL2tlcm5lbC9zY2hlZC9ydC5jCmluZGV4IDMyNjFiMDY3 YjY3ZS4uM2JiZjI5ZDRlMTEwIDEwMDY0NAotLS0gYS9rZXJuZWwvc2NoZWQvcnQuYworKysgYi9r ZXJuZWwvc2NoZWQvcnQuYwpAQCAtMjYsMTAgKzI2LDEyIEBAIGludCBzeXNjdGxfc2NoZWRfcnRf cnVudGltZSA9IDk1MDAwMDsKIAogI2lmZGVmIENPTkZJR19TWVNDVEwKIHN0YXRpYyBpbnQgc3lz Y3RsX3NjaGVkX3JyX3RpbWVzbGljZSA9IChNU0VDX1BFUl9TRUMgKiBSUl9USU1FU0xJQ0UpIC8g SFo7Ci1zdGF0aWMgaW50IHNjaGVkX3J0X2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAotCQlzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7 Ci1zdGF0aWMgaW50IHNjaGVkX3JyX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwgdm9pZCAqYnVmZmVyLAotCQlzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7Citz dGF0aWMgaW50IHNjaGVkX3J0X2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwKKwkJCSAgICB2b2lkICpidWZmZXIsCisJCQkgICAgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpOworc3RhdGljIGludCBzY2hlZF9ycl9oYW5kbGVyKGNvbnN0IHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCisJCQkgICAgdm9pZCAqYnVmZmVyLAorCQkJICAg IHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKIHN0YXRpYyBzdHJ1Y3QgY3RsX3RhYmxlIHNj aGVkX3J0X3N5c2N0bHNbXSA9IHsKIAl7CiAJCS5wcm9jbmFtZSAgICAgICA9ICJzY2hlZF9ydF9w ZXJpb2RfdXMiLApAQCAtMjk1Myw4ICsyOTU1LDkgQEAgc3RhdGljIHZvaWQgc2NoZWRfcnRfZG9f Z2xvYmFsKHZvaWQpCiAJcmF3X3NwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmRlZl9ydF9iYW5kd2lk dGgucnRfcnVudGltZV9sb2NrLCBmbGFncyk7CiB9CiAKLXN0YXRpYyBpbnQgc2NoZWRfcnRfaGFu ZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCi0J CXNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQorc3RhdGljIGludCBzY2hlZF9ydF9oYW5kbGVy KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCisJCQkgICAgdm9pZCAq YnVmZmVyLAorCQkJICAgIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCBvbGRf cGVyaW9kLCBvbGRfcnVudGltZTsKIAlzdGF0aWMgREVGSU5FX01VVEVYKG11dGV4KTsKQEAgLTI5 OTIsOCArMjk5NSw5IEBAIHN0YXRpYyBpbnQgc2NoZWRfcnRfaGFuZGxlcihzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiAJcmV0dXJuIHJldDsKIH0KIAot c3RhdGljIGludCBzY2hlZF9ycl9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsIHZvaWQgKmJ1ZmZlciwKLQkJc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitzdGF0 aWMgaW50IHNjaGVkX3JyX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKKwkJCSAgICB2b2lkICpidWZmZXIsCisJCQkgICAgc2l6ZV90ICpsZW5wLCBsb2Zm X3QgKnBwb3MpCiB7CiAJaW50IHJldDsKIAlzdGF0aWMgREVGSU5FX01VVEVYKG11dGV4KTsKZGlm ZiAtLWdpdCBhL2tlcm5lbC9zY2hlZC90b3BvbG9neS5jIGIva2VybmVsL3NjaGVkL3RvcG9sb2d5 LmMKaW5kZXggOTllYTU5ODYwMzhjLi4xYzU4MmNlZTYxNDQgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9z Y2hlZC90b3BvbG9neS5jCisrKyBiL2tlcm5lbC9zY2hlZC90b3BvbG9neS5jCkBAIC0yODUsOCAr Mjg1LDEwIEBAIHZvaWQgcmVidWlsZF9zY2hlZF9kb21haW5zX2VuZXJneSh2b2lkKQogfQogCiAj aWZkZWYgQ09ORklHX1BST0NfU1lTQ1RMCi1zdGF0aWMgaW50IHNjaGVkX2VuZXJneV9hd2FyZV9o YW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCXZvaWQgKmJ1ZmZl ciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IHNjaGVkX2VuZXJneV9h d2FyZV9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLAorCQkJCSAgICAgIGlu dCB3cml0ZSwKKwkJCQkgICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwKKwkJCQkgICAg ICBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldCwgc3RhdGU7CiAKZGlmZiAtLWdpdCBhL2tlcm5l bC9zZWNjb21wLmMgYi9rZXJuZWwvc2VjY29tcC5jCmluZGV4IGFjYTdiNDM3ODgyZS4uMzk3MTE4 YTI0NjMxIDEwMDY0NAotLS0gYS9rZXJuZWwvc2VjY29tcC5jCisrKyBiL2tlcm5lbC9zZWNjb21w LmMKQEAgLTIzMzQsNyArMjMzNCw3IEBAIHN0YXRpYyBib29sIHNlY2NvbXBfYWN0aW9uc19sb2dn ZWRfZnJvbV9uYW1lcyh1MzIgKmFjdGlvbnNfbG9nZ2VkLCBjaGFyICpuYW1lcykKIAlyZXR1cm4g dHJ1ZTsKIH0KIAotc3RhdGljIGludCByZWFkX2FjdGlvbnNfbG9nZ2VkKHN0cnVjdCBjdGxfdGFi bGUgKnJvX3RhYmxlLCB2b2lkICpidWZmZXIsCitzdGF0aWMgaW50IHJlYWRfYWN0aW9uc19sb2dn ZWQoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqcm9fdGFibGUsIHZvaWQgKmJ1ZmZlciwKIAkJCSAg ICAgICBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAljaGFyIG5hbWVzW3NpemVvZihz ZWNjb21wX2FjdGlvbnNfYXZhaWwpXTsKQEAgLTIzNTIsNyArMjM1Miw3IEBAIHN0YXRpYyBpbnQg cmVhZF9hY3Rpb25zX2xvZ2dlZChzdHJ1Y3QgY3RsX3RhYmxlICpyb190YWJsZSwgdm9pZCAqYnVm ZmVyLAogCXJldHVybiBwcm9jX2Rvc3RyaW5nKCZ0YWJsZSwgMCwgYnVmZmVyLCBsZW5wLCBwcG9z KTsKIH0KIAotc3RhdGljIGludCB3cml0ZV9hY3Rpb25zX2xvZ2dlZChzdHJ1Y3QgY3RsX3RhYmxl ICpyb190YWJsZSwgdm9pZCAqYnVmZmVyLAorc3RhdGljIGludCB3cml0ZV9hY3Rpb25zX2xvZ2dl ZChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpyb190YWJsZSwgdm9pZCAqYnVmZmVyLAogCQkJCXNp emVfdCAqbGVucCwgbG9mZl90ICpwcG9zLCB1MzIgKmFjdGlvbnNfbG9nZ2VkKQogewogCWNoYXIg bmFtZXNbc2l6ZW9mKHNlY2NvbXBfYWN0aW9uc19hdmFpbCldOwpAQCAtMjQxMyw3ICsyNDEzLDgg QEAgc3RhdGljIHZvaWQgYXVkaXRfYWN0aW9uc19sb2dnZWQodTMyIGFjdGlvbnNfbG9nZ2VkLCB1 MzIgb2xkX2FjdGlvbnNfbG9nZ2VkLAogCXJldHVybiBhdWRpdF9zZWNjb21wX2FjdGlvbnNfbG9n Z2VkKG5ldywgb2xkLCAhcmV0KTsKIH0KIAotc3RhdGljIGludCBzZWNjb21wX2FjdGlvbnNfbG9n Z2VkX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqcm9fdGFibGUsIGludCB3cml0ZSwKK3N0YXRp YyBpbnQgc2VjY29tcF9hY3Rpb25zX2xvZ2dlZF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFi bGUgKnJvX3RhYmxlLAorCQkJCQkgIGludCB3cml0ZSwKIAkJCQkJICB2b2lkICpidWZmZXIsIHNp emVfdCAqbGVucCwKIAkJCQkJICBsb2ZmX3QgKnBwb3MpCiB7CmRpZmYgLS1naXQgYS9rZXJuZWwv c3RhY2tsZWFrLmMgYi9rZXJuZWwvc3RhY2tsZWFrLmMKaW5kZXggYjI5MmU1Y2EwYjdkLi5hYmU1 MzAwNzFjMjAgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9zdGFja2xlYWsuYworKysgYi9rZXJuZWwvc3Rh Y2tsZWFrLmMKQEAgLTIxLDggKzIxLDkgQEAKIHN0YXRpYyBERUZJTkVfU1RBVElDX0tFWV9GQUxT RShzdGFja19lcmFzaW5nX2J5cGFzcyk7CiAKICNpZmRlZiBDT05GSUdfU1lTQ1RMCi1zdGF0aWMg aW50IHN0YWNrX2VyYXNpbmdfc3lzY3RsKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCi0JCQl2b2lkIF9fdXNlciAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK K3N0YXRpYyBpbnQgc3RhY2tfZXJhc2luZ19zeXNjdGwoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKKwkJCQl2b2lkIF9fdXNlciAqYnVmZmVyLCBzaXplX3QgKmxlbnAs CisJCQkJbG9mZl90ICpwcG9zKQogewogCWludCByZXQgPSAwOwogCWludCBzdGF0ZSA9ICFzdGF0 aWNfYnJhbmNoX3VubGlrZWx5KCZzdGFja19lcmFzaW5nX2J5cGFzcyk7CmRpZmYgLS1naXQgYS9r ZXJuZWwvc3lzY3RsLmMgYi9rZXJuZWwvc3lzY3RsLmMKaW5kZXggOTM4MjRkOGEzNjM2Li5lMDY0 Nzg2ODJiYjggMTAwNjQ0Ci0tLSBhL2tlcm5lbC9zeXNjdGwuYworKysgYi9rZXJuZWwvc3lzY3Rs LmMKQEAgLTI1Niw3ICsyNTYsNyBAQCBzdGF0aWMgYm9vbCBwcm9jX2ZpcnN0X3Bvc19ub25femVy b19pZ25vcmUobG9mZl90ICpwcG9zLAogICoKICAqIFJldHVybnMgMCBvbiBzdWNjZXNzLgogICov Ci1pbnQgcHJvY19kb3N0cmluZyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAor aW50IHByb2NfZG9zdHJpbmcoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwKIAkJICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWlm ICh3cml0ZSkKQEAgLTcwMiw3ICs3MDIsNyBAQCBpbnQgZG9fcHJvY19kb3VpbnR2ZWMoY29uc3Qg c3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKICAqCiAgKiBSZXR1cm5zIDAgb24g c3VjY2Vzcy4KICAqLwotaW50IHByb2NfZG9ib29sKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKK2ludCBwcm9jX2RvYm9vbChjb25zdCBzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiAJCXNpemVfdCAqbGVucCwg bG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBjdGxfdGFibGUgdG1wOwpAQCAtNzM5LDcgKzczOSw3 IEBAIGludCBwcm9jX2RvYm9vbChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2 b2lkICpidWZmZXIsCiAgKgogICogUmV0dXJucyAwIG9uIHN1Y2Nlc3MuCiAgKi8KLWludCBwcm9j X2RvaW50dmVjKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZl ciwKK2ludCBwcm9jX2RvaW50dmVjKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsIHZvaWQgKmJ1ZmZlciwKIAkJICBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsK IAlyZXR1cm4gZG9fcHJvY19kb2ludHZlYyh0YWJsZSwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBv cywgTlVMTCwgTlVMTCk7CkBAIC03NTgsOCArNzU4LDggQEAgaW50IHByb2NfZG9pbnR2ZWMoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogICoKICAqIFJl dHVybnMgMCBvbiBzdWNjZXNzLgogICovCi1pbnQgcHJvY19kb3VpbnR2ZWMoc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAotCQlzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKK2ludCBwcm9jX2RvdWludHZlYyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCisJCSAgIHNpemVfdCAqbGVucCwgbG9mZl90 ICpwcG9zKQogewogCXJldHVybiBkb19wcm9jX2RvdWludHZlYyh0YWJsZSwgd3JpdGUsIGJ1ZmZl ciwgbGVucCwgcHBvcywKIAkJCQkgZG9fcHJvY19kb3VpbnR2ZWNfY29udiwgTlVMTCk7CkBAIC03 NjksNyArNzY5LDcgQEAgaW50IHByb2NfZG91aW50dmVjKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKICAqIFRhaW50IHZhbHVlcyBjYW4gb25seSBiZSBp bmNyZWFzZWQKICAqIFRoaXMgbWVhbnMgd2UgY2FuIHNhZmVseSB1c2UgYSB0ZW1wb3JhcnkuCiAg Ki8KLXN0YXRpYyBpbnQgcHJvY190YWludChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdy aXRlLAorc3RhdGljIGludCBwcm9jX3RhaW50KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsCiAJCQkgICAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZf dCAqcHBvcykKIHsKIAlzdHJ1Y3QgY3RsX3RhYmxlIHQ7CkBAIC04NjQsOCArODY0LDggQEAgc3Rh dGljIGludCBkb19wcm9jX2RvaW50dmVjX21pbm1heF9jb252KGJvb2wgKm5lZ3AsIHVuc2lnbmVk IGxvbmcgKmx2YWxwLAogICoKICAqIFJldHVybnMgMCBvbiBzdWNjZXNzIG9yIC1FSU5WQUwgb24g d3JpdGUgd2hlbiB0aGUgcmFuZ2UgY2hlY2sgZmFpbHMuCiAgKi8KLWludCBwcm9jX2RvaW50dmVj X21pbm1heChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAotCQkgIHZvaWQgKmJ1 ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitpbnQgcHJvY19kb2ludHZlY19taW5t YXgoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKKwkJCSB2b2lkICpi dWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBkb19wcm9jX2Rv aW50dmVjX21pbm1heF9jb252X3BhcmFtIHBhcmFtID0gewogCQkubWluID0gKGludCAqKSB0YWJs ZS0+ZXh0cmExLApAQCAtOTMzLDcgKzkzMyw3IEBAIHN0YXRpYyBpbnQgZG9fcHJvY19kb3VpbnR2 ZWNfbWlubWF4X2NvbnYodW5zaWduZWQgbG9uZyAqbHZhbHAsCiAgKgogICogUmV0dXJucyAwIG9u IHN1Y2Nlc3Mgb3IgLUVSQU5HRSBvbiB3cml0ZSB3aGVuIHRoZSByYW5nZSBjaGVjayBmYWlscy4K ICAqLwotaW50IHByb2NfZG91aW50dmVjX21pbm1heChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwg aW50IHdyaXRlLAoraW50IHByb2NfZG91aW50dmVjX21pbm1heChjb25zdCBzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwg bG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBkb19wcm9jX2RvdWludHZlY19taW5tYXhfY29udl9w YXJhbSBwYXJhbSA9IHsKQEAgLTk2MSw3ICs5NjEsNyBAQCBpbnQgcHJvY19kb3VpbnR2ZWNfbWlu bWF4KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAgKgogICogUmV0dXJucyAw IG9uIHN1Y2Nlc3Mgb3IgYW4gZXJyb3Igb24gd3JpdGUgd2hlbiB0aGUgcmFuZ2UgY2hlY2sgZmFp bHMuCiAgKi8KLWludCBwcm9jX2RvdTh2ZWNfbWlubWF4KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsCitpbnQgcHJvY19kb3U4dmVjX21pbm1heChjb25zdCBzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgY3RsX3RhYmxlIHRtcDsKQEAgLTEwMDQsNyArMTAwNCw3 IEBAIGludCBwcm9jX2RvdTh2ZWNfbWlubWF4KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsCiBFWFBPUlRfU1lNQk9MX0dQTChwcm9jX2RvdTh2ZWNfbWlubWF4KTsKIAogI2lmZGVm IENPTkZJR19NQUdJQ19TWVNSUQotc3RhdGljIGludCBzeXNycV9zeXNjdGxfaGFuZGxlcihzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBzeXNycV9zeXNjdGxf aGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCXZv aWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHRtcCwgcmV0 OwpAQCAtMTEyMSw3ICsxMTIxLDcgQEAgc3RhdGljIGludCBkb19wcm9jX2RvdWxvbmd2ZWNfbWlu bWF4KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAgKgogICogUmV0 dXJucyAwIG9uIHN1Y2Nlc3MuCiAgKi8KLWludCBwcm9jX2RvdWxvbmd2ZWNfbWlubWF4KHN0cnVj dCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgcHJvY19kb3Vsb25ndmVjX21pbm1h eChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICAgdm9pZCAq YnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKICAgICByZXR1cm4gZG9fcHJv Y19kb3Vsb25ndmVjX21pbm1heCh0YWJsZSwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcywgMWws IDFsKTsKQEAgLTExNDQsNyArMTE0NCw4IEBAIGludCBwcm9jX2RvdWxvbmd2ZWNfbWlubWF4KHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAgKgogICogUmV0dXJucyAwIG9uIHN1 Y2Nlc3MuCiAgKi8KLWludCBwcm9jX2RvdWxvbmd2ZWNfbXNfamlmZmllc19taW5tYXgoc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBwcm9jX2RvdWxvbmd2ZWNfbXNfamlm Zmllc19taW5tYXgoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCisJCQkJICAgICAgaW50 IHdyaXRlLAogCQkJCSAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBw b3MpCiB7CiAgICAgcmV0dXJuIGRvX3Byb2NfZG91bG9uZ3ZlY19taW5tYXgodGFibGUsIHdyaXRl LCBidWZmZXIsCkBAIC0xMjY1LDE1ICsxMjY2LDE1IEBAIHN0YXRpYyBpbnQgZG9fcHJvY19kb2lu dHZlY19tc19qaWZmaWVzX21pbm1heF9jb252KGJvb2wgKm5lZ3AsIHVuc2lnbmVkIGxvbmcgKmx2 CiAgKgogICogUmV0dXJucyAwIG9uIHN1Y2Nlc3MuCiAgKi8KLWludCBwcm9jX2RvaW50dmVjX2pp ZmZpZXMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBwcm9jX2RvaW50 dmVjX2ppZmZpZXMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJ CSAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKICAgICByZXR1 cm4gZG9fcHJvY19kb2ludHZlYyh0YWJsZSx3cml0ZSxidWZmZXIsbGVucCxwcG9zLAogCQkgICAg CSAgICBkb19wcm9jX2RvaW50dmVjX2ppZmZpZXNfY29udixOVUxMKTsKIH0KIAotaW50IHByb2Nf ZG9pbnR2ZWNfbXNfamlmZmllc19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKLQkJCSAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK2lu dCBwcm9jX2RvaW50dmVjX21zX2ppZmZpZXNfbWlubWF4KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCisJCQkJICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IGRvX3Byb2NfZG9pbnR2ZWNfbWlubWF4X2NvbnZfcGFy YW0gcGFyYW0gPSB7CiAJCS5taW4gPSAoaW50ICopIHRhYmxlLT5leHRyYTEsCkBAIC0xMjk4LDcg KzEyOTksNyBAQCBpbnQgcHJvY19kb2ludHZlY19tc19qaWZmaWVzX21pbm1heChzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogICoKICAqIFJldHVybnMgMCBvbiBzdWNjZXNzLgog ICovCi1pbnQgcHJvY19kb2ludHZlY191c2VyaHpfamlmZmllcyhzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaXRlLAoraW50IHByb2NfZG9pbnR2ZWNfdXNlcmh6X2ppZmZpZXMoY29uc3Qg c3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBz aXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlyZXR1cm4gZG9fcHJvY19kb2ludHZlYyh0 YWJsZSwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcywKQEAgLTEzMjEsMTUgKzEzMjIsMTcgQEAg aW50IHByb2NfZG9pbnR2ZWNfdXNlcmh6X2ppZmZpZXMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwKICAqCiAgKiBSZXR1cm5zIDAgb24gc3VjY2Vzcy4KICAqLwotaW50IHByb2Nf ZG9pbnR2ZWNfbXNfamlmZmllcyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2 b2lkICpidWZmZXIsCi0JCXNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQoraW50IHByb2NfZG9p bnR2ZWNfbXNfamlmZmllcyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRl LAorCQkJICAgICB2b2lkICpidWZmZXIsCisJCQkgICAgIHNpemVfdCAqbGVucCwgbG9mZl90ICpw cG9zKQogewogCXJldHVybiBkb19wcm9jX2RvaW50dmVjKHRhYmxlLCB3cml0ZSwgYnVmZmVyLCBs ZW5wLCBwcG9zLAogCQkJCWRvX3Byb2NfZG9pbnR2ZWNfbXNfamlmZmllc19jb252LCBOVUxMKTsK IH0KIAotc3RhdGljIGludCBwcm9jX2RvX2NhZF9waWQoc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAotCQlzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK K3N0YXRpYyBpbnQgcHJvY19kb19jYWRfcGlkKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsCisJCQkgICB2b2lkICpidWZmZXIsCisJCQkgICBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgcGlkICpuZXdfcGlkOwogCXBpZF90IHRtcDsKQEAgLTEz NjcsNyArMTM3MCw3IEBAIHN0YXRpYyBpbnQgcHJvY19kb19jYWRfcGlkKHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKICAqCiAgKiBSZXR1cm5zIDAgb24g c3VjY2Vzcy4KICAqLwotaW50IHByb2NfZG9fbGFyZ2VfYml0bWFwKHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgcHJvY19kb19sYXJnZV9iaXRtYXAoY29uc3Qgc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSB2b2lkICpidWZmZXIsIHNpemVfdCAq bGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCBlcnIgPSAwOwpAQCAtMTQ5OSw4NSArMTUwMiw4 NiBAQCBpbnQgcHJvY19kb19sYXJnZV9iaXRtYXAoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKIAogI2Vsc2UgLyogQ09ORklHX1BST0NfU1lTQ1RMICovCiAKLWludCBwcm9jX2Rv c3RyaW5nKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgcHJvY19kb3N0 cmluZyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkgIHZvaWQg KmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJcmV0dXJuIC1FTk9TWVM7 CiB9CiAKLWludCBwcm9jX2RvYm9vbChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRl LAoraW50IHByb2NfZG9ib29sKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCiAJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJcmV0 dXJuIC1FTk9TWVM7CiB9CiAKLWludCBwcm9jX2RvaW50dmVjKHN0cnVjdCBjdGxfdGFibGUgKnRh YmxlLCBpbnQgd3JpdGUsCitpbnQgcHJvY19kb2ludHZlYyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAogCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2Zm X3QgKnBwb3MpCiB7CiAJcmV0dXJuIC1FTk9TWVM7CiB9CiAKLWludCBwcm9jX2RvdWludHZlYyhz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAotCQkgIHZvaWQgKmJ1ZmZlciwgc2l6 ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitpbnQgcHJvY19kb3VpbnR2ZWMoY29uc3Qgc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKKwkJICAgdm9pZCAqYnVmZmVyLCBzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlyZXR1cm4gLUVOT1NZUzsKIH0KIAotaW50IHByb2Nf ZG9pbnR2ZWNfbWlubWF4KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCSAg ICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQoraW50IHByb2NfZG9p bnR2ZWNfbWlubWF4KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCisJ CQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlyZXR1cm4g LUVOT1NZUzsKIH0KIAotaW50IHByb2NfZG91aW50dmVjX21pbm1heChzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHByb2NfZG91aW50dmVjX21pbm1heChjb25zdCBzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICB2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXJldHVybiAtRU5PU1lTOwogfQogCi1pbnQgcHJv Y19kb3U4dmVjX21pbm1heChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50 IHByb2NfZG91OHZlY19taW5tYXgoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKIAkJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJ cmV0dXJuIC1FTk9TWVM7CiB9CiAKLWludCBwcm9jX2RvaW50dmVjX2ppZmZpZXMoc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKLQkJICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCitpbnQgcHJvY19kb2ludHZlY19qaWZmaWVzKGNvbnN0IHN0cnVj dCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCisJCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJcmV0dXJuIC1FTk9TWVM7CiB9CiAKLWludCBwcm9j X2RvaW50dmVjX21zX2ppZmZpZXNfbWlubWF4KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsCitpbnQgcHJvY19kb2ludHZlY19tc19qaWZmaWVzX21pbm1heChjb25zdCBzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCSAgICB2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXJldHVybiAtRU5PU1lTOwogfQogCi1pbnQgcHJv Y19kb2ludHZlY191c2VyaHpfamlmZmllcyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdy aXRlLAotCQkgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK2lu dCBwcm9jX2RvaW50dmVjX3VzZXJoel9qaWZmaWVzKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRh YmxlLCBpbnQgd3JpdGUsCisJCQkJIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3Qg KnBwb3MpCiB7CiAJcmV0dXJuIC1FTk9TWVM7CiB9CiAKLWludCBwcm9jX2RvaW50dmVjX21zX2pp ZmZpZXMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBwcm9jX2RvaW50 dmVjX21zX2ppZmZpZXMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwK IAkJCSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAly ZXR1cm4gLUVOT1NZUzsKIH0KIAotaW50IHByb2NfZG91bG9uZ3ZlY19taW5tYXgoc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKLQkJICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCitpbnQgcHJvY19kb3Vsb25ndmVjX21pbm1heChjb25zdCBzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorCQkJICAgdm9pZCAqYnVmZmVyLCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlyZXR1cm4gLUVOT1NZUzsKIH0KIAotaW50IHBy b2NfZG91bG9uZ3ZlY19tc19qaWZmaWVzX21pbm1heChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwg aW50IHdyaXRlLAoraW50IHByb2NfZG91bG9uZ3ZlY19tc19qaWZmaWVzX21pbm1heChjb25zdCBz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKKwkJCQkgICAgICBpbnQgd3JpdGUsCiAJCQkJICAgICAg dm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlyZXR1cm4gLUVO T1NZUzsKIH0KIAotaW50IHByb2NfZG9fbGFyZ2VfYml0bWFwKHN0cnVjdCBjdGxfdGFibGUgKnRh YmxlLCBpbnQgd3JpdGUsCitpbnQgcHJvY19kb19sYXJnZV9iaXRtYXAoY29uc3Qgc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVu cCwgbG9mZl90ICpwcG9zKQogewogCXJldHVybiAtRU5PU1lTOwpAQCAtMTU4Niw3ICsxNTkwLDcg QEAgaW50IHByb2NfZG9fbGFyZ2VfYml0bWFwKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsCiAjZW5kaWYgLyogQ09ORklHX1BST0NfU1lTQ1RMICovCiAKICNpZiBkZWZpbmVkKENP TkZJR19TWVNDVEwpCi1pbnQgcHJvY19kb19zdGF0aWNfa2V5KHN0cnVjdCBjdGxfdGFibGUgKnRh YmxlLCBpbnQgd3JpdGUsCitpbnQgcHJvY19kb19zdGF0aWNfa2V5KGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCSAgICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAq bGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBzdGF0aWNfa2V5ICprZXkgPSAoc3RydWN0 IHN0YXRpY19rZXkgKil0YWJsZS0+ZGF0YTsKZGlmZiAtLWdpdCBhL2tlcm5lbC90aW1lL3RpbWVy LmMgYi9rZXJuZWwvdGltZS90aW1lci5jCmluZGV4IGZmNDlkZGNjOTgwMC4uNTdiZWNlNjdhZDBl IDEwMDY0NAotLS0gYS9rZXJuZWwvdGltZS90aW1lci5jCisrKyBiL2tlcm5lbC90aW1lL3RpbWVy LmMKQEAgLTI4OSw4ICsyODksOCBAQCBzdGF0aWMgdm9pZCB0aW1lcnNfdXBkYXRlX21pZ3JhdGlv bih2b2lkKQogfQogCiAjaWZkZWYgQ09ORklHX1NZU0NUTAotc3RhdGljIGludCB0aW1lcl9taWdy YXRpb25faGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAotCQkJICAg IHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IHRp bWVyX21pZ3JhdGlvbl9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsCisJCQkJICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK IHsKIAlpbnQgcmV0OwogCmRpZmYgLS1naXQgYS9rZXJuZWwvdHJhY2UvZnRyYWNlLmMgYi9rZXJu ZWwvdHJhY2UvZnRyYWNlLmMKaW5kZXggODNiYTM0MmFlZjMxLi5kM2Y3N2FmZjcxYzMgMTAwNjQ0 Ci0tLSBhL2tlcm5lbC90cmFjZS9mdHJhY2UuYworKysgYi9rZXJuZWwvdHJhY2UvZnRyYWNlLmMK QEAgLTgyMTcsNyArODIxNyw3IEBAIHN0YXRpYyBib29sIGlzX3Blcm1hbmVudF9vcHNfcmVnaXN0 ZXJlZCh2b2lkKQogfQogCiBzdGF0aWMgaW50Ci1mdHJhY2VfZW5hYmxlX3N5c2N0bChzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorZnRyYWNlX2VuYWJsZV9zeXNjdGwoY29uc3Qg c3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJICAgICB2b2lkICpidWZmZXIs IHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCByZXQgPSAtRU5PREVWOwpkaWZm IC0tZ2l0IGEva2VybmVsL3RyYWNlL3RyYWNlLmMgYi9rZXJuZWwvdHJhY2UvdHJhY2UuYwppbmRl eCBiMTJmODM4NGEzNmEuLjJhZTQzN2NhNWI3MyAxMDA2NDQKLS0tIGEva2VybmVsL3RyYWNlL3Ry YWNlLmMKKysrIGIva2VybmVsL3RyYWNlL3RyYWNlLmMKQEAgLTI3MzAsNyArMjczMCw3IEBAIHN0 YXRpYyB2b2lkIG91dHB1dF9wcmludGsoc3RydWN0IHRyYWNlX2V2ZW50X2J1ZmZlciAqZmJ1ZmZl cikKIAlyYXdfc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmdHJhY2Vwb2ludF9pdGVyX2xvY2ssIGZs YWdzKTsKIH0KIAotaW50IHRyYWNlcG9pbnRfcHJpbnRrX3N5c2N0bChzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHRyYWNlcG9pbnRfcHJpbnRrX3N5c2N0bChjb25zdCBz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICAgICB2b2lkICpidWZmZXIs IHNpemVfdCAqbGVucCwKIAkJCSAgICAgbG9mZl90ICpwcG9zKQogewpkaWZmIC0tZ2l0IGEva2Vy bmVsL3RyYWNlL3RyYWNlX2V2ZW50c191c2VyLmMgYi9rZXJuZWwvdHJhY2UvdHJhY2VfZXZlbnRz X3VzZXIuYwppbmRleCA3MGQ0MjhjMzk0YjYuLjAwNTQ3YWFkMzk3MiAxMDA2NDQKLS0tIGEva2Vy bmVsL3RyYWNlL3RyYWNlX2V2ZW50c191c2VyLmMKKysrIGIva2VybmVsL3RyYWNlL3RyYWNlX2V2 ZW50c191c2VyLmMKQEAgLTI4MTEsNyArMjgxMSw4IEBAIHN0YXRpYyBpbnQgY3JlYXRlX3VzZXJf dHJhY2Vmcyh2b2lkKQogCXJldHVybiAtRU5PREVWOwogfQogCi1zdGF0aWMgaW50IHNldF9tYXhf dXNlcl9ldmVudHNfc3lzY3RsKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitz dGF0aWMgaW50IHNldF9tYXhfdXNlcl9ldmVudHNfc3lzY3RsKGNvbnN0IHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLAorCQkJCSAgICAgIGludCB3cml0ZSwKIAkJCQkgICAgICB2b2lkICpidWZmZXIs IHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCByZXQ7CmRpZmYgLS1naXQgYS9r ZXJuZWwvdHJhY2UvdHJhY2Vfc3RhY2suYyBiL2tlcm5lbC90cmFjZS90cmFjZV9zdGFjay5jCmlu ZGV4IDVhNDhkYmE5MTJlYS4uN2Y5NTcyYTM3MzMzIDEwMDY0NAotLS0gYS9rZXJuZWwvdHJhY2Uv dHJhY2Vfc3RhY2suYworKysgYi9rZXJuZWwvdHJhY2UvdHJhY2Vfc3RhY2suYwpAQCAtNTE0LDcg KzUxNCw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25zIHN0YWNrX3RyYWNl X2ZpbHRlcl9mb3BzID0gewogI2VuZGlmIC8qIENPTkZJR19EWU5BTUlDX0ZUUkFDRSAqLwogCiBp bnQKLXN0YWNrX3RyYWNlX3N5c2N0bChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRl LCB2b2lkICpidWZmZXIsCitzdGFja190cmFjZV9zeXNjdGwoY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogCQkgICBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlpbnQgd2FzX2VuYWJsZWQ7CmRpZmYgLS1naXQgYS9rZXJuZWwvdW1o LmMgYi9rZXJuZWwvdW1oLmMKaW5kZXggMWIxM2M1ZDM0NjI0Li40M2JjNDViZTg5OTcgMTAwNjQ0 Ci0tLSBhL2tlcm5lbC91bWguYworKysgYi9rZXJuZWwvdW1oLmMKQEAgLTQ5NSw4ICs0OTUsOCBA QCBpbnQgY2FsbF91c2VybW9kZWhlbHBlcihjb25zdCBjaGFyICpwYXRoLCBjaGFyICoqYXJndiwg Y2hhciAqKmVudnAsIGludCB3YWl0KQogRVhQT1JUX1NZTUJPTChjYWxsX3VzZXJtb2RlaGVscGVy KTsKIAogI2lmIGRlZmluZWQoQ09ORklHX1NZU0NUTCkKLXN0YXRpYyBpbnQgcHJvY19jYXBfaGFu ZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAotCQkJIHZvaWQgKmJ1ZmZl ciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IHByb2NfY2FwX2hhbmRs ZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKKwkJCSAgICB2b2lk ICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBjdGxfdGFi bGUgdDsKIAl1bnNpZ25lZCBsb25nIGNhcF9hcnJheVsyXTsKZGlmZiAtLWdpdCBhL2tlcm5lbC91 dHNuYW1lX3N5c2N0bC5jIGIva2VybmVsL3V0c25hbWVfc3lzY3RsLmMKaW5kZXggNDY1OTBkNGFk ZGM4Li42NTM3MjdhYWU2M2IgMTAwNjQ0Ci0tLSBhL2tlcm5lbC91dHNuYW1lX3N5c2N0bC5jCisr KyBiL2tlcm5lbC91dHNuYW1lX3N5c2N0bC5jCkBAIC0zMCw4ICszMCw4IEBAIHN0YXRpYyB2b2lk ICpnZXRfdXRzKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlKQogICoJU3BlY2lhbCBjYXNl IG9mIGRvc3RyaW5nIGZvciB0aGUgVVRTIHN0cnVjdHVyZS4gVGhpcyBoYXMgbG9ja3MKICAqCXRv IG9ic2VydmUuIFNob3VsZCB0aGlzIGJlIGluIGtlcm5lbC9zeXMuYyA/Pz8/CiAgKi8KLXN0YXRp YyBpbnQgcHJvY19kb191dHNfc3RyaW5nKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCi0JCSAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRp YyBpbnQgcHJvY19kb191dHNfc3RyaW5nKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCisJCQkgICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpw cG9zKQogewogCXN0cnVjdCBjdGxfdGFibGUgdXRzX3RhYmxlOwogCWludCByOwpkaWZmIC0tZ2l0 IGEva2VybmVsL3dhdGNoZG9nLmMgYi9rZXJuZWwvd2F0Y2hkb2cuYwppbmRleCBkN2IyMTI1NTAz YWYuLmU5ZDBiODU0YjU4NyAxMDA2NDQKLS0tIGEva2VybmVsL3dhdGNoZG9nLmMKKysrIGIva2Vy bmVsL3dhdGNoZG9nLmMKQEAgLTc2OSw4ICs3NjksOSBAQCBzdGF0aWMgdm9pZCBwcm9jX3dhdGNo ZG9nX3VwZGF0ZSh2b2lkKQogICogLS0tLS0tLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAqIHBy b2Nfc29mdF93YXRjaGRvZyB8IHdhdGNoZG9nX3NvZnRsb2NrdXBfdXNlcl9lbmFibGVkIHwgV0FU Q0hET0dfU09GVE9DS1VQX0VOQUJMRUQKICAqLwotc3RhdGljIGludCBwcm9jX3dhdGNoZG9nX2Nv bW1vbihpbnQgd2hpY2gsIHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCQkJ dm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgcHJv Y193YXRjaGRvZ19jb21tb24oaW50IHdoaWNoLCBjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJs ZSwKKwkJCQlpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLAorCQkJCWxvZmZf dCAqcHBvcykKIHsKIAlpbnQgZXJyLCBvbGQsICpwYXJhbSA9IHRhYmxlLT5kYXRhOwogCkBAIC03 OTYsNyArNzk3LDcgQEAgc3RhdGljIGludCBwcm9jX3dhdGNoZG9nX2NvbW1vbihpbnQgd2hpY2gs IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAvKgogICogL3Byb2Mvc3lzL2tl cm5lbC93YXRjaGRvZwogICovCi1zdGF0aWMgaW50IHByb2Nfd2F0Y2hkb2coc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY193YXRjaGRvZyhjb25zdCBz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJIHZvaWQgKmJ1ZmZlciwgc2l6 ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJcmV0dXJuIHByb2Nfd2F0Y2hkb2dfY29tbW9u KFdBVENIRE9HX0hBUkRMT0NLVVBfRU5BQkxFRCB8CkBAIC04MDcsNyArODA4LDcgQEAgc3RhdGlj IGludCBwcm9jX3dhdGNoZG9nKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAv KgogICogL3Byb2Mvc3lzL2tlcm5lbC9ubWlfd2F0Y2hkb2cKICAqLwotc3RhdGljIGludCBwcm9j X25taV93YXRjaGRvZyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGlj IGludCBwcm9jX25taV93YXRjaGRvZyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAogCQkJICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9z KQogewogCWlmICghd2F0Y2hkb2dfaGFyZGxvY2t1cF9hdmFpbGFibGUgJiYgd3JpdGUpCkBAIC04 MjAsNyArODIxLDcgQEAgc3RhdGljIGludCBwcm9jX25taV93YXRjaGRvZyhzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLAogLyoKICAqIC9wcm9jL3N5cy9rZXJuZWwvc29mdF93YXRj aGRvZwogICovCi1zdGF0aWMgaW50IHByb2Nfc29mdF93YXRjaGRvZyhzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBwcm9jX3NvZnRfd2F0Y2hkb2coY29uc3Qg c3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAgICAgIHZvaWQgKmJ1ZmZl ciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJcmV0dXJuIHByb2Nfd2F0Y2hkb2df Y29tbW9uKFdBVENIRE9HX1NPRlRPQ0tVUF9FTkFCTEVELApAQCAtODMxLDcgKzgzMiw3IEBAIHN0 YXRpYyBpbnQgcHJvY19zb2Z0X3dhdGNoZG9nKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsCiAvKgogICogL3Byb2Mvc3lzL2tlcm5lbC93YXRjaGRvZ190aHJlc2gKICAqLwotc3Rh dGljIGludCBwcm9jX3dhdGNoZG9nX3RocmVzaChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAorc3RhdGljIGludCBwcm9jX3dhdGNoZG9nX3RocmVzaChjb25zdCBzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5w LCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IGVyciwgb2xkOwpAQCAtODU0LDcgKzg1NSw3IEBAIHN0 YXRpYyBpbnQgcHJvY193YXRjaGRvZ190aHJlc2goc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKICAqIHVzZXIgdG8gc3BlY2lmeSBhIG1hc2sgdGhhdCB3aWxsIGluY2x1ZGUgY3B1 cyB0aGF0IGhhdmUgbm90IHlldAogICogYmVlbiBicm91Z2h0IG9ubGluZSwgaWYgZGVzaXJlZC4K ICAqLwotc3RhdGljIGludCBwcm9jX3dhdGNoZG9nX2NwdW1hc2soc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY193YXRjaGRvZ19jcHVtYXNrKGNvbnN0 IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJIHZvaWQgKmJ1ZmZlciwg c2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IGVycjsKZGlmZiAtLWdpdCBhL21t L2NvbXBhY3Rpb24uYyBiL21tL2NvbXBhY3Rpb24uYwppbmRleCA4MDdiNThlNmViNjguLjZiOGRi MDQ0MjM2NSAxMDA2NDQKLS0tIGEvbW0vY29tcGFjdGlvbi5jCisrKyBiL21tL2NvbXBhY3Rpb24u YwpAQCAtMjk1MCw4ICsyOTUwLDExIEBAIHN0YXRpYyBpbnQgY29tcGFjdF9ub2Rlcyh2b2lkKQog CXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGNvbXBhY3Rpb25fcHJvYWN0aXZlbmVzc19zeXNj dGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAotCQl2b2lkICpi dWZmZXIsIHNpemVfdCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IGNvbXBhY3Rp b25fcHJvYWN0aXZlbmVzc19zeXNjdGxfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwKKwkJCQkJCSAgIGludCB3cml0ZSwKKwkJCQkJCSAgIHZvaWQgKmJ1ZmZlciwKKwkJCQkJ CSAgIHNpemVfdCAqbGVuZ3RoLAorCQkJCQkJICAgbG9mZl90ICpwcG9zKQogewogCWludCByYywg bmlkOwogCkBAIC0yOTgwLDggKzI5ODMsOSBAQCBzdGF0aWMgaW50IGNvbXBhY3Rpb25fcHJvYWN0 aXZlbmVzc19zeXNjdGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50CiAgKiBU aGlzIGlzIHRoZSBlbnRyeSBwb2ludCBmb3IgY29tcGFjdGluZyBhbGwgbm9kZXMgdmlhCiAgKiAv cHJvYy9zeXMvdm0vY29tcGFjdF9tZW1vcnkKICAqLwotc3RhdGljIGludCBzeXNjdGxfY29tcGFj dGlvbl9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCQl2b2lk ICpidWZmZXIsIHNpemVfdCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IHN5c2N0 bF9jb21wYWN0aW9uX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKKwkJCQkgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgsCisJCQkJICAgICBs b2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldDsKIApAQCAtMzI5MSw4ICszMjk1LDkgQEAgc3RhdGlj IGludCBrY29tcGFjdGRfY3B1X29ubGluZSh1bnNpZ25lZCBpbnQgY3B1KQogCXJldHVybiAwOwog fQogCi1zdGF0aWMgaW50IHByb2NfZG9pbnR2ZWNfbWlubWF4X3dhcm5fUlRfY2hhbmdlKHN0cnVj dCBjdGxfdGFibGUgKnRhYmxlLAotCQlpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IHByb2NfZG9pbnR2ZWNfbWlubWF4X3dhcm5f UlRfY2hhbmdlKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLAorCQkJCQkgICAgICAgaW50 IHdyaXRlLCB2b2lkICpidWZmZXIsCisJCQkJCSAgICAgICBzaXplX3QgKmxlbnAsIGxvZmZfdCAq cHBvcykKIHsKIAlpbnQgcmV0LCBvbGQ7CiAKZGlmZiAtLWdpdCBhL21tL2h1Z2V0bGIuYyBiL21t L2h1Z2V0bGIuYwppbmRleCBiMGQ4OWFiOThlYWEuLjhiNGM4NzgyMGEzOCAxMDA2NDQKLS0tIGEv bW0vaHVnZXRsYi5jCisrKyBiL21tL2h1Z2V0bGIuYwpAQCAtNDk2OCw4ICs0OTY4LDggQEAgc3Rh dGljIGludCBodWdldGxiX3N5c2N0bF9oYW5kbGVyX2NvbW1vbihib29sIG9iZXlfbWVtcG9saWN5 LAogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgaHVnZXRsYl9zeXNjdGxfaGFuZGxlcihz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAotCQkJICB2b2lkICpidWZmZXIsIHNp emVfdCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IGh1Z2V0bGJfc3lzY3RsX2hh bmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKKwkJCQkgIHZv aWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykKIHsKIAogCXJldHVybiBo dWdldGxiX3N5c2N0bF9oYW5kbGVyX2NvbW1vbihmYWxzZSwgdGFibGUsIHdyaXRlLApAQCAtNDk3 NywxNiArNDk3NywyMCBAQCBzdGF0aWMgaW50IGh1Z2V0bGJfc3lzY3RsX2hhbmRsZXIoc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIH0KIAogI2lmZGVmIENPTkZJR19OVU1BCi1z dGF0aWMgaW50IGh1Z2V0bGJfbWVtcG9saWN5X3N5c2N0bF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgs IGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgaHVnZXRsYl9tZW1wb2xpY3lfc3lzY3RsX2hhbmRs ZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCisJCQkJCSAgICBpbnQgd3JpdGUsCisJ CQkJCSAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVuZ3RoLAorCQkJCQkgICAgbG9mZl90ICpw cG9zKQogewogCXJldHVybiBodWdldGxiX3N5c2N0bF9oYW5kbGVyX2NvbW1vbih0cnVlLCB0YWJs ZSwgd3JpdGUsCiAJCQkJCQkJYnVmZmVyLCBsZW5ndGgsIHBwb3MpOwogfQogI2VuZGlmIC8qIENP TkZJR19OVU1BICovCiAKLXN0YXRpYyBpbnQgaHVnZXRsYl9vdmVyY29tbWl0X2hhbmRsZXIoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKLQkJdm9pZCAqYnVmZmVyLCBzaXplX3Qg Kmxlbmd0aCwgbG9mZl90ICpwcG9zKQorc3RhdGljIGludCBodWdldGxiX292ZXJjb21taXRfaGFu ZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKKwkJCQkgICAgICBpbnQgd3JpdGUs CisJCQkJICAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbmd0aCwKKwkJCQkgICAgICBsb2Zm X3QgKnBwb3MpCiB7CiAJc3RydWN0IGhzdGF0ZSAqaCA9ICZkZWZhdWx0X2hzdGF0ZTsKIAl1bnNp Z25lZCBsb25nIHRtcDsKZGlmZiAtLWdpdCBhL21tL3BhZ2Utd3JpdGViYWNrLmMgYi9tbS9wYWdl LXdyaXRlYmFjay5jCmluZGV4IDNlMTliODcwNDlkYi4uZTIzYzFlMzUzZTgxIDEwMDY0NAotLS0g YS9tbS9wYWdlLXdyaXRlYmFjay5jCisrKyBiL21tL3BhZ2Utd3JpdGViYWNrLmMKQEAgLTQ5Myw4 ICs0OTMsMTAgQEAgYm9vbCBub2RlX2RpcnR5X29rKHN0cnVjdCBwZ2xpc3RfZGF0YSAqcGdkYXQp CiB9CiAKICNpZmRlZiBDT05GSUdfU1lTQ1RMCi1zdGF0aWMgaW50IGRpcnR5X2JhY2tncm91bmRf cmF0aW9faGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAotCQl2b2lk ICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQorc3RhdGljIGludCBkaXJ0eV9i YWNrZ3JvdW5kX3JhdGlvX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCisJ CQkJCSAgaW50IHdyaXRlLAorCQkJCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLAorCQkJ CQkgIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgcmV0OwogCkBAIC01MDQsOCArNTA2LDEwIEBAIHN0 YXRpYyBpbnQgZGlydHlfYmFja2dyb3VuZF9yYXRpb19oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBkaXJ0eV9i YWNrZ3JvdW5kX2J5dGVzX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwKLQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBp bnQgZGlydHlfYmFja2dyb3VuZF9ieXRlc19oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLAorCQkJCQkgIGludCB3cml0ZSwKKwkJCQkJICB2b2lkICpidWZmZXIsIHNpemVfdCAq bGVucCwKKwkJCQkJICBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldDsKIApAQCAtNTE1LDggKzUx OSw5IEBAIHN0YXRpYyBpbnQgZGlydHlfYmFja2dyb3VuZF9ieXRlc19oYW5kbGVyKHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGlu dCBkaXJ0eV9yYXRpb19oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs IHZvaWQgKmJ1ZmZlciwKLQkJc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50 IGRpcnR5X3JhdGlvX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKKwkJCSAgICAgICB2b2lkICpidWZmZXIsCisJCQkgICAgICAgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpCiB7CiAJaW50IG9sZF9yYXRpbyA9IHZtX2RpcnR5X3JhdGlvOwogCWludCBy ZXQ7CkBAIC01MjksOCArNTM0LDggQEAgc3RhdGljIGludCBkaXJ0eV9yYXRpb19oYW5kbGVyKHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKIAlyZXR1cm4g cmV0OwogfQogCi1zdGF0aWMgaW50IGRpcnR5X2J5dGVzX2hhbmRsZXIoc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKLQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZf dCAqcHBvcykKK3N0YXRpYyBpbnQgZGlydHlfYnl0ZXNfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorCQkJICAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJdW5zaWduZWQgbG9uZyBvbGRfYnl0ZXMgPSB2bV9k aXJ0eV9ieXRlczsKIAlpbnQgcmV0OwpAQCAtMjEzMiw4ICsyMTM3LDEwIEBAIGJvb2wgd2Jfb3Zl cl9iZ190aHJlc2goc3RydWN0IGJkaV93cml0ZWJhY2sgKndiKQogLyoKICAqIHN5c2N0bCBoYW5k bGVyIGZvciAvcHJvYy9zeXMvdm0vZGlydHlfd3JpdGViYWNrX2NlbnRpc2VjcwogICovCi1zdGF0 aWMgaW50IGRpcnR5X3dyaXRlYmFja19jZW50aXNlY3NfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAotCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVuZ3RoLCBsb2Zm X3QgKnBwb3MpCitzdGF0aWMgaW50IGRpcnR5X3dyaXRlYmFja19jZW50aXNlY3NfaGFuZGxlcihj b25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKKwkJCQkJICAgICBpbnQgd3JpdGUsCisJCQkJ CSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbmd0aCwKKwkJCQkJICAgICBsb2ZmX3QgKnBw b3MpCiB7CiAJdW5zaWduZWQgaW50IG9sZF9pbnRlcnZhbCA9IGRpcnR5X3dyaXRlYmFja19pbnRl cnZhbDsKIAlpbnQgcmV0OwpkaWZmIC0tZ2l0IGEvbW0vcGFnZV9hbGxvYy5jIGIvbW0vcGFnZV9h bGxvYy5jCmluZGV4IDE0ZDM5ZjM0ZDMzNi4uZWM5MTcxZTg5ZjU4IDEwMDY0NAotLS0gYS9tbS9w YWdlX2FsbG9jLmMKKysrIGIvbW0vcGFnZV9hbGxvYy5jCkBAIC01MDAyLDggKzUwMDIsMTAgQEAg c3RhdGljIGNoYXIgbnVtYV96b25lbGlzdF9vcmRlcltdID0gIk5vZGUiOwogLyoKICAqIHN5c2N0 bCBoYW5kbGVyIGZvciBudW1hX3pvbmVsaXN0X29yZGVyCiAgKi8KLXN0YXRpYyBpbnQgbnVtYV96 b25lbGlzdF9vcmRlcl9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs Ci0JCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBp bnQgbnVtYV96b25lbGlzdF9vcmRlcl9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRh YmxlLAorCQkJCSAgICAgICBpbnQgd3JpdGUsCisJCQkJICAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6 ZV90ICpsZW5ndGgsCisJCQkJICAgICAgIGxvZmZfdCAqcHBvcykKIHsKIAlpZiAod3JpdGUpCiAJ CXJldHVybiBfX3BhcnNlX251bWFfem9uZWxpc3Rfb3JkZXIoYnVmZmVyKTsKQEAgLTU5OTIsOCAr NTk5NCwxMCBAQCBwb3N0Y29yZV9pbml0Y2FsbChpbml0X3Blcl96b25lX3dtYXJrX21pbikKICAq CXRoYXQgd2UgY2FuIGNhbGwgdHdvIGhlbHBlciBmdW5jdGlvbnMgd2hlbmV2ZXIgbWluX2ZyZWVf a2J5dGVzCiAgKgljaGFuZ2VzLgogICovCi1zdGF0aWMgaW50IG1pbl9mcmVlX2tieXRlc19zeXNj dGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAotCQl2b2lkICpi dWZmZXIsIHNpemVfdCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IG1pbl9mcmVl X2tieXRlc19zeXNjdGxfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKKwkJ CQkJICBpbnQgd3JpdGUsCisJCQkJCSAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbmd0aCwKKwkJ CQkJICBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJjOwogCkBAIC02MDA4LDggKzYwMTIsMTAgQEAg c3RhdGljIGludCBtaW5fZnJlZV9rYnl0ZXNfc3lzY3RsX2hhbmRsZXIoc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCB3YXRlcm1h cmtfc2NhbGVfZmFjdG9yX3N5c2N0bF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCi0JCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykK K3N0YXRpYyBpbnQgd2F0ZXJtYXJrX3NjYWxlX2ZhY3Rvcl9zeXNjdGxfaGFuZGxlcihjb25zdCBz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKKwkJCQkJCSBpbnQgd3JpdGUsCisJCQkJCQkgdm9pZCAq YnVmZmVyLCBzaXplX3QgKmxlbmd0aCwKKwkJCQkJCSBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJj OwogCkBAIC02MDM4LDggKzYwNDQsMTEgQEAgc3RhdGljIHZvaWQgc2V0dXBfbWluX3VubWFwcGVk X3JhdGlvKHZvaWQpCiB9CiAKIAotc3RhdGljIGludCBzeXNjdGxfbWluX3VubWFwcGVkX3JhdGlv X3N5c2N0bF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCXZv aWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgc3lz Y3RsX21pbl91bm1hcHBlZF9yYXRpb19zeXNjdGxfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwKKwkJCQkJCSAgICBpbnQgd3JpdGUsCisJCQkJCQkgICAgdm9pZCAqYnVmZmVy LAorCQkJCQkJICAgIHNpemVfdCAqbGVuZ3RoLAorCQkJCQkJICAgIGxvZmZfdCAqcHBvcykKIHsK IAlpbnQgcmM7CiAKQEAgLTYwNjUsOCArNjA3NCwxMCBAQCBzdGF0aWMgdm9pZCBzZXR1cF9taW5f c2xhYl9yYXRpbyh2b2lkKQogCQkJCQkJICAgICBzeXNjdGxfbWluX3NsYWJfcmF0aW8pIC8gMTAw OwogfQogCi1zdGF0aWMgaW50IHN5c2N0bF9taW5fc2xhYl9yYXRpb19zeXNjdGxfaGFuZGxlcihz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAotCQl2b2lkICpidWZmZXIsIHNpemVf dCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IHN5c2N0bF9taW5fc2xhYl9yYXRp b19zeXNjdGxfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKKwkJCQkJCWlu dCB3cml0ZSwKKwkJCQkJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgsCisJCQkJCQlsb2Zm X3QgKnBwb3MpCiB7CiAJaW50IHJjOwogCkBAIC02MDg5LDggKzYxMDAsOSBAQCBzdGF0aWMgaW50 IHN5c2N0bF9taW5fc2xhYl9yYXRpb19zeXNjdGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaQogICogbWluaW11bSB3YXRlcm1hcmtzLiBUaGUgbG93bWVtIHJlc2VydmUg cmF0aW8gY2FuIG9ubHkgbWFrZSBzZW5zZQogICogaWYgaW4gZnVuY3Rpb24gb2YgdGhlIGJvb3Qg dGltZSB6b25lIHNpemVzLgogICovCi1zdGF0aWMgaW50IGxvd21lbV9yZXNlcnZlX3JhdGlvX3N5 c2N0bF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLAotCQlpbnQgd3JpdGUsIHZvaWQg KmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgbG93bWVt X3Jlc2VydmVfcmF0aW9fc3lzY3RsX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFi bGUsCisJCQkJCSAgICAgICBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKKwkJCQkJICAgICAgIHNp emVfdCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IGk7CiAKQEAgLTYxMTAsOCArNjEy MiwxMSBAQCBzdGF0aWMgaW50IGxvd21lbV9yZXNlcnZlX3JhdGlvX3N5c2N0bF9oYW5kbGVyKHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLAogICogY3B1LiBJdCBpcyB0aGUgZnJhY3Rpb24gb2YgdG90 YWwgcGFnZXMgaW4gZWFjaCB6b25lIHRoYXQgYSBob3QgcGVyIGNwdQogICogcGFnZWxpc3QgY2Fu IGhhdmUgYmVmb3JlIGl0IGdldHMgZmx1c2hlZCBiYWNrIHRvIGJ1ZGR5IGFsbG9jYXRvci4KICAq Lwotc3RhdGljIGludCBwZXJjcHVfcGFnZWxpc3RfaGlnaF9mcmFjdGlvbl9zeXNjdGxfaGFuZGxl cihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKLQkJaW50IHdyaXRlLCB2b2lkICpidWZmZXIsIHNp emVfdCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IHBlcmNwdV9wYWdlbGlzdF9o aWdoX2ZyYWN0aW9uX3N5c2N0bF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LAorCQkJCQkJCWludCB3cml0ZSwKKwkJCQkJCQl2b2lkICpidWZmZXIsCisJCQkJCQkJc2l6ZV90 ICpsZW5ndGgsCisJCQkJCQkJbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCB6b25lICp6b25lOwog CWludCBvbGRfcGVyY3B1X3BhZ2VsaXN0X2hpZ2hfZnJhY3Rpb247CmRpZmYgLS1naXQgYS9tbS91 dGlsLmMgYi9tbS91dGlsLmMKaW5kZXggNjY5Mzk3MjM1Nzg3Li5jOTc1YjgwNTY3OWQgMTAwNjQ0 Ci0tLSBhL21tL3V0aWwuYworKysgYi9tbS91dGlsLmMKQEAgLTgzNSw4ICs4MzUsOSBAQCBpbnQg c3lzY3RsX21heF9tYXBfY291bnQgX19yZWFkX21vc3RseSA9IERFRkFVTFRfTUFYX01BUF9DT1VO VDsKIHVuc2lnbmVkIGxvbmcgc3lzY3RsX3VzZXJfcmVzZXJ2ZV9rYnl0ZXMgX19yZWFkX21vc3Rs eSA9IDFVTCA8PCAxNzsgLyogMTI4TUIgKi8KIHVuc2lnbmVkIGxvbmcgc3lzY3RsX2FkbWluX3Jl c2VydmVfa2J5dGVzIF9fcmVhZF9tb3N0bHkgPSAxVUwgPDwgMTM7IC8qIDhNQiAqLwogCi1pbnQg b3ZlcmNvbW1pdF9yYXRpb19oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsIHZvaWQgKmJ1ZmZlciwKLQkJc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitpbnQgb3Zl cmNvbW1pdF9yYXRpb19oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsCisJCQkgICAgIHZvaWQgKmJ1ZmZlciwKKwkJCSAgICAgc2l6ZV90ICpsZW5wLCBsb2Zm X3QgKnBwb3MpCiB7CiAJaW50IHJldDsKIApAQCAtODUxLDggKzg1Miw5IEBAIHN0YXRpYyB2b2lk IHN5bmNfb3ZlcmNvbW1pdF9hcyhzdHJ1Y3Qgd29ya19zdHJ1Y3QgKmR1bW15KQogCXBlcmNwdV9j b3VudGVyX3N5bmMoJnZtX2NvbW1pdHRlZF9hcyk7CiB9CiAKLWludCBvdmVyY29tbWl0X3BvbGlj eV9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZl ciwKLQkJc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitpbnQgb3ZlcmNvbW1pdF9wb2xpY3lf aGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorCQkJICAg ICAgdm9pZCAqYnVmZmVyLAorCQkJICAgICAgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7 CiAJc3RydWN0IGN0bF90YWJsZSB0OwogCWludCBuZXdfcG9saWN5ID0gLTE7CkBAIC04ODcsOCAr ODg5LDkgQEAgaW50IG92ZXJjb21taXRfcG9saWN5X2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogCXJldHVybiByZXQ7CiB9CiAKLWludCBv dmVyY29tbWl0X2tieXRlc19oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsIHZvaWQgKmJ1ZmZlciwKLQkJc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitpbnQgb3Zl cmNvbW1pdF9rYnl0ZXNfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAorCQkJICAgICAgdm9pZCAqYnVmZmVyLAorCQkJICAgICAgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldDsKIApkaWZmIC0tZ2l0IGEvbW0vdm1zdGF0LmMgYi9t bS92bXN0YXQuYwppbmRleCBkYjc5OTM1ZTRhNTQuLjhlNmQzMmFmNDNmZSAxMDA2NDQKLS0tIGEv bW0vdm1zdGF0LmMKKysrIGIvbW0vdm1zdGF0LmMKQEAgLTc0LDggKzc0LDggQEAgc3RhdGljIHZv aWQgaW52YWxpZF9udW1hX3N0YXRpc3RpY3Modm9pZCkKIAogc3RhdGljIERFRklORV9NVVRFWCh2 bV9udW1hX3N0YXRfbG9jayk7CiAKLWludCBzeXNjdGxfdm1fbnVtYV9zdGF0X2hhbmRsZXIoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKLQkJdm9pZCAqYnVmZmVyLCBzaXplX3Qg Kmxlbmd0aCwgbG9mZl90ICpwcG9zKQoraW50IHN5c2N0bF92bV9udW1hX3N0YXRfaGFuZGxlcihj b25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorCQkJCXZvaWQgKmJ1ZmZl ciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgcmV0LCBvbGR2YWw7CiAK QEAgLTE4ODQsNyArMTg4NCw3IEBAIHN0YXRpYyB2b2lkIHJlZnJlc2hfdm1fc3RhdHMoc3RydWN0 IHdvcmtfc3RydWN0ICp3b3JrKQogCXJlZnJlc2hfY3B1X3ZtX3N0YXRzKHRydWUpOwogfQogCi1p bnQgdm1zdGF0X3JlZnJlc2goc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2lu dCB2bXN0YXRfcmVmcmVzaChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRl LAogCQkgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWxv bmcgdmFsOwpkaWZmIC0tZ2l0IGEvbmV0L2JyaWRnZS9icl9uZXRmaWx0ZXJfaG9va3MuYyBiL25l dC9icmlkZ2UvYnJfbmV0ZmlsdGVyX2hvb2tzLmMKaW5kZXggMzVlMTBjNWE3NjZkLi44NmMyNDA3 MjU0NGUgMTAwNjQ0Ci0tLSBhL25ldC9icmlkZ2UvYnJfbmV0ZmlsdGVyX2hvb2tzLmMKKysrIGIv bmV0L2JyaWRnZS9icl9uZXRmaWx0ZXJfaG9va3MuYwpAQCAtMTE3MCw3ICsxMTcwLDcgQEAgaW50 IGJyX25mX2hvb2tfdGhyZXNoKHVuc2lnbmVkIGludCBob29rLCBzdHJ1Y3QgbmV0ICpuZXQsCiAK ICNpZmRlZiBDT05GSUdfU1lTQ1RMCiBzdGF0aWMKLWludCBicm5mX3N5c2N0bF9jYWxsX3RhYmxl cyhzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK2ludCBicm5mX3N5c2N0bF9jYWxs X3RhYmxlcyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJCSAgICB2 b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCByZXQ7CmRp ZmYgLS1naXQgYS9uZXQvY29yZS9uZWlnaGJvdXIuYyBiL25ldC9jb3JlL25laWdoYm91ci5jCmlu ZGV4IDFmYjcxMTA3YWNjZi4uZmQwYjlhNDEzNmE2IDEwMDY0NAotLS0gYS9uZXQvY29yZS9uZWln aGJvdXIuYworKysgYi9uZXQvY29yZS9uZWlnaGJvdXIuYwpAQCAtMzUzOCw3ICszNTM4LDcgQEAg RVhQT1JUX1NZTUJPTChuZWlnaF9hcHBfbnMpOwogI2lmZGVmIENPTkZJR19TWVNDVEwKIHN0YXRp YyBpbnQgdW5yZXNfcWxlbl9tYXggPSBJTlRfTUFYIC8gU0tCX1RSVUVTSVpFKEVUSF9GUkFNRV9M RU4pOwogCi1zdGF0aWMgaW50IHByb2NfdW5yZXNfcWxlbihzdHJ1Y3QgY3RsX3RhYmxlICpjdGws IGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY191bnJlc19xbGVuKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAs IGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgc2l6ZSwgcmV0OwpAQCAtMzU5MCw3ICszNTkwLDggQEAg c3RhdGljIHZvaWQgbmVpZ2hfcHJvY191cGRhdGUoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3Rs LCBpbnQgd3JpdGUpCiAJCW5laWdoX2NvcHlfZGZsdF9wYXJtcyhuZXQsIHAsIGluZGV4KTsKIH0K IAotc3RhdGljIGludCBuZWlnaF9wcm9jX2RvaW50dmVjX3plcm9faW50bWF4KHN0cnVjdCBjdGxf dGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBuZWlnaF9wcm9jX2RvaW50dmVjX3pl cm9faW50bWF4KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwKKwkJCQkJICAgaW50IHdyaXRl LAogCQkJCQkgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwKIAkJCQkJICAgbG9mZl90ICpw cG9zKQogewpAQCAtMzYwNSw3ICszNjA2LDggQEAgc3RhdGljIGludCBuZWlnaF9wcm9jX2RvaW50 dmVjX3plcm9faW50bWF4KHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCXJldHVy biByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgbmVpZ2hfcHJvY19kb2ludHZlY19tc19qaWZmaWVzX3Bv c2l0aXZlKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBuZWln aF9wcm9jX2RvaW50dmVjX21zX2ppZmZpZXNfcG9zaXRpdmUoY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqY3RsLAorCQkJCQkJICAgaW50IHdyaXRlLAogCQkJCQkJICAgdm9pZCAqYnVmZmVyLCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgY3RsX3RhYmxlIHRtcCA9ICpjdGw7 CkBAIC0zNjIxLDcgKzM2MjMsNyBAQCBzdGF0aWMgaW50IG5laWdoX3Byb2NfZG9pbnR2ZWNfbXNf amlmZmllc19wb3NpdGl2ZShzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cgogCXJldHVybiBy ZXQ7CiB9CiAKLWludCBuZWlnaF9wcm9jX2RvaW50dmVjKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwg aW50IHdyaXRlLCB2b2lkICpidWZmZXIsCitpbnQgbmVpZ2hfcHJvY19kb2ludHZlYyhjb25zdCBz dHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogCQkJc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldCA9IHByb2NfZG9pbnR2ZWMoY3RsLCB3 cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKQEAgLTM2MzEsNyArMzYzMyw4IEBAIGludCBuZWln aF9wcm9jX2RvaW50dmVjKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLCB2b2lkICpi dWZmZXIsCiB9CiBFWFBPUlRfU1lNQk9MKG5laWdoX3Byb2NfZG9pbnR2ZWMpOwogCi1pbnQgbmVp Z2hfcHJvY19kb2ludHZlY19qaWZmaWVzKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRl LCB2b2lkICpidWZmZXIsCitpbnQgbmVpZ2hfcHJvY19kb2ludHZlY19qaWZmaWVzKGNvbnN0IHN0 cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorCQkJCXZvaWQgKmJ1ZmZlciwKIAkJCQlz aXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgcmV0ID0gcHJvY19kb2ludHZlY19q aWZmaWVzKGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7CkBAIC0zNjQxLDcgKzM2NDQs OCBAQCBpbnQgbmVpZ2hfcHJvY19kb2ludHZlY19qaWZmaWVzKHN0cnVjdCBjdGxfdGFibGUgKmN0 bCwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiB9CiBFWFBPUlRfU1lNQk9MKG5laWdoX3Byb2Nf ZG9pbnR2ZWNfamlmZmllcyk7CiAKLXN0YXRpYyBpbnQgbmVpZ2hfcHJvY19kb2ludHZlY191c2Vy aHpfamlmZmllcyhzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQg bmVpZ2hfcHJvY19kb2ludHZlY191c2VyaHpfamlmZmllcyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxl ICpjdGwsCisJCQkJCSAgICAgIGludCB3cml0ZSwKIAkJCQkJICAgICAgdm9pZCAqYnVmZmVyLCBz aXplX3QgKmxlbnAsCiAJCQkJCSAgICAgIGxvZmZfdCAqcHBvcykKIHsKQEAgLTM2NTEsNyArMzY1 NSw3IEBAIHN0YXRpYyBpbnQgbmVpZ2hfcHJvY19kb2ludHZlY191c2VyaHpfamlmZmllcyhzdHJ1 Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAlyZXR1cm4gcmV0OwogfQogCi1pbnQgbmVp Z2hfcHJvY19kb2ludHZlY19tc19qaWZmaWVzKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdy aXRlLAoraW50IG5laWdoX3Byb2NfZG9pbnR2ZWNfbXNfamlmZmllcyhjb25zdCBzdHJ1Y3QgY3Rs X3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJCQkgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVu cCwgbG9mZl90ICpwcG9zKQogewogCWludCByZXQgPSBwcm9jX2RvaW50dmVjX21zX2ppZmZpZXMo Y3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKQEAgLTM2NjEsNyArMzY2NSw4IEBAIGlu dCBuZWlnaF9wcm9jX2RvaW50dmVjX21zX2ppZmZpZXMoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBp bnQgd3JpdGUsCiB9CiBFWFBPUlRfU1lNQk9MKG5laWdoX3Byb2NfZG9pbnR2ZWNfbXNfamlmZmll cyk7CiAKLXN0YXRpYyBpbnQgbmVpZ2hfcHJvY19kb2ludHZlY191bnJlc19xbGVuKHN0cnVjdCBj dGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBuZWlnaF9wcm9jX2RvaW50dmVj X3VucmVzX3FsZW4oY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLAorCQkJCQkgIGludCB3cml0 ZSwKIAkJCQkJICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwKIAkJCQkJICBsb2ZmX3QgKnBw b3MpCiB7CkBAIC0zNjcxLDcgKzM2NzYsOCBAQCBzdGF0aWMgaW50IG5laWdoX3Byb2NfZG9pbnR2 ZWNfdW5yZXNfcWxlbihzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAlyZXR1cm4g cmV0OwogfQogCi1zdGF0aWMgaW50IG5laWdoX3Byb2NfYmFzZV9yZWFjaGFibGVfdGltZShzdHJ1 Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgbmVpZ2hfcHJvY19iYXNl X3JlYWNoYWJsZV90aW1lKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwKKwkJCQkJICBpbnQg d3JpdGUsCiAJCQkJCSAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsCiAJCQkJCSAgbG9mZl90 ICpwcG9zKQogewpkaWZmIC0tZ2l0IGEvbmV0L2NvcmUvc3lzY3RsX25ldF9jb3JlLmMgYi9uZXQv Y29yZS9zeXNjdGxfbmV0X2NvcmUuYwppbmRleCA2OTczZGRhM2FiZGEuLjZiYjJlNTczZWRlNCAx MDA2NDQKLS0tIGEvbmV0L2NvcmUvc3lzY3RsX25ldF9jb3JlLmMKKysrIGIvbmV0L2NvcmUvc3lz Y3RsX25ldF9jb3JlLmMKQEAgLTk0LDcgKzk0LDcgQEAgc3RhdGljIHN0cnVjdCBjcHVtYXNrICpy cHNfZGVmYXVsdF9tYXNrX2Nvd19hbGxvYyhzdHJ1Y3QgbmV0ICpuZXQpCiAJcmV0dXJuIHJwc19k ZWZhdWx0X21hc2s7CiB9CiAKLXN0YXRpYyBpbnQgcnBzX2RlZmF1bHRfbWFza19zeXNjdGwoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcnBzX2RlZmF1bHRf bWFza19zeXNjdGwoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJ CQkgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVj dCBuZXQgKm5ldCA9IChzdHJ1Y3QgbmV0ICopdGFibGUtPmRhdGE7CkBAIC0xMjUsNyArMTI1LDcg QEAgc3RhdGljIGludCBycHNfZGVmYXVsdF9tYXNrX3N5c2N0bChzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaXRlLAogCXJldHVybiBlcnI7CiB9CiAKLXN0YXRpYyBpbnQgcnBzX3NvY2tf Zmxvd19zeXNjdGwoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBp bnQgcnBzX3NvY2tfZmxvd19zeXNjdGwoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKIAkJCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQog ewogCXVuc2lnbmVkIGludCBvcmlnX3NpemUsIHNpemU7CkBAIC0xOTcsNyArMTk3LDcgQEAgc3Rh dGljIGludCBycHNfc29ja19mbG93X3N5c2N0bChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAogI2lmZGVmIENPTkZJR19ORVRfRkxPV19MSU1JVAogc3RhdGljIERFRklORV9NVVRF WChmbG93X2xpbWl0X3VwZGF0ZV9tdXRleCk7CiAKLXN0YXRpYyBpbnQgZmxvd19saW1pdF9jcHVf c3lzY3RsKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IGZs b3dfbGltaXRfY3B1X3N5c2N0bChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdy aXRlLAogCQkJCSB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewog CXN0cnVjdCBzZF9mbG93X2xpbWl0ICpjdXI7CkBAIC0yNTQsNyArMjU0LDggQEAgc3RhdGljIGlu dCBmbG93X2xpbWl0X2NwdV9zeXNjdGwoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IGZsb3dfbGltaXRfdGFibGVfbGVuX3N5 c2N0bChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBmbG93 X2xpbWl0X3RhYmxlX2xlbl9zeXNjdGwoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCisJ CQkJICAgICAgIGludCB3cml0ZSwKIAkJCQkgICAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxl bnAsIGxvZmZfdCAqcHBvcykKIHsKIAl1bnNpZ25lZCBpbnQgb2xkLCAqcHRyOwpAQCAtMjc2LDcg KzI3Nyw3IEBAIHN0YXRpYyBpbnQgZmxvd19saW1pdF90YWJsZV9sZW5fc3lzY3RsKHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAjZW5kaWYgLyogQ09ORklHX05FVF9GTE9XX0xJ TUlUICovCiAKICNpZmRlZiBDT05GSUdfTkVUX1NDSEVECi1zdGF0aWMgaW50IHNldF9kZWZhdWx0 X3FkaXNjKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHNl dF9kZWZhdWx0X3FkaXNjKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs CiAJCQkgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJ Y2hhciBpZFtJRk5BTVNJWl07CkBAIC0yOTUsOCArMjk2LDggQEAgc3RhdGljIGludCBzZXRfZGVm YXVsdF9xZGlzYyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogfQogI2VuZGlm CiAKLXN0YXRpYyBpbnQgcHJvY19kb19kZXZfd2VpZ2h0KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsCi0JCQkgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpw cG9zKQorc3RhdGljIGludCBwcm9jX2RvX2Rldl93ZWlnaHQoY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKKwkJCSAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5w LCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RhdGljIERFRklORV9NVVRFWChkZXZfd2VpZ2h0X211dGV4 KTsKIAlpbnQgcmV0LCB3ZWlnaHQ7CkBAIC0zMTMsNyArMzE0LDcgQEAgc3RhdGljIGludCBwcm9j X2RvX2Rldl93ZWlnaHQoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAlyZXR1 cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IHByb2NfZG9fcnNzX2tleShzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBwcm9jX2RvX3Jzc19rZXkoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAgIHZvaWQgKmJ1ZmZlciwgc2l6 ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IGN0bF90YWJsZSBmYWtlX3RhYmxl OwpAQCAtMzI2LDcgKzMyNyw4IEBAIHN0YXRpYyBpbnQgcHJvY19kb19yc3Nfa2V5KHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiB9CiAKICNpZmRlZiBDT05GSUdfQlBGX0pJVAot c3RhdGljIGludCBwcm9jX2RvaW50dmVjX21pbm1heF9icGZfZW5hYmxlKHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2NfZG9pbnR2ZWNfbWlubWF4X2Jw Zl9lbmFibGUoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCisJCQkJCSAgIGludCB3cml0 ZSwKIAkJCQkJICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsCiAJCQkJCSAgIGxvZmZfdCAq cHBvcykKIHsKQEAgLTM1OSw3ICszNjEsNyBAQCBzdGF0aWMgaW50IHByb2NfZG9pbnR2ZWNfbWlu bWF4X2JwZl9lbmFibGUoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAogIyBp ZmRlZiBDT05GSUdfSEFWRV9FQlBGX0pJVAogc3RhdGljIGludAotcHJvY19kb2ludHZlY19taW5t YXhfYnBmX3Jlc3RyaWN0ZWQoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3By b2NfZG9pbnR2ZWNfbWlubWF4X2JwZl9yZXN0cmljdGVkKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpCiB7CiAJaWYgKCFjYXBhYmxlKENBUF9TWVNfQURNSU4pKQpAQCAtMzcwLDcg KzM3Miw3IEBAIHByb2NfZG9pbnR2ZWNfbWlubWF4X2JwZl9yZXN0cmljdGVkKHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAjIGVuZGlmIC8qIENPTkZJR19IQVZFX0VCUEZfSklU ICovCiAKIHN0YXRpYyBpbnQKLXByb2NfZG9sb25ndmVjX21pbm1heF9icGZfcmVzdHJpY3RlZChz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorcHJvY19kb2xvbmd2ZWNfbWlubWF4 X2JwZl9yZXN0cmljdGVkKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs CiAJCQkJICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewog CWlmICghY2FwYWJsZShDQVBfU1lTX0FETUlOKSkKZGlmZiAtLWdpdCBhL25ldC9pcHY0L2Rldmlu ZXQuYyBiL25ldC9pcHY0L2RldmluZXQuYwppbmRleCA3YTQzN2YwZDQxOTAuLmIxOWIxODIxMTc2 NyAxMDA2NDQKLS0tIGEvbmV0L2lwdjQvZGV2aW5ldC5jCisrKyBiL25ldC9pcHY0L2RldmluZXQu YwpAQCAtMjM3Nyw3ICsyMzc3LDcgQEAgc3RhdGljIGludCBkZXZpbmV0X2NvbmZfaWZpbmRleChz dHJ1Y3QgbmV0ICpuZXQsIHN0cnVjdCBpcHY0X2RldmNvbmYgKmNuZikKIAl9CiB9CiAKLXN0YXRp YyBpbnQgZGV2aW5ldF9jb25mX3Byb2Moc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUs CitzdGF0aWMgaW50IGRldmluZXRfY29uZl9wcm9jKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0 bCwgaW50IHdyaXRlLAogCQkJICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90 ICpwcG9zKQogewogCWludCBvbGRfdmFsdWUgPSAqKGludCAqKWN0bC0+ZGF0YTsKQEAgLTI0Mjks NyArMjQyOSw3IEBAIHN0YXRpYyBpbnQgZGV2aW5ldF9jb25mX3Byb2Moc3RydWN0IGN0bF90YWJs ZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBkZXZpbmV0 X3N5c2N0bF9mb3J3YXJkKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGlj IGludCBkZXZpbmV0X3N5c2N0bF9mb3J3YXJkKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwg aW50IHdyaXRlLAogCQkJCSAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBv cykKIHsKIAlpbnQgKnZhbHAgPSBjdGwtPmRhdGE7CkBAIC0yNDc2LDcgKzI0NzYsNyBAQCBzdGF0 aWMgaW50IGRldmluZXRfc3lzY3RsX2ZvcndhcmQoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQg d3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBpcHY0X2RvaW50X2FuZF9mbHVz aChzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgaXB2NF9kb2lu dF9hbmRfZmx1c2goY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJ dm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgKnZhbHAg PSBjdGwtPmRhdGE7CmRpZmYgLS1naXQgYS9uZXQvaXB2NC9yb3V0ZS5jIGIvbmV0L2lwdjQvcm91 dGUuYwppbmRleCBjOGY3NmY1NmRjMTYuLjRlZWE1OWUwNjY3MSAxMDA2NDQKLS0tIGEvbmV0L2lw djQvcm91dGUuYworKysgYi9uZXQvaXB2NC9yb3V0ZS5jCkBAIC0zNDA4LDggKzM0MDgsOCBAQCBz dGF0aWMgaW50IGlwX3J0X2djX21pbl9pbnRlcnZhbCBfX3JlYWRfbW9zdGx5CT0gSFogLyAyOwog c3RhdGljIGludCBpcF9ydF9nY19lbGFzdGljaXR5IF9fcmVhZF9tb3N0bHkJPSA4Owogc3RhdGlj IGludCBpcF9taW5fdmFsaWRfcG10dSBfX3JlYWRfbW9zdGx5CT0gSVBWNF9NSU5fTVRVOwogCi1z dGF0aWMgaW50IGlwdjRfc3lzY3RsX3J0Y2FjaGVfZmx1c2goc3RydWN0IGN0bF90YWJsZSAqX19j dGwsIGludCB3cml0ZSwKLQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBv cykKK3N0YXRpYyBpbnQgaXB2NF9zeXNjdGxfcnRjYWNoZV9mbHVzaChjb25zdCBzdHJ1Y3QgY3Rs X3RhYmxlICpfX2N0bCwgaW50IHdyaXRlLAorCQkJCSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgbmV0ICpuZXQgPSAoc3RydWN0IG5ldCAq KV9fY3RsLT5leHRyYTE7CiAKZGlmZiAtLWdpdCBhL25ldC9pcHY0L3N5c2N0bF9uZXRfaXB2NC5j IGIvbmV0L2lwdjQvc3lzY3RsX25ldF9pcHY0LmMKaW5kZXggMzYzZGMyYTQ4N2FjLi4zODMyNzBh MmQyMjcgMTAwNjQ0Ci0tLSBhL25ldC9pcHY0L3N5c2N0bF9uZXRfaXB2NC5jCisrKyBiL25ldC9p cHY0L3N5c2N0bF9uZXRfaXB2NC5jCkBAIC02Miw3ICs2Miw3IEBAIHN0YXRpYyB2b2lkIHNldF9s b2NhbF9wb3J0X3JhbmdlKHN0cnVjdCBuZXQgKm5ldCwgdW5zaWduZWQgaW50IGxvdywgdW5zaWdu ZWQgaW50CiB9CiAKIC8qIFZhbGlkYXRlIGNoYW5nZXMgZnJvbSAvcHJvYyBpbnRlcmZhY2UuICov Ci1zdGF0aWMgaW50IGlwdjRfbG9jYWxfcG9ydF9yYW5nZShzdHJ1Y3QgY3RsX3RhYmxlICp0YWJs ZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBpcHY0X2xvY2FsX3BvcnRfcmFuZ2UoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgbmV0ICpuZXQgPSB0YWJsZS0+ZGF0 YTsKQEAgLTk2LDggKzk2LDggQEAgc3RhdGljIGludCBpcHY0X2xvY2FsX3BvcnRfcmFuZ2Uoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIH0KIAogLyogVmFsaWRhdGUgY2hhbmdl cyBmcm9tIC9wcm9jIGludGVyZmFjZS4gKi8KLXN0YXRpYyBpbnQgaXB2NF9wcml2aWxlZ2VkX3Bv cnRzKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCQkJdm9pZCAqYnVmZmVy LCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgaXB2NF9wcml2aWxlZ2Vk X3BvcnRzKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCisJCQkJIHZv aWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IG5ldCAq bmV0ID0gY29udGFpbmVyX29mKHRhYmxlLT5kYXRhLCBzdHJ1Y3QgbmV0LAogCSAgICBpcHY0LnN5 c2N0bF9pcF9wcm90X3NvY2spOwpAQCAtMTU5LDcgKzE1OSw3IEBAIHN0YXRpYyB2b2lkIHNldF9w aW5nX2dyb3VwX3JhbmdlKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLAogfQogCiAvKiBW YWxpZGF0ZSBjaGFuZ2VzIGZyb20gL3Byb2MgaW50ZXJmYWNlLiAqLwotc3RhdGljIGludCBpcHY0 X3BpbmdfZ3JvdXBfcmFuZ2Uoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0 YXRpYyBpbnQgaXB2NF9waW5nX2dyb3VwX3JhbmdlKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRh YmxlLCBpbnQgd3JpdGUsCiAJCQkJIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3Qg KnBwb3MpCiB7CiAJc3RydWN0IHVzZXJfbmFtZXNwYWNlICp1c2VyX25zID0gY3VycmVudF91c2Vy X25zKCk7CkBAIC0xOTQsNyArMTk0LDcgQEAgc3RhdGljIGludCBpcHY0X3BpbmdfZ3JvdXBfcmFu Z2Uoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAlyZXR1cm4gcmV0OwogfQog Ci1zdGF0aWMgaW50IGlwdjRfZndkX3VwZGF0ZV9wcmlvcml0eShzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBpcHY0X2Z3ZF91cGRhdGVfcHJpb3JpdHkoY29u c3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQkgICAgdm9pZCAqYnVm ZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgbmV0ICpuZXQ7CkBA IC0yMTAsNyArMjEwLDcgQEAgc3RhdGljIGludCBpcHY0X2Z3ZF91cGRhdGVfcHJpb3JpdHkoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0 aWMgaW50IHByb2NfdGNwX2Nvbmdlc3Rpb25fY29udHJvbChzdHJ1Y3QgY3RsX3RhYmxlICpjdGws IGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY190Y3BfY29uZ2VzdGlvbl9jb250cm9sKGNvbnN0 IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJCSAgICAgICB2b2lkICpidWZm ZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBuZXQgKm5ldCA9IGNv bnRhaW5lcl9vZihjdGwtPmRhdGEsIHN0cnVjdCBuZXQsCkBAIC0yMzAsNyArMjMwLDcgQEAgc3Rh dGljIGludCBwcm9jX3RjcF9jb25nZXN0aW9uX2NvbnRyb2woc3RydWN0IGN0bF90YWJsZSAqY3Rs LCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBwcm9jX3RjcF9hdmFp bGFibGVfY29uZ2VzdGlvbl9jb250cm9sKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwKK3N0YXRpYyBp bnQgcHJvY190Y3BfYXZhaWxhYmxlX2Nvbmdlc3Rpb25fY29udHJvbChjb25zdCBzdHJ1Y3QgY3Rs X3RhYmxlICpjdGwsCiAJCQkJCQkgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiAJCQkJCQkgc2l6 ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CkBAIC0yNDYsNyArMjQ2LDcgQEAgc3RhdGljIGlu dCBwcm9jX3RjcF9hdmFpbGFibGVfY29uZ2VzdGlvbl9jb250cm9sKHN0cnVjdCBjdGxfdGFibGUg KmN0bCwKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IHByb2NfYWxsb3dlZF9jb25nZXN0 aW9uX2NvbnRyb2woc3RydWN0IGN0bF90YWJsZSAqY3RsLAorc3RhdGljIGludCBwcm9jX2FsbG93 ZWRfY29uZ2VzdGlvbl9jb250cm9sKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwKIAkJCQkJ ICAgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiAJCQkJCSAgIHNpemVfdCAqbGVucCwgbG9mZl90 ICpwcG9zKQogewpAQCAtMjgzLDcgKzI4Myw3IEBAIHN0YXRpYyBpbnQgc3NjYW5mX2tleShjaGFy ICpidWYsIF9fbGUzMiAqa2V5KQogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgcHJvY190 Y3BfZmFzdG9wZW5fa2V5KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0 aWMgaW50IHByb2NfdGNwX2Zhc3RvcGVuX2tleShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJs ZSwgaW50IHdyaXRlLAogCQkJCSB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpw cG9zKQogewogCXN0cnVjdCBuZXQgKm5ldCA9IGNvbnRhaW5lcl9vZih0YWJsZS0+ZGF0YSwgc3Ry dWN0IG5ldCwKQEAgLTM1NCw3ICszNTQsNyBAQCBzdGF0aWMgaW50IHByb2NfdGNwX2Zhc3RvcGVu X2tleShzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCXJldHVybiByZXQ7CiB9 CiAKLXN0YXRpYyBpbnQgcHJvY190Zm9fYmxhY2tob2xlX2RldGVjdF90aW1lb3V0KHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLAorc3RhdGljIGludCBwcm9jX3Rmb19ibGFja2hvbGVfZGV0ZWN0X3Rp bWVvdXQoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCiAJCQkJCSAgICAgaW50IHdyaXRl LCB2b2lkICpidWZmZXIsCiAJCQkJCSAgICAgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7 CkBAIC0zNjksOCArMzY5LDggQEAgc3RhdGljIGludCBwcm9jX3Rmb19ibGFja2hvbGVfZGV0ZWN0 X3RpbWVvdXQoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3Rh dGljIGludCBwcm9jX3RjcF9hdmFpbGFibGVfdWxwKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwKLQkJ CQkgIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsCitzdGF0aWMgaW50IHBy b2NfdGNwX2F2YWlsYWJsZV91bHAoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3Jp dGUsCisJCQkJICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwKIAkJCQkgIGxvZmZfdCAqcHBv cykKIHsKIAlzdHJ1Y3QgY3RsX3RhYmxlIHRibCA9IHsgLm1heGxlbiA9IFRDUF9VTFBfQlVGX01B WCwgfTsKQEAgLTM4Niw3ICszODYsNyBAQCBzdGF0aWMgaW50IHByb2NfdGNwX2F2YWlsYWJsZV91 bHAoc3RydWN0IGN0bF90YWJsZSAqY3RsLAogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQg cHJvY190Y3BfZWhhc2hfZW50cmllcyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRl LAorc3RhdGljIGludCBwcm9jX3RjcF9laGFzaF9lbnRyaWVzKGNvbnN0IHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwg bG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBuZXQgKm5ldCA9IGNvbnRhaW5lcl9vZih0YWJsZS0+ ZGF0YSwgc3RydWN0IG5ldCwKQEAgLTQxMCw3ICs0MTAsNyBAQCBzdGF0aWMgaW50IHByb2NfdGNw X2VoYXNoX2VudHJpZXMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAlyZXR1 cm4gcHJvY19kb2ludHZlYygmdGJsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKIH0KIAot c3RhdGljIGludCBwcm9jX3VkcF9oYXNoX2VudHJpZXMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY191ZHBfaGFzaF9lbnRyaWVzKGNvbnN0IHN0cnVj dCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJIHZvaWQgKmJ1ZmZlciwgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IG5ldCAqbmV0ID0gY29udGFpbmVyX29m KHRhYmxlLT5kYXRhLCBzdHJ1Y3QgbmV0LApAQCAtNDM0LDcgKzQzNCw4IEBAIHN0YXRpYyBpbnQg cHJvY191ZHBfaGFzaF9lbnRyaWVzKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs CiB9CiAKICNpZmRlZiBDT05GSUdfSVBfUk9VVEVfTVVMVElQQVRICi1zdGF0aWMgaW50IHByb2Nf ZmliX211bHRpcGF0aF9oYXNoX3BvbGljeShzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdy aXRlLAorc3RhdGljIGludCBwcm9jX2ZpYl9tdWx0aXBhdGhfaGFzaF9wb2xpY3koY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsCisJCQkJCSAgaW50IHdyaXRlLAogCQkJCQkgIHZvaWQgKmJ1 ZmZlciwgc2l6ZV90ICpsZW5wLAogCQkJCQkgIGxvZmZfdCAqcHBvcykKIHsKQEAgLTQ0OSw3ICs0 NTAsOCBAQCBzdGF0aWMgaW50IHByb2NfZmliX211bHRpcGF0aF9oYXNoX3BvbGljeShzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBp bnQgcHJvY19maWJfbXVsdGlwYXRoX2hhc2hfZmllbGRzKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2NfZmliX211bHRpcGF0aF9oYXNoX2ZpZWxkcyhj b25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKKwkJCQkJICBpbnQgd3JpdGUsCiAJCQkJCSAg dm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsCiAJCQkJCSAgbG9mZl90ICpwcG9zKQogewpkaWZm IC0tZ2l0IGEvbmV0L2lwdjYvYWRkcmNvbmYuYyBiL25ldC9pcHY2L2FkZHJjb25mLmMKaW5kZXgg YzcyZjNiNjNlNDFkLi44ZTllNjU1ZWQ2OTAgMTAwNjQ0Ci0tLSBhL25ldC9pcHY2L2FkZHJjb25m LmMKKysrIGIvbmV0L2lwdjYvYWRkcmNvbmYuYwpAQCAtNjMwNSw4ICs2MzA1LDggQEAgc3RhdGlj IHZvaWQgaXB2Nl9pZmFfbm90aWZ5KGludCBldmVudCwgc3RydWN0IGluZXQ2X2lmYWRkciAqaWZw KQogCiAjaWZkZWYgQ09ORklHX1NZU0NUTAogCi1zdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9m b3J3YXJkKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAotCQl2b2lkICpidWZmZXIs IHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQorc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxf Zm9yd2FyZChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKKwkJCQkgICB2 b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCAqdmFscCA9 IGN0bC0+ZGF0YTsKIAlpbnQgdmFsID0gKnZhbHA7CkBAIC02MzMwLDggKzYzMzAsOCBAQCBzdGF0 aWMgaW50IGFkZHJjb25mX3N5c2N0bF9mb3J3YXJkKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50 IHdyaXRlLAogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX210 dShzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKLQkJdm9pZCAqYnVmZmVyLCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX210dShj b25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKKwkJCSAgICAgICB2b2lkICpi dWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBpbmV0Nl9kZXYg KmlkZXYgPSBjdGwtPmV4dHJhMTsKIAlpbnQgbWluX210dSA9IElQVjZfTUlOX01UVTsKQEAgLTY0 MDEsOCArNjQwMSw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfZGlzYWJsZV9pcHY2KGNvbnN0IHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgKnAsIGludCBuZXdmCiAJcmV0dXJuIDA7CiB9CiAK LXN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGUoc3RydWN0IGN0bF90YWJsZSAqY3Rs LCBpbnQgd3JpdGUsCi0JCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3Mp CitzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlKGNvbnN0IHN0cnVjdCBjdGxfdGFi bGUgKmN0bCwgaW50IHdyaXRlLAorCQkJCSAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpCiB7CiAJaW50ICp2YWxwID0gY3RsLT5kYXRhOwogCWludCB2YWwgPSAqdmFs cDsKQEAgLTY0MjYsOCArNjQyNiw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2Fi bGUoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAot c3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwKHN0cnVjdCBjdGxfdGFibGUgKmN0 bCwgaW50IHdyaXRlLAotCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9z KQorc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfcHJveHlfbmRwKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKmN0bCwgaW50IHdyaXRlLAorCQkJCSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxl bnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgKnZhbHAgPSBjdGwtPmRhdGE7CiAJaW50IHJldDsK QEAgLTY0NjcsNyArNjQ2Nyw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25k cChzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAlyZXR1cm4gcmV0OwogfQogCi1z dGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9hZGRyX2dlbl9tb2RlKHN0cnVjdCBjdGxfdGFibGUg KmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxfYWRkcl9nZW5fbW9k ZShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsCisJCQkJCSBpbnQgd3JpdGUsCiAJCQkJCSB2 b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwKIAkJCQkJIGxvZmZfdCAqcHBvcykKIHsKQEAgLTY1 MzAsNyArNjUzMSw4IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2FkZHJfZ2VuX21vZGUo c3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3Rh dGljIGludCBhZGRyY29uZl9zeXNjdGxfc3RhYmxlX3NlY3JldChzdHJ1Y3QgY3RsX3RhYmxlICpj dGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX3N0YWJsZV9zZWNyZXQo Y29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLAorCQkJCQkgaW50IHdyaXRlLAogCQkJCQkgdm9p ZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsCiAJCQkJCSBsb2ZmX3QgKnBwb3MpCiB7CkBAIC02NTk4 LDcgKzY2MDAsNyBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9zdGFibGVfc2VjcmV0KHN0 cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogfQogCiBzdGF0aWMKLWludCBhZGRyY29u Zl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKHN0cnVjdCBjdGxfdGFibGUgKmN0 bCwKK2ludCBhZGRyY29uZl9zeXNjdGxfaWdub3JlX3JvdXRlc193aXRoX2xpbmtkb3duKGNvbnN0 IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwKIAkJCQkJCWludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAog CQkJCQkJc2l6ZV90ICpsZW5wLAogCQkJCQkJbG9mZl90ICpwcG9zKQpAQCAtNjY5OCw4ICs2NzAw LDEwIEBAIGludCBhZGRyY29uZl9kaXNhYmxlX3BvbGljeShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxl ICpjdGwsIGludCAqdmFscCwgaW50IHZhbCkKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBh ZGRyY29uZl9zeXNjdGxfZGlzYWJsZV9wb2xpY3koc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQg d3JpdGUsCi0JCQkJICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK K3N0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rpc2FibGVfcG9saWN5KGNvbnN0IHN0cnVjdCBj dGxfdGFibGUgKmN0bCwKKwkJCQkJICBpbnQgd3JpdGUsCisJCQkJCSAgdm9pZCAqYnVmZmVyLCBz aXplX3QgKmxlbnAsCisJCQkJCSAgbG9mZl90ICpwcG9zKQogewogCWludCAqdmFscCA9IGN0bC0+ ZGF0YTsKIAlpbnQgdmFsID0gKnZhbHA7CmRpZmYgLS1naXQgYS9uZXQvaXB2Ni9uZGlzYy5jIGIv bmV0L2lwdjYvbmRpc2MuYwppbmRleCA5NDVkNWY1Y2EwMzkuLjJjOTVhNWM4YmZhMSAxMDA2NDQK LS0tIGEvbmV0L2lwdjYvbmRpc2MuYworKysgYi9uZXQvaXB2Ni9uZGlzYy5jCkBAIC0xOTUxLDgg KzE5NTEsOSBAQCBzdGF0aWMgdm9pZCBuZGlzY193YXJuX2RlcHJlY2F0ZWRfc3lzY3RsKGNvbnN0 IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwKIAl9CiB9CiAKLWludCBuZGlzY19pZmluZm9fc3lzY3Rs X2NoYW5nZShzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAot CQlzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK2ludCBuZGlzY19pZmluZm9fc3lzY3RsX2No YW5nZShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKKwkJCSAgICAgICB2 b2lkICpidWZmZXIsCisJCQkgICAgICAgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJ c3RydWN0IG5ldF9kZXZpY2UgKmRldiA9IGN0bC0+ZXh0cmExOwogCXN0cnVjdCBpbmV0Nl9kZXYg KmlkZXY7CmRpZmYgLS1naXQgYS9uZXQvaXB2Ni9yb3V0ZS5jIGIvbmV0L2lwdjYvcm91dGUuYwpp bmRleCAxZjRiOTM1YTBlNTcuLmI0MzQ2MzZjY2ExYyAxMDA2NDQKLS0tIGEvbmV0L2lwdjYvcm91 dGUuYworKysgYi9uZXQvaXB2Ni9yb3V0ZS5jCkBAIC02MzI5LDggKzYzMjksOCBAQCBzdGF0aWMg aW50IHJ0Nl9zdGF0c19zZXFfc2hvdyhzdHJ1Y3Qgc2VxX2ZpbGUgKnNlcSwgdm9pZCAqdikKIAog I2lmZGVmIENPTkZJR19TWVNDVEwKIAotc3RhdGljIGludCBpcHY2X3N5c2N0bF9ydGNhY2hlX2Zs dXNoKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAotCQkJICAgICAgdm9pZCAqYnVm ZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgaXB2Nl9zeXNjdGxf cnRjYWNoZV9mbHVzaChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKKwkJ CQkgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3Ry dWN0IG5ldCAqbmV0OwogCWludCBkZWxheTsKZGlmZiAtLWdpdCBhL25ldC9pcHY2L3N5c2N0bF9u ZXRfaXB2Ni5jIGIvbmV0L2lwdjYvc3lzY3RsX25ldF9pcHY2LmMKaW5kZXggODg4Njc2MTYzZTkw Li4yZDE5YzExOTg1M2YgMTAwNjQ0Ci0tLSBhL25ldC9pcHY2L3N5c2N0bF9uZXRfaXB2Ni5jCisr KyBiL25ldC9pcHY2L3N5c2N0bF9uZXRfaXB2Ni5jCkBAIC0zMCw3ICszMCw4IEBAIHN0YXRpYyB1 MzIgcnQ2X211bHRpcGF0aF9oYXNoX2ZpZWxkc19hbGxfbWFzayA9CiBzdGF0aWMgdTMyIGlvYW02 X2lkX21heCA9IElPQU02X0RFRkFVTFRfSUQ7CiBzdGF0aWMgdTY0IGlvYW02X2lkX3dpZGVfbWF4 ID0gSU9BTTZfREVGQVVMVF9JRF9XSURFOwogCi1zdGF0aWMgaW50IHByb2NfcnQ2X211bHRpcGF0 aF9oYXNoX3BvbGljeShzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGlj IGludCBwcm9jX3J0Nl9tdWx0aXBhdGhfaGFzaF9wb2xpY3koY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsCisJCQkJCSAgaW50IHdyaXRlLAogCQkJCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IG5ldCAqbmV0OwpAQCAtNDYsNyArNDcs OCBAQCBzdGF0aWMgaW50IHByb2NfcnQ2X211bHRpcGF0aF9oYXNoX3BvbGljeShzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogfQogCiBzdGF0aWMgaW50Ci1wcm9jX3J0Nl9tdWx0 aXBhdGhfaGFzaF9maWVsZHMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9p ZCAqYnVmZmVyLAorcHJvY19ydDZfbXVsdGlwYXRoX2hhc2hfZmllbGRzKGNvbnN0IHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCisJCQkgICAgICAgdm9pZCAqYnVmZmVyLAogCQkJ ICAgICAgIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBuZXQgKm5ldDsK ZGlmZiAtLWdpdCBhL25ldC9tcGxzL2FmX21wbHMuYyBiL25ldC9tcGxzL2FmX21wbHMuYwppbmRl eCA2ZGFiODgzYTA4ZGQuLjcxMzg5OThlMjljOCAxMDA2NDQKLS0tIGEvbmV0L21wbHMvYWZfbXBs cy5jCisrKyBiL25ldC9tcGxzL2FmX21wbHMuYwpAQCAtMTM2Myw3ICsxMzYzLDcgQEAgc3RhdGlj IGludCBtcGxzX25ldGNvbmZfZHVtcF9kZXZjb25mKHN0cnVjdCBza19idWZmICpza2IsCiAjZGVm aW5lIE1QTFNfUEVSREVWX1NZU0NUTF9PRkZTRVQoZmllbGQpCVwKIAkoJigoc3RydWN0IG1wbHNf ZGV2ICopMCktPmZpZWxkKQogCi1zdGF0aWMgaW50IG1wbHNfY29uZl9wcm9jKHN0cnVjdCBjdGxf dGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBtcGxzX2NvbmZfcHJvYyhjb25zdCBz dHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJCSAgdm9pZCAqYnVmZmVyLCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgb3ZhbCA9ICooaW50ICopY3RsLT5kYXRh OwpAQCAtMjYxNyw3ICsyNjE3LDcgQEAgc3RhdGljIGludCByZXNpemVfcGxhdGZvcm1fbGFiZWxf dGFibGUoc3RydWN0IG5ldCAqbmV0LCBzaXplX3QgbGltaXQpCiAJcmV0dXJuIC1FTk9NRU07CiB9 CiAKLXN0YXRpYyBpbnQgbXBsc19wbGF0Zm9ybV9sYWJlbHMoc3RydWN0IGN0bF90YWJsZSAqdGFi bGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgbXBsc19wbGF0Zm9ybV9sYWJlbHMoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQl2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBuZXQgKm5ldCA9IHRhYmxlLT5kYXRh OwpkaWZmIC0tZ2l0IGEvbmV0L25ldGZpbHRlci9pcHZzL2lwX3ZzX2N0bC5jIGIvbmV0L25ldGZp bHRlci9pcHZzL2lwX3ZzX2N0bC5jCmluZGV4IDY4OWFjNTIxZWEyZC4uZTM0ODc5ZjdhMmY0IDEw MDY0NAotLS0gYS9uZXQvbmV0ZmlsdGVyL2lwdnMvaXBfdnNfY3RsLmMKKysrIGIvbmV0L25ldGZp bHRlci9pcHZzL2lwX3ZzX2N0bC5jCkBAIC0xODQ2LDcgKzE4NDYsNyBAQCBzdGF0aWMgaW50IGlw X3ZzX3plcm9fYWxsKHN0cnVjdCBuZXRuc19pcHZzICppcHZzKQogI2lmZGVmIENPTkZJR19TWVND VEwKIAogc3RhdGljIGludAotcHJvY19kb19kZWZlbnNlX21vZGUoc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKK3Byb2NfZG9fZGVmZW5zZV9tb2RlKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxl bnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgbmV0bnNfaXB2cyAqaXB2cyA9IHRhYmxlLT5l eHRyYTI7CkBAIC0xODczLDcgKzE4NzMsNyBAQCBwcm9jX2RvX2RlZmVuc2VfbW9kZShzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogfQogCiBzdGF0aWMgaW50Ci1wcm9jX2RvX3N5 bmNfdGhyZXNob2xkKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitwcm9jX2Rv X3N5bmNfdGhyZXNob2xkKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs CiAJCSAgICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewog CXN0cnVjdCBuZXRuc19pcHZzICppcHZzID0gdGFibGUtPmV4dHJhMjsKQEAgLTE5MDEsNyArMTkw MSw3IEBAIHByb2NfZG9fc3luY190aHJlc2hvbGQoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKIH0KIAogc3RhdGljIGludAotcHJvY19kb19zeW5jX3BvcnRzKHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitwcm9jX2RvX3N5bmNfcG9ydHMoY29uc3Qgc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJICAgdm9pZCAqYnVmZmVyLCBzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgKnZhbHAgPSB0YWJsZS0+ZGF0YTsKQEAgLTE5 ODQsNyArMTk4NCw3IEBAIHN0YXRpYyBpbnQgaXB2c19wcm9jX2VzdF9jcHVtYXNrX2dldChjb25z dCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50 IGlwdnNfcHJvY19lc3RfY3B1bGlzdChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRl LAorc3RhdGljIGludCBpcHZzX3Byb2NfZXN0X2NwdWxpc3QoY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlpbnQgcmV0OwpAQCAtMjAxMSw3ICsyMDExLDcgQEAgc3RhdGljIGlu dCBpcHZzX3Byb2NfZXN0X2NwdWxpc3Qoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IGlwdnNfcHJvY19lc3RfbmljZShzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBpcHZzX3Byb2NfZXN0 X25pY2UoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAgICAg IHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IG5l dG5zX2lwdnMgKmlwdnMgPSB0YWJsZS0+ZXh0cmEyOwpAQCAtMjA0MSw3ICsyMDQxLDcgQEAgc3Rh dGljIGludCBpcHZzX3Byb2NfZXN0X25pY2Uoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IGlwdnNfcHJvY19ydW5fZXN0aW1h dGlvbihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBpcHZz X3Byb2NfcnVuX2VzdGltYXRpb24oY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKIAkJCQkgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK IHsKIAlzdHJ1Y3QgbmV0bnNfaXB2cyAqaXB2cyA9IHRhYmxlLT5leHRyYTI7CmRpZmYgLS1naXQg YS9uZXQvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19zdGFuZGFsb25lLmMgYi9uZXQvbmV0ZmlsdGVy L25mX2Nvbm50cmFja19zdGFuZGFsb25lLmMKaW5kZXggMGVlOThjZTViODE2Li4zMjViOTA5NGRj YTEgMTAwNjQ0Ci0tLSBhL25ldC9uZXRmaWx0ZXIvbmZfY29ubnRyYWNrX3N0YW5kYWxvbmUuYwor KysgYi9uZXQvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19zdGFuZGFsb25lLmMKQEAgLTUyNyw3ICs1 MjcsNyBAQCBFWFBPUlRfU1lNQk9MX0dQTChuZl9jb25udHJhY2tfY291bnQpOwogc3RhdGljIHVu c2lnbmVkIGludCBuZl9jb25udHJhY2tfaHRhYmxlX3NpemVfdXNlciBfX3JlYWRfbW9zdGx5Owog CiBzdGF0aWMgaW50Ci1uZl9jb25udHJhY2tfaGFzaF9zeXNjdGwoc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKK25mX2Nvbm50cmFja19oYXNoX3N5c2N0bChjb25zdCBzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldDsKZGlmZiAtLWdpdCBhL25ldC9uZXRmaWx0 ZXIvbmZfaG9va3NfbHd0dW5uZWwuYyBiL25ldC9uZXRmaWx0ZXIvbmZfaG9va3NfbHd0dW5uZWwu YwppbmRleCAwMGU4OWZmZDc4ZjYuLjNkMjM3ZjljYzhlZSAxMDA2NDQKLS0tIGEvbmV0L25ldGZp bHRlci9uZl9ob29rc19sd3R1bm5lbC5jCisrKyBiL25ldC9uZXRmaWx0ZXIvbmZfaG9va3NfbHd0 dW5uZWwuYwpAQCAtMjUsNyArMjUsNyBAQCBzdGF0aWMgaW5saW5lIGludCBuZl9ob29rc19sd3R1 bm5lbF9zZXQoaW50IGVuYWJsZSkKIH0KIAogI2lmZGVmIENPTkZJR19TWVNDVEwKLWludCBuZl9o b29rc19sd3R1bm5lbF9zeXNjdGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAoraW50IG5mX2hvb2tzX2x3dHVubmVsX3N5c2N0bF9oYW5kbGVyKGNvbnN0IHN0cnVj dCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJICAgICB2b2lkICpidWZmZXIsIHNp emVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCBwcm9jX25mX2hvb2tzX2x3dHVubmVs X2VuYWJsZWQgPSAwOwpkaWZmIC0tZ2l0IGEvbmV0L25ldGZpbHRlci9uZl9sb2cuYyBiL25ldC9u ZXRmaWx0ZXIvbmZfbG9nLmMKaW5kZXggMzcwZjgyMzEzODVjLi43NTY5NTMyZGJkNDMgMTAwNjQ0 Ci0tLSBhL25ldC9uZXRmaWx0ZXIvbmZfbG9nLmMKKysrIGIvbmV0L25ldGZpbHRlci9uZl9sb2cu YwpAQCAtNDA5LDggKzQwOSw4IEBAIHN0YXRpYyBzdHJ1Y3QgY3RsX3RhYmxlIG5mX2xvZ19zeXNj dGxfZnRhYmxlW10gPSB7CiAJeyB9CiB9OwogCi1zdGF0aWMgaW50IG5mX2xvZ19wcm9jX2Rvc3Ry aW5nKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCQkgdm9pZCAqYnVmZmVy LCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgbmZfbG9nX3Byb2NfZG9z dHJpbmcoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKKwkJCQl2b2lk ICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWNvbnN0IHN0cnVjdCBu Zl9sb2dnZXIgKmxvZ2dlcjsKIAljaGFyIGJ1ZltORkxPR0dFUl9OQU1FX0xFTl07CmRpZmYgLS1n aXQgYS9uZXQvcGhvbmV0L3N5c2N0bC5jIGIvbmV0L3Bob25ldC9zeXNjdGwuYwppbmRleCAwZDBi ZjQxMzgxYzIuLmU1OWQxNmU2NzM3NiAxMDA2NDQKLS0tIGEvbmV0L3Bob25ldC9zeXNjdGwuYwor KysgYi9uZXQvcGhvbmV0L3N5c2N0bC5jCkBAIC00OCw3ICs0OCw3IEBAIHZvaWQgcGhvbmV0X2dl dF9sb2NhbF9wb3J0X3JhbmdlKGludCAqbWluLCBpbnQgKm1heCkKIAl9IHdoaWxlIChyZWFkX3Nl cXJldHJ5KCZsb2NhbF9wb3J0X3JhbmdlX2xvY2ssIHNlcSkpOwogfQogCi1zdGF0aWMgaW50IHBy b2NfbG9jYWxfcG9ydF9yYW5nZShzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAor c3RhdGljIGludCBwcm9jX2xvY2FsX3BvcnRfcmFuZ2UoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZf dCAqcHBvcykKIHsKIAlpbnQgcmV0OwpkaWZmIC0tZ2l0IGEvbmV0L3Jkcy90Y3AuYyBiL25ldC9y ZHMvdGNwLmMKaW5kZXggMmRiYTc1MDViNDE0Li5kMjNlYThjMTE5MDIgMTAwNjQ0Ci0tLSBhL25l dC9yZHMvdGNwLmMKKysrIGIvbmV0L3Jkcy90Y3AuYwpAQCAtNjEsNyArNjEsNyBAQCBzdGF0aWMg YXRvbWljX3QgcmRzX3RjcF91bmxvYWRpbmcgPSBBVE9NSUNfSU5JVCgwKTsKIAogc3RhdGljIHN0 cnVjdCBrbWVtX2NhY2hlICpyZHNfdGNwX2Nvbm5fc2xhYjsKIAotc3RhdGljIGludCByZHNfdGNw X3NrYnVmX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMg aW50IHJkc190Y3Bfc2tidWZfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGlu dCB3cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqZnBvcyk7 CiAKIHN0YXRpYyBpbnQgcmRzX3RjcF9taW5fc25kYnVmID0gU09DS19NSU5fU05EQlVGOwpAQCAt NjgzLDcgKzY4Myw3IEBAIHN0YXRpYyB2b2lkIHJkc190Y3Bfc3lzY3RsX3Jlc2V0KHN0cnVjdCBu ZXQgKm5ldCkKIAlzcGluX3VubG9ja19pcnEoJnJkc190Y3BfY29ubl9sb2NrKTsKIH0KIAotc3Rh dGljIGludCByZHNfdGNwX3NrYnVmX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQg d3JpdGUsCitzdGF0aWMgaW50IHJkc190Y3Bfc2tidWZfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3Rs X3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAs IGxvZmZfdCAqZnBvcykKIHsKIAlzdHJ1Y3QgbmV0ICpuZXQgPSBjdXJyZW50LT5uc3Byb3h5LT5u ZXRfbnM7CmRpZmYgLS1naXQgYS9uZXQvc2N0cC9zeXNjdGwuYyBiL25ldC9zY3RwL3N5c2N0bC5j CmluZGV4IGY2NWQ2ZjkyYWZjYi4uMDg0OWI0MjI0Njc2IDEwMDY0NAotLS0gYS9uZXQvc2N0cC9z eXNjdGwuYworKysgYi9uZXQvc2N0cC9zeXNjdGwuYwpAQCAtNDMsMTkgKzQzLDIxIEBAIHN0YXRp YyB1bnNpZ25lZCBsb25nIG1heF9hdXRvY2xvc2VfbWF4ID0KIAkoTUFYX1NDSEVEVUxFX1RJTUVP VVQgLyBIWiA+IFVJTlRfTUFYKQogCT8gVUlOVF9NQVggOiBNQVhfU0NIRURVTEVfVElNRU9VVCAv IEhaOwogCi1zdGF0aWMgaW50IHByb2Nfc2N0cF9kb19obWFjX2FsZyhzdHJ1Y3QgY3RsX3RhYmxl ICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY19zY3RwX2RvX2htYWNfYWxnKGNvbnN0 IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJCSB2b2lkICpidWZmZXIsIHNp emVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKLXN0YXRpYyBpbnQgcHJvY19zY3RwX2RvX3J0b19t aW4oc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2Nfc2N0 cF9kb19ydG9fbWluKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJ CXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwotc3RhdGljIGludCBw cm9jX3NjdHBfZG9fcnRvX21heChzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwgdm9p ZCAqYnVmZmVyLAorc3RhdGljIGludCBwcm9jX3NjdHBfZG9fcnRvX21heChjb25zdCBzdHJ1Y3Qg Y3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKKwkJCQl2b2lkICpidWZmZXIsCiAJCQkJc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwotc3RhdGljIGludCBwcm9jX3NjdHBfZG9fdWRwX3BvcnQo c3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKK3N0YXRpYyBp bnQgcHJvY19zY3RwX2RvX3VkcF9wb3J0KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50 IHdyaXRlLAorCQkJCSB2b2lkICpidWZmZXIsCiAJCQkJIHNpemVfdCAqbGVucCwgbG9mZl90ICpw cG9zKTsKLXN0YXRpYyBpbnQgcHJvY19zY3RwX2RvX2FscGhhX2JldGEoc3RydWN0IGN0bF90YWJs ZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2Nfc2N0cF9kb19hbHBoYV9iZXRhKGNv bnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJCSAgIHZvaWQgKmJ1ZmZl ciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwotc3RhdGljIGludCBwcm9jX3NjdHBfZG9f YXV0aChzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY19z Y3RwX2RvX2F1dGgoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkg ICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwotc3RhdGljIGlu dCBwcm9jX3NjdHBfZG9fcHJvYmVfaW50ZXJ2YWwoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQg d3JpdGUsCitzdGF0aWMgaW50IHByb2Nfc2N0cF9kb19wcm9iZV9pbnRlcnZhbChjb25zdCBzdHJ1 Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJCQkgICAgICAgdm9pZCAqYnVmZmVyLCBz aXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7CiAKIHN0YXRpYyBzdHJ1Y3QgY3RsX3RhYmxlIHNj dHBfdGFibGVbXSA9IHsKQEAgLTM4OCw3ICszOTAsNyBAQCBzdGF0aWMgc3RydWN0IGN0bF90YWJs ZSBzY3RwX25ldF90YWJsZVtdID0gewogCXsgLyogc2VudGluZWwgKi8gfQogfTsKIAotc3RhdGlj IGludCBwcm9jX3NjdHBfZG9faG1hY19hbGcoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3Jp dGUsCitzdGF0aWMgaW50IHByb2Nfc2N0cF9kb19obWFjX2FsZyhjb25zdCBzdHJ1Y3QgY3RsX3Rh YmxlICpjdGwsIGludCB3cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgbmV0ICpuZXQgPSBjdXJyZW50LT5uc3Byb3h5LT5uZXRf bnM7CkBAIC00MzMsNyArNDM1LDcgQEAgc3RhdGljIGludCBwcm9jX3NjdHBfZG9faG1hY19hbGco c3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3Rh dGljIGludCBwcm9jX3NjdHBfZG9fcnRvX21pbihzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3 cml0ZSwKK3N0YXRpYyBpbnQgcHJvY19zY3RwX2RvX3J0b19taW4oY29uc3Qgc3RydWN0IGN0bF90 YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgbmV0ICpuZXQgPSBjdXJyZW50LT5uc3Byb3h5LT5uZXRf bnM7CkBAIC00NjEsNyArNDYzLDcgQEAgc3RhdGljIGludCBwcm9jX3NjdHBfZG9fcnRvX21pbihz dHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0 aWMgaW50IHByb2Nfc2N0cF9kb19ydG9fbWF4KHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdy aXRlLAorc3RhdGljIGludCBwcm9jX3NjdHBfZG9fcnRvX21heChjb25zdCBzdHJ1Y3QgY3RsX3Rh YmxlICpjdGwsIGludCB3cml0ZSwKIAkJCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9m Zl90ICpwcG9zKQogewogCXN0cnVjdCBuZXQgKm5ldCA9IGN1cnJlbnQtPm5zcHJveHktPm5ldF9u czsKQEAgLTQ4OSw3ICs0OTEsNyBAQCBzdGF0aWMgaW50IHByb2Nfc2N0cF9kb19ydG9fbWF4KHN0 cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRp YyBpbnQgcHJvY19zY3RwX2RvX2FscGhhX2JldGEoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQg d3JpdGUsCitzdGF0aWMgaW50IHByb2Nfc2N0cF9kb19hbHBoYV9iZXRhKGNvbnN0IHN0cnVjdCBj dGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJCSAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaWYgKHdyaXRlKQpAQCAtNDk5LDcgKzUwMSw3IEBAIHN0 YXRpYyBpbnQgcHJvY19zY3RwX2RvX2FscGhhX2JldGEoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBp bnQgd3JpdGUsCiAJcmV0dXJuIHByb2NfZG9pbnR2ZWNfbWlubWF4KGN0bCwgd3JpdGUsIGJ1ZmZl ciwgbGVucCwgcHBvcyk7CiB9CiAKLXN0YXRpYyBpbnQgcHJvY19zY3RwX2RvX2F1dGgoc3RydWN0 IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2Nfc2N0cF9kb19hdXRo KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJICAgICB2b2lkICpi dWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBuZXQgKm5ldCA9 IGN1cnJlbnQtPm5zcHJveHktPm5ldF9uczsKQEAgLTUyOCw3ICs1MzAsNyBAQCBzdGF0aWMgaW50 IHByb2Nfc2N0cF9kb19hdXRoKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCXJl dHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgcHJvY19zY3RwX2RvX3VkcF9wb3J0KHN0cnVjdCBj dGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBwcm9jX3NjdHBfZG9fdWRwX3Bv cnQoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJIHZvaWQgKmJ1 ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IG5ldCAqbmV0ID0g Y3VycmVudC0+bnNwcm94eS0+bmV0X25zOwpAQCAtNTY5LDcgKzU3MSw3IEBAIHN0YXRpYyBpbnQg cHJvY19zY3RwX2RvX3VkcF9wb3J0KHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAog CXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgcHJvY19zY3RwX2RvX3Byb2JlX2ludGVydmFs KHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBwcm9jX3NjdHBf ZG9fcHJvYmVfaW50ZXJ2YWwoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUs CiAJCQkJICAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7 CiAJc3RydWN0IG5ldCAqbmV0ID0gY3VycmVudC0+bnNwcm94eS0+bmV0X25zOwpkaWZmIC0tZ2l0 IGEvbmV0L3N1bnJwYy9zeXNjdGwuYyBiL25ldC9zdW5ycGMvc3lzY3RsLmMKaW5kZXggOTM5NDFh YjEyNTQ5Li5lM2Q2Y2VhZWU4ZmQgMTAwNjQ0Ci0tLSBhL25ldC9zdW5ycGMvc3lzY3RsLmMKKysr IGIvbmV0L3N1bnJwYy9zeXNjdGwuYwpAQCAtNDAsNyArNDAsNyBAQCBFWFBPUlRfU1lNQk9MX0dQ TChubG1fZGVidWcpOwogCiAjaWYgSVNfRU5BQkxFRChDT05GSUdfU1VOUlBDX0RFQlVHKQogCi1z dGF0aWMgaW50IHByb2NfZG9feHBydChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRl LAorc3RhdGljIGludCBwcm9jX2RvX3hwcnQoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwKIAkJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3Mp CiB7CiAJY2hhciB0bXBidWZbMjU2XTsKQEAgLTYyLDcgKzYyLDggQEAgc3RhdGljIGludCBwcm9j X2RvX3hwcnQoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIH0KIAogc3RhdGlj IGludAotcHJvY19kb2RlYnVnKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZv aWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLAorcHJvY19kb2RlYnVnKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKKwkgICAgIHNpemVfdCAqbGVu cCwKIAkgICAgIGxvZmZfdCAqcHBvcykKIHsKIAljaGFyCQl0bXBidWZbMjBdLCAqcyA9IE5VTEw7 CmRpZmYgLS1naXQgYS9uZXQvc3VucnBjL3hwcnRyZG1hL3N2Y19yZG1hLmMgYi9uZXQvc3VucnBj L3hwcnRyZG1hL3N2Y19yZG1hLmMKaW5kZXggZjg2OTcwNzMzZWIwLi4wOTgzMmU0OTQ1YTMgMTAw NjQ0Ci0tLSBhL25ldC9zdW5ycGMveHBydHJkbWEvc3ZjX3JkbWEuYworKysgYi9uZXQvc3VucnBj L3hwcnRyZG1hL3N2Y19yZG1hLmMKQEAgLTc0LDcgKzc0LDcgQEAgZW51bSB7CiAJU1ZDUkRNQV9D T1VOVEVSX0JVRlNJWgk9IHNpemVvZih1bnNpZ25lZCBsb25nIGxvbmcpLAogfTsKIAotc3RhdGlj IGludCBzdmNyZG1hX2NvdW50ZXJfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAorc3RhdGljIGludCBzdmNyZG1hX2NvdW50ZXJfaGFuZGxlcihjb25zdCBzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCSAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IHBlcmNwdV9jb3VudGVyICpzdGF0ID0g KHN0cnVjdCBwZXJjcHVfY291bnRlciAqKXRhYmxlLT5kYXRhOwpkaWZmIC0tZ2l0IGEvc2VjdXJp dHkvYXBwYXJtb3IvbHNtLmMgYi9zZWN1cml0eS9hcHBhcm1vci9sc20uYwppbmRleCA5YTNkY2Fh ZmI1YjEuLjliOGQ4ZDFiNzQ4YiAxMDA2NDQKLS0tIGEvc2VjdXJpdHkvYXBwYXJtb3IvbHNtLmMK KysrIGIvc2VjdXJpdHkvYXBwYXJtb3IvbHNtLmMKQEAgLTIwMjksNyArMjAyOSw3IEBAIHN0YXRp YyBpbnQgX19pbml0IGFsbG9jX2J1ZmZlcnModm9pZCkKIH0KIAogI2lmZGVmIENPTkZJR19TWVND VEwKLXN0YXRpYyBpbnQgYXBwYXJtb3JfZG9pbnR2ZWMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwKK3N0YXRpYyBpbnQgYXBwYXJtb3JfZG9pbnR2ZWMoY29uc3Qgc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpZiAoIWFhX2N1cnJlbnRfcG9saWN5X2FkbWluX2Nh cGFibGUoTlVMTCkpCmRpZmYgLS1naXQgYS9zZWN1cml0eS9taW5fYWRkci5jIGIvc2VjdXJpdHkv bWluX2FkZHIuYwppbmRleCA4OGM5YTZhMjFmNDcuLjBjZTI2N2MwNDFhYiAxMDA2NDQKLS0tIGEv c2VjdXJpdHkvbWluX2FkZHIuYworKysgYi9zZWN1cml0eS9taW5fYWRkci5jCkBAIC0yOSw3ICsy OSw3IEBAIHN0YXRpYyB2b2lkIHVwZGF0ZV9tbWFwX21pbl9hZGRyKHZvaWQpCiAgKiBzeXNjdGwg aGFuZGxlciB3aGljaCBqdXN0IHNldHMgZGFjX21tYXBfbWluX2FkZHIgPSB0aGUgbmV3IHZhbHVl IGFuZCB0aGVuCiAgKiBjYWxscyB1cGRhdGVfbW1hcF9taW5fYWRkcigpIHNvIG5vbiBNQVBfRklY RUQgaGludHMgZ2V0IHJvdW5kZWQgcHJvcGVybHkKICAqLwotaW50IG1tYXBfbWluX2FkZHJfaGFu ZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IG1tYXBfbWluX2Fk ZHJfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJ ICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCByZXQ7 CmRpZmYgLS1naXQgYS9zZWN1cml0eS95YW1hL3lhbWFfbHNtLmMgYi9zZWN1cml0eS95YW1hL3lh bWFfbHNtLmMKaW5kZXggNDlkYzUyYjQ1NGVmLi44YzExZTNmMjA3YTggMTAwNjQ0Ci0tLSBhL3Nl Y3VyaXR5L3lhbWEveWFtYV9sc20uYworKysgYi9zZWN1cml0eS95YW1hL3lhbWFfbHNtLmMKQEAg LTQzNSw3ICs0MzUsNyBAQCBzdGF0aWMgc3RydWN0IHNlY3VyaXR5X2hvb2tfbGlzdCB5YW1hX2hv b2tzW10gX19yb19hZnRlcl9pbml0ID0gewogfTsKIAogI2lmZGVmIENPTkZJR19TWVNDVEwKLXN0 YXRpYyBpbnQgeWFtYV9kb2ludHZlY19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKK3N0YXRpYyBpbnQgeWFtYV9kb2ludHZlY19taW5tYXgoY29uc3Qgc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVu cCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBjdGxfdGFibGUgdGFibGVfY29weTsKCi0tIAoy LjQ0LjAKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwps aW51eC1yaXNjdiBtYWlsaW5nIGxpc3QKbGludXgtcmlzY3ZAbGlzdHMuaW5mcmFkZWFkLm9yZwpo dHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXJpc2N2Cg==