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 D0553C10F16 for ; Tue, 30 Apr 2024 18:28:33 +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=pHDUfrfASQDlhQCLoWigCgGelKzoBMnbuORgHD551aI=; b=h2hlrNTleuJfy/ ObBB5C8n3gLmw6Yog+JPcw7L87QNBceiCE6UtFBx7zKqhTpqmPqVnPoEzOsVOOnYxZvMoobC/Xht1 mqFlCj0cNW1wPbVYK5g5qYLhFWK/0wZf5rhMX5+8hpgvGB+l2fZjh+w/rcYSXpeFiIYjgeUFCcfDP VCeGysLry7vNCcr0sXYQpNVwdDMSdYiK0hlZeKu5qMuhWrxp4yiuaK8aaqahEmYIUx8zOMyMNVecM rGUm4jSgRqexfiU70OEF0lpKICnRQSQOiKbX6CDWrX31kgWGxpKic1K0J5HWjdJtuV5+rCsArm1nL Tc9WbUHe3v/6wQ0ryBQw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s1sDR-00000007a39-1G2T; Tue, 30 Apr 2024 18:28:33 +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 1rzB0f-0000000GKKj-0Jzc; Tue, 23 Apr 2024 07:56:26 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1713858962; bh=FVysOkPE/qiRLZCuxnkxsMnTX0foyNtgrbyactsZP2Y=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=uagAM0++rugBquWWZc12oBXw1p0sZNjLZ2P0BRn3a7mK4KfkLqVjep/MFqJY/7LAF 9caAdhgcu3xO8svnWs6UiBpEw54gG1sTupswjoZ3XrmizzbipFrDAq+6AqF37skYwx BR63gR5QqQWcerDyrgrTLAOjD+xHRp30erwz41hs= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Date: Tue, 23 Apr 2024 09:54:46 +0200 Subject: [PATCH v3 11/11] sysctl: treewide: constify the ctl_table argument of handlers MIME-Version: 1.0 Message-Id: <20240423-sysctl-const-handler-v3-11-e0beccb836e2@weissschuh.net> References: <20240423-sysctl-const-handler-v3-0-e0beccb836e2@weissschuh.net> In-Reply-To: <20240423-sysctl-const-handler-v3-0-e0beccb836e2@weissschuh.net> To: Luis Chamberlain , Joel Granados , Kees Cook Cc: Eric Dumazet , Dave Chinner , linux-fsdevel@vger.kernel.org, netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, linux-mm@kvack.org, linux-security-module@vger.kernel.org, bpf@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-xfs@vger.kernel.org, linux-trace-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, netfilter-devel@vger.kernel.org, coreteam@netfilter.org, kexec@lists.infradead.org, linux-hardening@vger.kernel.org, bridge@lists.linux.dev, lvs-devel@vger.kernel.org, linux-rdma@vger.kernel.org, rds-devel@oss.oracle.com, linux-sctp@vger.kernel.org, linux-nfs@vger.kernel.org, apparmor@lists.ubuntu.com, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.13.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1713858961; l=108174; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=FVysOkPE/qiRLZCuxnkxsMnTX0foyNtgrbyactsZP2Y=; b=5wEbCfrcoLTsgxV7Uxepjuju0i3n3dX4eEy0jjS4qXCKmY0HYJZJRKgtvn3SvZv68yUf+15PI DCOFgsjg7ChC0MoGza+B8re+o9KUvCk6GNeS16w70HPuLDKhvC0QRKO X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Mailman-Approved-At: Tue, 30 Apr 2024 11:28:31 -0700 X-BeenThere: kexec@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: "kexec" Errors-To: kexec-bounces+kexec=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 OTAvYXBwbGRhdGEvYXBwbGRhdGFfYmFzZS5jICAgICAgICB8IDEwICsrLS0tCiBhcmNoL3MzOTAv a2VybmVsL2RlYnVnLmMgICAgICAgICAgICAgICAgICB8ICAyICstCiBhcmNoL3MzOTAva2VybmVs L3RvcG9sb2d5LmMgICAgICAgICAgICAgICB8ICAyICstCiBhcmNoL3MzOTAvbW0vY21tLmMgICAg ICAgICAgICAgICAgICAgICAgICB8ICA2ICstLQogYXJjaC94ODYva2VybmVsL2l0bXQuYyAgICAg ICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9jZHJvbS9jZHJvbS5jICAgICAgICAgICAg ICAgICAgICAgfCAgNCArLQogZHJpdmVycy9jaGFyL3JhbmRvbS5jICAgICAgICAgICAgICAgICAg ICAgfCAgNiArLS0KIGRyaXZlcnMvbWFjaW50b3NoL21hY19oaWQuYyAgICAgICAgICAgICAgIHwg IDIgKy0KIGRyaXZlcnMvbmV0L3ZyZi5jICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0K IGRyaXZlcnMvcGFycG9ydC9wcm9jZnMuYyAgICAgICAgICAgICAgICAgIHwgMTIgKysrLS0tCiBk cml2ZXJzL3BlcmYvYXJtX3BtdXYzLmMgICAgICAgICAgICAgICAgICB8ICA0ICstCiBkcml2ZXJz L3BlcmYvcmlzY3ZfcG11X3NiaS5jICAgICAgICAgICAgICB8ICAyICstCiBmcy9jb3JlZHVtcC5j ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCiBmcy9kY2FjaGUuYyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICstCiBmcy9kcm9wX2NhY2hlcy5jICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICAyICstCiBmcy9leGVjLmMgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICA0ICstCiBmcy9maWxlX3RhYmxlLmMgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICA0ICstCiBmcy9mcy13cml0ZWJhY2suYyAgICAgICAgICAgICAgICAgICAgICAgICB8 ICAyICstCiBmcy9pbm9kZS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICst CiBmcy9waXBlLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCiBmcy9x dW90YS9kcXVvdC5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICstCiBmcy94ZnMveGZz X3N5c2N0bC5jICAgICAgICAgICAgICAgICAgICAgICB8ICA2ICstLQogaW5jbHVkZS9saW51eC9m dHJhY2UuaCAgICAgICAgICAgICAgICAgICAgfCAgNCArLQogaW5jbHVkZS9saW51eC9tbS5oICAg ICAgICAgICAgICAgICAgICAgICAgfCAgOCArKy0tCiBpbmNsdWRlL2xpbnV4L3BlcmZfZXZlbnQu aCAgICAgICAgICAgICAgICB8ICA2ICstLQogaW5jbHVkZS9saW51eC9zZWN1cml0eS5oICAgICAg ICAgICAgICAgICAgfCAgMiArLQogaW5jbHVkZS9saW51eC9zeXNjdGwuaCAgICAgICAgICAgICAg ICAgICAgfCAzNCArKysrKysrKy0tLS0tLS0tCiBpbmNsdWRlL2xpbnV4L3Ztc3RhdC5oICAgICAg ICAgICAgICAgICAgICB8ICA2ICstLQogaW5jbHVkZS9saW51eC93cml0ZWJhY2suaCAgICAgICAg ICAgICAgICAgfCAgMiArLQogaW5jbHVkZS9uZXQvbmRpc2MuaCAgICAgICAgICAgICAgICAgICAg ICAgfCAgMiArLQogaW5jbHVkZS9uZXQvbmVpZ2hib3VyLmggICAgICAgICAgICAgICAgICAgfCAg NiArLS0KIGluY2x1ZGUvbmV0L25ldGZpbHRlci9uZl9ob29rc19sd3R1bm5lbC5oIHwgIDIgKy0K IGlwYy9pcGNfc3lzY3RsLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDggKystLQoga2Vy bmVsL2JwZi9zeXNjYWxsLmMgICAgICAgICAgICAgICAgICAgICAgfCAgNCArLQoga2VybmVsL2Rl bGF5YWNjdC5jICAgICAgICAgICAgICAgICAgICAgICAgfCAgNCArLQoga2VybmVsL2V2ZW50cy9j YWxsY2hhaW4uYyAgICAgICAgICAgICAgICAgfCAgMiArLQoga2VybmVsL2V2ZW50cy9jb3JlLmMg ICAgICAgICAgICAgICAgICAgICAgfCAgNCArLQoga2VybmVsL2ZvcmsuYyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgMiArLQoga2VybmVsL2h1bmdfdGFzay5jICAgICAgICAgICAgICAg ICAgICAgICAgfCAgNiArLS0KIGtlcm5lbC9rZXhlY19jb3JlLmMgICAgICAgICAgICAgICAgICAg ICAgIHwgIDIgKy0KIGtlcm5lbC9rcHJvYmVzLmMgICAgICAgICAgICAgICAgICAgICAgICAgIHwg IDIgKy0KIGtlcm5lbC9sYXRlbmN5dG9wLmMgICAgICAgICAgICAgICAgICAgICAgIHwgIDQgKy0K IGtlcm5lbC9waWRfbmFtZXNwYWNlLmMgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGtlcm5l bC9waWRfc3lzY3RsLmggICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGtlcm5lbC9wcmlu dGsvaW50ZXJuYWwuaCAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGtlcm5lbC9wcmludGsvcHJp bnRrLmMgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGtlcm5lbC9wcmludGsvc3lzY3RsLmMg ICAgICAgICAgICAgICAgICAgIHwgIDUgKystCiBrZXJuZWwvc2NoZWQvY29yZS5jICAgICAgICAg ICAgICAgICAgICAgICB8ICA4ICsrLS0KIGtlcm5lbC9zY2hlZC9ydC5jICAgICAgICAgICAgICAg ICAgICAgICAgIHwgMTYgKysrKy0tLS0KIGtlcm5lbC9zY2hlZC90b3BvbG9neS5jICAgICAgICAg ICAgICAgICAgIHwgIDIgKy0KIGtlcm5lbC9zZWNjb21wLmMgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgMTAgKystLS0KIGtlcm5lbC9zdGFja2xlYWsuYyAgICAgICAgICAgICAgICAgICAgICAg IHwgIDIgKy0KIGtlcm5lbC9zeXNjdGwuYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgNjgg KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQoga2VybmVsL3RpbWUvdGltZXIuYyAgICAg ICAgICAgICAgICAgICAgICAgfCAgMiArLQoga2VybmVsL3RyYWNlL2Z0cmFjZS5jICAgICAgICAg ICAgICAgICAgICAgfCAgMiArLQoga2VybmVsL3RyYWNlL3RyYWNlLmMgICAgICAgICAgICAgICAg ICAgICAgfCAgMiArLQoga2VybmVsL3RyYWNlL3RyYWNlX2V2ZW50c191c2VyLmMgICAgICAgICAg fCAgMiArLQoga2VybmVsL3RyYWNlL3RyYWNlX3N0YWNrLmMgICAgICAgICAgICAgICAgfCAgMiAr LQoga2VybmVsL3VtaC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQoga2Vy bmVsL3V0c25hbWVfc3lzY3RsLmMgICAgICAgICAgICAgICAgICAgfCAgMiArLQoga2VybmVsL3dh dGNoZG9nLmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAxMiArKystLS0KIG1tL2NvbXBhY3Rp b24uYyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDYgKy0tCiBtbS9odWdldGxiLmMgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA4ICsrLS0KIG1tL3BhZ2Utd3JpdGViYWNrLmMg ICAgICAgICAgICAgICAgICAgICAgIHwgMTggKysrKy0tLS0KIG1tL3BhZ2VfYWxsb2MuYyAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgMTQgKysrLS0tLQogbW0vdXRpbC5jICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAxMiArKystLS0KIG1tL3Ztc3RhdC5jICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgIDQgKy0KIG5ldC9icmlkZ2UvYnJfbmV0ZmlsdGVyX2hvb2tz LmMgICAgICAgICAgIHwgIDIgKy0KIG5ldC9jb3JlL25laWdoYm91ci5jICAgICAgICAgICAgICAg ICAgICAgIHwgMTggKysrKy0tLS0KIG5ldC9jb3JlL3N5c2N0bF9uZXRfY29yZS5jICAgICAgICAg ICAgICAgIHwgMjAgKysrKy0tLS0tCiBuZXQvaXB2NC9kZXZpbmV0LmMgICAgICAgICAgICAgICAg ICAgICAgICB8ICA2ICstLQogbmV0L2lwdjQvcm91dGUuYyAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgMiArLQogbmV0L2lwdjQvc3lzY3RsX25ldF9pcHY0LmMgICAgICAgICAgICAgICAgfCAz MiArKysrKysrLS0tLS0tLS0KIG5ldC9pcHY2L2FkZHJjb25mLmMgICAgICAgICAgICAgICAgICAg ICAgIHwgMTkgKysrKystLS0tCiBuZXQvaXB2Ni9uZGlzYy5jICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAyICstCiBuZXQvaXB2Ni9yb3V0ZS5jICAgICAgICAgICAgICAgICAgICAgICAgICB8 ICAyICstCiBuZXQvaXB2Ni9zeXNjdGxfbmV0X2lwdjYuYyAgICAgICAgICAgICAgICB8ICA0ICst CiBuZXQvbXBscy9hZl9tcGxzLmMgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICstCiBuZXQv bmV0ZmlsdGVyL2lwdnMvaXBfdnNfY3RsLmMgICAgICAgICAgICB8IDEyICsrKy0tLQogbmV0L25l dGZpbHRlci9uZl9jb25udHJhY2tfc3RhbmRhbG9uZS5jICAgfCAgMiArLQogbmV0L25ldGZpbHRl ci9uZl9ob29rc19sd3R1bm5lbC5jICAgICAgICAgfCAgMiArLQogbmV0L25ldGZpbHRlci9uZl9s b2cuYyAgICAgICAgICAgICAgICAgICAgfCAgMiArLQogbmV0L3Bob25ldC9zeXNjdGwuYyAgICAg ICAgICAgICAgICAgICAgICAgfCAgMiArLQogbmV0L3Jkcy90Y3AuYyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgNCArLQogbmV0L3NjdHAvc3lzY3RsLmMgICAgICAgICAgICAgICAgICAg ICAgICAgfCAzMiArKysrKysrLS0tLS0tLS0KIG5ldC9zdW5ycGMvc3lzY3RsLmMgICAgICAgICAg ICAgICAgICAgICAgIHwgIDYgKy0tCiBuZXQvc3VucnBjL3hwcnRyZG1hL3N2Y19yZG1hLmMgICAg ICAgICAgICB8ICAyICstCiBzZWN1cml0eS9hcHBhcm1vci9sc20uYyAgICAgICAgICAgICAgICAg ICB8ICAyICstCiBzZWN1cml0eS9taW5fYWRkci5jICAgICAgICAgICAgICAgICAgICAgICB8ICAy ICstCiBzZWN1cml0eS95YW1hL3lhbWFfbHNtLmMgICAgICAgICAgICAgICAgICB8ICAyICstCiA5 MiBmaWxlcyBjaGFuZ2VkLCAyOTUgaW5zZXJ0aW9ucygrKSwgMjkzIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2FyY2gvYXJtNjQva2VybmVsL2FybXY4X2RlcHJlY2F0ZWQuYyBiL2FyY2gvYXJt NjQva2VybmVsL2FybXY4X2RlcHJlY2F0ZWQuYwppbmRleCBkZDZjZTg2ZDQzMzIuLmEzMDg1Y2I2 ODg1MiAxMDA2NDQKLS0tIGEvYXJjaC9hcm02NC9rZXJuZWwvYXJtdjhfZGVwcmVjYXRlZC5jCisr KyBiL2FyY2gvYXJtNjQva2VybmVsL2FybXY4X2RlcHJlY2F0ZWQuYwpAQCAtNTA0LDcgKzUwNCw3 IEBAIHN0YXRpYyBpbnQgdXBkYXRlX2luc25fZW11bGF0aW9uX21vZGUoc3RydWN0IGluc25fZW11 bGF0aW9uICppbnNuLAogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgZW11bGF0aW9uX3By b2NfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGlu dCBlbXVsYXRpb25fcHJvY19oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCiAJCQkJICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwKIAkJCQkgIGxvZmZf dCAqcHBvcykKIHsKZGlmZiAtLWdpdCBhL2FyY2gvYXJtNjQva2VybmVsL2Zwc2ltZC5jIGIvYXJj aC9hcm02NC9rZXJuZWwvZnBzaW1kLmMKaW5kZXggZWJiMDE1ODk5N2NhLi45OGVmYjU4N2VmMzYg MTAwNjQ0Ci0tLSBhL2FyY2gvYXJtNjQva2VybmVsL2Zwc2ltZC5jCisrKyBiL2FyY2gvYXJtNjQv a2VybmVsL2Zwc2ltZC5jCkBAIC01MzUsNyArNTM1LDcgQEAgc3RhdGljIHVuc2lnbmVkIGludCBm aW5kX3N1cHBvcnRlZF92ZWN0b3JfbGVuZ3RoKGVudW0gdmVjX3R5cGUgdHlwZSwKIAogI2lmIGRl ZmluZWQoQ09ORklHX0FSTTY0X1NWRSkgJiYgZGVmaW5lZChDT05GSUdfU1lTQ1RMKQogCi1zdGF0 aWMgaW50IHZlY19wcm9jX2RvX2RlZmF1bHRfdmwoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKK3N0YXRpYyBpbnQgdmVjX3Byb2NfZG9fZGVmYXVsdF92bChjb25zdCBzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCSAgdm9pZCAqYnVmZmVyLCBzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgdmxfaW5mbyAqaW5mbyA9IHRhYmxlLT5l eHRyYTE7CmRpZmYgLS1naXQgYS9hcmNoL3MzOTAvYXBwbGRhdGEvYXBwbGRhdGFfYmFzZS5jIGIv YXJjaC9zMzkwL2FwcGxkYXRhL2FwcGxkYXRhX2Jhc2UuYwppbmRleCBjMjk3OGNiMDNiMzYuLjkx YTMwZTAxN2Q2NSAxMDA2NDQKLS0tIGEvYXJjaC9zMzkwL2FwcGxkYXRhL2FwcGxkYXRhX2Jhc2Uu YworKysgYi9hcmNoL3MzOTAvYXBwbGRhdGEvYXBwbGRhdGFfYmFzZS5jCkBAIC00Niw5ICs0Niw5 IEBACiAgKiAvcHJvYyBlbnRyaWVzIChzeXNjdGwpCiAgKi8KIHN0YXRpYyBjb25zdCBjaGFyIGFw cGxkYXRhX3Byb2NfbmFtZVtBUFBMREFUQV9QUk9DX05BTUVfTEVOR1RIXSA9ICJhcHBsZGF0YSI7 Ci1zdGF0aWMgaW50IGFwcGxkYXRhX3RpbWVyX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqY3Rs LCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IGFwcGxkYXRhX3RpbWVyX2hhbmRsZXIoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJICB2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKTsKLXN0YXRpYyBpbnQgYXBwbGRhdGFfaW50ZXJ2YWxfaGFu ZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgYXBwbGRh dGFfaW50ZXJ2YWxfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0 ZSwKIAkJCQkgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwog CiBzdGF0aWMgc3RydWN0IGN0bF90YWJsZV9oZWFkZXIgKmFwcGxkYXRhX3N5c2N0bF9oZWFkZXI7 CkBAIC0xOTksNyArMTk5LDcgQEAgc3RhdGljIHZvaWQgX19hcHBsZGF0YV92dGltZXJfc2V0dXAo aW50IGNtZCkKICAqIFN0YXJ0L1N0b3AgdGltZXIsIHNob3cgc3RhdHVzIG9mIHRpbWVyICgwID0g bm90IGFjdGl2ZSwgMSA9IGFjdGl2ZSkKICAqLwogc3RhdGljIGludAotYXBwbGRhdGFfdGltZXJf aGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK2FwcGxkYXRhX3RpbWVy X2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkgICB2 b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCB0aW1lcl9h Y3RpdmUgPSBhcHBsZGF0YV90aW1lcl9hY3RpdmU7CkBAIC0yMzIsNyArMjMyLDcgQEAgYXBwbGRh dGFfdGltZXJfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKICAqIGN1 cnJlbnQgdGltZXIgaW50ZXJ2YWwuCiAgKi8KIHN0YXRpYyBpbnQKLWFwcGxkYXRhX2ludGVydmFs X2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCithcHBsZGF0YV9pbnRl cnZhbF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJ ICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgaW50 ZXJ2YWwgPSBhcHBsZGF0YV9pbnRlcnZhbDsKQEAgLTI2Miw3ICsyNjIsNyBAQCBhcHBsZGF0YV9p bnRlcnZhbF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogICogbW9u aXRvcmluZyAoMCA9IG5vdCBpbiBwcm9jZXNzLCAxID0gaW4gcHJvY2VzcykKICAqLwogc3RhdGlj IGludAotYXBwbGRhdGFfZ2VuZXJpY19oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50 IHdyaXRlLAorYXBwbGRhdGFfZ2VuZXJpY19oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUg KmN0bCwgaW50IHdyaXRlLAogCQkJICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZf dCAqcHBvcykKIHsKIAlzdHJ1Y3QgYXBwbGRhdGFfb3BzICpvcHMgPSBOVUxMLCAqdG1wX29wczsK ZGlmZiAtLWdpdCBhL2FyY2gvczM5MC9rZXJuZWwvZGVidWcuYyBiL2FyY2gvczM5MC9rZXJuZWwv ZGVidWcuYwppbmRleCA4NTMyOGEwZWYzYjYuLmJjZTUwY2E3NWVhNyAxMDA2NDQKLS0tIGEvYXJj aC9zMzkwL2tlcm5lbC9kZWJ1Zy5jCisrKyBiL2FyY2gvczM5MC9rZXJuZWwvZGVidWcuYwpAQCAt OTU0LDcgKzk1NCw3IEBAIHN0YXRpYyBpbnQgZGVidWdfYWN0aXZlID0gMTsKICAqIGFsd2F5cyBh bGxvdyByZWFkLCBhbGxvdyB3cml0ZSBvbmx5IGlmIGRlYnVnX3N0b3BwYWJsZSBpcyBzZXQgb3IK ICAqIGlmIGRlYnVnX2FjdGl2ZSBpcyBhbHJlYWR5IG9mZgogICovCi1zdGF0aWMgaW50IHMzOTBk YmZfcHJvY2FjdGl2ZShzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGlj IGludCBzMzkwZGJmX3Byb2NhY3RpdmUoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKIAkJCSAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBw b3MpCiB7CiAJaWYgKCF3cml0ZSB8fCBkZWJ1Z19zdG9wcGFibGUgfHwgIWRlYnVnX2FjdGl2ZSkK ZGlmZiAtLWdpdCBhL2FyY2gvczM5MC9rZXJuZWwvdG9wb2xvZ3kuYyBiL2FyY2gvczM5MC9rZXJu ZWwvdG9wb2xvZ3kuYwppbmRleCA4OWU5MWI4Y2U4NDIuLjFkZjNkYzExODY5NiAxMDA2NDQKLS0t IGEvYXJjaC9zMzkwL2tlcm5lbC90b3BvbG9neS5jCisrKyBiL2FyY2gvczM5MC9rZXJuZWwvdG9w b2xvZ3kuYwpAQCAtNjAwLDcgKzYwMCw3IEBAIHN0YXRpYyBpbnQgX19pbml0IHRvcG9sb2d5X3Nl dHVwKGNoYXIgKnN0cikKIH0KIGVhcmx5X3BhcmFtKCJ0b3BvbG9neSIsIHRvcG9sb2d5X3NldHVw KTsKIAotc3RhdGljIGludCB0b3BvbG9neV9jdGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICpj dGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgdG9wb2xvZ3lfY3RsX2hhbmRsZXIoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJdm9pZCAqYnVmZmVyLCBzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgZW5hYmxlZCA9IHRvcG9sb2d5X2lzX2VuYWJs ZWQoKTsKZGlmZiAtLWdpdCBhL2FyY2gvczM5MC9tbS9jbW0uYyBiL2FyY2gvczM5MC9tbS9jbW0u YwppbmRleCBmOGIxM2YyNDc2NDYuLjFkNjc0OWUwOTVmNyAxMDA2NDQKLS0tIGEvYXJjaC9zMzkw L21tL2NtbS5jCisrKyBiL2FyY2gvczM5MC9tbS9jbW0uYwpAQCAtMjQzLDcgKzI0Myw3IEBAIHN0 YXRpYyBpbnQgY21tX3NraXBfYmxhbmtzKGNoYXIgKmNwLCBjaGFyICoqZW5kcCkKIAlyZXR1cm4g c3RyICE9IGNwOwogfQogCi1zdGF0aWMgaW50IGNtbV9wYWdlc19oYW5kbGVyKHN0cnVjdCBjdGxf dGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBjbW1fcGFnZXNfaGFuZGxlcihjb25z dCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJCSAgICAgdm9pZCAqYnVmZmVy LCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlsb25nIG5yID0gY21tX2dldF9wYWdl cygpOwpAQCAtMjYyLDcgKzI2Miw3IEBAIHN0YXRpYyBpbnQgY21tX3BhZ2VzX2hhbmRsZXIoc3Ry dWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBp bnQgY21tX3RpbWVkX3BhZ2VzX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3Jp dGUsCitzdGF0aWMgaW50IGNtbV90aW1lZF9wYWdlc19oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJCSAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5w LAogCQkJCSAgIGxvZmZfdCAqcHBvcykKIHsKQEAgLTI4Miw3ICsyODIsNyBAQCBzdGF0aWMgaW50 IGNtbV90aW1lZF9wYWdlc19oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRl LAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGNtbV90aW1lb3V0X2hhbmRsZXIoc3RydWN0 IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IGNtbV90aW1lb3V0X2hhbmRs ZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkgICAgICAgdm9p ZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAljaGFyIGJ1Zls2NF0s ICpwOwpkaWZmIC0tZ2l0IGEvYXJjaC94ODYva2VybmVsL2l0bXQuYyBiL2FyY2gveDg2L2tlcm5l bC9pdG10LmMKaW5kZXggOWE3YzAzZDQ3ODYxLi41MWI4MDVjNzI3ZmMgMTAwNjQ0Ci0tLSBhL2Fy Y2gveDg2L2tlcm5lbC9pdG10LmMKKysrIGIvYXJjaC94ODYva2VybmVsL2l0bXQuYwpAQCAtMzgs NyArMzgsNyBAQCBzdGF0aWMgYm9vbCBfX3JlYWRfbW9zdGx5IHNjaGVkX2l0bXRfY2FwYWJsZTsK ICAqLwogdW5zaWduZWQgaW50IF9fcmVhZF9tb3N0bHkgc3lzY3RsX3NjaGVkX2l0bXRfZW5hYmxl ZDsKIAotc3RhdGljIGludCBzY2hlZF9pdG10X3VwZGF0ZV9oYW5kbGVyKHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHNjaGVkX2l0bXRfdXBkYXRlX2hhbmRs ZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQkgICAgIHZv aWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJdW5zaWduZWQgaW50 IG9sZF9zeXNjdGw7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2Nkcm9tL2Nkcm9tLmMgYi9kcml2ZXJz L2Nkcm9tL2Nkcm9tLmMKaW5kZXggYTVlMDcyNzBlMGQ0Li5kMGJkNjQxMjlkNDMgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvY2Ryb20vY2Ryb20uYworKysgYi9kcml2ZXJzL2Nkcm9tL2Nkcm9tLmMKQEAg LTM0NzMsNyArMzQ3Myw3IEBAIHN0YXRpYyBpbnQgY2Ryb21fcHJpbnRfaW5mbyhjb25zdCBjaGFy ICpoZWFkZXIsIGludCB2YWwsIGNoYXIgKmluZm8sCiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBp bnQgY2Ryb21fc3lzY3RsX2luZm8oc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitz dGF0aWMgaW50IGNkcm9tX3N5c2N0bF9pbmZvKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwg aW50IHdyaXRlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqYnVmZmVyLCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgcG9zOwpAQCAtMzU4Niw3ICszNTg2LDcg QEAgc3RhdGljIHZvaWQgY2Ryb21fdXBkYXRlX3NldHRpbmdzKHZvaWQpCiAJbXV0ZXhfdW5sb2Nr KCZjZHJvbV9tdXRleCk7CiB9CiAKLXN0YXRpYyBpbnQgY2Ryb21fc3lzY3RsX2hhbmRsZXIoc3Ry dWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IGNkcm9tX3N5c2N0bF9o YW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJCXZvaWQg KmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldDsKZGlmZiAt LWdpdCBhL2RyaXZlcnMvY2hhci9yYW5kb20uYyBiL2RyaXZlcnMvY2hhci9yYW5kb20uYwppbmRl eCAyNTk3Y2I0M2Y0MzguLmNhNDE0MjA4Zjg5OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9jaGFyL3Jh bmRvbS5jCisrKyBiL2RyaXZlcnMvY2hhci9yYW5kb20uYwpAQCAtMTYwNCw3ICsxNjA0LDcgQEAg c3RhdGljIHU4IHN5c2N0bF9ib290aWRbVVVJRF9TSVpFXTsKICAqIFVVSUQuIFRoZSBkaWZmZXJl bmNlIGlzIGluIHdoZXRoZXIgdGFibGUtPmRhdGEgaXMgTlVMTDsgaWYgaXQgaXMsCiAgKiB0aGVu IGEgbmV3IFVVSUQgaXMgZ2VuZXJhdGVkIGFuZCByZXR1cm5lZCB0byB0aGUgdXNlci4KICAqLwot c3RhdGljIGludCBwcm9jX2RvX3V1aWQoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwgdm9pZCAqYnVmLAorc3RhdGljIGludCBwcm9jX2RvX3V1aWQoY29uc3Qgc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmLAogCQkJc2l6ZV90ICpsZW5wLCBsb2Zm X3QgKnBwb3MpCiB7CiAJdTggdG1wX3V1aWRbVVVJRF9TSVpFXSwgKnV1aWQ7CkBAIC0xNjM1LDgg KzE2MzUsOCBAQCBzdGF0aWMgaW50IHByb2NfZG9fdXVpZChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJs ZSwgaW50IHdyaXRlLCB2b2lkICpidWYsCiB9CiAKIC8qIFRoZSBzYW1lIGFzIHByb2NfZG9pbnR2 ZWMsIGJ1dCB3cml0ZXMgZG9uJ3QgY2hhbmdlIGFueXRoaW5nLiAqLwotc3RhdGljIGludCBwcm9j X2RvX3JvaW50dmVjKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1 ZiwKLQkJCSAgICBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgcHJvY19k b19yb2ludHZlYyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorCQkJ ICAgIHZvaWQgKmJ1Ziwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJcmV0dXJuIHdy aXRlID8gMCA6IHByb2NfZG9pbnR2ZWModGFibGUsIDAsIGJ1ZiwgbGVucCwgcHBvcyk7CiB9CmRp ZmYgLS1naXQgYS9kcml2ZXJzL21hY2ludG9zaC9tYWNfaGlkLmMgYi9kcml2ZXJzL21hY2ludG9z aC9tYWNfaGlkLmMKaW5kZXggMWFlMzUzOWJlZmY1Li44OTEwNDdjOGExMTAgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvbWFjaW50b3NoL21hY19oaWQuYworKysgYi9kcml2ZXJzL21hY2ludG9zaC9tYWNf aGlkLmMKQEAgLTE4Miw3ICsxODIsNyBAQCBzdGF0aWMgdm9pZCBtYWNfaGlkX3N0b3BfZW11bGF0 aW9uKHZvaWQpCiAJbWFjX2hpZF9kZXN0cm95X2VtdW1vdXNlKCk7CiB9CiAKLXN0YXRpYyBpbnQg bWFjX2hpZF90b2dnbGVfZW11bW91c2Uoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwKK3N0YXRpYyBpbnQgbWFjX2hpZF90b2dnbGVfZW11bW91c2UoY29uc3Qgc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQkgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVu cCwgbG9mZl90ICpwcG9zKQogewogCWludCAqdmFscCA9IHRhYmxlLT5kYXRhOwpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9uZXQvdnJmLmMgYi9kcml2ZXJzL25ldC92cmYuYwppbmRleCA2NmY4NTQyZjNi MTguLjE0YzVlZmQyMzRhZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvdnJmLmMKKysrIGIvZHJp dmVycy9uZXQvdnJmLmMKQEAgLTE5MDgsNyArMTkwOCw3IEBAIHN0YXRpYyBpbnQgdnJmX3N0cmlj dF9tb2RlX2NoYW5nZShzdHJ1Y3QgdnJmX21hcCAqdm1hcCwgYm9vbCBuZXdfbW9kZSkKIAlyZXR1 cm4gcmVzOwogfQogCi1zdGF0aWMgaW50IHZyZl9zaGFyZWRfdGFibGVfaGFuZGxlcihzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCB2cmZfc2hhcmVkX3RhYmxl X2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQkg ICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3Qg bmV0ICpuZXQgPSAoc3RydWN0IG5ldCAqKXRhYmxlLT5leHRyYTE7CmRpZmYgLS1naXQgYS9kcml2 ZXJzL3BhcnBvcnQvcHJvY2ZzLmMgYi9kcml2ZXJzL3BhcnBvcnQvcHJvY2ZzLmMKaW5kZXggYmQz ODg1NjBlZDU5Li5lZmE3YzkwZTQyMzQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvcGFycG9ydC9wcm9j ZnMuYworKysgYi9kcml2ZXJzL3BhcnBvcnQvcHJvY2ZzLmMKQEAgLTMzLDcgKzMzLDcgQEAKICNk ZWZpbmUgUEFSUE9SVF9NSU5fU1BJTlRJTUVfVkFMVUUgMQogI2RlZmluZSBQQVJQT1JUX01BWF9T UElOVElNRV9WQUxVRSAxMDAwCiAKLXN0YXRpYyBpbnQgZG9fYWN0aXZlX2RldmljZShzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBkb19hY3RpdmVfZGV2aWNl KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCSAgICAgIHZvaWQg KnJlc3VsdCwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IHBhcnBvcnQg KnBvcnQgPSAoc3RydWN0IHBhcnBvcnQgKil0YWJsZS0+ZXh0cmExOwpAQCAtNzAsNyArNzAsNyBA QCBzdGF0aWMgaW50IGRvX2FjdGl2ZV9kZXZpY2Uoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKIH0KIAogI2lmZGVmIENPTkZJR19QQVJQT1JUXzEyODQKLXN0YXRpYyBpbnQgZG9f YXV0b3Byb2JlKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50 IGRvX2F1dG9wcm9iZShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAog CQkJdm9pZCAqcmVzdWx0LCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3Qg cGFycG9ydF9kZXZpY2VfaW5mbyAqaW5mbyA9IHRhYmxlLT5leHRyYTI7CkBAIC0xMTMsNyArMTEz LDcgQEAgc3RhdGljIGludCBkb19hdXRvcHJvYmUoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKIH0KICNlbmRpZiAvKiBJRUVFMTI4NC4zIHN1cHBvcnQuICovCiAKLXN0YXRpYyBp bnQgZG9faGFyZHdhcmVfYmFzZV9hZGRyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCitzdGF0aWMgaW50IGRvX2hhcmR3YXJlX2Jhc2VfYWRkcihjb25zdCBzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCSB2b2lkICpyZXN1bHQsIHNpemVfdCAqbGVucCwg bG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBwYXJwb3J0ICpwb3J0ID0gKHN0cnVjdCBwYXJwb3J0 ICopdGFibGUtPmV4dHJhMTsKQEAgLTE0MCw3ICsxNDAsNyBAQCBzdGF0aWMgaW50IGRvX2hhcmR3 YXJlX2Jhc2VfYWRkcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCXJldHVy biAwOwogfQogCi1zdGF0aWMgaW50IGRvX2hhcmR3YXJlX2lycShzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBkb19oYXJkd2FyZV9pcnEoY29uc3Qgc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAgIHZvaWQgKnJlc3VsdCwgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IHBhcnBvcnQgKnBvcnQgPSAoc3RydWN0 IHBhcnBvcnQgKil0YWJsZS0+ZXh0cmExOwpAQCAtMTY3LDcgKzE2Nyw3IEBAIHN0YXRpYyBpbnQg ZG9faGFyZHdhcmVfaXJxKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJcmV0 dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgZG9faGFyZHdhcmVfZG1hKHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IGRvX2hhcmR3YXJlX2RtYShjb25zdCBzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICAgdm9pZCAqcmVzdWx0LCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgcGFycG9ydCAqcG9ydCA9IChzdHJ1 Y3QgcGFycG9ydCAqKXRhYmxlLT5leHRyYTE7CkBAIC0xOTQsNyArMTk0LDcgQEAgc3RhdGljIGlu dCBkb19oYXJkd2FyZV9kbWEoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAly ZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBkb19oYXJkd2FyZV9tb2RlcyhzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBkb19oYXJkd2FyZV9tb2Rlcyhjb25z dCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICAgICB2b2lkICpyZXN1 bHQsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBwYXJwb3J0ICpwb3J0 ID0gKHN0cnVjdCBwYXJwb3J0ICopdGFibGUtPmV4dHJhMTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv cGVyZi9hcm1fcG11djMuYyBiL2RyaXZlcnMvcGVyZi9hcm1fcG11djMuYwppbmRleCAyM2ZhNmM1 ZGE4MmMuLmFjY2RmM2FjNGMxZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9wZXJmL2FybV9wbXV2My5j CisrKyBiL2RyaXZlcnMvcGVyZi9hcm1fcG11djMuYwpAQCAtMTI1Myw4ICsxMjUzLDggQEAgc3Rh dGljIHZvaWQgYXJtdjhwbXVfZGlzYWJsZV91c2VyX2FjY2Vzc19pcGkodm9pZCAqdW51c2VkKQog CWFybXY4cG11X2Rpc2FibGVfdXNlcl9hY2Nlc3MoKTsKIH0KIAotc3RhdGljIGludCBhcm12OHBt dV9wcm9jX3VzZXJfYWNjZXNzX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKLQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRp YyBpbnQgYXJtdjhwbXVfcHJvY191c2VyX2FjY2Vzc19oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLAorCQlpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldCA9IHByb2NfZG9pbnR2ZWNfbWlubWF4KHRhYmxlLCB3 cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKIAlpZiAocmV0IHx8ICF3cml0ZSB8fCBzeXNjdGxf cGVyZl91c2VyX2FjY2VzcykKZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGVyZi9yaXNjdl9wbXVfc2Jp LmMgYi9kcml2ZXJzL3BlcmYvcmlzY3ZfcG11X3NiaS5jCmluZGV4IDgyNjM2MjczZDcyNi4uOWM5 Y2VlYzNhMjA2IDEwMDY0NAotLS0gYS9kcml2ZXJzL3BlcmYvcmlzY3ZfcG11X3NiaS5jCisrKyBi L2RyaXZlcnMvcGVyZi9yaXNjdl9wbXVfc2JpLmMKQEAgLTEwMTMsNyArMTAxMyw3IEBAIHN0YXRp YyB2b2lkIHJpc2N2X3BtdV91cGRhdGVfY291bnRlcl9hY2Nlc3Modm9pZCAqaW5mbykKIAkJY3Ny X3dyaXRlKENTUl9TQ09VTlRFUkVOLCAweDIpOwogfQogCi1zdGF0aWMgaW50IHJpc2N2X3BtdV9w cm9jX3VzZXJfYWNjZXNzX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCitzdGF0aWMg aW50IHJpc2N2X3BtdV9wcm9jX3VzZXJfYWNjZXNzX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsCiAJCQkJCSAgICAgIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogCQkJCQkg ICAgICBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKZGlmZiAtLWdpdCBhL2ZzL2NvcmVk dW1wLmMgYi9mcy9jb3JlZHVtcC5jCmluZGV4IDhlYWUyNGFmYjNjYi4uYjRmNjgxMTdkMjAzIDEw MDY0NAotLS0gYS9mcy9jb3JlZHVtcC5jCisrKyBiL2ZzL2NvcmVkdW1wLmMKQEAgLTk4Niw3ICs5 ODYsNyBAQCB2b2lkIHZhbGlkYXRlX2NvcmVkdW1wX3NhZmV0eSh2b2lkKQogCX0KIH0KIAotc3Rh dGljIGludCBwcm9jX2Rvc3RyaW5nX2NvcmVkdW1wKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2NfZG9zdHJpbmdfY29yZWR1bXAoY29uc3Qgc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJICB2b2lkICpidWZmZXIsIHNpemVfdCAq bGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCBlcnJvciA9IHByb2NfZG9zdHJpbmcodGFibGUs IHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpOwpkaWZmIC0tZ2l0IGEvZnMvZGNhY2hlLmMgYi9m cy9kY2FjaGUuYwppbmRleCA0MDcwOTUxODhmODMuLjVjNmFlNTdkMDMyMSAxMDA2NDQKLS0tIGEv ZnMvZGNhY2hlLmMKKysrIGIvZnMvZGNhY2hlLmMKQEAgLTE3NCw4ICsxNzQsOCBAQCBzdGF0aWMg bG9uZyBnZXRfbnJfZGVudHJ5X25lZ2F0aXZlKHZvaWQpCiAJcmV0dXJuIHN1bSA8IDAgPyAwIDog c3VtOwogfQogCi1zdGF0aWMgaW50IHByb2NfbnJfZGVudHJ5KHN0cnVjdCBjdGxfdGFibGUgKnRh YmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKLQkJCSAgc2l6ZV90ICpsZW5wLCBsb2ZmX3Qg KnBwb3MpCitzdGF0aWMgaW50IHByb2NfbnJfZGVudHJ5KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCisJCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2Zm X3QgKnBwb3MpCiB7CiAJZGVudHJ5X3N0YXQubnJfZGVudHJ5ID0gZ2V0X25yX2RlbnRyeSgpOwog CWRlbnRyeV9zdGF0Lm5yX3VudXNlZCA9IGdldF9ucl9kZW50cnlfdW51c2VkKCk7CmRpZmYgLS1n aXQgYS9mcy9kcm9wX2NhY2hlcy5jIGIvZnMvZHJvcF9jYWNoZXMuYwppbmRleCBiOTU3NTk1N2E3 YzIuLmQ0NWVmNTQxZDg0OCAxMDA2NDQKLS0tIGEvZnMvZHJvcF9jYWNoZXMuYworKysgYi9mcy9k cm9wX2NhY2hlcy5jCkBAIC00OCw3ICs0OCw3IEBAIHN0YXRpYyB2b2lkIGRyb3BfcGFnZWNhY2hl X3NiKHN0cnVjdCBzdXBlcl9ibG9jayAqc2IsIHZvaWQgKnVudXNlZCkKIAlpcHV0KHRvcHV0X2lu b2RlKTsKIH0KIAotaW50IGRyb3BfY2FjaGVzX3N5c2N0bF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgZHJvcF9jYWNoZXNfc3lzY3RsX2hhbmRsZXIoY29u c3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJdm9pZCAqYnVmZmVyLCBz aXplX3QgKmxlbmd0aCwgbG9mZl90ICpwcG9zKQogewogCWludCByZXQ7CmRpZmYgLS1naXQgYS9m cy9leGVjLmMgYi9mcy9leGVjLmMKaW5kZXggNDAwNzMxNDIyODhmLi5iYTU5NDAyMTk0YzcgMTAw NjQ0Ci0tLSBhL2ZzL2V4ZWMuYworKysgYi9mcy9leGVjLmMKQEAgLTIxODEsOCArMjE4MSw4IEBA IENPTVBBVF9TWVNDQUxMX0RFRklORTUoZXhlY3ZlYXQsIGludCwgZmQsCiAKICNpZmRlZiBDT05G SUdfU1lTQ1RMCiAKLXN0YXRpYyBpbnQgcHJvY19kb2ludHZlY19taW5tYXhfY29yZWR1bXAoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKLQkJdm9pZCAqYnVmZmVyLCBzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgcHJvY19kb2ludHZlY19taW5tYXhfY29y ZWR1bXAoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCisJCWludCB3cml0ZSwgdm9pZCAq YnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgZXJyb3IgPSBwcm9j X2RvaW50dmVjX21pbm1heCh0YWJsZSwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7CiAKZGlm ZiAtLWdpdCBhL2ZzL2ZpbGVfdGFibGUuYyBiL2ZzL2ZpbGVfdGFibGUuYwppbmRleCA0ZjAzYmVl ZDQ3MzcuLmY1NDgwNDczNzI3ZSAxMDA2NDQKLS0tIGEvZnMvZmlsZV90YWJsZS5jCisrKyBiL2Zz L2ZpbGVfdGFibGUuYwpAQCAtOTYsOCArOTYsOCBAQCBFWFBPUlRfU1lNQk9MX0dQTChnZXRfbWF4 X2ZpbGVzKTsKIC8qCiAgKiBIYW5kbGUgbnJfZmlsZXMgc3lzY3RsCiAgKi8KLXN0YXRpYyBpbnQg cHJvY19ucl9maWxlcyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpi dWZmZXIsCi0JCQkgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IHByb2Nf bnJfZmlsZXMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKKwkJCSB2 b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWZpbGVzX3N0YXQu bnJfZmlsZXMgPSBnZXRfbnJfZmlsZXMoKTsKIAlyZXR1cm4gcHJvY19kb3Vsb25ndmVjX21pbm1h eCh0YWJsZSwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7CmRpZmYgLS1naXQgYS9mcy9mcy13 cml0ZWJhY2suYyBiL2ZzL2ZzLXdyaXRlYmFjay5jCmluZGV4IDkyYTViODI4MzUyOC4uYjg2NWEz ZmE1MmYzIDEwMDY0NAotLS0gYS9mcy9mcy13cml0ZWJhY2suYworKysgYi9mcy9mcy13cml0ZWJh Y2suYwpAQCAtMjQxMyw3ICsyNDEzLDcgQEAgc3RhdGljIGludCBfX2luaXQgc3RhcnRfZGlydHl0 aW1lX3dyaXRlYmFjayh2b2lkKQogfQogX19pbml0Y2FsbChzdGFydF9kaXJ0eXRpbWVfd3JpdGVi YWNrKTsKIAotaW50IGRpcnR5dGltZV9pbnRlcnZhbF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgZGlydHl0aW1lX2ludGVydmFsX2hhbmRsZXIoY29uc3Qg c3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAgICAgICB2b2lkICpidWZm ZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCByZXQ7CmRpZmYgLS1naXQg YS9mcy9pbm9kZS5jIGIvZnMvaW5vZGUuYwppbmRleCAzYTQxZjgzYTRiYTUuLmE2MjI1MDNhOTky YyAxMDA2NDQKLS0tIGEvZnMvaW5vZGUuYworKysgYi9mcy9pbm9kZS5jCkBAIC0xMDcsOCArMTA3 LDggQEAgbG9uZyBnZXRfbnJfZGlydHlfaW5vZGVzKHZvaWQpCiAgKi8KIHN0YXRpYyBzdHJ1Y3Qg aW5vZGVzX3N0YXRfdCBpbm9kZXNfc3RhdDsKIAotc3RhdGljIGludCBwcm9jX25yX2lub2Rlcyhz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCi0JCQkgIHNp emVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQorc3RhdGljIGludCBwcm9jX25yX2lub2Rlcyhjb25z dCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorCQkJICB2b2lkICpidWZmZXIs IHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWlub2Rlc19zdGF0Lm5yX2lub2RlcyA9 IGdldF9ucl9pbm9kZXMoKTsKIAlpbm9kZXNfc3RhdC5ucl91bnVzZWQgPSBnZXRfbnJfaW5vZGVz X3VudXNlZCgpOwpkaWZmIC0tZ2l0IGEvZnMvcGlwZS5jIGIvZnMvcGlwZS5jCmluZGV4IDUwYzhh ODU5NmI1Mi4uN2RmZjJhYTUwYTZkIDEwMDY0NAotLS0gYS9mcy9waXBlLmMKKysrIGIvZnMvcGlw ZS5jCkBAIC0xNDY5LDcgKzE0NjksNyBAQCBzdGF0aWMgaW50IGRvX3Byb2NfZG9waXBlX21heF9z aXplX2NvbnYodW5zaWduZWQgbG9uZyAqbHZhbHAsCiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBp bnQgcHJvY19kb3BpcGVfbWF4X3NpemUoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwKK3N0YXRpYyBpbnQgcHJvY19kb3BpcGVfbWF4X3NpemUoY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9m Zl90ICpwcG9zKQogewogCXJldHVybiBkb19wcm9jX2RvdWludHZlYyh0YWJsZSwgd3JpdGUsIGJ1 ZmZlciwgbGVucCwgcHBvcywKZGlmZiAtLWdpdCBhL2ZzL3F1b3RhL2RxdW90LmMgYi9mcy9xdW90 YS9kcXVvdC5jCmluZGV4IDYyN2ViMmY3MmVmMy4uNGMzOTM2YjhmN2I2IDEwMDY0NAotLS0gYS9m cy9xdW90YS9kcXVvdC5jCisrKyBiL2ZzL3F1b3RhL2RxdW90LmMKQEAgLTI5MTcsNyArMjkxNyw3 IEBAIGNvbnN0IHN0cnVjdCBxdW90YWN0bF9vcHMgZHF1b3RfcXVvdGFjdGxfc3lzZmlsZV9vcHMg PSB7CiB9OwogRVhQT1JUX1NZTUJPTChkcXVvdF9xdW90YWN0bF9zeXNmaWxlX29wcyk7CiAKLXN0 YXRpYyBpbnQgZG9fcHJvY19kcXN0YXRzKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCitzdGF0aWMgaW50IGRvX3Byb2NfZHFzdGF0cyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaXRlLAogCQkgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2Zm X3QgKnBwb3MpCiB7CiAJdW5zaWduZWQgaW50IHR5cGUgPSAodW5zaWduZWQgbG9uZyAqKXRhYmxl LT5kYXRhIC0gZHFzdGF0cy5zdGF0OwpkaWZmIC0tZ2l0IGEvZnMveGZzL3hmc19zeXNjdGwuYyBi L2ZzL3hmcy94ZnNfc3lzY3RsLmMKaW5kZXggYTE5MWY2NTYwZjk4Li5jODRkZjIzYjQ5NGQgMTAw NjQ0Ci0tLSBhL2ZzL3hmcy94ZnNfc3lzY3RsLmMKKysrIGIvZnMveGZzL3hmc19zeXNjdGwuYwpA QCAtMTEsNyArMTEsNyBAQCBzdGF0aWMgc3RydWN0IGN0bF90YWJsZV9oZWFkZXIgKnhmc190YWJs ZV9oZWFkZXI7CiAjaWZkZWYgQ09ORklHX1BST0NfRlMKIFNUQVRJQyBpbnQKIHhmc19zdGF0c19j bGVhcl9wcm9jX2hhbmRsZXIoCi0Jc3RydWN0IGN0bF90YWJsZQkqY3RsLAorCWNvbnN0IHN0cnVj dCBjdGxfdGFibGUJKmN0bCwKIAlpbnQJCQl3cml0ZSwKIAl2b2lkCQkJKmJ1ZmZlciwKIAlzaXpl X3QJCQkqbGVucCwKQEAgLTMxLDcgKzMxLDcgQEAgeGZzX3N0YXRzX2NsZWFyX3Byb2NfaGFuZGxl cigKIAogU1RBVElDIGludAogeGZzX3BhbmljX21hc2tfcHJvY19oYW5kbGVyKAotCXN0cnVjdCBj dGxfdGFibGUJKmN0bCwKKwljb25zdCBzdHJ1Y3QgY3RsX3RhYmxlCSpjdGwsCiAJaW50CQkJd3Jp dGUsCiAJdm9pZAkJCSpidWZmZXIsCiAJc2l6ZV90CQkJKmxlbnAsCkBAIC01Miw3ICs1Miw3IEBA IHhmc19wYW5pY19tYXNrX3Byb2NfaGFuZGxlcigKIAogU1RBVElDIGludAogeGZzX2RlcHJlY2F0 ZWRfZG9pbnR2ZWNfbWlubWF4KAotCXN0cnVjdCBjdGxfdGFibGUJKmN0bCwKKwljb25zdCBzdHJ1 Y3QgY3RsX3RhYmxlCSpjdGwsCiAJaW50CQkJd3JpdGUsCiAJdm9pZAkJCSpidWZmZXIsCiAJc2l6 ZV90CQkJKmxlbnAsCmRpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L2Z0cmFjZS5oIGIvaW5jbHVk ZS9saW51eC9mdHJhY2UuaAppbmRleCA1NGQ1M2YzNDVkMTQuLmMzYWYyZTU5NDdhYSAxMDA2NDQK LS0tIGEvaW5jbHVkZS9saW51eC9mdHJhY2UuaAorKysgYi9pbmNsdWRlL2xpbnV4L2Z0cmFjZS5o CkBAIC00NzAsNyArNDcwLDcgQEAgc3RhdGljIGlubGluZSB2b2lkIGFyY2hfZnRyYWNlX3NldF9k aXJlY3RfY2FsbGVyKHN0cnVjdCBmdHJhY2VfcmVncyAqZnJlZ3MsCiAKIGV4dGVybiBpbnQgc3Rh Y2tfdHJhY2VyX2VuYWJsZWQ7CiAKLWludCBzdGFja190cmFjZV9zeXNjdGwoc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAoraW50IHN0YWNrX3RyYWNlX3N5 c2N0bChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZm ZXIsCiAJCSAgICAgICBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7CiAKIC8qIERPIE5PVCBN T0RJRlkgVEhJUyBWQVJJQUJMRSBESVJFQ1RMWSEgKi8KQEAgLTExNTksNyArMTE1OSw3IEBAIGV4 dGVybiBpbnQgdHJhY2Vwb2ludF9wcmludGs7CiBleHRlcm4gdm9pZCBkaXNhYmxlX3RyYWNlX29u X3dhcm5pbmcodm9pZCk7CiBleHRlcm4gaW50IF9fZGlzYWJsZV90cmFjZV9vbl93YXJuaW5nOwog Ci1pbnQgdHJhY2Vwb2ludF9wcmludGtfc3lzY3RsKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCitpbnQgdHJhY2Vwb2ludF9wcmludGtfc3lzY3RsKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpOwogCiAjZWxzZSAvKiBDT05GSUdfVFJBQ0lORyAqLwpkaWZmIC0t Z2l0IGEvaW5jbHVkZS9saW51eC9tbS5oIGIvaW5jbHVkZS9saW51eC9tbS5oCmluZGV4IGRjMzNm ODI2OWZiNS4uODI4ZDk3YzIzODM0IDEwMDY0NAotLS0gYS9pbmNsdWRlL2xpbnV4L21tLmgKKysr IGIvaW5jbHVkZS9saW51eC9tbS5oCkBAIC0yMDQsMTEgKzIwNCwxMSBAQCBleHRlcm4gaW50IHN5 c2N0bF9vdmVyY29tbWl0X21lbW9yeTsKIGV4dGVybiBpbnQgc3lzY3RsX292ZXJjb21taXRfcmF0 aW87CiBleHRlcm4gdW5zaWduZWQgbG9uZyBzeXNjdGxfb3ZlcmNvbW1pdF9rYnl0ZXM7CiAKLWlu dCBvdmVyY29tbWl0X3JhdGlvX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQg Kiwgc2l6ZV90ICosCitpbnQgb3ZlcmNvbW1pdF9yYXRpb19oYW5kbGVyKGNvbnN0IHN0cnVjdCBj dGxfdGFibGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLAogCQlsb2ZmX3QgKik7Ci1pbnQgb3Zl cmNvbW1pdF9rYnl0ZXNfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICosIGludCwgdm9pZCAqLCBz aXplX3QgKiwKK2ludCBvdmVyY29tbWl0X2tieXRlc19oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLAogCQlsb2ZmX3QgKik7Ci1pbnQgb3ZlcmNv bW1pdF9wb2xpY3lfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICosIGludCwgdm9pZCAqLCBzaXpl X3QgKiwKK2ludCBvdmVyY29tbWl0X3BvbGljeV9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFi bGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLAogCQlsb2ZmX3QgKik7CiAKICNpZiBkZWZpbmVk KENPTkZJR19TUEFSU0VNRU0pICYmICFkZWZpbmVkKENPTkZJR19TUEFSU0VNRU1fVk1FTU1BUCkK QEAgLTM4OTcsNyArMzg5Nyw3IEBAIGV4dGVybiBib29sIHByb2Nlc3Nfc2hhcmVzX21tKHN0cnVj dCB0YXNrX3N0cnVjdCAqcCwgc3RydWN0IG1tX3N0cnVjdCAqbW0pOwogCiAjaWZkZWYgQ09ORklH X1NZU0NUTAogZXh0ZXJuIGludCBzeXNjdGxfZHJvcF9jYWNoZXM7Ci1pbnQgZHJvcF9jYWNoZXNf c3lzY3RsX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQgKiwgc2l6ZV90ICos CitpbnQgZHJvcF9jYWNoZXNfc3lzY3RsX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAq LCBpbnQsIHZvaWQgKiwgc2l6ZV90ICosCiAJCWxvZmZfdCAqKTsKICNlbmRpZgogCmRpZmYgLS1n aXQgYS9pbmNsdWRlL2xpbnV4L3BlcmZfZXZlbnQuaCBiL2luY2x1ZGUvbGludXgvcGVyZl9ldmVu dC5oCmluZGV4IGE1MzA0YWU4YzY1NC4uY2UxMDJhYWMxMWMwIDEwMDY0NAotLS0gYS9pbmNsdWRl L2xpbnV4L3BlcmZfZXZlbnQuaAorKysgYi9pbmNsdWRlL2xpbnV4L3BlcmZfZXZlbnQuaApAQCAt MTU4NywxMSArMTU4NywxMSBAQCBleHRlcm4gaW50IHN5c2N0bF9wZXJmX2NwdV90aW1lX21heF9w ZXJjZW50OwogCiBleHRlcm4gdm9pZCBwZXJmX3NhbXBsZV9ldmVudF90b29rKHU2NCBzYW1wbGVf bGVuX25zKTsKIAotaW50IHBlcmZfZXZlbnRfbWF4X3NhbXBsZV9yYXRlX2hhbmRsZXIoc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBwZXJmX2V2ZW50X21heF9zYW1wbGVf cmF0ZV9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJ CXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwotaW50IHBlcmZfY3B1 X3RpbWVfbWF4X3BlcmNlbnRfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdy aXRlLAoraW50IHBlcmZfY3B1X3RpbWVfbWF4X3BlcmNlbnRfaGFuZGxlcihjb25zdCBzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVu cCwgbG9mZl90ICpwcG9zKTsKLWludCBwZXJmX2V2ZW50X21heF9zdGFja19oYW5kbGVyKHN0cnVj dCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgcGVyZl9ldmVudF9tYXhfc3RhY2tf aGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQl2b2lk ICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKIAogLyogQWNjZXNzIHRvIHBl cmZfZXZlbnRfb3BlbigyKSBzeXNjYWxsLiAqLwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9z ZWN1cml0eS5oIGIvaW5jbHVkZS9saW51eC9zZWN1cml0eS5oCmluZGV4IDIxY2Y3MDM0NmIzMy4u OTY3OTlmZjU3MjMwIDEwMDY0NAotLS0gYS9pbmNsdWRlL2xpbnV4L3NlY3VyaXR5LmgKKysrIGIv aW5jbHVkZS9saW51eC9zZWN1cml0eS5oCkBAIC0yMjgsNyArMjI4LDcgQEAgc3RydWN0IHJlcXVl c3Rfc29jazsKICNkZWZpbmUgTFNNX1VOU0FGRV9OT19ORVdfUFJJVlMJNAogCiAjaWZkZWYgQ09O RklHX01NVQotZXh0ZXJuIGludCBtbWFwX21pbl9hZGRyX2hhbmRsZXIoc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKK2V4dGVybiBpbnQgbW1hcF9taW5fYWRkcl9oYW5kbGVyKGNv bnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJIHZvaWQgKmJ1ZmZl ciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL2lu Y2x1ZGUvbGludXgvc3lzY3RsLmggYi9pbmNsdWRlL2xpbnV4L3N5c2N0bC5oCmluZGV4IDU0ZmJl YzA2Mjc3Mi4uYWE0YzZkNDRhYWEwIDEwMDY0NAotLS0gYS9pbmNsdWRlL2xpbnV4L3N5c2N0bC5o CisrKyBiL2luY2x1ZGUvbGludXgvc3lzY3RsLmgKQEAgLTYxLDMxICs2MSwzMSBAQCBleHRlcm4g Y29uc3QgaW50IHN5c2N0bF92YWxzW107CiAKIGV4dGVybiBjb25zdCB1bnNpZ25lZCBsb25nIHN5 c2N0bF9sb25nX3ZhbHNbXTsKIAotdHlwZWRlZiBpbnQgcHJvY19oYW5kbGVyKHN0cnVjdCBjdGxf dGFibGUgKmN0bCwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCit0eXBlZGVmIGludCBwcm9jX2hh bmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZl ciwKIAkJc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwogCi1pbnQgcHJvY19kb3N0cmluZyhz dHJ1Y3QgY3RsX3RhYmxlICosIGludCwgdm9pZCAqLCBzaXplX3QgKiwgbG9mZl90ICopOwotaW50 IHByb2NfZG9ib29sKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1 ZmZlciwKK2ludCBwcm9jX2Rvc3RyaW5nKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKiwgaW50LCB2 b2lkICosIHNpemVfdCAqLCBsb2ZmX3QgKik7CitpbnQgcHJvY19kb2Jvb2woY29uc3Qgc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogCQlzaXplX3QgKmxl bnAsIGxvZmZfdCAqcHBvcyk7Ci1pbnQgcHJvY19kb2ludHZlYyhzdHJ1Y3QgY3RsX3RhYmxlICos IGludCwgdm9pZCAqLCBzaXplX3QgKiwgbG9mZl90ICopOwotaW50IHByb2NfZG91aW50dmVjKHN0 cnVjdCBjdGxfdGFibGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLCBsb2ZmX3QgKik7Ci1pbnQg cHJvY19kb2ludHZlY19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQgKiwgc2l6 ZV90ICosIGxvZmZfdCAqKTsKLWludCBwcm9jX2RvdWludHZlY19taW5tYXgoc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAoraW50IHByb2NfZG9pbnR2ZWMo Y29uc3Qgc3RydWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQgKiwgc2l6ZV90ICosIGxvZmZfdCAq KTsKK2ludCBwcm9jX2RvdWludHZlYyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICosIGludCwgdm9p ZCAqLCBzaXplX3QgKiwgbG9mZl90ICopOworaW50IHByb2NfZG9pbnR2ZWNfbWlubWF4KGNvbnN0 IHN0cnVjdCBjdGxfdGFibGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLCBsb2ZmX3QgKik7Citp bnQgcHJvY19kb3VpbnR2ZWNfbWlubWF4KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKIAkJc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwot aW50IHByb2NfZG91OHZlY19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwgdm9pZCAqYnVmZmVyLAoraW50IHByb2NfZG91OHZlY19taW5tYXgoY29uc3Qgc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogCQkJc2l6ZV90ICpsZW5w LCBsb2ZmX3QgKnBwb3MpOwotaW50IHByb2NfZG9pbnR2ZWNfamlmZmllcyhzdHJ1Y3QgY3RsX3Rh YmxlICosIGludCwgdm9pZCAqLCBzaXplX3QgKiwgbG9mZl90ICopOwotaW50IHByb2NfZG9pbnR2 ZWNfbXNfamlmZmllc19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwK K2ludCBwcm9jX2RvaW50dmVjX2ppZmZpZXMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqLCBpbnQs IHZvaWQgKiwgc2l6ZV90ICosIGxvZmZfdCAqKTsKK2ludCBwcm9jX2RvaW50dmVjX21zX2ppZmZp ZXNfbWlubWF4KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCXZv aWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwotaW50IHByb2NfZG9pbnR2 ZWNfdXNlcmh6X2ppZmZpZXMoc3RydWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQgKiwgc2l6ZV90 ICosCitpbnQgcHJvY19kb2ludHZlY191c2VyaHpfamlmZmllcyhjb25zdCBzdHJ1Y3QgY3RsX3Rh YmxlICosIGludCwgdm9pZCAqLCBzaXplX3QgKiwKIAkJbG9mZl90ICopOwotaW50IHByb2NfZG9p bnR2ZWNfbXNfamlmZmllcyhzdHJ1Y3QgY3RsX3RhYmxlICosIGludCwgdm9pZCAqLCBzaXplX3Qg KiwKK2ludCBwcm9jX2RvaW50dmVjX21zX2ppZmZpZXMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAq LCBpbnQsIHZvaWQgKiwgc2l6ZV90ICosCiAJCWxvZmZfdCAqKTsKLWludCBwcm9jX2RvdWxvbmd2 ZWNfbWlubWF4KHN0cnVjdCBjdGxfdGFibGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLCBsb2Zm X3QgKik7Ci1pbnQgcHJvY19kb3Vsb25ndmVjX21zX2ppZmZpZXNfbWlubWF4KHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQsIHZvaWQgKiwKK2ludCBwcm9jX2RvdWxvbmd2ZWNfbWlubWF4KGNv bnN0IHN0cnVjdCBjdGxfdGFibGUgKiwgaW50LCB2b2lkICosIHNpemVfdCAqLCBsb2ZmX3QgKik7 CitpbnQgcHJvY19kb3Vsb25ndmVjX21zX2ppZmZpZXNfbWlubWF4KGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQsIHZvaWQgKiwKIAkJc2l6ZV90ICosIGxvZmZfdCAqKTsKLWludCBw cm9jX2RvX2xhcmdlX2JpdG1hcChzdHJ1Y3QgY3RsX3RhYmxlICosIGludCwgdm9pZCAqLCBzaXpl X3QgKiwgbG9mZl90ICopOwotaW50IHByb2NfZG9fc3RhdGljX2tleShzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCitpbnQgcHJvY19kb19sYXJnZV9iaXRt YXAoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqLCBpbnQsIHZvaWQgKiwgc2l6ZV90ICosIGxvZmZf dCAqKTsKK2ludCBwcm9jX2RvX3N0YXRpY19rZXkoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFi bGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogCQlzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBv cyk7CiAKIC8qCkBAIC0yODcsNyArMjg3LDcgQEAgc3RhdGljIGlubGluZSBib29sIHN5c2N0bF9p c19hbGlhcyhjaGFyICpwYXJhbSkKIH0KICNlbmRpZiAvKiBDT05GSUdfU1lTQ1RMICovCiAKLWlu dCBzeXNjdGxfbWF4X3RocmVhZHMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwg dm9pZCAqYnVmZmVyLAoraW50IHN5c2N0bF9tYXhfdGhyZWFkcyhjb25zdCBzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiAJCXNpemVfdCAqbGVucCwgbG9m Zl90ICpwcG9zKTsKIAogI2VuZGlmIC8qIF9MSU5VWF9TWVNDVExfSCAqLwpkaWZmIC0tZ2l0IGEv aW5jbHVkZS9saW51eC92bXN0YXQuaCBiL2luY2x1ZGUvbGludXgvdm1zdGF0LmgKaW5kZXggNzM1 ZWFlNmUyNzJjLi43ZGEyNmQxYWVhMTIgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvbGludXgvdm1zdGF0 LmgKKysrIGIvaW5jbHVkZS9saW51eC92bXN0YXQuaApAQCAtMTcsNyArMTcsNyBAQCBleHRlcm4g aW50IHN5c2N0bF9zdGF0X2ludGVydmFsOwogI2RlZmluZSBESVNBQkxFX05VTUFfU1RBVCAgIDAK IGV4dGVybiBpbnQgc3lzY3RsX3ZtX251bWFfc3RhdDsKIERFQ0xBUkVfU1RBVElDX0tFWV9UUlVF KHZtX251bWFfc3RhdF9rZXkpOwotaW50IHN5c2N0bF92bV9udW1hX3N0YXRfaGFuZGxlcihzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHN5c2N0bF92bV9udW1hX3N0YXRf aGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQl2b2lk ICpidWZmZXIsIHNpemVfdCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3MpOwogI2VuZGlmCiAKQEAgLTMw MSw4ICszMDEsOCBAQCB2b2lkIGNwdV92bV9zdGF0c19mb2xkKGludCBjcHUpOwogdm9pZCByZWZy ZXNoX3pvbmVfc3RhdF90aHJlc2hvbGRzKHZvaWQpOwogCiBzdHJ1Y3QgY3RsX3RhYmxlOwotaW50 IHZtc3RhdF9yZWZyZXNoKHN0cnVjdCBjdGxfdGFibGUgKiwgaW50IHdyaXRlLCB2b2lkICpidWZm ZXIsIHNpemVfdCAqbGVucCwKLQkJbG9mZl90ICpwcG9zKTsKK2ludCB2bXN0YXRfcmVmcmVzaChj b25zdCBzdHJ1Y3QgY3RsX3RhYmxlICosIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAorCQkgICBz aXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7CiAKIHZvaWQgZHJhaW5fem9uZXN0YXQoc3RydWN0 IHpvbmUgKnpvbmUsIHN0cnVjdCBwZXJfY3B1X3pvbmVzdGF0ICopOwogCmRpZmYgLS1naXQgYS9p bmNsdWRlL2xpbnV4L3dyaXRlYmFjay5oIGIvaW5jbHVkZS9saW51eC93cml0ZWJhY2suaAppbmRl eCAxMTJkODA2ZGRiZTQuLjFhNTQ2NzZkODQzYSAxMDA2NDQKLS0tIGEvaW5jbHVkZS9saW51eC93 cml0ZWJhY2suaAorKysgYi9pbmNsdWRlL2xpbnV4L3dyaXRlYmFjay5oCkBAIC0zNTAsNyArMzUw LDcgQEAgZXh0ZXJuIHVuc2lnbmVkIGludCBkaXJ0eV9leHBpcmVfaW50ZXJ2YWw7CiBleHRlcm4g dW5zaWduZWQgaW50IGRpcnR5dGltZV9leHBpcmVfaW50ZXJ2YWw7CiBleHRlcm4gaW50IGxhcHRv cF9tb2RlOwogCi1pbnQgZGlydHl0aW1lX2ludGVydmFsX2hhbmRsZXIoc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBkaXJ0eXRpbWVfaW50ZXJ2YWxfaGFuZGxlcihjb25z dCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQl2b2lkICpidWZmZXIsIHNp emVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKIAogdm9pZCBnbG9iYWxfZGlydHlfbGltaXRzKHVu c2lnbmVkIGxvbmcgKnBiYWNrZ3JvdW5kLCB1bnNpZ25lZCBsb25nICpwZGlydHkpOwpkaWZmIC0t Z2l0IGEvaW5jbHVkZS9uZXQvbmRpc2MuaCBiL2luY2x1ZGUvbmV0L25kaXNjLmgKaW5kZXggOWJi ZGY2ZWFhOTQyLi43YTUzM2Q1YjFkNTkgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvbmV0L25kaXNjLmgK KysrIGIvaW5jbHVkZS9uZXQvbmRpc2MuaApAQCAtNDg2LDcgKzQ4Niw3IEBAIHZvaWQgaWdtcDZf ZXZlbnRfcmVwb3J0KHN0cnVjdCBza19idWZmICpza2IpOwogCiAKICNpZmRlZiBDT05GSUdfU1lT Q1RMCi1pbnQgbmRpc2NfaWZpbmZvX3N5c2N0bF9jaGFuZ2Uoc3RydWN0IGN0bF90YWJsZSAqY3Rs LCBpbnQgd3JpdGUsCitpbnQgbmRpc2NfaWZpbmZvX3N5c2N0bF9jaGFuZ2UoY29uc3Qgc3RydWN0 IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkgICAgICAgdm9pZCAqYnVmZmVyLCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9u ZXQvbmVpZ2hib3VyLmggYi9pbmNsdWRlL25ldC9uZWlnaGJvdXIuaAppbmRleCAwZDI4MTcyMTkz ZmEuLmE0NGYyNjJhNzM4NCAxMDA2NDQKLS0tIGEvaW5jbHVkZS9uZXQvbmVpZ2hib3VyLmgKKysr IGIvaW5jbHVkZS9uZXQvbmVpZ2hib3VyLmgKQEAgLTQxMiwxMiArNDEyLDEyIEBAIHZvaWQgKm5l aWdoX3NlcV9zdGFydChzdHJ1Y3Qgc2VxX2ZpbGUgKiwgbG9mZl90ICosIHN0cnVjdCBuZWlnaF90 YWJsZSAqLAogdm9pZCAqbmVpZ2hfc2VxX25leHQoc3RydWN0IHNlcV9maWxlICosIHZvaWQgKiwg bG9mZl90ICopOwogdm9pZCBuZWlnaF9zZXFfc3RvcChzdHJ1Y3Qgc2VxX2ZpbGUgKiwgdm9pZCAq KTsKIAotaW50IG5laWdoX3Byb2NfZG9pbnR2ZWMoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQg d3JpdGUsCitpbnQgbmVpZ2hfcHJvY19kb2ludHZlYyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpj dGwsIGludCB3cml0ZSwKIAkJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBw b3MpOwotaW50IG5laWdoX3Byb2NfZG9pbnR2ZWNfamlmZmllcyhzdHJ1Y3QgY3RsX3RhYmxlICpj dGwsIGludCB3cml0ZSwKK2ludCBuZWlnaF9wcm9jX2RvaW50dmVjX2ppZmZpZXMoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJdm9pZCAqYnVmZmVyLAogCQkJCXNp emVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKLWludCBuZWlnaF9wcm9jX2RvaW50dmVjX21zX2pp ZmZpZXMoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitpbnQgbmVpZ2hfcHJvY19k b2ludHZlY19tc19qaWZmaWVzKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRl LAogCQkJCSAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpOwogCiBp bnQgbmVpZ2hfc3lzY3RsX3JlZ2lzdGVyKHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsIHN0cnVjdCBu ZWlnaF9wYXJtcyAqcCwKZGlmZiAtLWdpdCBhL2luY2x1ZGUvbmV0L25ldGZpbHRlci9uZl9ob29r c19sd3R1bm5lbC5oIGIvaW5jbHVkZS9uZXQvbmV0ZmlsdGVyL25mX2hvb2tzX2x3dHVubmVsLmgK aW5kZXggNTJlMjc5MjBmODI5Li5jZWY3YTRlYjhmOTcgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvbmV0 L25ldGZpbHRlci9uZl9ob29rc19sd3R1bm5lbC5oCisrKyBiL2luY2x1ZGUvbmV0L25ldGZpbHRl ci9uZl9ob29rc19sd3R1bm5lbC5oCkBAIC0yLDYgKzIsNiBAQAogI2luY2x1ZGUgPGxpbnV4L3R5 cGVzLmg+CiAKICNpZmRlZiBDT05GSUdfU1lTQ1RMCi1pbnQgbmZfaG9va3NfbHd0dW5uZWxfc3lz Y3RsX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBuZl9o b29rc19sd3R1bm5lbF9zeXNjdGxfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJs ZSwgaW50IHdyaXRlLAogCQkJCSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZf dCAqcHBvcyk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL2lwYy9pcGNfc3lzY3RsLmMgYi9pcGMvaXBj X3N5c2N0bC5jCmluZGV4IDk0NjViMGFlNDcwYi4uNWQzODNhOWE1MjBlIDEwMDY0NAotLS0gYS9p cGMvaXBjX3N5c2N0bC5jCisrKyBiL2lwYy9pcGNfc3lzY3RsLmMKQEAgLTE3LDggKzE3LDggQEAK ICNpbmNsdWRlIDxsaW51eC9jcmVkLmg+CiAjaW5jbHVkZSAidXRpbC5oIgogCi1zdGF0aWMgaW50 IHByb2NfaXBjX2RvaW50dmVjX21pbm1heF9vcnBoYW5zKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsCi0JCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3Mp CitzdGF0aWMgaW50IHByb2NfaXBjX2RvaW50dmVjX21pbm1heF9vcnBoYW5zKGNvbnN0IHN0cnVj dCBjdGxfdGFibGUgKnRhYmxlLAorCQlpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IGlwY19uYW1lc3BhY2UgKm5zID0KIAkJY29u dGFpbmVyX29mKHRhYmxlLT5kYXRhLCBzdHJ1Y3QgaXBjX25hbWVzcGFjZSwgc2htX3JtaWRfZm9y Y2VkKTsKQEAgLTMzLDcgKzMzLDcgQEAgc3RhdGljIGludCBwcm9jX2lwY19kb2ludHZlY19taW5t YXhfb3JwaGFucyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCXJldHVybiBl cnI7CiB9CiAKLXN0YXRpYyBpbnQgcHJvY19pcGNfYXV0b19tc2dtbmkoc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY19pcGNfYXV0b19tc2dtbmkoY29u c3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJdm9pZCAqYnVmZmVyLCBz aXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgY3RsX3RhYmxlIGlwY190YWJs ZTsKQEAgLTQ4LDcgKzQ4LDcgQEAgc3RhdGljIGludCBwcm9jX2lwY19hdXRvX21zZ21uaShzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCXJldHVybiBwcm9jX2RvaW50dmVjX21p bm1heCgmaXBjX3RhYmxlLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKIH0KIAotc3RhdGlj IGludCBwcm9jX2lwY19zZW1fZG9pbnR2ZWMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKK3N0YXRpYyBpbnQgcHJvY19pcGNfc2VtX2RvaW50dmVjKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgaXBjX25hbWVzcGFjZSAqbnMgPQpkaWZmIC0tZ2l0IGEv a2VybmVsL2JwZi9zeXNjYWxsLmMgYi9rZXJuZWwvYnBmL3N5c2NhbGwuYwppbmRleCA3ZGNkN2Yx NzRiYjEuLjkzZDFmODU2ZjNkNCAxMDA2NDQKLS0tIGEva2VybmVsL2JwZi9zeXNjYWxsLmMKKysr IGIva2VybmVsL2JwZi9zeXNjYWxsLmMKQEAgLTU5MzcsNyArNTkzNyw3IEBAIGNvbnN0IHN0cnVj dCBicGZfcHJvZ19vcHMgYnBmX3N5c2NhbGxfcHJvZ19vcHMgPSB7CiB9OwogCiAjaWZkZWYgQ09O RklHX1NZU0NUTAotc3RhdGljIGludCBicGZfc3RhdHNfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBicGZfc3RhdHNfaGFuZGxlcihjb25zdCBz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICAgICB2b2lkICpidWZmZXIs IHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBzdGF0aWNfa2V5ICprZXkg PSAoc3RydWN0IHN0YXRpY19rZXkgKil0YWJsZS0+ZGF0YTsKQEAgLTU5NzIsNyArNTk3Miw3IEBA IHZvaWQgX193ZWFrIHVucHJpdl9lYnBmX25vdGlmeShpbnQgbmV3X3N0YXRlKQogewogfQogCi1z dGF0aWMgaW50IGJwZl91bnByaXZfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAorc3RhdGljIGludCBicGZfdW5wcml2X2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldCwgdW5wcml2X2VuYWJsZSA9ICooaW50ICop dGFibGUtPmRhdGE7CmRpZmYgLS1naXQgYS9rZXJuZWwvZGVsYXlhY2N0LmMgYi9rZXJuZWwvZGVs YXlhY2N0LmMKaW5kZXggZTAzOWIwZjk5YTBiLi41Y2M0ZTBlZjQxMjggMTAwNjQ0Ci0tLSBhL2tl cm5lbC9kZWxheWFjY3QuYworKysgYi9rZXJuZWwvZGVsYXlhY2N0LmMKQEAgLTQ0LDggKzQ0LDgg QEAgdm9pZCBkZWxheWFjY3RfaW5pdCh2b2lkKQogfQogCiAjaWZkZWYgQ09ORklHX1BST0NfU1lT Q1RMCi1zdGF0aWMgaW50IHN5c2N0bF9kZWxheWFjY3Qoc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAotCQkgICAgIHNpemVfdCAqbGVucCwgbG9mZl90ICpw cG9zKQorc3RhdGljIGludCBzeXNjdGxfZGVsYXlhY2N0KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCisJCQkgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlpbnQgc3RhdGUgPSBkZWxheWFjY3Rfb247CiAJc3RydWN0IGN0bF90 YWJsZSB0OwpkaWZmIC0tZ2l0IGEva2VybmVsL2V2ZW50cy9jYWxsY2hhaW4uYyBiL2tlcm5lbC9l dmVudHMvY2FsbGNoYWluLmMKaW5kZXggMTI3M2JlODQzOTJjLi5iZDU2OTlmODY5YzMgMTAwNjQ0 Ci0tLSBhL2tlcm5lbC9ldmVudHMvY2FsbGNoYWluLmMKKysrIGIva2VybmVsL2V2ZW50cy9jYWxs Y2hhaW4uYwpAQCAtMjI5LDcgKzIyOSw3IEBAIGdldF9wZXJmX2NhbGxjaGFpbihzdHJ1Y3QgcHRf cmVncyAqcmVncywgdTMyIGluaXRfbnIsIGJvb2wga2VybmVsLCBib29sIHVzZXIsCiAgKiBVc2Vk IGZvciBzeXNjdGxfcGVyZl9ldmVudF9tYXhfc3RhY2sgYW5kCiAgKiBzeXNjdGxfcGVyZl9ldmVu dF9tYXhfY29udGV4dHNfcGVyX3N0YWNrLgogICovCi1pbnQgcGVyZl9ldmVudF9tYXhfc3RhY2tf aGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHBlcmZfZXZl bnRfbWF4X3N0YWNrX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsK IAlpbnQgKnZhbHVlID0gdGFibGUtPmRhdGE7CmRpZmYgLS1naXQgYS9rZXJuZWwvZXZlbnRzL2Nv cmUuYyBiL2tlcm5lbC9ldmVudHMvY29yZS5jCmluZGV4IGYwMTI4YzVmZjI3OC4uMDFjYzkxMGQz MWYzIDEwMDY0NAotLS0gYS9rZXJuZWwvZXZlbnRzL2NvcmUuYworKysgYi9rZXJuZWwvZXZlbnRz L2NvcmUuYwpAQCAtNDUwLDcgKzQ1MCw3IEBAIHN0YXRpYyB2b2lkIHVwZGF0ZV9wZXJmX2NwdV9s aW1pdHModm9pZCkKIAogc3RhdGljIGJvb2wgcGVyZl9yb3RhdGVfY29udGV4dChzdHJ1Y3QgcGVy Zl9jcHVfcG11X2NvbnRleHQgKmNwYyk7CiAKLWludCBwZXJmX2V2ZW50X21heF9zYW1wbGVfcmF0 ZV9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgcGVyZl9l dmVudF9tYXhfc2FtcGxlX3JhdGVfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJs ZSwgaW50IHdyaXRlLAogCQkJCSAgICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9m Zl90ICpwcG9zKQogewogCWludCByZXQ7CkBAIC00NzQsNyArNDc0LDcgQEAgaW50IHBlcmZfZXZl bnRfbWF4X3NhbXBsZV9yYXRlX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKIAogaW50IHN5c2N0bF9wZXJmX2NwdV90aW1lX21heF9wZXJjZW50IF9fcmVhZF9tb3N0 bHkgPSBERUZBVUxUX0NQVV9USU1FX01BWF9QRVJDRU5UOwogCi1pbnQgcGVyZl9jcHVfdGltZV9t YXhfcGVyY2VudF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitp bnQgcGVyZl9jcHVfdGltZV9tYXhfcGVyY2VudF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2Zm X3QgKnBwb3MpCiB7CiAJaW50IHJldCA9IHByb2NfZG9pbnR2ZWNfbWlubWF4KHRhYmxlLCB3cml0 ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKZGlmZiAtLWdpdCBhL2tlcm5lbC9mb3JrLmMgYi9rZXJu ZWwvZm9yay5jCmluZGV4IDk5MDc2ZGJlMjdkOC4uOTg1YmQwYTU4MzRjIDEwMDY0NAotLS0gYS9r ZXJuZWwvZm9yay5jCisrKyBiL2tlcm5lbC9mb3JrLmMKQEAgLTM0MTgsNyArMzQxOCw3IEBAIGlu dCB1bnNoYXJlX2ZpbGVzKHZvaWQpCiAJcmV0dXJuIDA7CiB9CiAKLWludCBzeXNjdGxfbWF4X3Ro cmVhZHMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBzeXNjdGxfbWF4 X3RocmVhZHMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJICAg ICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0 IGN0bF90YWJsZSB0OwpkaWZmIC0tZ2l0IGEva2VybmVsL2h1bmdfdGFzay5jIGIva2VybmVsL2h1 bmdfdGFzay5jCmluZGV4IDFkOTIwMTZiMGIzYy4uNjg4YWIzNDQzMTU2IDEwMDY0NAotLS0gYS9r ZXJuZWwvaHVuZ190YXNrLmMKKysrIGIva2VybmVsL2h1bmdfdGFzay5jCkBAIC0yMzksOSArMjM5 LDkgQEAgc3RhdGljIGxvbmcgaHVuZ190aW1lb3V0X2ppZmZpZXModW5zaWduZWQgbG9uZyBsYXN0 X2NoZWNrZWQsCiAvKgogICogUHJvY2VzcyB1cGRhdGluZyBvZiB0aW1lb3V0IHN5c2N0bAogICov Ci1zdGF0aWMgaW50IHByb2NfZG9odW5nX3Rhc2tfdGltZW91dF9zZWNzKHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCQkJICB2b2lkICpidWZmZXIsCi0JCQkJICBzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgcHJvY19kb2h1bmdfdGFza190aW1lb3V0 X3NlY3MoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCisJCQkJCSBpbnQgd3JpdGUsIHZv aWQgKmJ1ZmZlciwKKwkJCQkJIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCBy ZXQ7CiAKZGlmZiAtLWdpdCBhL2tlcm5lbC9rZXhlY19jb3JlLmMgYi9rZXJuZWwva2V4ZWNfY29y ZS5jCmluZGV4IDkxMTJkNjlkNjhiMC4uYzBjYWExNDg4MGMzIDEwMDY0NAotLS0gYS9rZXJuZWwv a2V4ZWNfY29yZS5jCisrKyBiL2tlcm5lbC9rZXhlY19jb3JlLmMKQEAgLTg4OCw3ICs4ODgsNyBA QCBzdHJ1Y3Qga2ltYWdlICprZXhlY19jcmFzaF9pbWFnZTsKIHN0YXRpYyBpbnQga2V4ZWNfbG9h ZF9kaXNhYmxlZDsKIAogI2lmZGVmIENPTkZJR19TWVNDVEwKLXN0YXRpYyBpbnQga2V4ZWNfbGlt aXRfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGlu dCBrZXhlY19saW1pdF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsCiAJCQkgICAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBv cykKIHsKIAlzdHJ1Y3Qga2V4ZWNfbG9hZF9saW1pdCAqbGltaXQgPSB0YWJsZS0+ZGF0YTsKZGlm ZiAtLWdpdCBhL2tlcm5lbC9rcHJvYmVzLmMgYi9rZXJuZWwva3Byb2Jlcy5jCmluZGV4IDY2OGVh NDAxNzQ0Yi4uZmVjOWY2YzRiMGYxIDEwMDY0NAotLS0gYS9rZXJuZWwva3Byb2Jlcy5jCisrKyBi L2tlcm5lbC9rcHJvYmVzLmMKQEAgLTkzOSw3ICs5MzksNyBAQCBzdGF0aWMgdm9pZCB1bm9wdGlt aXplX2FsbF9rcHJvYmVzKHZvaWQpCiAKIHN0YXRpYyBERUZJTkVfTVVURVgoa3Byb2JlX3N5c2N0 bF9tdXRleCk7CiBzdGF0aWMgaW50IHN5c2N0bF9rcHJvYmVzX29wdGltaXphdGlvbjsKLXN0YXRp YyBpbnQgcHJvY19rcHJvYmVzX29wdGltaXphdGlvbl9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLAorc3RhdGljIGludCBwcm9jX2twcm9iZXNfb3B0aW1pemF0aW9uX2hhbmRsZXIoY29u c3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCiAJCQkJCSAgICAgaW50IHdyaXRlLCB2b2lkICpi dWZmZXIsCiAJCQkJCSAgICAgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykKIHsKZGlmZiAt LWdpdCBhL2tlcm5lbC9sYXRlbmN5dG9wLmMgYi9rZXJuZWwvbGF0ZW5jeXRvcC5jCmluZGV4IDg0 YzUzMjg1ZjQ5OS4uYjAzYWY4NjAxOGY0IDEwMDY0NAotLS0gYS9rZXJuZWwvbGF0ZW5jeXRvcC5j CisrKyBiL2tlcm5lbC9sYXRlbmN5dG9wLmMKQEAgLTY1LDggKzY1LDggQEAgc3RhdGljIHN0cnVj dCBsYXRlbmN5X3JlY29yZCBsYXRlbmN5X3JlY29yZFtNQVhMUl07CiBpbnQgbGF0ZW5jeXRvcF9l bmFibGVkOwogCiAjaWZkZWYgQ09ORklHX1NZU0NUTAotc3RhdGljIGludCBzeXNjdGxfbGF0ZW5j eXRvcChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCi0J CXNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQorc3RhdGljIGludCBzeXNjdGxfbGF0ZW5jeXRv cChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorCQkJICAgICB2b2lk ICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCBlcnI7CiAKZGlm ZiAtLWdpdCBhL2tlcm5lbC9waWRfbmFtZXNwYWNlLmMgYi9rZXJuZWwvcGlkX25hbWVzcGFjZS5j CmluZGV4IGRjNDhmZWNmYTFkYy4uYWZkN2Q1NGFjYjU2IDEwMDY0NAotLS0gYS9rZXJuZWwvcGlk X25hbWVzcGFjZS5jCisrKyBiL2tlcm5lbC9waWRfbmFtZXNwYWNlLmMKQEAgLTI3Nyw3ICsyNzcs NyBAQCB2b2lkIHphcF9waWRfbnNfcHJvY2Vzc2VzKHN0cnVjdCBwaWRfbmFtZXNwYWNlICpwaWRf bnMpCiB9CiAKICNpZmRlZiBDT05GSUdfQ0hFQ0tQT0lOVF9SRVNUT1JFCi1zdGF0aWMgaW50IHBp ZF9uc19jdGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3Rh dGljIGludCBwaWRfbnNfY3RsX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwKIAkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK IHsKIAlzdHJ1Y3QgcGlkX25hbWVzcGFjZSAqcGlkX25zID0gdGFza19hY3RpdmVfcGlkX25zKGN1 cnJlbnQpOwpkaWZmIC0tZ2l0IGEva2VybmVsL3BpZF9zeXNjdGwuaCBiL2tlcm5lbC9waWRfc3lz Y3RsLmgKaW5kZXggZmU5ZmI5OTFkYzQyLi4xOGVjYWVmNmJlNDEgMTAwNjQ0Ci0tLSBhL2tlcm5l bC9waWRfc3lzY3RsLmgKKysrIGIva2VybmVsL3BpZF9zeXNjdGwuaApAQCAtNSw3ICs1LDcgQEAK ICNpbmNsdWRlIDxsaW51eC9waWRfbmFtZXNwYWNlLmg+CiAKICNpZiBkZWZpbmVkKENPTkZJR19T WVNDVEwpICYmIGRlZmluZWQoQ09ORklHX01FTUZEX0NSRUFURSkKLXN0YXRpYyBpbnQgcGlkX21m ZF9ub2V4ZWNfZG9pbnR2ZWNfbWlubWF4KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLAorc3RhdGlj IGludCBwaWRfbWZkX25vZXhlY19kb2ludHZlY19taW5tYXgoY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsCiAJaW50IHdyaXRlLCB2b2lkICpidWYsIHNpemVfdCAqbGVucCwgbG9mZl90ICpw cG9zKQogewogCXN0cnVjdCBwaWRfbmFtZXNwYWNlICpucyA9IHRhc2tfYWN0aXZlX3BpZF9ucyhj dXJyZW50KTsKZGlmZiAtLWdpdCBhL2tlcm5lbC9wcmludGsvaW50ZXJuYWwuaCBiL2tlcm5lbC9w cmludGsvaW50ZXJuYWwuaAppbmRleCA2YzJhZmVlNWVmNjIuLjE5ZGNjNTgzMjY1MSAxMDA2NDQK LS0tIGEva2VybmVsL3ByaW50ay9pbnRlcm5hbC5oCisrKyBiL2tlcm5lbC9wcmludGsvaW50ZXJu YWwuaApAQCAtOCw3ICs4LDcgQEAKIAogI2lmIGRlZmluZWQoQ09ORklHX1BSSU5USykgJiYgZGVm aW5lZChDT05GSUdfU1lTQ1RMKQogdm9pZCBfX2luaXQgcHJpbnRrX3N5c2N0bF9pbml0KHZvaWQp OwotaW50IGRldmttc2dfc3lzY3RsX3NldF9sb2dsdmwoc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwKK2ludCBkZXZrbXNnX3N5c2N0bF9zZXRfbG9nbHZsKGNvbnN0IHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkgICAgICB2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKTsKICNlbHNlCiAjZGVmaW5lIHByaW50a19zeXNjdGxfaW5p dCgpIGRvIHsgfSB3aGlsZSAoMCkKZGlmZiAtLWdpdCBhL2tlcm5lbC9wcmludGsvcHJpbnRrLmMg Yi9rZXJuZWwvcHJpbnRrL3ByaW50ay5jCmluZGV4IDYyMDY4MDRkMjc1Yi4uNmQwMGU4OTc0NGU5 IDEwMDY0NAotLS0gYS9rZXJuZWwvcHJpbnRrL3ByaW50ay5jCisrKyBiL2tlcm5lbC9wcmludGsv cHJpbnRrLmMKQEAgLTE5Nyw3ICsxOTcsNyBAQCBfX3NldHVwKCJwcmludGsuZGV2a21zZz0iLCBj b250cm9sX2Rldmttc2cpOwogCiBjaGFyIGRldmttc2dfbG9nX3N0cltERVZLTVNHX1NUUl9NQVhf U0laRV0gPSAicmF0ZWxpbWl0IjsKICNpZiBkZWZpbmVkKENPTkZJR19QUklOVEspICYmIGRlZmlu ZWQoQ09ORklHX1NZU0NUTCkKLWludCBkZXZrbXNnX3N5c2N0bF9zZXRfbG9nbHZsKHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgZGV2a21zZ19zeXNjdGxfc2V0X2xvZ2x2 bChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICAgICAgdm9p ZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAljaGFyIG9sZF9zdHJb REVWS01TR19TVFJfTUFYX1NJWkVdOwpkaWZmIC0tZ2l0IGEva2VybmVsL3ByaW50ay9zeXNjdGwu YyBiL2tlcm5lbC9wcmludGsvc3lzY3RsLmMKaW5kZXggM2U0N2RlZGNlOWU1Li42YWFkZGI5MDE0 OWYgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9wcmludGsvc3lzY3RsLmMKKysrIGIva2VybmVsL3ByaW50 ay9zeXNjdGwuYwpAQCAtMTEsOCArMTEsOSBAQAogCiBzdGF0aWMgY29uc3QgaW50IHRlbl90aG91 c2FuZCA9IDEwMDAwOwogCi1zdGF0aWMgaW50IHByb2NfZG9pbnR2ZWNfbWlubWF4X3N5c2FkbWlu KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCQkJdm9pZCAqYnVmZmVyLCBz aXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgcHJvY19kb2ludHZlY19taW5t YXhfc3lzYWRtaW4oY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCisJCQkJCSBpbnQgd3Jp dGUsIHZvaWQgKmJ1ZmZlciwKKwkJCQkJIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewog CWlmICh3cml0ZSAmJiAhY2FwYWJsZShDQVBfU1lTX0FETUlOKSkKIAkJcmV0dXJuIC1FUEVSTTsK ZGlmZiAtLWdpdCBhL2tlcm5lbC9zY2hlZC9jb3JlLmMgYi9rZXJuZWwvc2NoZWQvY29yZS5jCmlu ZGV4IDVmOWQzMmExMTBmOS4uZDY1ZjIxYzI3MzA0IDEwMDY0NAotLS0gYS9rZXJuZWwvc2NoZWQv Y29yZS5jCisrKyBiL2tlcm5lbC9zY2hlZC9jb3JlLmMKQEAgLTE4MzUsNyArMTgzNSw3IEBAIHN0 YXRpYyB2b2lkIHVjbGFtcF9zeW5jX3V0aWxfbWluX3J0X2RlZmF1bHQodm9pZCkKIAkJdWNsYW1w X3VwZGF0ZV91dGlsX21pbl9ydF9kZWZhdWx0KHApOwogfQogCi1zdGF0aWMgaW50IHN5c2N0bF9z Y2hlZF91Y2xhbXBfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAor c3RhdGljIGludCBzeXNjdGxfc2NoZWRfdWNsYW1wX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwg bG9mZl90ICpwcG9zKQogewogCWJvb2wgdXBkYXRlX3Jvb3RfdGcgPSBmYWxzZTsKQEAgLTQ2MDMs NyArNDYwMyw3IEBAIHN0YXRpYyB2b2lkIHJlc2V0X21lbW9yeV90aWVyaW5nKHZvaWQpCiAJfQog fQogCi1zdGF0aWMgaW50IHN5c2N0bF9udW1hX2JhbGFuY2luZyhzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBzeXNjdGxfbnVtYV9iYWxhbmNpbmcoY29uc3Qg c3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAgdm9pZCAqYnVmZmVyLCBz aXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgY3RsX3RhYmxlIHQ7CkBAIC00 NjcyLDggKzQ2NzIsOCBAQCBzdGF0aWMgaW50IF9faW5pdCBzZXR1cF9zY2hlZHN0YXRzKGNoYXIg KnN0cikKIF9fc2V0dXAoInNjaGVkc3RhdHM9Iiwgc2V0dXBfc2NoZWRzdGF0cyk7CiAKICNpZmRl ZiBDT05GSUdfUFJPQ19TWVNDVEwKLXN0YXRpYyBpbnQgc3lzY3RsX3NjaGVkc3RhdHMoc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAotCQlzaXplX3QgKmxl bnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgc3lzY3RsX3NjaGVkc3RhdHMoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKKwkJdm9pZCAqYnVmZmVyLCBzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgY3RsX3RhYmxlIHQ7CiAJaW50IGVycjsK ZGlmZiAtLWdpdCBhL2tlcm5lbC9zY2hlZC9ydC5jIGIva2VybmVsL3NjaGVkL3J0LmMKaW5kZXgg YWE0YzFjODc0ZmE0Li4zZjhjMDQ2NzU1ZmQgMTAwNjQ0Ci0tLSBhL2tlcm5lbC9zY2hlZC9ydC5j CisrKyBiL2tlcm5lbC9zY2hlZC9ydC5jCkBAIC0yNiwxMCArMjYsMTAgQEAgaW50IHN5c2N0bF9z Y2hlZF9ydF9ydW50aW1lID0gOTUwMDAwOwogCiAjaWZkZWYgQ09ORklHX1NZU0NUTAogc3RhdGlj IGludCBzeXNjdGxfc2NoZWRfcnJfdGltZXNsaWNlID0gKE1TRUNfUEVSX1NFQyAqIFJSX1RJTUVT TElDRSkgLyBIWjsKLXN0YXRpYyBpbnQgc2NoZWRfcnRfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCi0JCXNpemVfdCAqbGVucCwgbG9mZl90 ICpwcG9zKTsKLXN0YXRpYyBpbnQgc2NoZWRfcnJfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCi0JCXNpemVfdCAqbGVucCwgbG9mZl90ICpw cG9zKTsKK3N0YXRpYyBpbnQgc2NoZWRfcnRfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAorCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90 ICpwcG9zKTsKK3N0YXRpYyBpbnQgc2NoZWRfcnJfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLAorCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9m Zl90ICpwcG9zKTsKIHN0YXRpYyBzdHJ1Y3QgY3RsX3RhYmxlIHNjaGVkX3J0X3N5c2N0bHNbXSA9 IHsKIAl7CiAJCS5wcm9jbmFtZSAgICAgICA9ICJzY2hlZF9ydF9wZXJpb2RfdXMiLApAQCAtMjk1 Miw4ICsyOTUyLDggQEAgc3RhdGljIHZvaWQgc2NoZWRfcnRfZG9fZ2xvYmFsKHZvaWQpCiAJcmF3 X3NwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmRlZl9ydF9iYW5kd2lkdGgucnRfcnVudGltZV9sb2Nr LCBmbGFncyk7CiB9CiAKLXN0YXRpYyBpbnQgc2NoZWRfcnRfaGFuZGxlcihzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCi0JCXNpemVfdCAqbGVucCwgbG9m Zl90ICpwcG9zKQorc3RhdGljIGludCBzY2hlZF9ydF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCisJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpCiB7CiAJaW50IG9sZF9wZXJpb2QsIG9sZF9ydW50aW1lOwogCXN0YXRpYyBE RUZJTkVfTVVURVgobXV0ZXgpOwpAQCAtMjk5MSw4ICsyOTkxLDggQEAgc3RhdGljIGludCBzY2hl ZF9ydF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1 ZmZlciwKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IHNjaGVkX3JyX2hhbmRsZXIoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAotCQlzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgc2NoZWRfcnJfaGFuZGxlcihjb25zdCBz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorCQl2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCByZXQ7CiAJc3RhdGljIERFRklORV9NVVRF WChtdXRleCk7CmRpZmYgLS1naXQgYS9rZXJuZWwvc2NoZWQvdG9wb2xvZ3kuYyBiL2tlcm5lbC9z Y2hlZC90b3BvbG9neS5jCmluZGV4IDFkNmVlZmE0MDMyZS4uMmI1MmYzNGRjMzVjIDEwMDY0NAot LS0gYS9rZXJuZWwvc2NoZWQvdG9wb2xvZ3kuYworKysgYi9rZXJuZWwvc2NoZWQvdG9wb2xvZ3ku YwpAQCAtMjg1LDcgKzI4NSw3IEBAIHZvaWQgcmVidWlsZF9zY2hlZF9kb21haW5zX2VuZXJneSh2 b2lkKQogfQogCiAjaWZkZWYgQ09ORklHX1BST0NfU1lTQ1RMCi1zdGF0aWMgaW50IHNjaGVkX2Vu ZXJneV9hd2FyZV9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitz dGF0aWMgaW50IHNjaGVkX2VuZXJneV9hd2FyZV9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2Zm X3QgKnBwb3MpCiB7CiAJaW50IHJldCwgc3RhdGU7CmRpZmYgLS1naXQgYS9rZXJuZWwvc2VjY29t cC5jIGIva2VybmVsL3NlY2NvbXAuYwppbmRleCA3ZWQ3MjcyM2ZiOGEuLjk3YTNkMGU4MWFjMSAx MDA2NDQKLS0tIGEva2VybmVsL3NlY2NvbXAuYworKysgYi9rZXJuZWwvc2VjY29tcC5jCkBAIC0y MzM0LDcgKzIzMzQsNyBAQCBzdGF0aWMgYm9vbCBzZWNjb21wX2FjdGlvbnNfbG9nZ2VkX2Zyb21f bmFtZXModTMyICphY3Rpb25zX2xvZ2dlZCwgY2hhciAqbmFtZXMpCiAJcmV0dXJuIHRydWU7CiB9 CiAKLXN0YXRpYyBpbnQgcmVhZF9hY3Rpb25zX2xvZ2dlZChzdHJ1Y3QgY3RsX3RhYmxlICpyb190 YWJsZSwgdm9pZCAqYnVmZmVyLAorc3RhdGljIGludCByZWFkX2FjdGlvbnNfbG9nZ2VkKGNvbnN0 IHN0cnVjdCBjdGxfdGFibGUgKnJvX3RhYmxlLCB2b2lkICpidWZmZXIsCiAJCQkgICAgICAgc2l6 ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJY2hhciBuYW1lc1tzaXplb2Yoc2VjY29tcF9h Y3Rpb25zX2F2YWlsKV07CkBAIC0yMzUyLDcgKzIzNTIsNyBAQCBzdGF0aWMgaW50IHJlYWRfYWN0 aW9uc19sb2dnZWQoc3RydWN0IGN0bF90YWJsZSAqcm9fdGFibGUsIHZvaWQgKmJ1ZmZlciwKIAly ZXR1cm4gcHJvY19kb3N0cmluZygmdGFibGUsIDAsIGJ1ZmZlciwgbGVucCwgcHBvcyk7CiB9CiAK LXN0YXRpYyBpbnQgd3JpdGVfYWN0aW9uc19sb2dnZWQoc3RydWN0IGN0bF90YWJsZSAqcm9fdGFi bGUsIHZvaWQgKmJ1ZmZlciwKK3N0YXRpYyBpbnQgd3JpdGVfYWN0aW9uc19sb2dnZWQoY29uc3Qg c3RydWN0IGN0bF90YWJsZSAqcm9fdGFibGUsIHZvaWQgKmJ1ZmZlciwKIAkJCQlzaXplX3QgKmxl bnAsIGxvZmZfdCAqcHBvcywgdTMyICphY3Rpb25zX2xvZ2dlZCkKIHsKIAljaGFyIG5hbWVzW3Np emVvZihzZWNjb21wX2FjdGlvbnNfYXZhaWwpXTsKQEAgLTI0MTMsOSArMjQxMyw5IEBAIHN0YXRp YyB2b2lkIGF1ZGl0X2FjdGlvbnNfbG9nZ2VkKHUzMiBhY3Rpb25zX2xvZ2dlZCwgdTMyIG9sZF9h Y3Rpb25zX2xvZ2dlZCwKIAlyZXR1cm4gYXVkaXRfc2VjY29tcF9hY3Rpb25zX2xvZ2dlZChuZXcs IG9sZCwgIXJldCk7CiB9CiAKLXN0YXRpYyBpbnQgc2VjY29tcF9hY3Rpb25zX2xvZ2dlZF9oYW5k bGVyKHN0cnVjdCBjdGxfdGFibGUgKnJvX3RhYmxlLCBpbnQgd3JpdGUsCi0JCQkJCSAgdm9pZCAq YnVmZmVyLCBzaXplX3QgKmxlbnAsCi0JCQkJCSAgbG9mZl90ICpwcG9zKQorc3RhdGljIGludCBz ZWNjb21wX2FjdGlvbnNfbG9nZ2VkX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqcm9f dGFibGUsCisJCQkJCSAgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCisJCQkJCSAgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldDsKIApkaWZmIC0tZ2l0IGEva2VybmVsL3N0 YWNrbGVhay5jIGIva2VybmVsL3N0YWNrbGVhay5jCmluZGV4IDU1OGI5ZDZkMjhkMy4uZjY0YjJi M2QwMjQ0IDEwMDY0NAotLS0gYS9rZXJuZWwvc3RhY2tsZWFrLmMKKysrIGIva2VybmVsL3N0YWNr bGVhay5jCkBAIC0yMSw3ICsyMSw3IEBACiBzdGF0aWMgREVGSU5FX1NUQVRJQ19LRVlfRkFMU0Uo c3RhY2tfZXJhc2luZ19ieXBhc3MpOwogCiAjaWZkZWYgQ09ORklHX1NZU0NUTAotc3RhdGljIGlu dCBzdGFja19lcmFzaW5nX3N5c2N0bChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRl LAorc3RhdGljIGludCBzdGFja19lcmFzaW5nX3N5c2N0bChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAogCQkJdm9pZCBfX3VzZXIgKmJ1ZmZlciwgc2l6ZV90ICpsZW5w LCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldCA9IDA7CmRpZmYgLS1naXQgYS9rZXJuZWwvc3lz Y3RsLmMgYi9rZXJuZWwvc3lzY3RsLmMKaW5kZXggNjJkZDI3NzUyOTYwLi40ZDNlNWNlY2JjODgg MTAwNjQ0Ci0tLSBhL2tlcm5lbC9zeXNjdGwuYworKysgYi9rZXJuZWwvc3lzY3RsLmMKQEAgLTI1 Niw3ICsyNTYsNyBAQCBzdGF0aWMgYm9vbCBwcm9jX2ZpcnN0X3Bvc19ub25femVyb19pZ25vcmUo bG9mZl90ICpwcG9zLAogICoKICAqIFJldHVybnMgMCBvbiBzdWNjZXNzLgogICovCi1pbnQgcHJv Y19kb3N0cmluZyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHByb2Nf ZG9zdHJpbmcoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJICB2 b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWlmICh3cml0ZSkK QEAgLTcwMiw3ICs3MDIsNyBAQCBpbnQgZG9fcHJvY19kb3VpbnR2ZWMoY29uc3Qgc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKICAqCiAgKiBSZXR1cm5zIDAgb24gc3VjY2Vzcy4K ICAqLwotaW50IHByb2NfZG9ib29sKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs IHZvaWQgKmJ1ZmZlciwKK2ludCBwcm9jX2RvYm9vbChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiAJCXNpemVfdCAqbGVucCwgbG9mZl90ICpw cG9zKQogewogCXN0cnVjdCBjdGxfdGFibGUgdG1wOwpAQCAtNzM5LDcgKzczOSw3IEBAIGludCBw cm9jX2RvYm9vbChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZm ZXIsCiAgKgogICogUmV0dXJucyAwIG9uIHN1Y2Nlc3MuCiAgKi8KLWludCBwcm9jX2RvaW50dmVj KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKK2ludCBw cm9jX2RvaW50dmVjKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZv aWQgKmJ1ZmZlciwKIAkJICBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlyZXR1cm4g ZG9fcHJvY19kb2ludHZlYyh0YWJsZSwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcywgTlVMTCwg TlVMTCk7CkBAIC03NTgsNyArNzU4LDcgQEAgaW50IHByb2NfZG9pbnR2ZWMoc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogICoKICAqIFJldHVybnMgMCBv biBzdWNjZXNzLgogICovCi1pbnQgcHJvY19kb3VpbnR2ZWMoc3RydWN0IGN0bF90YWJsZSAqdGFi bGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAoraW50IHByb2NfZG91aW50dmVjKGNvbnN0IHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKIAkJc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJcmV0dXJuIGRvX3Byb2NfZG91aW50dmVjKHRhYmxl LCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zLApAQCAtNzY5LDcgKzc2OSw3IEBAIGludCBwcm9j X2RvdWludHZlYyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZm ZXIsCiAgKiBUYWludCB2YWx1ZXMgY2FuIG9ubHkgYmUgaW5jcmVhc2VkCiAgKiBUaGlzIG1lYW5z IHdlIGNhbiBzYWZlbHkgdXNlIGEgdGVtcG9yYXJ5LgogICovCi1zdGF0aWMgaW50IHByb2NfdGFp bnQoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY190 YWludChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICAgICAg IHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IGN0 bF90YWJsZSB0OwpAQCAtODY0LDcgKzg2NCw3IEBAIHN0YXRpYyBpbnQgZG9fcHJvY19kb2ludHZl Y19taW5tYXhfY29udihib29sICpuZWdwLCB1bnNpZ25lZCBsb25nICpsdmFscCwKICAqCiAgKiBS ZXR1cm5zIDAgb24gc3VjY2VzcyBvciAtRUlOVkFMIG9uIHdyaXRlIHdoZW4gdGhlIHJhbmdlIGNo ZWNrIGZhaWxzLgogICovCi1pbnQgcHJvY19kb2ludHZlY19taW5tYXgoc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBwcm9jX2RvaW50dmVjX21pbm1heChjb25zdCBzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IGRvX3Byb2NfZG9pbnR2ZWNfbWlubWF4 X2NvbnZfcGFyYW0gcGFyYW0gPSB7CkBAIC05MzMsNyArOTMzLDcgQEAgc3RhdGljIGludCBkb19w cm9jX2RvdWludHZlY19taW5tYXhfY29udih1bnNpZ25lZCBsb25nICpsdmFscCwKICAqCiAgKiBS ZXR1cm5zIDAgb24gc3VjY2VzcyBvciAtRVJBTkdFIG9uIHdyaXRlIHdoZW4gdGhlIHJhbmdlIGNo ZWNrIGZhaWxzLgogICovCi1pbnQgcHJvY19kb3VpbnR2ZWNfbWlubWF4KHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgcHJvY19kb3VpbnR2ZWNfbWlubWF4KGNvbnN0IHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkgIHZvaWQgKmJ1ZmZlciwgc2l6 ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IGRvX3Byb2NfZG91aW50dmVjX21p bm1heF9jb252X3BhcmFtIHBhcmFtID0gewpAQCAtOTYxLDcgKzk2MSw3IEBAIGludCBwcm9jX2Rv dWludHZlY19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKICAqCiAg KiBSZXR1cm5zIDAgb24gc3VjY2VzcyBvciBhbiBlcnJvciBvbiB3cml0ZSB3aGVuIHRoZSByYW5n ZSBjaGVjayBmYWlscy4KICAqLwotaW50IHByb2NfZG91OHZlY19taW5tYXgoc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBwcm9jX2RvdTh2ZWNfbWlubWF4KGNvbnN0IHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQl2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBjdGxfdGFibGUgdG1wOwpAQCAtMTAw NCw3ICsxMDA0LDcgQEAgaW50IHByb2NfZG91OHZlY19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKIEVYUE9SVF9TWU1CT0xfR1BMKHByb2NfZG91OHZlY19taW5tYXgp OwogCiAjaWZkZWYgQ09ORklHX01BR0lDX1NZU1JRCi1zdGF0aWMgaW50IHN5c3JxX3N5c2N0bF9o YW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHN5 c3JxX3N5c2N0bF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCiAJCQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlp bnQgdG1wLCByZXQ7CkBAIC0xMTIxLDcgKzExMjEsNyBAQCBzdGF0aWMgaW50IGRvX3Byb2NfZG91 bG9uZ3ZlY19taW5tYXgoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwK ICAqCiAgKiBSZXR1cm5zIDAgb24gc3VjY2Vzcy4KICAqLwotaW50IHByb2NfZG91bG9uZ3ZlY19t aW5tYXgoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBwcm9jX2RvdWxv bmd2ZWNfbWlubWF4KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJ CQkgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogICAgIHJl dHVybiBkb19wcm9jX2RvdWxvbmd2ZWNfbWlubWF4KHRhYmxlLCB3cml0ZSwgYnVmZmVyLCBsZW5w LCBwcG9zLCAxbCwgMWwpOwpAQCAtMTE0NCw3ICsxMTQ0LDcgQEAgaW50IHByb2NfZG91bG9uZ3Zl Y19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKICAqCiAgKiBSZXR1 cm5zIDAgb24gc3VjY2Vzcy4KICAqLwotaW50IHByb2NfZG91bG9uZ3ZlY19tc19qaWZmaWVzX21p bm1heChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHByb2NfZG91bG9u Z3ZlY19tc19qaWZmaWVzX21pbm1heChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAogCQkJCSAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBw b3MpCiB7CiAgICAgcmV0dXJuIGRvX3Byb2NfZG91bG9uZ3ZlY19taW5tYXgodGFibGUsIHdyaXRl LCBidWZmZXIsCkBAIC0xMjY1LDE0ICsxMjY1LDE0IEBAIHN0YXRpYyBpbnQgZG9fcHJvY19kb2lu dHZlY19tc19qaWZmaWVzX21pbm1heF9jb252KGJvb2wgKm5lZ3AsIHVuc2lnbmVkIGxvbmcgKmx2 CiAgKgogICogUmV0dXJucyAwIG9uIHN1Y2Nlc3MuCiAgKi8KLWludCBwcm9jX2RvaW50dmVjX2pp ZmZpZXMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBwcm9jX2RvaW50 dmVjX2ppZmZpZXMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJ CSAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKICAgICByZXR1 cm4gZG9fcHJvY19kb2ludHZlYyh0YWJsZSx3cml0ZSxidWZmZXIsbGVucCxwcG9zLAogCQkgICAg CSAgICBkb19wcm9jX2RvaW50dmVjX2ppZmZpZXNfY29udixOVUxMKTsKIH0KIAotaW50IHByb2Nf ZG9pbnR2ZWNfbXNfamlmZmllc19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKK2ludCBwcm9jX2RvaW50dmVjX21zX2ppZmZpZXNfbWlubWF4KGNvbnN0IHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IGRvX3Byb2NfZG9pbnR2ZWNfbWlubWF4X2Nv bnZfcGFyYW0gcGFyYW0gPSB7CkBAIC0xMjk4LDcgKzEyOTgsNyBAQCBpbnQgcHJvY19kb2ludHZl Y19tc19qaWZmaWVzX21pbm1heChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAog ICoKICAqIFJldHVybnMgMCBvbiBzdWNjZXNzLgogICovCi1pbnQgcHJvY19kb2ludHZlY191c2Vy aHpfamlmZmllcyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHByb2Nf ZG9pbnR2ZWNfdXNlcmh6X2ppZmZpZXMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK IHsKIAlyZXR1cm4gZG9fcHJvY19kb2ludHZlYyh0YWJsZSwgd3JpdGUsIGJ1ZmZlciwgbGVucCwg cHBvcywKQEAgLTEzMjEsMTUgKzEzMjEsMTUgQEAgaW50IHByb2NfZG9pbnR2ZWNfdXNlcmh6X2pp ZmZpZXMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKICAqCiAgKiBSZXR1cm5z IDAgb24gc3VjY2Vzcy4KICAqLwotaW50IHByb2NfZG9pbnR2ZWNfbXNfamlmZmllcyhzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCi0JCXNpemVfdCAqbGVu cCwgbG9mZl90ICpwcG9zKQoraW50IHByb2NfZG9pbnR2ZWNfbXNfamlmZmllcyhjb25zdCBzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorCQl2b2lkICpidWZmZXIsIHNpemVfdCAq bGVucCwgbG9mZl90ICpwcG9zKQogewogCXJldHVybiBkb19wcm9jX2RvaW50dmVjKHRhYmxlLCB3 cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zLAogCQkJCWRvX3Byb2NfZG9pbnR2ZWNfbXNfamlmZmll c19jb252LCBOVUxMKTsKIH0KIAotc3RhdGljIGludCBwcm9jX2RvX2NhZF9waWQoc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAotCQlzaXplX3QgKmxlbnAs IGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgcHJvY19kb19jYWRfcGlkKGNvbnN0IHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCisJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5w LCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IHBpZCAqbmV3X3BpZDsKIAlwaWRfdCB0bXA7CkBA IC0xMzY3LDcgKzEzNjcsNyBAQCBzdGF0aWMgaW50IHByb2NfZG9fY2FkX3BpZChzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiAgKgogICogUmV0dXJucyAw IG9uIHN1Y2Nlc3MuCiAgKi8KLWludCBwcm9jX2RvX2xhcmdlX2JpdG1hcChzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHByb2NfZG9fbGFyZ2VfYml0bWFwKGNvbnN0IHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkgdm9pZCAqYnVmZmVyLCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgZXJyID0gMDsKQEAgLTE0OTksODUgKzE0 OTksODUgQEAgaW50IHByb2NfZG9fbGFyZ2VfYml0bWFwKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsCiAKICNlbHNlIC8qIENPTkZJR19QUk9DX1NZU0NUTCAqLwogCi1pbnQgcHJv Y19kb3N0cmluZyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHByb2Nf ZG9zdHJpbmcoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJICB2 b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXJldHVybiAtRU5P U1lTOwogfQogCi1pbnQgcHJvY19kb2Jvb2woc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKK2ludCBwcm9jX2RvYm9vbChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAogCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewog CXJldHVybiAtRU5PU1lTOwogfQogCi1pbnQgcHJvY19kb2ludHZlYyhzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHByb2NfZG9pbnR2ZWMoY29uc3Qgc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwg bG9mZl90ICpwcG9zKQogewogCXJldHVybiAtRU5PU1lTOwogfQogCi1pbnQgcHJvY19kb3VpbnR2 ZWMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBwcm9jX2RvdWludHZl Yyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkgIHZvaWQgKmJ1 ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJcmV0dXJuIC1FTk9TWVM7CiB9 CiAKLWludCBwcm9jX2RvaW50dmVjX21pbm1heChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAoraW50IHByb2NfZG9pbnR2ZWNfbWlubWF4KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCiAJCSAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9m Zl90ICpwcG9zKQogewogCXJldHVybiAtRU5PU1lTOwogfQogCi1pbnQgcHJvY19kb3VpbnR2ZWNf bWlubWF4KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgcHJvY19kb3Vp bnR2ZWNfbWlubWF4KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJ CQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJcmV0dXJu IC1FTk9TWVM7CiB9CiAKLWludCBwcm9jX2RvdTh2ZWNfbWlubWF4KHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgcHJvY19kb3U4dmVjX21pbm1heChjb25zdCBzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxl bnAsIGxvZmZfdCAqcHBvcykKIHsKIAlyZXR1cm4gLUVOT1NZUzsKIH0KIAotaW50IHByb2NfZG9p bnR2ZWNfamlmZmllcyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHBy b2NfZG9pbnR2ZWNfamlmZmllcyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdy aXRlLAogCQkgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsK IAlyZXR1cm4gLUVOT1NZUzsKIH0KIAotaW50IHByb2NfZG9pbnR2ZWNfbXNfamlmZmllc19taW5t YXgoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBwcm9jX2RvaW50dmVj X21zX2ppZmZpZXNfbWlubWF4KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCiAJCQkJICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7 CiAJcmV0dXJuIC1FTk9TWVM7CiB9CiAKLWludCBwcm9jX2RvaW50dmVjX3VzZXJoel9qaWZmaWVz KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitpbnQgcHJvY19kb2ludHZlY191 c2VyaHpfamlmZmllcyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAog CQkgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlyZXR1 cm4gLUVOT1NZUzsKIH0KIAotaW50IHByb2NfZG9pbnR2ZWNfbXNfamlmZmllcyhzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IHByb2NfZG9pbnR2ZWNfbXNfamlmZmllcyhj b25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICAgICB2b2lkICpi dWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXJldHVybiAtRU5PU1lTOwog fQogCi1pbnQgcHJvY19kb3Vsb25ndmVjX21pbm1heChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwg aW50IHdyaXRlLAoraW50IHByb2NfZG91bG9uZ3ZlY19taW5tYXgoY29uc3Qgc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5w LCBsb2ZmX3QgKnBwb3MpCiB7CiAJcmV0dXJuIC1FTk9TWVM7CiB9CiAKLWludCBwcm9jX2RvdWxv bmd2ZWNfbXNfamlmZmllc19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwKK2ludCBwcm9jX2RvdWxvbmd2ZWNfbXNfamlmZmllc19taW5tYXgoY29uc3Qgc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQkgICAgICB2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXJldHVybiAtRU5PU1lTOwogfQogCi1pbnQgcHJv Y19kb19sYXJnZV9iaXRtYXAoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2lu dCBwcm9jX2RvX2xhcmdlX2JpdG1hcChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAogCQkJIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7 CiAJcmV0dXJuIC1FTk9TWVM7CkBAIC0xNTg2LDcgKzE1ODYsNyBAQCBpbnQgcHJvY19kb19sYXJn ZV9iaXRtYXAoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKICNlbmRpZiAvKiBD T05GSUdfUFJPQ19TWVNDVEwgKi8KIAogI2lmIGRlZmluZWQoQ09ORklHX1NZU0NUTCkKLWludCBw cm9jX2RvX3N0YXRpY19rZXkoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2lu dCBwcm9jX2RvX3N0YXRpY19rZXkoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKIAkJICAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3Mp CiB7CiAJc3RydWN0IHN0YXRpY19rZXkgKmtleSA9IChzdHJ1Y3Qgc3RhdGljX2tleSAqKXRhYmxl LT5kYXRhOwpkaWZmIC0tZ2l0IGEva2VybmVsL3RpbWUvdGltZXIuYyBiL2tlcm5lbC90aW1lL3Rp bWVyLmMKaW5kZXggNDgyODhkZDRhMTAyLi42NGIwZDhhMGFhMGYgMTAwNjQ0Ci0tLSBhL2tlcm5l bC90aW1lL3RpbWVyLmMKKysrIGIva2VybmVsL3RpbWUvdGltZXIuYwpAQCAtMjg5LDcgKzI4OSw3 IEBAIHN0YXRpYyB2b2lkIHRpbWVyc191cGRhdGVfbWlncmF0aW9uKHZvaWQpCiB9CiAKICNpZmRl ZiBDT05GSUdfU1lTQ1RMCi1zdGF0aWMgaW50IHRpbWVyX21pZ3JhdGlvbl9oYW5kbGVyKHN0cnVj dCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHRpbWVyX21pZ3JhdGlv bl9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkg ICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgcmV0 OwpkaWZmIC0tZ2l0IGEva2VybmVsL3RyYWNlL2Z0cmFjZS5jIGIva2VybmVsL3RyYWNlL2Z0cmFj ZS5jCmluZGV4IGY3ODNkN2IyNzlmNi4uZGIxZWJlNzA4NjZhIDEwMDY0NAotLS0gYS9rZXJuZWwv dHJhY2UvZnRyYWNlLmMKKysrIGIva2VybmVsL3RyYWNlL2Z0cmFjZS5jCkBAIC04MjIzLDcgKzgy MjMsNyBAQCBzdGF0aWMgYm9vbCBpc19wZXJtYW5lbnRfb3BzX3JlZ2lzdGVyZWQodm9pZCkKIH0K IAogc3RhdGljIGludAotZnRyYWNlX2VuYWJsZV9zeXNjdGwoc3RydWN0IGN0bF90YWJsZSAqdGFi bGUsIGludCB3cml0ZSwKK2Z0cmFjZV9lbmFibGVfc3lzY3RsKGNvbnN0IHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAs IGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgcmV0ID0gLUVOT0RFVjsKZGlmZiAtLWdpdCBhL2tlcm5l bC90cmFjZS90cmFjZS5jIGIva2VybmVsL3RyYWNlL3RyYWNlLmMKaW5kZXggMjMzZDFhZjM5ZmZm Li4yZTZhMGIxMTQyZDMgMTAwNjQ0Ci0tLSBhL2tlcm5lbC90cmFjZS90cmFjZS5jCisrKyBiL2tl cm5lbC90cmFjZS90cmFjZS5jCkBAIC0yNzYxLDcgKzI3NjEsNyBAQCBzdGF0aWMgdm9pZCBvdXRw dXRfcHJpbnRrKHN0cnVjdCB0cmFjZV9ldmVudF9idWZmZXIgKmZidWZmZXIpCiAJcmF3X3NwaW5f dW5sb2NrX2lycXJlc3RvcmUoJnRyYWNlcG9pbnRfaXRlcl9sb2NrLCBmbGFncyk7CiB9CiAKLWlu dCB0cmFjZXBvaW50X3ByaW50a19zeXNjdGwoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKK2ludCB0cmFjZXBvaW50X3ByaW50a19zeXNjdGwoY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAs CiAJCQkgICAgIGxvZmZfdCAqcHBvcykKIHsKZGlmZiAtLWdpdCBhL2tlcm5lbC90cmFjZS90cmFj ZV9ldmVudHNfdXNlci5jIGIva2VybmVsL3RyYWNlL3RyYWNlX2V2ZW50c191c2VyLmMKaW5kZXgg MzA0Y2VlZDlmZDdkLi5hMmYwNDhjODM4MmYgMTAwNjQ0Ci0tLSBhL2tlcm5lbC90cmFjZS90cmFj ZV9ldmVudHNfdXNlci5jCisrKyBiL2tlcm5lbC90cmFjZS90cmFjZV9ldmVudHNfdXNlci5jCkBA IC0yODExLDcgKzI4MTEsNyBAQCBzdGF0aWMgaW50IGNyZWF0ZV91c2VyX3RyYWNlZnModm9pZCkK IAlyZXR1cm4gLUVOT0RFVjsKIH0KIAotc3RhdGljIGludCBzZXRfbWF4X3VzZXJfZXZlbnRzX3N5 c2N0bChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBzZXRf bWF4X3VzZXJfZXZlbnRzX3N5c2N0bChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAogCQkJCSAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBw b3MpCiB7CiAJaW50IHJldDsKZGlmZiAtLWdpdCBhL2tlcm5lbC90cmFjZS90cmFjZV9zdGFjay5j IGIva2VybmVsL3RyYWNlL3RyYWNlX3N0YWNrLmMKaW5kZXggNWE0OGRiYTkxMmVhLi43Zjk1NzJh MzczMzMgMTAwNjQ0Ci0tLSBhL2tlcm5lbC90cmFjZS90cmFjZV9zdGFjay5jCisrKyBiL2tlcm5l bC90cmFjZS90cmFjZV9zdGFjay5jCkBAIC01MTQsNyArNTE0LDcgQEAgc3RhdGljIGNvbnN0IHN0 cnVjdCBmaWxlX29wZXJhdGlvbnMgc3RhY2tfdHJhY2VfZmlsdGVyX2ZvcHMgPSB7CiAjZW5kaWYg LyogQ09ORklHX0RZTkFNSUNfRlRSQUNFICovCiAKIGludAotc3RhY2tfdHJhY2Vfc3lzY3RsKHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKK3N0YWNrX3Ry YWNlX3N5c2N0bChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lk ICpidWZmZXIsCiAJCSAgIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCB3YXNf ZW5hYmxlZDsKZGlmZiAtLWdpdCBhL2tlcm5lbC91bWguYyBiL2tlcm5lbC91bWguYwppbmRleCA1 OThiM2ZmZTE1MjIuLmZmMWYxM2EyN2QyOSAxMDA2NDQKLS0tIGEva2VybmVsL3VtaC5jCisrKyBi L2tlcm5lbC91bWguYwpAQCAtNDk1LDcgKzQ5NSw3IEBAIGludCBjYWxsX3VzZXJtb2RlaGVscGVy KGNvbnN0IGNoYXIgKnBhdGgsIGNoYXIgKiphcmd2LCBjaGFyICoqZW52cCwgaW50IHdhaXQpCiBF WFBPUlRfU1lNQk9MKGNhbGxfdXNlcm1vZGVoZWxwZXIpOwogCiAjaWYgZGVmaW5lZChDT05GSUdf U1lTQ1RMKQotc3RhdGljIGludCBwcm9jX2NhcF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRh YmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2NfY2FwX2hhbmRsZXIoY29uc3Qgc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSB2b2lkICpidWZmZXIsIHNpemVfdCAq bGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBjdGxfdGFibGUgdDsKZGlmZiAtLWdpdCBh L2tlcm5lbC91dHNuYW1lX3N5c2N0bC5jIGIva2VybmVsL3V0c25hbWVfc3lzY3RsLmMKaW5kZXgg MDRlNDUxM2YyOTg1Li43MjgyZjYxYTg2NTAgMTAwNjQ0Ci0tLSBhL2tlcm5lbC91dHNuYW1lX3N5 c2N0bC5jCisrKyBiL2tlcm5lbC91dHNuYW1lX3N5c2N0bC5jCkBAIC0zMCw3ICszMCw3IEBAIHN0 YXRpYyB2b2lkICpnZXRfdXRzKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlKQogICoJU3Bl Y2lhbCBjYXNlIG9mIGRvc3RyaW5nIGZvciB0aGUgVVRTIHN0cnVjdHVyZS4gVGhpcyBoYXMgbG9j a3MKICAqCXRvIG9ic2VydmUuIFNob3VsZCB0aGlzIGJlIGluIGtlcm5lbC9zeXMuYyA/Pz8/CiAg Ki8KLXN0YXRpYyBpbnQgcHJvY19kb191dHNfc3RyaW5nKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2NfZG9fdXRzX3N0cmluZyhjb25zdCBzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IGN0bF90YWJsZSB1dHNfdGFibGU7CmRpZmYg LS1naXQgYS9rZXJuZWwvd2F0Y2hkb2cuYyBiL2tlcm5lbC93YXRjaGRvZy5jCmluZGV4IDk0MTIz NjgyOGRlOC4uNmNiZGQxMTQzZjA2IDEwMDY0NAotLS0gYS9rZXJuZWwvd2F0Y2hkb2cuYworKysg Yi9rZXJuZWwvd2F0Y2hkb2cuYwpAQCAtOTc0LDcgKzk3NCw3IEBAIHN0YXRpYyB2b2lkIHByb2Nf d2F0Y2hkb2dfdXBkYXRlKHZvaWQpCiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQog ICogcHJvY19zb2Z0X3dhdGNoZG9nIHwgd2F0Y2hkb2dfc29mdGxvY2t1cF91c2VyX2VuYWJsZWQg fCBXQVRDSERPR19TT0ZUT0NLVVBfRU5BQkxFRAogICovCi1zdGF0aWMgaW50IHByb2Nfd2F0Y2hk b2dfY29tbW9uKGludCB3aGljaCwgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwK K3N0YXRpYyBpbnQgcHJvY193YXRjaGRvZ19jb21tb24oaW50IHdoaWNoLCBjb25zdCBzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IGVyciwgb2xkLCAqcGFyYW0gPSB0YWJsZS0+ZGF0 YTsKQEAgLTEwMDEsNyArMTAwMSw3IEBAIHN0YXRpYyBpbnQgcHJvY193YXRjaGRvZ19jb21tb24o aW50IHdoaWNoLCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogLyoKICAqIC9w cm9jL3N5cy9rZXJuZWwvd2F0Y2hkb2cKICAqLwotc3RhdGljIGludCBwcm9jX3dhdGNoZG9nKHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2Nfd2F0Y2hk b2coY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSB2b2lkICpi dWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXJldHVybiBwcm9jX3dhdGNo ZG9nX2NvbW1vbihXQVRDSERPR19IQVJETE9DS1VQX0VOQUJMRUQgfApAQCAtMTAxMiw3ICsxMDEy LDcgQEAgc3RhdGljIGludCBwcm9jX3dhdGNoZG9nKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCiAvKgogICogL3Byb2Mvc3lzL2tlcm5lbC9ubWlfd2F0Y2hkb2cKICAqLwotc3Rh dGljIGludCBwcm9jX25taV93YXRjaGRvZyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdy aXRlLAorc3RhdGljIGludCBwcm9jX25taV93YXRjaGRvZyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwg bG9mZl90ICpwcG9zKQogewogCWlmICghd2F0Y2hkb2dfaGFyZGxvY2t1cF9hdmFpbGFibGUgJiYg d3JpdGUpCkBAIC0xMDI1LDcgKzEwMjUsNyBAQCBzdGF0aWMgaW50IHByb2Nfbm1pX3dhdGNoZG9n KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAvKgogICogL3Byb2Mvc3lzL2tl cm5lbC9zb2Z0X3dhdGNoZG9nCiAgKi8KLXN0YXRpYyBpbnQgcHJvY19zb2Z0X3dhdGNoZG9nKHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2Nfc29mdF93 YXRjaGRvZyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICAg ICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlyZXR1cm4g cHJvY193YXRjaGRvZ19jb21tb24oV0FUQ0hET0dfU09GVE9DS1VQX0VOQUJMRUQsCkBAIC0xMDM2 LDcgKzEwMzYsNyBAQCBzdGF0aWMgaW50IHByb2Nfc29mdF93YXRjaGRvZyhzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLAogLyoKICAqIC9wcm9jL3N5cy9rZXJuZWwvd2F0Y2hkb2df dGhyZXNoCiAgKi8KLXN0YXRpYyBpbnQgcHJvY193YXRjaGRvZ190aHJlc2goc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY193YXRjaGRvZ190aHJlc2go Y29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQl2b2lkICpidWZm ZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCBlcnIsIG9sZDsKQEAgLTEw NTksNyArMTA1OSw3IEBAIHN0YXRpYyBpbnQgcHJvY193YXRjaGRvZ190aHJlc2goc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKICAqIHVzZXIgdG8gc3BlY2lmeSBhIG1hc2sgdGhh dCB3aWxsIGluY2x1ZGUgY3B1cyB0aGF0IGhhdmUgbm90IHlldAogICogYmVlbiBicm91Z2h0IG9u bGluZSwgaWYgZGVzaXJlZC4KICAqLwotc3RhdGljIGludCBwcm9jX3dhdGNoZG9nX2NwdW1hc2so c3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY193YXRj aGRvZ19jcHVtYXNrKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJ CQkJIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IGVy cjsKZGlmZiAtLWdpdCBhL21tL2NvbXBhY3Rpb24uYyBiL21tL2NvbXBhY3Rpb24uYwppbmRleCBl NzMxZDQ1YmVmYzcuLmVhNTk1N2MyZGEzOSAxMDA2NDQKLS0tIGEvbW0vY29tcGFjdGlvbi5jCisr KyBiL21tL2NvbXBhY3Rpb24uYwpAQCAtMjk1NSw3ICsyOTU1LDcgQEAgc3RhdGljIGludCBjb21w YWN0X25vZGVzKHZvaWQpCiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgY29tcGFjdGlvbl9w cm9hY3RpdmVuZXNzX3N5c2N0bF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsCitzdGF0aWMgaW50IGNvbXBhY3Rpb25fcHJvYWN0aXZlbmVzc19zeXNjdGxfaGFuZGxl cihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQl2b2lkICpidWZm ZXIsIHNpemVfdCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJjLCBuaWQ7CkBAIC0y OTg1LDcgKzI5ODUsNyBAQCBzdGF0aWMgaW50IGNvbXBhY3Rpb25fcHJvYWN0aXZlbmVzc19zeXNj dGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50CiAgKiBUaGlzIGlzIHRoZSBl bnRyeSBwb2ludCBmb3IgY29tcGFjdGluZyBhbGwgbm9kZXMgdmlhCiAgKiAvcHJvYy9zeXMvdm0v Y29tcGFjdF9tZW1vcnkKICAqLwotc3RhdGljIGludCBzeXNjdGxfY29tcGFjdGlvbl9oYW5kbGVy KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHN5c2N0bF9j b21wYWN0aW9uX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwKIAkJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykKIHsKIAlp bnQgcmV0OwpAQCAtMzI5Niw3ICszMjk2LDcgQEAgc3RhdGljIGludCBrY29tcGFjdGRfY3B1X29u bGluZSh1bnNpZ25lZCBpbnQgY3B1KQogCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IHByb2Nf ZG9pbnR2ZWNfbWlubWF4X3dhcm5fUlRfY2hhbmdlKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLAor c3RhdGljIGludCBwcm9jX2RvaW50dmVjX21pbm1heF93YXJuX1JUX2NoYW5nZShjb25zdCBzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwKIAkJaW50IHdyaXRlLCB2b2lkICpidWZmZXIsIHNpemVfdCAq bGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCByZXQsIG9sZDsKZGlmZiAtLWdpdCBhL21tL2h1 Z2V0bGIuYyBiL21tL2h1Z2V0bGIuYwppbmRleCA4ZDEyY2U2M2E0MzkuLjliMDgzNDYzNGU4YiAx MDA2NDQKLS0tIGEvbW0vaHVnZXRsYi5jCisrKyBiL21tL2h1Z2V0bGIuYwpAQCAtNDk1MCw3ICs0 OTUwLDcgQEAgc3RhdGljIGludCBodWdldGxiX3N5c2N0bF9oYW5kbGVyX2NvbW1vbihib29sIG9i ZXlfbWVtcG9saWN5LAogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgaHVnZXRsYl9zeXNj dGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGlu dCBodWdldGxiX3N5c2N0bF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCiAJCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBv cykKIHsKIApAQCAtNDk1OSwxNSArNDk1OSwxNSBAQCBzdGF0aWMgaW50IGh1Z2V0bGJfc3lzY3Rs X2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIH0KIAogI2lmZGVm IENPTkZJR19OVU1BCi1zdGF0aWMgaW50IGh1Z2V0bGJfbWVtcG9saWN5X3N5c2N0bF9oYW5kbGVy KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCQkgIHZvaWQgKmJ1ZmZlciwg c2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgaHVnZXRsYl9tZW1wb2xp Y3lfc3lzY3RsX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsCisJCQlpbnQg d3JpdGUsIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykKIHsKIAly ZXR1cm4gaHVnZXRsYl9zeXNjdGxfaGFuZGxlcl9jb21tb24odHJ1ZSwgdGFibGUsIHdyaXRlLAog CQkJCQkJCWJ1ZmZlciwgbGVuZ3RoLCBwcG9zKTsKIH0KICNlbmRpZiAvKiBDT05GSUdfTlVNQSAq LwogCi1zdGF0aWMgaW50IGh1Z2V0bGJfb3ZlcmNvbW1pdF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFi bGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IGh1Z2V0bGJfb3ZlcmNvbW1pdF9oYW5k bGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCXZvaWQgKmJ1 ZmZlciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgaHN0YXRlICpo ID0gJmRlZmF1bHRfaHN0YXRlOwpkaWZmIC0tZ2l0IGEvbW0vcGFnZS13cml0ZWJhY2suYyBiL21t L3BhZ2Utd3JpdGViYWNrLmMKaW5kZXggZGI1NzY5Y2IxMmZkLi5iODZhZWNlNjcyYmYgMTAwNjQ0 Ci0tLSBhL21tL3BhZ2Utd3JpdGViYWNrLmMKKysrIGIvbW0vcGFnZS13cml0ZWJhY2suYwpAQCAt NDkzLDggKzQ5Myw4IEBAIGJvb2wgbm9kZV9kaXJ0eV9vayhzdHJ1Y3QgcGdsaXN0X2RhdGEgKnBn ZGF0KQogfQogCiAjaWZkZWYgQ09ORklHX1NZU0NUTAotc3RhdGljIGludCBkaXJ0eV9iYWNrZ3Jv dW5kX3JhdGlvX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKLQkJ dm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgZGly dHlfYmFja2dyb3VuZF9yYXRpb19oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LAorCQlpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3Mp CiB7CiAJaW50IHJldDsKIApAQCAtNTA0LDggKzUwNCw4IEBAIHN0YXRpYyBpbnQgZGlydHlfYmFj a2dyb3VuZF9yYXRpb19oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs CiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBkaXJ0eV9iYWNrZ3JvdW5kX2J5dGVzX2hh bmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKLQkJdm9pZCAqYnVmZmVy LCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKK3N0YXRpYyBpbnQgZGlydHlfYmFja2dyb3Vu ZF9ieXRlc19oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLAorCQlpbnQgd3Jp dGUsIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJl dDsKIApAQCAtNTE1LDggKzUxNSw4IEBAIHN0YXRpYyBpbnQgZGlydHlfYmFja2dyb3VuZF9ieXRl c19oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJl dDsKIH0KIAotc3RhdGljIGludCBkaXJ0eV9yYXRpb19oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKLQkJc2l6ZV90ICpsZW5wLCBsb2ZmX3Qg KnBwb3MpCitzdGF0aWMgaW50IGRpcnR5X3JhdGlvX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwKKwkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlpbnQgb2xkX3JhdGlvID0gdm1fZGlydHlfcmF0aW87CiAJaW50IHJl dDsKQEAgLTUyOSw3ICs1MjksNyBAQCBzdGF0aWMgaW50IGRpcnR5X3JhdGlvX2hhbmRsZXIoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAogCXJldHVybiBy ZXQ7CiB9CiAKLXN0YXRpYyBpbnQgZGlydHlfYnl0ZXNfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBkaXJ0eV9ieXRlc19oYW5kbGVyKGNvbnN0 IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCXZvaWQgKmJ1ZmZlciwgc2l6 ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJdW5zaWduZWQgbG9uZyBvbGRfYnl0ZXMgPSB2 bV9kaXJ0eV9ieXRlczsKQEAgLTIxNTEsOCArMjE1MSw4IEBAIGJvb2wgd2Jfb3Zlcl9iZ190aHJl c2goc3RydWN0IGJkaV93cml0ZWJhY2sgKndiKQogLyoKICAqIHN5c2N0bCBoYW5kbGVyIGZvciAv cHJvYy9zeXMvdm0vZGlydHlfd3JpdGViYWNrX2NlbnRpc2VjcwogICovCi1zdGF0aWMgaW50IGRp cnR5X3dyaXRlYmFja19jZW50aXNlY3NfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwg aW50IHdyaXRlLAotCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3Mp CitzdGF0aWMgaW50IGRpcnR5X3dyaXRlYmFja19jZW50aXNlY3NfaGFuZGxlcihjb25zdCBzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwKKwkJaW50IHdyaXRlLCB2b2lkICpidWZmZXIsIHNpemVfdCAq bGVuZ3RoLCBsb2ZmX3QgKnBwb3MpCiB7CiAJdW5zaWduZWQgaW50IG9sZF9pbnRlcnZhbCA9IGRp cnR5X3dyaXRlYmFja19pbnRlcnZhbDsKIAlpbnQgcmV0OwpkaWZmIC0tZ2l0IGEvbW0vcGFnZV9h bGxvYy5jIGIvbW0vcGFnZV9hbGxvYy5jCmluZGV4IDMzZDRhMWJlOTI3Yi4uOTgxMGVhMDAwZTcx IDEwMDY0NAotLS0gYS9tbS9wYWdlX2FsbG9jLmMKKysrIGIvbW0vcGFnZV9hbGxvYy5jCkBAIC01 MTM1LDcgKzUxMzUsNyBAQCBzdGF0aWMgY2hhciBudW1hX3pvbmVsaXN0X29yZGVyW10gPSAiTm9k ZSI7CiAvKgogICogc3lzY3RsIGhhbmRsZXIgZm9yIG51bWFfem9uZWxpc3Rfb3JkZXIKICAqLwot c3RhdGljIGludCBudW1hX3pvbmVsaXN0X29yZGVyX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgbnVtYV96b25lbGlzdF9vcmRlcl9oYW5kbGVy KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCXZvaWQgKmJ1ZmZl ciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykKIHsKIAlpZiAod3JpdGUpCkBAIC02MTAy LDcgKzYxMDIsNyBAQCBwb3N0Y29yZV9pbml0Y2FsbChpbml0X3Blcl96b25lX3dtYXJrX21pbikK ICAqCXRoYXQgd2UgY2FuIGNhbGwgdHdvIGhlbHBlciBmdW5jdGlvbnMgd2hlbmV2ZXIgbWluX2Zy ZWVfa2J5dGVzCiAgKgljaGFuZ2VzLgogICovCi1zdGF0aWMgaW50IG1pbl9mcmVlX2tieXRlc19z eXNjdGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGlj IGludCBtaW5fZnJlZV9rYnl0ZXNfc3lzY3RsX2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKIAkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbmd0aCwgbG9m Zl90ICpwcG9zKQogewogCWludCByYzsKQEAgLTYxMTgsNyArNjExOCw3IEBAIHN0YXRpYyBpbnQg bWluX2ZyZWVfa2J5dGVzX3N5c2N0bF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgd2F0ZXJtYXJrX3NjYWxlX2Zh Y3Rvcl9zeXNjdGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAor c3RhdGljIGludCB3YXRlcm1hcmtfc2NhbGVfZmFjdG9yX3N5c2N0bF9oYW5kbGVyKGNvbnN0IHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90 ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgcmM7CkBAIC02MTQ4LDcgKzYxNDgsNyBA QCBzdGF0aWMgdm9pZCBzZXR1cF9taW5fdW5tYXBwZWRfcmF0aW8odm9pZCkKIH0KIAogCi1zdGF0 aWMgaW50IHN5c2N0bF9taW5fdW5tYXBwZWRfcmF0aW9fc3lzY3RsX2hhbmRsZXIoc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgc3lzY3RsX21pbl91bm1hcHBl ZF9yYXRpb19zeXNjdGxfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAogCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3MpCiB7 CiAJaW50IHJjOwpAQCAtNjE3NSw3ICs2MTc1LDcgQEAgc3RhdGljIHZvaWQgc2V0dXBfbWluX3Ns YWJfcmF0aW8odm9pZCkKIAkJCQkJCSAgICAgc3lzY3RsX21pbl9zbGFiX3JhdGlvKSAvIDEwMDsK IH0KIAotc3RhdGljIGludCBzeXNjdGxfbWluX3NsYWJfcmF0aW9fc3lzY3RsX2hhbmRsZXIoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgc3lzY3RsX21pbl9z bGFiX3JhdGlvX3N5c2N0bF9oYW5kbGVyKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBp bnQgd3JpdGUsCiAJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5ndGgsIGxvZmZfdCAqcHBvcykK IHsKIAlpbnQgcmM7CkBAIC02MTk5LDcgKzYxOTksNyBAQCBzdGF0aWMgaW50IHN5c2N0bF9taW5f c2xhYl9yYXRpb19zeXNjdGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdy aQogICogbWluaW11bSB3YXRlcm1hcmtzLiBUaGUgbG93bWVtIHJlc2VydmUgcmF0aW8gY2FuIG9u bHkgbWFrZSBzZW5zZQogICogaWYgaW4gZnVuY3Rpb24gb2YgdGhlIGJvb3QgdGltZSB6b25lIHNp emVzLgogICovCi1zdGF0aWMgaW50IGxvd21lbV9yZXNlcnZlX3JhdGlvX3N5c2N0bF9oYW5kbGVy KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLAorc3RhdGljIGludCBsb3dtZW1fcmVzZXJ2ZV9yYXRp b19zeXNjdGxfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKIAkJaW50IHdy aXRlLCB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVuZ3RoLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50 IGk7CkBAIC02MjIwLDcgKzYyMjAsNyBAQCBzdGF0aWMgaW50IGxvd21lbV9yZXNlcnZlX3JhdGlv X3N5c2N0bF9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLAogICogY3B1LiBJdCBpcyB0 aGUgZnJhY3Rpb24gb2YgdG90YWwgcGFnZXMgaW4gZWFjaCB6b25lIHRoYXQgYSBob3QgcGVyIGNw dQogICogcGFnZWxpc3QgY2FuIGhhdmUgYmVmb3JlIGl0IGdldHMgZmx1c2hlZCBiYWNrIHRvIGJ1 ZGR5IGFsbG9jYXRvci4KICAqLwotc3RhdGljIGludCBwZXJjcHVfcGFnZWxpc3RfaGlnaF9mcmFj dGlvbl9zeXNjdGxfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKK3N0YXRpYyBpbnQg cGVyY3B1X3BhZ2VsaXN0X2hpZ2hfZnJhY3Rpb25fc3lzY3RsX2hhbmRsZXIoY29uc3Qgc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsCiAJCWludCB3cml0ZSwgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxl bmd0aCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCB6b25lICp6b25lOwpkaWZmIC0tZ2l0IGEv bW0vdXRpbC5jIGIvbW0vdXRpbC5jCmluZGV4IGM5ZTUxOWU2ODExZi4uOTU4YjkwMTNkMmYzIDEw MDY0NAotLS0gYS9tbS91dGlsLmMKKysrIGIvbW0vdXRpbC5jCkBAIC04MzUsOCArODM1LDggQEAg aW50IHN5c2N0bF9tYXhfbWFwX2NvdW50IF9fcmVhZF9tb3N0bHkgPSBERUZBVUxUX01BWF9NQVBf Q09VTlQ7CiB1bnNpZ25lZCBsb25nIHN5c2N0bF91c2VyX3Jlc2VydmVfa2J5dGVzIF9fcmVhZF9t b3N0bHkgPSAxVUwgPDwgMTc7IC8qIDEyOE1CICovCiB1bnNpZ25lZCBsb25nIHN5c2N0bF9hZG1p bl9yZXNlcnZlX2tieXRlcyBfX3JlYWRfbW9zdGx5ID0gMVVMIDw8IDEzOyAvKiA4TUIgKi8KIAot aW50IG92ZXJjb21taXRfcmF0aW9faGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLCB2b2lkICpidWZmZXIsCi0JCXNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQoraW50 IG92ZXJjb21taXRfcmF0aW9faGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwg aW50IHdyaXRlLAorCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQog ewogCWludCByZXQ7CiAKQEAgLTg1MSw4ICs4NTEsOCBAQCBzdGF0aWMgdm9pZCBzeW5jX292ZXJj b21taXRfYXMoc3RydWN0IHdvcmtfc3RydWN0ICpkdW1teSkKIAlwZXJjcHVfY291bnRlcl9zeW5j KCZ2bV9jb21taXR0ZWRfYXMpOwogfQogCi1pbnQgb3ZlcmNvbW1pdF9wb2xpY3lfaGFuZGxlcihz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCi0JCXNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKQoraW50IG92ZXJjb21taXRfcG9saWN5X2hhbmRsZXIoY29u c3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKKwkJdm9pZCAqYnVmZmVyLCBz aXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgY3RsX3RhYmxlIHQ7CiAJaW50 IG5ld19wb2xpY3kgPSAtMTsKQEAgLTg4Nyw4ICs4ODcsOCBAQCBpbnQgb3ZlcmNvbW1pdF9wb2xp Y3lfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLCB2b2lkICpidWZm ZXIsCiAJcmV0dXJuIHJldDsKIH0KIAotaW50IG92ZXJjb21taXRfa2J5dGVzX2hhbmRsZXIoc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAotCQlzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKK2ludCBvdmVyY29tbWl0X2tieXRlc19oYW5kbGVyKGNvbnN0 IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCisJCXZvaWQgKmJ1ZmZlciwgc2l6 ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldDsKIApkaWZmIC0tZ2l0IGEvbW0v dm1zdGF0LmMgYi9tbS92bXN0YXQuYwppbmRleCA4NTA3YzQ5NzIxOGIuLjMzYTAzMmQ2OTU1NCAx MDA2NDQKLS0tIGEvbW0vdm1zdGF0LmMKKysrIGIvbW0vdm1zdGF0LmMKQEAgLTc0LDcgKzc0LDcg QEAgc3RhdGljIHZvaWQgaW52YWxpZF9udW1hX3N0YXRpc3RpY3Modm9pZCkKIAogc3RhdGljIERF RklORV9NVVRFWCh2bV9udW1hX3N0YXRfbG9jayk7CiAKLWludCBzeXNjdGxfdm1fbnVtYV9zdGF0 X2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBzeXNjdGxf dm1fbnVtYV9zdGF0X2hhbmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKIAkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbmd0aCwgbG9mZl90ICpwcG9zKQogewog CWludCByZXQsIG9sZHZhbDsKQEAgLTE4ODcsNyArMTg4Nyw3IEBAIHN0YXRpYyB2b2lkIHJlZnJl c2hfdm1fc3RhdHMoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQogCXJlZnJlc2hfY3B1X3ZtX3N0 YXRzKHRydWUpOwogfQogCi1pbnQgdm1zdGF0X3JlZnJlc2goc3RydWN0IGN0bF90YWJsZSAqdGFi bGUsIGludCB3cml0ZSwKK2ludCB2bXN0YXRfcmVmcmVzaChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAogCQkgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9m Zl90ICpwcG9zKQogewogCWxvbmcgdmFsOwpkaWZmIC0tZ2l0IGEvbmV0L2JyaWRnZS9icl9uZXRm aWx0ZXJfaG9va3MuYyBiL25ldC9icmlkZ2UvYnJfbmV0ZmlsdGVyX2hvb2tzLmMKaW5kZXggNzk0 OGE5ZTc1NDJjLi4wYzk1ZWIwYWU4ZjAgMTAwNjQ0Ci0tLSBhL25ldC9icmlkZ2UvYnJfbmV0Zmls dGVyX2hvb2tzLmMKKysrIGIvbmV0L2JyaWRnZS9icl9uZXRmaWx0ZXJfaG9va3MuYwpAQCAtMTE3 Nyw3ICsxMTc3LDcgQEAgaW50IGJyX25mX2hvb2tfdGhyZXNoKHVuc2lnbmVkIGludCBob29rLCBz dHJ1Y3QgbmV0ICpuZXQsCiAKICNpZmRlZiBDT05GSUdfU1lTQ1RMCiBzdGF0aWMKLWludCBicm5m X3N5c2N0bF9jYWxsX3RhYmxlcyhzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK2lu dCBicm5mX3N5c2N0bF9jYWxsX3RhYmxlcyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGlu dCB3cml0ZSwKIAkJCSAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9z KQogewogCWludCByZXQ7CmRpZmYgLS1naXQgYS9uZXQvY29yZS9uZWlnaGJvdXIuYyBiL25ldC9j b3JlL25laWdoYm91ci5jCmluZGV4IDkyYTAxNjY0YTcyMy4uOWEwODllM2JjZDM0IDEwMDY0NAot LS0gYS9uZXQvY29yZS9uZWlnaGJvdXIuYworKysgYi9uZXQvY29yZS9uZWlnaGJvdXIuYwpAQCAt MzU0Myw3ICszNTQzLDcgQEAgRVhQT1JUX1NZTUJPTChuZWlnaF9hcHBfbnMpOwogI2lmZGVmIENP TkZJR19TWVNDVEwKIHN0YXRpYyBpbnQgdW5yZXNfcWxlbl9tYXggPSBJTlRfTUFYIC8gU0tCX1RS VUVTSVpFKEVUSF9GUkFNRV9MRU4pOwogCi1zdGF0aWMgaW50IHByb2NfdW5yZXNfcWxlbihzdHJ1 Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY191bnJlc19xbGVu KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJICAgdm9pZCAqYnVm ZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgc2l6ZSwgcmV0OwpAQCAt MzU5NSw3ICszNTk1LDcgQEAgc3RhdGljIHZvaWQgbmVpZ2hfcHJvY191cGRhdGUoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUpCiAJCW5laWdoX2NvcHlfZGZsdF9wYXJtcyhu ZXQsIHAsIGluZGV4KTsKIH0KIAotc3RhdGljIGludCBuZWlnaF9wcm9jX2RvaW50dmVjX3plcm9f aW50bWF4KHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBuZWln aF9wcm9jX2RvaW50dmVjX3plcm9faW50bWF4KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwg aW50IHdyaXRlLAogCQkJCQkgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwKIAkJCQkJICAg bG9mZl90ICpwcG9zKQogewpAQCAtMzYxMCw3ICszNjEwLDcgQEAgc3RhdGljIGludCBuZWlnaF9w cm9jX2RvaW50dmVjX3plcm9faW50bWF4KHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRl LAogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgbmVpZ2hfcHJvY19kb2ludHZlY19tc19q aWZmaWVzX3Bvc2l0aXZlKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGlj IGludCBuZWlnaF9wcm9jX2RvaW50dmVjX21zX2ppZmZpZXNfcG9zaXRpdmUoY29uc3Qgc3RydWN0 IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJCQkgICB2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBjdGxfdGFibGUgdG1wID0gKmN0bDsK QEAgLTM2MjYsNyArMzYyNiw3IEBAIHN0YXRpYyBpbnQgbmVpZ2hfcHJvY19kb2ludHZlY19tc19q aWZmaWVzX3Bvc2l0aXZlKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyCiAJcmV0dXJuIHJl dDsKIH0KIAotaW50IG5laWdoX3Byb2NfZG9pbnR2ZWMoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBp bnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKK2ludCBuZWlnaF9wcm9jX2RvaW50dmVjKGNvbnN0IHN0 cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiAJCQlzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgcmV0ID0gcHJvY19kb2ludHZlYyhjdGwsIHdy aXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpOwpAQCAtMzYzNiw3ICszNjM2LDcgQEAgaW50IG5laWdo X3Byb2NfZG9pbnR2ZWMoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsIHZvaWQgKmJ1 ZmZlciwKIH0KIEVYUE9SVF9TWU1CT0wobmVpZ2hfcHJvY19kb2ludHZlYyk7CiAKLWludCBuZWln aF9wcm9jX2RvaW50dmVjX2ppZmZpZXMoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUs IHZvaWQgKmJ1ZmZlciwKK2ludCBuZWlnaF9wcm9jX2RvaW50dmVjX2ppZmZpZXMoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKIAkJCQlzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgcmV0ID0gcHJvY19kb2ludHZlY19qaWZmaWVz KGN0bCwgd3JpdGUsIGJ1ZmZlciwgbGVucCwgcHBvcyk7CkBAIC0zNjQ2LDcgKzM2NDYsNyBAQCBp bnQgbmVpZ2hfcHJvY19kb2ludHZlY19qaWZmaWVzKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50 IHdyaXRlLCB2b2lkICpidWZmZXIsCiB9CiBFWFBPUlRfU1lNQk9MKG5laWdoX3Byb2NfZG9pbnR2 ZWNfamlmZmllcyk7CiAKLXN0YXRpYyBpbnQgbmVpZ2hfcHJvY19kb2ludHZlY191c2VyaHpfamlm ZmllcyhzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgbmVpZ2hf cHJvY19kb2ludHZlY191c2VyaHpfamlmZmllcyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGws IGludCB3cml0ZSwKIAkJCQkJICAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsCiAJCQkJ CSAgICAgIGxvZmZfdCAqcHBvcykKIHsKQEAgLTM2NTYsNyArMzY1Niw3IEBAIHN0YXRpYyBpbnQg bmVpZ2hfcHJvY19kb2ludHZlY191c2VyaHpfamlmZmllcyhzdHJ1Y3QgY3RsX3RhYmxlICpjdGws IGludCB3cml0ZSwKIAlyZXR1cm4gcmV0OwogfQogCi1pbnQgbmVpZ2hfcHJvY19kb2ludHZlY19t c19qaWZmaWVzKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAoraW50IG5laWdoX3By b2NfZG9pbnR2ZWNfbXNfamlmZmllcyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3 cml0ZSwKIAkJCQkgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQog ewogCWludCByZXQgPSBwcm9jX2RvaW50dmVjX21zX2ppZmZpZXMoY3RsLCB3cml0ZSwgYnVmZmVy LCBsZW5wLCBwcG9zKTsKQEAgLTM2NjYsNyArMzY2Niw3IEBAIGludCBuZWlnaF9wcm9jX2RvaW50 dmVjX21zX2ppZmZpZXMoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiB9CiBFWFBP UlRfU1lNQk9MKG5laWdoX3Byb2NfZG9pbnR2ZWNfbXNfamlmZmllcyk7CiAKLXN0YXRpYyBpbnQg bmVpZ2hfcHJvY19kb2ludHZlY191bnJlc19xbGVuKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50 IHdyaXRlLAorc3RhdGljIGludCBuZWlnaF9wcm9jX2RvaW50dmVjX3VucmVzX3FsZW4oY29uc3Qg c3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJCSAgdm9pZCAqYnVmZmVyLCBz aXplX3QgKmxlbnAsCiAJCQkJCSAgbG9mZl90ICpwcG9zKQogewpAQCAtMzY3Niw3ICszNjc2LDcg QEAgc3RhdGljIGludCBuZWlnaF9wcm9jX2RvaW50dmVjX3VucmVzX3FsZW4oc3RydWN0IGN0bF90 YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBuZWln aF9wcm9jX2Jhc2VfcmVhY2hhYmxlX3RpbWUoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3Jp dGUsCitzdGF0aWMgaW50IG5laWdoX3Byb2NfYmFzZV9yZWFjaGFibGVfdGltZShjb25zdCBzdHJ1 Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJCQkJICB2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwKIAkJCQkJICBsb2ZmX3QgKnBwb3MpCiB7CmRpZmYgLS1naXQgYS9uZXQvY29yZS9z eXNjdGxfbmV0X2NvcmUuYyBiL25ldC9jb3JlL3N5c2N0bF9uZXRfY29yZS5jCmluZGV4IDkwM2Fi NGE1MWMxNy4uYmE5ODQyZDc3M2UzIDEwMDY0NAotLS0gYS9uZXQvY29yZS9zeXNjdGxfbmV0X2Nv cmUuYworKysgYi9uZXQvY29yZS9zeXNjdGxfbmV0X2NvcmUuYwpAQCAtOTQsNyArOTQsNyBAQCBz dGF0aWMgc3RydWN0IGNwdW1hc2sgKnJwc19kZWZhdWx0X21hc2tfY293X2FsbG9jKHN0cnVjdCBu ZXQgKm5ldCkKIAlyZXR1cm4gcnBzX2RlZmF1bHRfbWFzazsKIH0KIAotc3RhdGljIGludCBycHNf ZGVmYXVsdF9tYXNrX3N5c2N0bChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAor c3RhdGljIGludCBycHNfZGVmYXVsdF9tYXNrX3N5c2N0bChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCSAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IG5ldCAqbmV0ID0gKHN0cnVjdCBuZXQgKil0YWJsZS0+ ZGF0YTsKQEAgLTEyNSw3ICsxMjUsNyBAQCBzdGF0aWMgaW50IHJwc19kZWZhdWx0X21hc2tfc3lz Y3RsKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJcmV0dXJuIGVycjsKIH0K IAotc3RhdGljIGludCBycHNfc29ja19mbG93X3N5c2N0bChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJs ZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBycHNfc29ja19mbG93X3N5c2N0bChjb25zdCBzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCXZvaWQgKmJ1ZmZlciwgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJdW5zaWduZWQgaW50IG9yaWdfc2l6ZSwgc2l6ZTsK QEAgLTE5Nyw3ICsxOTcsNyBAQCBzdGF0aWMgaW50IHJwc19zb2NrX2Zsb3dfc3lzY3RsKHN0cnVj dCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAjaWZkZWYgQ09ORklHX05FVF9GTE9XX0xJ TUlUCiBzdGF0aWMgREVGSU5FX01VVEVYKGZsb3dfbGltaXRfdXBkYXRlX211dGV4KTsKIAotc3Rh dGljIGludCBmbG93X2xpbWl0X2NwdV9zeXNjdGwoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKK3N0YXRpYyBpbnQgZmxvd19saW1pdF9jcHVfc3lzY3RsKGNvbnN0IHN0cnVjdCBj dGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IHNkX2Zsb3dfbGltaXQgKmN1cjsKQEAgLTI1 NCw3ICsyNTQsNyBAQCBzdGF0aWMgaW50IGZsb3dfbGltaXRfY3B1X3N5c2N0bChzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQg Zmxvd19saW1pdF90YWJsZV9sZW5fc3lzY3RsKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsCitzdGF0aWMgaW50IGZsb3dfbGltaXRfdGFibGVfbGVuX3N5c2N0bChjb25zdCBzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCSAgICAgICB2b2lkICpidWZmZXIs IHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXVuc2lnbmVkIGludCBvbGQsICpwdHI7 CkBAIC0yNzYsNyArMjc2LDcgQEAgc3RhdGljIGludCBmbG93X2xpbWl0X3RhYmxlX2xlbl9zeXNj dGwoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKICNlbmRpZiAvKiBDT05GSUdf TkVUX0ZMT1dfTElNSVQgKi8KIAogI2lmZGVmIENPTkZJR19ORVRfU0NIRUQKLXN0YXRpYyBpbnQg c2V0X2RlZmF1bHRfcWRpc2Moc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0 YXRpYyBpbnQgc2V0X2RlZmF1bHRfcWRpc2MoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwKIAkJCSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAq cHBvcykKIHsKIAljaGFyIGlkW0lGTkFNU0laXTsKQEAgLTI5NSw3ICsyOTUsNyBAQCBzdGF0aWMg aW50IHNldF9kZWZhdWx0X3FkaXNjKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs CiB9CiAjZW5kaWYKIAotc3RhdGljIGludCBwcm9jX2RvX2Rldl93ZWlnaHQoc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY19kb19kZXZfd2VpZ2h0KGNv bnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkgICB2b2lkICpidWZm ZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0YXRpYyBERUZJTkVfTVVURVgo ZGV2X3dlaWdodF9tdXRleCk7CkBAIC0zMTMsNyArMzEzLDcgQEAgc3RhdGljIGludCBwcm9jX2Rv X2Rldl93ZWlnaHQoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAlyZXR1cm4g cmV0OwogfQogCi1zdGF0aWMgaW50IHByb2NfZG9fcnNzX2tleShzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBwcm9jX2RvX3Jzc19rZXkoY29uc3Qgc3RydWN0 IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCSAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IGN0bF90YWJsZSBmYWtlX3RhYmxlOwpA QCAtMzI2LDcgKzMyNiw3IEBAIHN0YXRpYyBpbnQgcHJvY19kb19yc3Nfa2V5KHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiB9CiAKICNpZmRlZiBDT05GSUdfQlBGX0pJVAotc3Rh dGljIGludCBwcm9jX2RvaW50dmVjX21pbm1heF9icGZfZW5hYmxlKHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2NfZG9pbnR2ZWNfbWlubWF4X2JwZl9l bmFibGUoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQkJICAg dm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsCiAJCQkJCSAgIGxvZmZfdCAqcHBvcykKIHsKQEAg LTM1OSw3ICszNTksNyBAQCBzdGF0aWMgaW50IHByb2NfZG9pbnR2ZWNfbWlubWF4X2JwZl9lbmFi bGUoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAogIyBpZmRlZiBDT05GSUdf SEFWRV9FQlBGX0pJVAogc3RhdGljIGludAotcHJvY19kb2ludHZlY19taW5tYXhfYnBmX3Jlc3Ry aWN0ZWQoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3Byb2NfZG9pbnR2ZWNf bWlubWF4X2JwZl9yZXN0cmljdGVkKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsCiAJCQkJICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3Mp CiB7CiAJaWYgKCFjYXBhYmxlKENBUF9TWVNfQURNSU4pKQpAQCAtMzcwLDcgKzM3MCw3IEBAIHBy b2NfZG9pbnR2ZWNfbWlubWF4X2JwZl9yZXN0cmljdGVkKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxl LCBpbnQgd3JpdGUsCiAjIGVuZGlmIC8qIENPTkZJR19IQVZFX0VCUEZfSklUICovCiAKIHN0YXRp YyBpbnQKLXByb2NfZG9sb25ndmVjX21pbm1heF9icGZfcmVzdHJpY3RlZChzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLAorcHJvY19kb2xvbmd2ZWNfbWlubWF4X2JwZl9yZXN0cmlj dGVkKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJICAgICB2 b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWlmICghY2FwYWJs ZShDQVBfU1lTX0FETUlOKSkKZGlmZiAtLWdpdCBhL25ldC9pcHY0L2RldmluZXQuYyBiL25ldC9p cHY0L2RldmluZXQuYwppbmRleCA3NTkyZjI0MjMzNmIuLjJlNjkxMmMxZmIyMSAxMDA2NDQKLS0t IGEvbmV0L2lwdjQvZGV2aW5ldC5jCisrKyBiL25ldC9pcHY0L2RldmluZXQuYwpAQCAtMjM3Nyw3 ICsyMzc3LDcgQEAgc3RhdGljIGludCBkZXZpbmV0X2NvbmZfaWZpbmRleChzdHJ1Y3QgbmV0ICpu ZXQsIHN0cnVjdCBpcHY0X2RldmNvbmYgKmNuZikKIAl9CiB9CiAKLXN0YXRpYyBpbnQgZGV2aW5l dF9jb25mX3Byb2Moc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50 IGRldmluZXRfY29uZl9wcm9jKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRl LAogCQkJICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewog CWludCBvbGRfdmFsdWUgPSAqKGludCAqKWN0bC0+ZGF0YTsKQEAgLTI0MjksNyArMjQyOSw3IEBA IHN0YXRpYyBpbnQgZGV2aW5ldF9jb25mX3Byb2Moc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQg d3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBkZXZpbmV0X3N5c2N0bF9mb3J3 YXJkKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBkZXZpbmV0 X3N5c2N0bF9mb3J3YXJkKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAog CQkJCSAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQg KnZhbHAgPSBjdGwtPmRhdGE7CkBAIC0yNDc2LDcgKzI0NzYsNyBAQCBzdGF0aWMgaW50IGRldmlu ZXRfc3lzY3RsX2ZvcndhcmQoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0 dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBpcHY0X2RvaW50X2FuZF9mbHVzaChzdHJ1Y3QgY3Rs X3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgaXB2NF9kb2ludF9hbmRfZmx1c2go Y29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJdm9pZCAqYnVmZmVy LCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgKnZhbHAgPSBjdGwtPmRhdGE7 CmRpZmYgLS1naXQgYS9uZXQvaXB2NC9yb3V0ZS5jIGIvbmV0L2lwdjQvcm91dGUuYwppbmRleCAy ZTI5YWI4MTk5NjcuLmQyZTg4ZjNlNmZlOCAxMDA2NDQKLS0tIGEvbmV0L2lwdjQvcm91dGUuYwor KysgYi9uZXQvaXB2NC9yb3V0ZS5jCkBAIC0zMzk0LDcgKzMzOTQsNyBAQCBzdGF0aWMgaW50IGlw X3J0X2djX21pbl9pbnRlcnZhbCBfX3JlYWRfbW9zdGx5CT0gSFogLyAyOwogc3RhdGljIGludCBp cF9ydF9nY19lbGFzdGljaXR5IF9fcmVhZF9tb3N0bHkJPSA4Owogc3RhdGljIGludCBpcF9taW5f dmFsaWRfcG10dSBfX3JlYWRfbW9zdGx5CT0gSVBWNF9NSU5fTVRVOwogCi1zdGF0aWMgaW50IGlw djRfc3lzY3RsX3J0Y2FjaGVfZmx1c2goc3RydWN0IGN0bF90YWJsZSAqX19jdGwsIGludCB3cml0 ZSwKK3N0YXRpYyBpbnQgaXB2NF9zeXNjdGxfcnRjYWNoZV9mbHVzaChjb25zdCBzdHJ1Y3QgY3Rs X3RhYmxlICpfX2N0bCwgaW50IHdyaXRlLAogCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwg bG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBuZXQgKm5ldCA9IChzdHJ1Y3QgbmV0ICopX19jdGwt PmV4dHJhMTsKZGlmZiAtLWdpdCBhL25ldC9pcHY0L3N5c2N0bF9uZXRfaXB2NC5jIGIvbmV0L2lw djQvc3lzY3RsX25ldF9pcHY0LmMKaW5kZXggZmM0YzAwMWJmNzJhLi40YzNhMDNiN2EwZjggMTAw NjQ0Ci0tLSBhL25ldC9pcHY0L3N5c2N0bF9uZXRfaXB2NC5jCisrKyBiL25ldC9pcHY0L3N5c2N0 bF9uZXRfaXB2NC5jCkBAIC02Miw3ICs2Miw3IEBAIHN0YXRpYyB2b2lkIHNldF9sb2NhbF9wb3J0 X3JhbmdlKHN0cnVjdCBuZXQgKm5ldCwgdW5zaWduZWQgaW50IGxvdywgdW5zaWduZWQgaW50CiB9 CiAKIC8qIFZhbGlkYXRlIGNoYW5nZXMgZnJvbSAvcHJvYyBpbnRlcmZhY2UuICovCi1zdGF0aWMg aW50IGlwdjRfbG9jYWxfcG9ydF9yYW5nZShzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdy aXRlLAorc3RhdGljIGludCBpcHY0X2xvY2FsX3BvcnRfcmFuZ2UoY29uc3Qgc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAs IGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgbmV0ICpuZXQgPSB0YWJsZS0+ZGF0YTsKQEAgLTk2 LDcgKzk2LDcgQEAgc3RhdGljIGludCBpcHY0X2xvY2FsX3BvcnRfcmFuZ2Uoc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIH0KIAogLyogVmFsaWRhdGUgY2hhbmdlcyBmcm9tIC9w cm9jIGludGVyZmFjZS4gKi8KLXN0YXRpYyBpbnQgaXB2NF9wcml2aWxlZ2VkX3BvcnRzKHN0cnVj dCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IGlwdjRfcHJpdmlsZWdl ZF9wb3J0cyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCXZv aWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IG5ldCAq bmV0ID0gY29udGFpbmVyX29mKHRhYmxlLT5kYXRhLCBzdHJ1Y3QgbmV0LApAQCAtMTU5LDcgKzE1 OSw3IEBAIHN0YXRpYyB2b2lkIHNldF9waW5nX2dyb3VwX3JhbmdlKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLAogfQogCiAvKiBWYWxpZGF0ZSBjaGFuZ2VzIGZyb20gL3Byb2MgaW50ZXJm YWNlLiAqLwotc3RhdGljIGludCBpcHY0X3BpbmdfZ3JvdXBfcmFuZ2Uoc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgaXB2NF9waW5nX2dyb3VwX3JhbmdlKGNv bnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJIHZvaWQgKmJ1ZmZl ciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IHVzZXJfbmFtZXNwYWNl ICp1c2VyX25zID0gY3VycmVudF91c2VyX25zKCk7CkBAIC0xOTQsNyArMTk0LDcgQEAgc3RhdGlj IGludCBpcHY0X3BpbmdfZ3JvdXBfcmFuZ2Uoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IGlwdjRfZndkX3VwZGF0ZV9wcmlv cml0eShzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBpcHY0 X2Z3ZF91cGRhdGVfcHJpb3JpdHkoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3 cml0ZSwKIAkJCQkgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK IHsKIAlzdHJ1Y3QgbmV0ICpuZXQ7CkBAIC0yMTAsNyArMjEwLDcgQEAgc3RhdGljIGludCBpcHY0 X2Z3ZF91cGRhdGVfcHJpb3JpdHkoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwK IAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IHByb2NfdGNwX2Nvbmdlc3Rpb25fY29udHJv bChzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY190Y3Bf Y29uZ2VzdGlvbl9jb250cm9sKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRl LAogCQkJCSAgICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQog ewogCXN0cnVjdCBuZXQgKm5ldCA9IGNvbnRhaW5lcl9vZihjdGwtPmRhdGEsIHN0cnVjdCBuZXQs CkBAIC0yMzAsNyArMjMwLDcgQEAgc3RhdGljIGludCBwcm9jX3RjcF9jb25nZXN0aW9uX2NvbnRy b2woc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAot c3RhdGljIGludCBwcm9jX3RjcF9hdmFpbGFibGVfY29uZ2VzdGlvbl9jb250cm9sKHN0cnVjdCBj dGxfdGFibGUgKmN0bCwKK3N0YXRpYyBpbnQgcHJvY190Y3BfYXZhaWxhYmxlX2Nvbmdlc3Rpb25f Y29udHJvbChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsCiAJCQkJCQkgaW50IHdyaXRlLCB2 b2lkICpidWZmZXIsCiAJCQkJCQkgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CkBAIC0y NDYsNyArMjQ2LDcgQEAgc3RhdGljIGludCBwcm9jX3RjcF9hdmFpbGFibGVfY29uZ2VzdGlvbl9j b250cm9sKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwKIAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMg aW50IHByb2NfYWxsb3dlZF9jb25nZXN0aW9uX2NvbnRyb2woc3RydWN0IGN0bF90YWJsZSAqY3Rs LAorc3RhdGljIGludCBwcm9jX2FsbG93ZWRfY29uZ2VzdGlvbl9jb250cm9sKGNvbnN0IHN0cnVj dCBjdGxfdGFibGUgKmN0bCwKIAkJCQkJICAgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiAJCQkJ CSAgIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewpAQCAtMjgzLDcgKzI4Myw3IEBAIHN0 YXRpYyBpbnQgc3NjYW5mX2tleShjaGFyICpidWYsIF9fbGUzMiAqa2V5KQogCXJldHVybiByZXQ7 CiB9CiAKLXN0YXRpYyBpbnQgcHJvY190Y3BfZmFzdG9wZW5fa2V5KHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2NfdGNwX2Zhc3RvcGVuX2tleShjb25z dCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCSB2b2lkICpidWZmZXIs IHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBuZXQgKm5ldCA9IGNvbnRh aW5lcl9vZih0YWJsZS0+ZGF0YSwgc3RydWN0IG5ldCwKQEAgLTM1NCw3ICszNTQsNyBAQCBzdGF0 aWMgaW50IHByb2NfdGNwX2Zhc3RvcGVuX2tleShzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50 IHdyaXRlLAogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgcHJvY190Zm9fYmxhY2tob2xl X2RldGVjdF90aW1lb3V0KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLAorc3RhdGljIGludCBwcm9j X3Rmb19ibGFja2hvbGVfZGV0ZWN0X3RpbWVvdXQoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFi bGUsCiAJCQkJCSAgICAgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiAJCQkJCSAgICAgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CkBAIC0zNjksNyArMzY5LDcgQEAgc3RhdGljIGludCBw cm9jX3Rmb19ibGFja2hvbGVfZGV0ZWN0X3RpbWVvdXQoc3RydWN0IGN0bF90YWJsZSAqdGFibGUs CiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBwcm9jX3RjcF9hdmFpbGFibGVfdWxwKHN0 cnVjdCBjdGxfdGFibGUgKmN0bCwKK3N0YXRpYyBpbnQgcHJvY190Y3BfYXZhaWxhYmxlX3VscChj b25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsCiAJCQkJICBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZl ciwgc2l6ZV90ICpsZW5wLAogCQkJCSAgbG9mZl90ICpwcG9zKQogewpAQCAtMzg2LDcgKzM4Niw3 IEBAIHN0YXRpYyBpbnQgcHJvY190Y3BfYXZhaWxhYmxlX3VscChzdHJ1Y3QgY3RsX3RhYmxlICpj dGwsCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBwcm9jX3RjcF9laGFzaF9lbnRyaWVz KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2NfdGNw X2VoYXNoX2VudHJpZXMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwK IAkJCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3Ry dWN0IG5ldCAqbmV0ID0gY29udGFpbmVyX29mKHRhYmxlLT5kYXRhLCBzdHJ1Y3QgbmV0LApAQCAt NDEwLDcgKzQxMCw3IEBAIHN0YXRpYyBpbnQgcHJvY190Y3BfZWhhc2hfZW50cmllcyhzdHJ1Y3Qg Y3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCXJldHVybiBwcm9jX2RvaW50dmVjKCZ0Ymws IHdyaXRlLCBidWZmZXIsIGxlbnAsIHBwb3MpOwogfQogCi1zdGF0aWMgaW50IHByb2NfdWRwX2hh c2hfZW50cmllcyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGlu dCBwcm9jX3VkcF9oYXNoX2VudHJpZXMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGlu dCB3cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK IHsKIAlzdHJ1Y3QgbmV0ICpuZXQgPSBjb250YWluZXJfb2YodGFibGUtPmRhdGEsIHN0cnVjdCBu ZXQsCkBAIC00MzQsOCArNDM0LDggQEAgc3RhdGljIGludCBwcm9jX3VkcF9oYXNoX2VudHJpZXMo c3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIH0KIAogI2lmZGVmIENPTkZJR19J UF9ST1VURV9NVUxUSVBBVEgKLXN0YXRpYyBpbnQgcHJvY19maWJfbXVsdGlwYXRoX2hhc2hfcG9s aWN5KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCi0JCQkJCSAgdm9pZCAqYnVm ZmVyLCBzaXplX3QgKmxlbnAsCitzdGF0aWMgaW50IHByb2NfZmliX211bHRpcGF0aF9oYXNoX3Bv bGljeShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwKKwkJCQkJICBpbnQgd3JpdGUsIHZv aWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLAogCQkJCQkgIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1 Y3QgbmV0ICpuZXQgPSBjb250YWluZXJfb2YodGFibGUtPmRhdGEsIHN0cnVjdCBuZXQsCkBAIC00 NDksOCArNDQ5LDggQEAgc3RhdGljIGludCBwcm9jX2ZpYl9tdWx0aXBhdGhfaGFzaF9wb2xpY3ko c3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKIAlyZXR1cm4gcmV0OwogfQogCi1z dGF0aWMgaW50IHByb2NfZmliX211bHRpcGF0aF9oYXNoX2ZpZWxkcyhzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAotCQkJCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLAor c3RhdGljIGludCBwcm9jX2ZpYl9tdWx0aXBhdGhfaGFzaF9maWVsZHMoY29uc3Qgc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsCisJCQkJCSAgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsIHNpemVfdCAq bGVucCwKIAkJCQkJICBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IG5ldCAqbmV0OwpkaWZmIC0t Z2l0IGEvbmV0L2lwdjYvYWRkcmNvbmYuYyBiL25ldC9pcHY2L2FkZHJjb25mLmMKaW5kZXggOTZh YjM0OWU4YmE0Li41MTkwYWNjM2M0ZjggMTAwNjQ0Ci0tLSBhL25ldC9pcHY2L2FkZHJjb25mLmMK KysrIGIvbmV0L2lwdjYvYWRkcmNvbmYuYwpAQCAtNjMwOCw3ICs2MzA4LDcgQEAgc3RhdGljIHZv aWQgaXB2Nl9pZmFfbm90aWZ5KGludCBldmVudCwgc3RydWN0IGluZXQ2X2lmYWRkciAqaWZwKQog CiAjaWZkZWYgQ09ORklHX1NZU0NUTAogCi1zdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9mb3J3 YXJkKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBhZGRyY29u Zl9zeXNjdGxfZm9yd2FyZChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwK IAkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgKnZh bHAgPSBjdGwtPmRhdGE7CkBAIC02MzMzLDcgKzYzMzMsNyBAQCBzdGF0aWMgaW50IGFkZHJjb25m X3N5c2N0bF9mb3J3YXJkKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCXJldHVy biByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX210dShzdHJ1Y3QgY3RsX3Rh YmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX210dShjb25z dCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJdm9pZCAqYnVmZmVyLCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgaW5ldDZfZGV2ICppZGV2ID0gY3Rs LT5leHRyYTE7CkBAIC02NDA0LDcgKzY0MDQsNyBAQCBzdGF0aWMgaW50IGFkZHJjb25mX2Rpc2Fi bGVfaXB2Nihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50ICpwLCBpbnQgbmV3Zgog CXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9kaXNhYmxlKHN0cnVj dCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBhZGRyY29uZl9zeXNjdGxf ZGlzYWJsZShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJdm9pZCAq YnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgKnZhbHAgPSBjdGwt PmRhdGE7CkBAIC02NDI5LDcgKzY0MjksNyBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9k aXNhYmxlKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCXJldHVybiByZXQ7CiB9 CiAKLXN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcChzdHJ1Y3QgY3RsX3RhYmxl ICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX3Byb3h5X25kcChj b25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJdm9pZCAqYnVmZmVyLCBz aXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpbnQgKnZhbHAgPSBjdGwtPmRhdGE7CkBA IC02NDcwLDcgKzY0NzAsNyBAQCBzdGF0aWMgaW50IGFkZHJjb25mX3N5c2N0bF9wcm94eV9uZHAo c3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3Rh dGljIGludCBhZGRyY29uZl9zeXNjdGxfYWRkcl9nZW5fbW9kZShzdHJ1Y3QgY3RsX3RhYmxlICpj dGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2FkZHJfZ2VuX21vZGUo Y29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJCSB2b2lkICpidWZm ZXIsIHNpemVfdCAqbGVucCwKIAkJCQkJIGxvZmZfdCAqcHBvcykKIHsKQEAgLTY1MzMsNyArNjUz Myw3IEBAIHN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2FkZHJfZ2VuX21vZGUoc3RydWN0IGN0 bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBh ZGRyY29uZl9zeXNjdGxfc3RhYmxlX3NlY3JldChzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3 cml0ZSwKK3N0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX3N0YWJsZV9zZWNyZXQoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJCSB2b2lkICpidWZmZXIsIHNpemVf dCAqbGVucCwKIAkJCQkJIGxvZmZfdCAqcHBvcykKIHsKQEAgLTY2MDEsNyArNjYwMSw3IEBAIHN0 YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX3N0YWJsZV9zZWNyZXQoc3RydWN0IGN0bF90YWJsZSAq Y3RsLCBpbnQgd3JpdGUsCiB9CiAKIHN0YXRpYwotaW50IGFkZHJjb25mX3N5c2N0bF9pZ25vcmVf cm91dGVzX3dpdGhfbGlua2Rvd24oc3RydWN0IGN0bF90YWJsZSAqY3RsLAoraW50IGFkZHJjb25m X3N5c2N0bF9pZ25vcmVfcm91dGVzX3dpdGhfbGlua2Rvd24oY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqY3RsLAogCQkJCQkJaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCiAJCQkJCQlzaXplX3QgKmxl bnAsCiAJCQkJCQlsb2ZmX3QgKnBwb3MpCkBAIC02NzAxLDggKzY3MDEsOSBAQCBpbnQgYWRkcmNv bmZfZGlzYWJsZV9wb2xpY3koY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgKnZhbHAs IGludCB2YWwpCiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyBpbnQgYWRkcmNvbmZfc3lzY3RsX2Rp c2FibGVfcG9saWN5KHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAotCQkJCSAgIHZv aWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCitzdGF0aWMgaW50IGFkZHJj b25mX3N5c2N0bF9kaXNhYmxlX3BvbGljeShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsCisJ CQkJCSAgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCisJCQkJCSAgc2l6ZV90ICpsZW5wLCBsb2Zm X3QgKnBwb3MpCiB7CiAJaW50ICp2YWxwID0gY3RsLT5kYXRhOwogCWludCB2YWwgPSAqdmFscDsK ZGlmZiAtLWdpdCBhL25ldC9pcHY2L25kaXNjLmMgYi9uZXQvaXB2Ni9uZGlzYy5jCmluZGV4IDk0 NWQ1ZjVjYTAzOS4uYWJjZDkzYmVlNWQ3IDEwMDY0NAotLS0gYS9uZXQvaXB2Ni9uZGlzYy5jCisr KyBiL25ldC9pcHY2L25kaXNjLmMKQEAgLTE5NTEsNyArMTk1MSw3IEBAIHN0YXRpYyB2b2lkIG5k aXNjX3dhcm5fZGVwcmVjYXRlZF9zeXNjdGwoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLAog CX0KIH0KIAotaW50IG5kaXNjX2lmaW5mb19zeXNjdGxfY2hhbmdlKHN0cnVjdCBjdGxfdGFibGUg KmN0bCwgaW50IHdyaXRlLCB2b2lkICpidWZmZXIsCitpbnQgbmRpc2NfaWZpbmZvX3N5c2N0bF9j aGFuZ2UoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZl ciwKIAkJc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IG5ldF9kZXZpY2Ug KmRldiA9IGN0bC0+ZXh0cmExOwpkaWZmIC0tZ2l0IGEvbmV0L2lwdjYvcm91dGUuYyBiL25ldC9p cHY2L3JvdXRlLmMKaW5kZXggMWY0YjkzNWEwZTU3Li5jODM0MDAxM2JmNzIgMTAwNjQ0Ci0tLSBh L25ldC9pcHY2L3JvdXRlLmMKKysrIGIvbmV0L2lwdjYvcm91dGUuYwpAQCAtNjMyOSw3ICs2MzI5 LDcgQEAgc3RhdGljIGludCBydDZfc3RhdHNfc2VxX3Nob3coc3RydWN0IHNlcV9maWxlICpzZXEs IHZvaWQgKnYpCiAKICNpZmRlZiBDT05GSUdfU1lTQ1RMCiAKLXN0YXRpYyBpbnQgaXB2Nl9zeXNj dGxfcnRjYWNoZV9mbHVzaChzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRp YyBpbnQgaXB2Nl9zeXNjdGxfcnRjYWNoZV9mbHVzaChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpj dGwsIGludCB3cml0ZSwKIAkJCSAgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2Zm X3QgKnBwb3MpCiB7CiAJc3RydWN0IG5ldCAqbmV0OwpkaWZmIC0tZ2l0IGEvbmV0L2lwdjYvc3lz Y3RsX25ldF9pcHY2LmMgYi9uZXQvaXB2Ni9zeXNjdGxfbmV0X2lwdjYuYwppbmRleCA3NWRlNTVm OTA3YjAuLmU1YTRjYmMzZThjMyAxMDA2NDQKLS0tIGEvbmV0L2lwdjYvc3lzY3RsX25ldF9pcHY2 LmMKKysrIGIvbmV0L2lwdjYvc3lzY3RsX25ldF9pcHY2LmMKQEAgLTMwLDcgKzMwLDcgQEAgc3Rh dGljIHUzMiBydDZfbXVsdGlwYXRoX2hhc2hfZmllbGRzX2FsbF9tYXNrID0KIHN0YXRpYyB1MzIg aW9hbTZfaWRfbWF4ID0gSU9BTTZfREVGQVVMVF9JRDsKIHN0YXRpYyB1NjQgaW9hbTZfaWRfd2lk ZV9tYXggPSBJT0FNNl9ERUZBVUxUX0lEX1dJREU7CiAKLXN0YXRpYyBpbnQgcHJvY19ydDZfbXVs dGlwYXRoX2hhc2hfcG9saWN5KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitz dGF0aWMgaW50IHByb2NfcnQ2X211bHRpcGF0aF9oYXNoX3BvbGljeShjb25zdCBzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICps ZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IG5ldCAqbmV0OwpAQCAtNDYsNyArNDYsNyBA QCBzdGF0aWMgaW50IHByb2NfcnQ2X211bHRpcGF0aF9oYXNoX3BvbGljeShzdHJ1Y3QgY3RsX3Rh YmxlICp0YWJsZSwgaW50IHdyaXRlLAogfQogCiBzdGF0aWMgaW50Ci1wcm9jX3J0Nl9tdWx0aXBh dGhfaGFzaF9maWVsZHMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAq YnVmZmVyLAorcHJvY19ydDZfbXVsdGlwYXRoX2hhc2hfZmllbGRzKGNvbnN0IHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKIAkJCSAgICAgICBzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgbmV0ICpuZXQ7CmRpZmYgLS1naXQgYS9u ZXQvbXBscy9hZl9tcGxzLmMgYi9uZXQvbXBscy9hZl9tcGxzLmMKaW5kZXggNWQyMDEyZDFjZjRh Li45ZWQyZGI5OTZlYzEgMTAwNjQ0Ci0tLSBhL25ldC9tcGxzL2FmX21wbHMuYworKysgYi9uZXQv bXBscy9hZl9tcGxzLmMKQEAgLTEzNDcsNyArMTM0Nyw3IEBAIHN0YXRpYyBpbnQgbXBsc19uZXRj b25mX2R1bXBfZGV2Y29uZihzdHJ1Y3Qgc2tfYnVmZiAqc2tiLAogI2RlZmluZSBNUExTX1BFUkRF Vl9TWVNDVExfT0ZGU0VUKGZpZWxkKQlcCiAJKCYoKHN0cnVjdCBtcGxzX2RldiAqKTApLT5maWVs ZCkKIAotc3RhdGljIGludCBtcGxzX2NvbmZfcHJvYyhzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGlu dCB3cml0ZSwKK3N0YXRpYyBpbnQgbXBsc19jb25mX3Byb2MoY29uc3Qgc3RydWN0IGN0bF90YWJs ZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2Zm X3QgKnBwb3MpCiB7CiAJaW50IG92YWwgPSAqKGludCAqKWN0bC0+ZGF0YTsKQEAgLTI2MDEsNyAr MjYwMSw3IEBAIHN0YXRpYyBpbnQgcmVzaXplX3BsYXRmb3JtX2xhYmVsX3RhYmxlKHN0cnVjdCBu ZXQgKm5ldCwgc2l6ZV90IGxpbWl0KQogCXJldHVybiAtRU5PTUVNOwogfQogCi1zdGF0aWMgaW50 IG1wbHNfcGxhdGZvcm1fbGFiZWxzKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUs CitzdGF0aWMgaW50IG1wbHNfcGxhdGZvcm1fbGFiZWxzKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUg KnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZf dCAqcHBvcykKIHsKIAlzdHJ1Y3QgbmV0ICpuZXQgPSB0YWJsZS0+ZGF0YTsKZGlmZiAtLWdpdCBh L25ldC9uZXRmaWx0ZXIvaXB2cy9pcF92c19jdGwuYyBiL25ldC9uZXRmaWx0ZXIvaXB2cy9pcF92 c19jdGwuYwppbmRleCA2ODlhYzUyMWVhMmQuLmUzNDg3OWY3YTJmNCAxMDA2NDQKLS0tIGEvbmV0 L25ldGZpbHRlci9pcHZzL2lwX3ZzX2N0bC5jCisrKyBiL25ldC9uZXRmaWx0ZXIvaXB2cy9pcF92 c19jdGwuYwpAQCAtMTg0Niw3ICsxODQ2LDcgQEAgc3RhdGljIGludCBpcF92c196ZXJvX2FsbChz dHJ1Y3QgbmV0bnNfaXB2cyAqaXB2cykKICNpZmRlZiBDT05GSUdfU1lTQ1RMCiAKIHN0YXRpYyBp bnQKLXByb2NfZG9fZGVmZW5zZV9tb2RlKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCitwcm9jX2RvX2RlZmVuc2VfbW9kZShjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwg aW50IHdyaXRlLAogCQkgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBw b3MpCiB7CiAJc3RydWN0IG5ldG5zX2lwdnMgKmlwdnMgPSB0YWJsZS0+ZXh0cmEyOwpAQCAtMTg3 Myw3ICsxODczLDcgQEAgcHJvY19kb19kZWZlbnNlX21vZGUoc3RydWN0IGN0bF90YWJsZSAqdGFi bGUsIGludCB3cml0ZSwKIH0KIAogc3RhdGljIGludAotcHJvY19kb19zeW5jX3RocmVzaG9sZChz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorcHJvY19kb19zeW5jX3RocmVzaG9s ZChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkgICAgICAgdm9p ZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgbmV0bnNf aXB2cyAqaXB2cyA9IHRhYmxlLT5leHRyYTI7CkBAIC0xOTAxLDcgKzE5MDEsNyBAQCBwcm9jX2Rv X3N5bmNfdGhyZXNob2xkKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiB9CiAK IHN0YXRpYyBpbnQKLXByb2NfZG9fc3luY19wb3J0cyhzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwg aW50IHdyaXRlLAorcHJvY19kb19zeW5jX3BvcnRzKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRh YmxlLCBpbnQgd3JpdGUsCiAJCSAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3Qg KnBwb3MpCiB7CiAJaW50ICp2YWxwID0gdGFibGUtPmRhdGE7CkBAIC0xOTg0LDcgKzE5ODQsNyBA QCBzdGF0aWMgaW50IGlwdnNfcHJvY19lc3RfY3B1bWFza19nZXQoY29uc3Qgc3RydWN0IGN0bF90 YWJsZSAqdGFibGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBpcHZzX3Byb2NfZXN0 X2NwdWxpc3Qoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQg aXB2c19wcm9jX2VzdF9jcHVsaXN0KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQg d3JpdGUsCiAJCQkJIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7 CiAJaW50IHJldDsKQEAgLTIwMTEsNyArMjAxMSw3IEBAIHN0YXRpYyBpbnQgaXB2c19wcm9jX2Vz dF9jcHVsaXN0KHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJl dDsKIH0KIAotc3RhdGljIGludCBpcHZzX3Byb2NfZXN0X25pY2Uoc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgaXB2c19wcm9jX2VzdF9uaWNlKGNvbnN0IHN0 cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkgICAgICB2b2lkICpidWZmZXIs IHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBuZXRuc19pcHZzICppcHZz ID0gdGFibGUtPmV4dHJhMjsKQEAgLTIwNDEsNyArMjA0MSw3IEBAIHN0YXRpYyBpbnQgaXB2c19w cm9jX2VzdF9uaWNlKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJcmV0dXJu IHJldDsKIH0KIAotc3RhdGljIGludCBpcHZzX3Byb2NfcnVuX2VzdGltYXRpb24oc3RydWN0IGN0 bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgaXB2c19wcm9jX3J1bl9lc3Rp bWF0aW9uKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJICAg IHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IG5l dG5zX2lwdnMgKmlwdnMgPSB0YWJsZS0+ZXh0cmEyOwpkaWZmIC0tZ2l0IGEvbmV0L25ldGZpbHRl ci9uZl9jb25udHJhY2tfc3RhbmRhbG9uZS5jIGIvbmV0L25ldGZpbHRlci9uZl9jb25udHJhY2tf c3RhbmRhbG9uZS5jCmluZGV4IGJiOWRlYTY3NmVjMS4uM2Q1Mjg0NjM5Y2E4IDEwMDY0NAotLS0g YS9uZXQvbmV0ZmlsdGVyL25mX2Nvbm50cmFja19zdGFuZGFsb25lLmMKKysrIGIvbmV0L25ldGZp bHRlci9uZl9jb25udHJhY2tfc3RhbmRhbG9uZS5jCkBAIC01MjcsNyArNTI3LDcgQEAgRVhQT1JU X1NZTUJPTF9HUEwobmZfY29ubnRyYWNrX2NvdW50KTsKIHN0YXRpYyB1bnNpZ25lZCBpbnQgbmZf Y29ubnRyYWNrX2h0YWJsZV9zaXplX3VzZXIgX19yZWFkX21vc3RseTsKIAogc3RhdGljIGludAot bmZfY29ubnRyYWNrX2hhc2hfc3lzY3RsKHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3Jp dGUsCituZl9jb25udHJhY2tfaGFzaF9zeXNjdGwoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFi bGUsIGludCB3cml0ZSwKIAkJCSB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpw cG9zKQogewogCWludCByZXQ7CmRpZmYgLS1naXQgYS9uZXQvbmV0ZmlsdGVyL25mX2hvb2tzX2x3 dHVubmVsLmMgYi9uZXQvbmV0ZmlsdGVyL25mX2hvb2tzX2x3dHVubmVsLmMKaW5kZXggMDBlODlm ZmQ3OGY2Li4zZDIzN2Y5Y2M4ZWUgMTAwNjQ0Ci0tLSBhL25ldC9uZXRmaWx0ZXIvbmZfaG9va3Nf bHd0dW5uZWwuYworKysgYi9uZXQvbmV0ZmlsdGVyL25mX2hvb2tzX2x3dHVubmVsLmMKQEAgLTI1 LDcgKzI1LDcgQEAgc3RhdGljIGlubGluZSBpbnQgbmZfaG9va3NfbHd0dW5uZWxfc2V0KGludCBl bmFibGUpCiB9CiAKICNpZmRlZiBDT05GSUdfU1lTQ1RMCi1pbnQgbmZfaG9va3NfbHd0dW5uZWxf c3lzY3RsX2hhbmRsZXIoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKK2ludCBu Zl9ob29rc19sd3R1bm5lbF9zeXNjdGxfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0 YWJsZSwgaW50IHdyaXRlLAogCQkJCSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlpbnQgcHJvY19uZl9ob29rc19sd3R1bm5lbF9lbmFibGVkID0gMDsK ZGlmZiAtLWdpdCBhL25ldC9uZXRmaWx0ZXIvbmZfbG9nLmMgYi9uZXQvbmV0ZmlsdGVyL25mX2xv Zy5jCmluZGV4IGVmZWRkMmYxM2FjNy4uYThlZGMzZTc1ZGI5IDEwMDY0NAotLS0gYS9uZXQvbmV0 ZmlsdGVyL25mX2xvZy5jCisrKyBiL25ldC9uZXRmaWx0ZXIvbmZfbG9nLmMKQEAgLTQwOSw3ICs0 MDksNyBAQCBzdGF0aWMgc3RydWN0IGN0bF90YWJsZSBuZl9sb2dfc3lzY3RsX2Z0YWJsZVtdID0g ewogCXsgfQogfTsKIAotc3RhdGljIGludCBuZl9sb2dfcHJvY19kb3N0cmluZyhzdHJ1Y3QgY3Rs X3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAorc3RhdGljIGludCBuZl9sb2dfcHJvY19kb3N0cmlu Zyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJIHZvaWQgKmJ1 ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJY29uc3Qgc3RydWN0IG5mX2xv Z2dlciAqbG9nZ2VyOwpkaWZmIC0tZ2l0IGEvbmV0L3Bob25ldC9zeXNjdGwuYyBiL25ldC9waG9u ZXQvc3lzY3RsLmMKaW5kZXggMGQwYmY0MTM4MWMyLi5lNTlkMTZlNjczNzYgMTAwNjQ0Ci0tLSBh L25ldC9waG9uZXQvc3lzY3RsLmMKKysrIGIvbmV0L3Bob25ldC9zeXNjdGwuYwpAQCAtNDgsNyAr NDgsNyBAQCB2b2lkIHBob25ldF9nZXRfbG9jYWxfcG9ydF9yYW5nZShpbnQgKm1pbiwgaW50ICpt YXgpCiAJfSB3aGlsZSAocmVhZF9zZXFyZXRyeSgmbG9jYWxfcG9ydF9yYW5nZV9sb2NrLCBzZXEp KTsKIH0KIAotc3RhdGljIGludCBwcm9jX2xvY2FsX3BvcnRfcmFuZ2Uoc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY19sb2NhbF9wb3J0X3JhbmdlKGNv bnN0IHN0cnVjdCBjdGxfdGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCiAJCQkJIHZvaWQgKmJ1ZmZl ciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJaW50IHJldDsKZGlmZiAtLWdpdCBh L25ldC9yZHMvdGNwLmMgYi9uZXQvcmRzL3RjcC5jCmluZGV4IDJkYmE3NTA1YjQxNC4uZDIzZWE4 YzExOTAyIDEwMDY0NAotLS0gYS9uZXQvcmRzL3RjcC5jCisrKyBiL25ldC9yZHMvdGNwLmMKQEAg LTYxLDcgKzYxLDcgQEAgc3RhdGljIGF0b21pY190IHJkc190Y3BfdW5sb2FkaW5nID0gQVRPTUlD X0lOSVQoMCk7CiAKIHN0YXRpYyBzdHJ1Y3Qga21lbV9jYWNoZSAqcmRzX3RjcF9jb25uX3NsYWI7 CiAKLXN0YXRpYyBpbnQgcmRzX3RjcF9za2J1Zl9oYW5kbGVyKHN0cnVjdCBjdGxfdGFibGUgKmN0 bCwgaW50IHdyaXRlLAorc3RhdGljIGludCByZHNfdGNwX3NrYnVmX2hhbmRsZXIoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJIHZvaWQgKmJ1ZmZlciwgc2l6ZV90 ICpsZW5wLCBsb2ZmX3QgKmZwb3MpOwogCiBzdGF0aWMgaW50IHJkc190Y3BfbWluX3NuZGJ1ZiA9 IFNPQ0tfTUlOX1NOREJVRjsKQEAgLTY4Myw3ICs2ODMsNyBAQCBzdGF0aWMgdm9pZCByZHNfdGNw X3N5c2N0bF9yZXNldChzdHJ1Y3QgbmV0ICpuZXQpCiAJc3Bpbl91bmxvY2tfaXJxKCZyZHNfdGNw X2Nvbm5fbG9jayk7CiB9CiAKLXN0YXRpYyBpbnQgcmRzX3RjcF9za2J1Zl9oYW5kbGVyKHN0cnVj dCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCByZHNfdGNwX3NrYnVmX2hh bmRsZXIoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJIHZvaWQg KmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKmZwb3MpCiB7CiAJc3RydWN0IG5ldCAqbmV0 ID0gY3VycmVudC0+bnNwcm94eS0+bmV0X25zOwpkaWZmIC0tZ2l0IGEvbmV0L3NjdHAvc3lzY3Rs LmMgYi9uZXQvc2N0cC9zeXNjdGwuYwppbmRleCAyNWJkZjE3YzcyNjIuLjNhZjVkN2IwNWFlOSAx MDA2NDQKLS0tIGEvbmV0L3NjdHAvc3lzY3RsLmMKKysrIGIvbmV0L3NjdHAvc3lzY3RsLmMKQEAg LTQzLDE5ICs0MywxOSBAQCBzdGF0aWMgdW5zaWduZWQgbG9uZyBtYXhfYXV0b2Nsb3NlX21heCA9 CiAJKE1BWF9TQ0hFRFVMRV9USU1FT1VUIC8gSFogPiBVSU5UX01BWCkKIAk/IFVJTlRfTUFYIDog TUFYX1NDSEVEVUxFX1RJTUVPVVQgLyBIWjsKIAotc3RhdGljIGludCBwcm9jX3NjdHBfZG9faG1h Y19hbGcoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2Nf c2N0cF9kb19obWFjX2FsZyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwK IAkJCQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7Ci1zdGF0aWMg aW50IHByb2Nfc2N0cF9kb19ydG9fbWluKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRl LAorc3RhdGljIGludCBwcm9jX3NjdHBfZG9fcnRvX21pbihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxl ICpjdGwsIGludCB3cml0ZSwKIAkJCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90 ICpwcG9zKTsKLXN0YXRpYyBpbnQgcHJvY19zY3RwX2RvX3J0b19tYXgoc3RydWN0IGN0bF90YWJs ZSAqY3RsLCBpbnQgd3JpdGUsIHZvaWQgKmJ1ZmZlciwKLQkJCQlzaXplX3QgKmxlbnAsIGxvZmZf dCAqcHBvcyk7Ci1zdGF0aWMgaW50IHByb2Nfc2N0cF9kb191ZHBfcG9ydChzdHJ1Y3QgY3RsX3Rh YmxlICpjdGwsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAotCQkJCSBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcyk7Ci1zdGF0aWMgaW50IHByb2Nfc2N0cF9kb19hbHBoYV9iZXRhKHN0cnVjdCBj dGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBwcm9jX3NjdHBfZG9fcnRvX21h eChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKKwkJCQl2b2lkICpidWZm ZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKK3N0YXRpYyBpbnQgcHJvY19zY3RwX2Rv X3VkcF9wb3J0KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorCQkJCSB2 b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKK3N0YXRpYyBpbnQgcHJv Y19zY3RwX2RvX2FscGhhX2JldGEoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3Jp dGUsCiAJCQkJICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcyk7Ci1z dGF0aWMgaW50IHByb2Nfc2N0cF9kb19hdXRoKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdy aXRlLAorc3RhdGljIGludCBwcm9jX3NjdHBfZG9fYXV0aChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxl ICpjdGwsIGludCB3cml0ZSwKIAkJCSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcyk7Ci1zdGF0aWMgaW50IHByb2Nfc2N0cF9kb19wcm9iZV9pbnRlcnZhbChzdHJ1 Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY19zY3RwX2RvX3By b2JlX2ludGVydmFsKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJ CSAgICAgICB2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKTsKIAogc3Rh dGljIHN0cnVjdCBjdGxfdGFibGUgc2N0cF90YWJsZVtdID0gewpAQCAtMzg4LDcgKzM4OCw3IEBA IHN0YXRpYyBzdHJ1Y3QgY3RsX3RhYmxlIHNjdHBfbmV0X3RhYmxlW10gPSB7CiAJeyAvKiBzZW50 aW5lbCAqLyB9CiB9OwogCi1zdGF0aWMgaW50IHByb2Nfc2N0cF9kb19obWFjX2FsZyhzdHJ1Y3Qg Y3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY19zY3RwX2RvX2htYWNf YWxnKGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJCSB2b2lkICpi dWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBuZXQgKm5ldCA9 IGN1cnJlbnQtPm5zcHJveHktPm5ldF9uczsKQEAgLTQzMyw3ICs0MzMsNyBAQCBzdGF0aWMgaW50 IHByb2Nfc2N0cF9kb19obWFjX2FsZyhzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwK IAlyZXR1cm4gcmV0OwogfQogCi1zdGF0aWMgaW50IHByb2Nfc2N0cF9kb19ydG9fbWluKHN0cnVj dCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAorc3RhdGljIGludCBwcm9jX3NjdHBfZG9fcnRv X21pbihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJCQl2b2lkICpi dWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCXN0cnVjdCBuZXQgKm5ldCA9 IGN1cnJlbnQtPm5zcHJveHktPm5ldF9uczsKQEAgLTQ2MSw3ICs0NjEsNyBAQCBzdGF0aWMgaW50 IHByb2Nfc2N0cF9kb19ydG9fbWluKHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAog CXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgcHJvY19zY3RwX2RvX3J0b19tYXgoc3RydWN0 IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2Nfc2N0cF9kb19ydG9f bWF4KGNvbnN0IHN0cnVjdCBjdGxfdGFibGUgKmN0bCwgaW50IHdyaXRlLAogCQkJCXZvaWQgKmJ1 ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IG5ldCAqbmV0ID0g Y3VycmVudC0+bnNwcm94eS0+bmV0X25zOwpAQCAtNDg5LDcgKzQ4OSw3IEBAIHN0YXRpYyBpbnQg cHJvY19zY3RwX2RvX3J0b19tYXgoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJ cmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBwcm9jX3NjdHBfZG9fYWxwaGFfYmV0YShzdHJ1 Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRpYyBpbnQgcHJvY19zY3RwX2RvX2Fs cGhhX2JldGEoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJCQkJICAg dm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlpZiAod3JpdGUp CkBAIC00OTksNyArNDk5LDcgQEAgc3RhdGljIGludCBwcm9jX3NjdHBfZG9fYWxwaGFfYmV0YShz dHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAlyZXR1cm4gcHJvY19kb2ludHZlY19t aW5tYXgoY3RsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKIH0KIAotc3RhdGljIGludCBw cm9jX3NjdHBfZG9fYXV0aChzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKK3N0YXRp YyBpbnQgcHJvY19zY3RwX2RvX2F1dGgoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQg d3JpdGUsCiAJCQkgICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBwb3Mp CiB7CiAJc3RydWN0IG5ldCAqbmV0ID0gY3VycmVudC0+bnNwcm94eS0+bmV0X25zOwpAQCAtNTI4 LDcgKzUyOCw3IEBAIHN0YXRpYyBpbnQgcHJvY19zY3RwX2RvX2F1dGgoc3RydWN0IGN0bF90YWJs ZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBwcm9jX3Nj dHBfZG9fdWRwX3BvcnQoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCitzdGF0aWMg aW50IHByb2Nfc2N0cF9kb191ZHBfcG9ydChjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGlu dCB3cml0ZSwKIAkJCQkgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxvZmZfdCAqcHBvcykK IHsKIAlzdHJ1Y3QgbmV0ICpuZXQgPSBjdXJyZW50LT5uc3Byb3h5LT5uZXRfbnM7CkBAIC01Njks NyArNTY5LDcgQEAgc3RhdGljIGludCBwcm9jX3NjdHBfZG9fdWRwX3BvcnQoc3RydWN0IGN0bF90 YWJsZSAqY3RsLCBpbnQgd3JpdGUsCiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBwcm9j X3NjdHBfZG9fcHJvYmVfaW50ZXJ2YWwoc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUs CitzdGF0aWMgaW50IHByb2Nfc2N0cF9kb19wcm9iZV9pbnRlcnZhbChjb25zdCBzdHJ1Y3QgY3Rs X3RhYmxlICpjdGwsIGludCB3cml0ZSwKIAkJCQkgICAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3Qg KmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAlzdHJ1Y3QgbmV0ICpuZXQgPSBjdXJyZW50LT5uc3By b3h5LT5uZXRfbnM7CmRpZmYgLS1naXQgYS9uZXQvc3VucnBjL3N5c2N0bC5jIGIvbmV0L3N1bnJw Yy9zeXNjdGwuYwppbmRleCA5Mzk0MWFiMTI1NDkuLjY3MjA2N2VmYWNlZiAxMDA2NDQKLS0tIGEv bmV0L3N1bnJwYy9zeXNjdGwuYworKysgYi9uZXQvc3VucnBjL3N5c2N0bC5jCkBAIC00MCw3ICs0 MCw3IEBAIEVYUE9SVF9TWU1CT0xfR1BMKG5sbV9kZWJ1Zyk7CiAKICNpZiBJU19FTkFCTEVEKENP TkZJR19TVU5SUENfREVCVUcpCiAKLXN0YXRpYyBpbnQgcHJvY19kb194cHJ0KHN0cnVjdCBjdGxf dGFibGUgKnRhYmxlLCBpbnQgd3JpdGUsCitzdGF0aWMgaW50IHByb2NfZG9feHBydChjb25zdCBz dHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJdm9pZCAqYnVmZmVyLCBzaXpl X3QgKmxlbnAsIGxvZmZfdCAqcHBvcykKIHsKIAljaGFyIHRtcGJ1ZlsyNTZdOwpAQCAtNjIsOCAr NjIsOCBAQCBzdGF0aWMgaW50IHByb2NfZG9feHBydChzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwg aW50IHdyaXRlLAogfQogCiBzdGF0aWMgaW50Ci1wcm9jX2RvZGVidWcoc3RydWN0IGN0bF90YWJs ZSAqdGFibGUsIGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsCi0JICAgICBs b2ZmX3QgKnBwb3MpCitwcm9jX2RvZGVidWcoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAqdGFibGUs IGludCB3cml0ZSwgdm9pZCAqYnVmZmVyLAorCSAgICAgc2l6ZV90ICpsZW5wLCBsb2ZmX3QgKnBw b3MpCiB7CiAJY2hhcgkJdG1wYnVmWzIwXSwgKnMgPSBOVUxMOwogCWNoYXIgKnA7CmRpZmYgLS1n aXQgYS9uZXQvc3VucnBjL3hwcnRyZG1hL3N2Y19yZG1hLmMgYi9uZXQvc3VucnBjL3hwcnRyZG1h L3N2Y19yZG1hLmMKaW5kZXggZjg2OTcwNzMzZWIwLi4wOTgzMmU0OTQ1YTMgMTAwNjQ0Ci0tLSBh L25ldC9zdW5ycGMveHBydHJkbWEvc3ZjX3JkbWEuYworKysgYi9uZXQvc3VucnBjL3hwcnRyZG1h L3N2Y19yZG1hLmMKQEAgLTc0LDcgKzc0LDcgQEAgZW51bSB7CiAJU1ZDUkRNQV9DT1VOVEVSX0JV RlNJWgk9IHNpemVvZih1bnNpZ25lZCBsb25nIGxvbmcpLAogfTsKIAotc3RhdGljIGludCBzdmNy ZG1hX2NvdW50ZXJfaGFuZGxlcihzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAor c3RhdGljIGludCBzdmNyZG1hX2NvdW50ZXJfaGFuZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxl ICp0YWJsZSwgaW50IHdyaXRlLAogCQkJCSAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLCBs b2ZmX3QgKnBwb3MpCiB7CiAJc3RydWN0IHBlcmNwdV9jb3VudGVyICpzdGF0ID0gKHN0cnVjdCBw ZXJjcHVfY291bnRlciAqKXRhYmxlLT5kYXRhOwpkaWZmIC0tZ2l0IGEvc2VjdXJpdHkvYXBwYXJt b3IvbHNtLmMgYi9zZWN1cml0eS9hcHBhcm1vci9sc20uYwppbmRleCA2MjM5Nzc3MDkwYzQuLjE2 NTY4YjZkNTg5ZCAxMDA2NDQKLS0tIGEvc2VjdXJpdHkvYXBwYXJtb3IvbHNtLmMKKysrIGIvc2Vj dXJpdHkvYXBwYXJtb3IvbHNtLmMKQEAgLTIwMjksNyArMjAyOSw3IEBAIHN0YXRpYyBpbnQgX19p bml0IGFsbG9jX2J1ZmZlcnModm9pZCkKIH0KIAogI2lmZGVmIENPTkZJR19TWVNDVEwKLXN0YXRp YyBpbnQgYXBwYXJtb3JfZG9pbnR2ZWMoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0 ZSwKK3N0YXRpYyBpbnQgYXBwYXJtb3JfZG9pbnR2ZWMoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKIAkJCSAgICAgdm9pZCAqYnVmZmVyLCBzaXplX3QgKmxlbnAsIGxv ZmZfdCAqcHBvcykKIHsKIAlpZiAoIWFhX2N1cnJlbnRfcG9saWN5X2FkbWluX2NhcGFibGUoTlVM TCkpCmRpZmYgLS1naXQgYS9zZWN1cml0eS9taW5fYWRkci5jIGIvc2VjdXJpdHkvbWluX2FkZHIu YwppbmRleCA4OGM5YTZhMjFmNDcuLjBjZTI2N2MwNDFhYiAxMDA2NDQKLS0tIGEvc2VjdXJpdHkv bWluX2FkZHIuYworKysgYi9zZWN1cml0eS9taW5fYWRkci5jCkBAIC0yOSw3ICsyOSw3IEBAIHN0 YXRpYyB2b2lkIHVwZGF0ZV9tbWFwX21pbl9hZGRyKHZvaWQpCiAgKiBzeXNjdGwgaGFuZGxlciB3 aGljaCBqdXN0IHNldHMgZGFjX21tYXBfbWluX2FkZHIgPSB0aGUgbmV3IHZhbHVlIGFuZCB0aGVu CiAgKiBjYWxscyB1cGRhdGVfbW1hcF9taW5fYWRkcigpIHNvIG5vbiBNQVBfRklYRUQgaGludHMg Z2V0IHJvdW5kZWQgcHJvcGVybHkKICAqLwotaW50IG1tYXBfbWluX2FkZHJfaGFuZGxlcihzdHJ1 Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAoraW50IG1tYXBfbWluX2FkZHJfaGFuZGxl cihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAogCQkJICB2b2lkICpi dWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90ICpwcG9zKQogewogCWludCByZXQ7CmRpZmYgLS1n aXQgYS9zZWN1cml0eS95YW1hL3lhbWFfbHNtLmMgYi9zZWN1cml0eS95YW1hL3lhbWFfbHNtLmMK aW5kZXggYjY2ODRhMDc0YTU5Li41Yjc2MmY0NTI5NzcgMTAwNjQ0Ci0tLSBhL3NlY3VyaXR5L3lh bWEveWFtYV9sc20uYworKysgYi9zZWN1cml0eS95YW1hL3lhbWFfbHNtLmMKQEAgLTQzNSw3ICs0 MzUsNyBAQCBzdGF0aWMgc3RydWN0IHNlY3VyaXR5X2hvb2tfbGlzdCB5YW1hX2hvb2tzW10gX19y b19hZnRlcl9pbml0ID0gewogfTsKIAogI2lmZGVmIENPTkZJR19TWVNDVEwKLXN0YXRpYyBpbnQg eWFtYV9kb2ludHZlY19taW5tYXgoc3RydWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwK K3N0YXRpYyBpbnQgeWFtYV9kb2ludHZlY19taW5tYXgoY29uc3Qgc3RydWN0IGN0bF90YWJsZSAq dGFibGUsIGludCB3cml0ZSwKIAkJCQl2b2lkICpidWZmZXIsIHNpemVfdCAqbGVucCwgbG9mZl90 ICpwcG9zKQogewogCXN0cnVjdCBjdGxfdGFibGUgdGFibGVfY29weTsKCi0tIAoyLjQ0LjAKCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwprZXhlYyBtYWls aW5nIGxpc3QKa2V4ZWNAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFk Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2tleGVjCg==