From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LNmvK-00030X-Sk for qemu-devel@nongnu.org; Fri, 16 Jan 2009 06:31:39 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LNmvI-0002z2-N7 for qemu-devel@nongnu.org; Fri, 16 Jan 2009 06:31:38 -0500 Received: from [199.232.76.173] (port=36968 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LNmvH-0002yr-ST for qemu-devel@nongnu.org; Fri, 16 Jan 2009 06:31:35 -0500 Received: from smtp.eu.citrix.com ([62.200.22.115]:30794) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1LNmvF-0001f5-82 for qemu-devel@nongnu.org; Fri, 16 Jan 2009 06:31:35 -0500 Message-ID: <49706FC1.6060305@eu.citrix.com> Date: Fri, 16 Jan 2009 11:30:09 +0000 From: Stefano Stabellini MIME-Version: 1.0 Subject: Re: [Qemu-devel] [PATCH 5 of 7] graphical_console_init change References: <494AA0E0.5090700@eu.citrix.com> <496FB662.6080806@codemonkey.ws> <49706C67.8050904@eu.citrix.com> In-Reply-To: <49706C67.8050904@eu.citrix.com> Content-Type: multipart/mixed; boundary="------------070505070302080001040906" Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: qemu-devel@nongnu.org This is a multi-part message in MIME format. --------------070505070302080001040906 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Stefano Stabellini wrote: > Anthony Liguori wrote: > >> This breaks the build. >> >> /home/anthony/svn/qemu/hw/ssd0303.c: In function ‘ssd0303_init’: >> /home/anthony/svn/qemu/hw/ssd0303.c:320: warning: passing argument 1 of >> ‘graphic_console_init’ from incompatible pointer type >> /home/anthony/svn/qemu/hw/ssd0303.c:320: warning: passing argument 3 of >> ‘graphic_console_init’ from incompatible pointer type >> /home/anthony/svn/qemu/hw/ssd0303.c:320: error: too many arguments to >> function ‘graphic_console_init’ >> /home/anthony/svn/qemu/hw/ssd0303.c:320: warning: assignment from >> incompatible pointer type >> /home/anthony/svn/qemu/hw/ssd0303.c:321: warning: passing argument 1 of >> ‘qemu_console_resize’ from incompatible pointer type >> > > PATCH 5 requires PATCH 6 and 7 to compile, where PATCH 6 and 7 are just > mindless substitutions. > Unfortunately it seems that there are problems applying 6 and 7 with the > current qemu code but rediffing them shouldn't be a problem (since they > are just substitutions). > I'll try to help you with that. > I am attaching to this email the rediffed version of PATCH 6 (machine_changes) and 7 (hwchanges); PATCH 5 doesn't need to be rediffed. --------------070505070302080001040906 Content-Type: text/plain; name="machine_changes" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="machine_changes" ZGlmZiAtLWdpdCBhL2h3L2FuNTIwNi5jIGIvaHcvYW41MjA2LmMKaW5kZXggOThmMzVlMy4u NDE5ZDQxNiAxMDA2NDQKLS0tIGEvaHcvYW41MjA2LmMKKysrIGIvaHcvYW41MjA2LmMKQEAg LTI3LDcgKzI3LDcgQEAgdm9pZCBpcnFfaW5mbyh2b2lkKQogLyogQm9hcmQgaW5pdC4gICov CiAKIHN0YXRpYyB2b2lkIGFuNTIwNl9pbml0KHJhbV9hZGRyX3QgcmFtX3NpemUsIGludCB2 Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2Rl dmljZSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo YXIgKmJvb3RfZGV2aWNlLAogICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqa2Vy bmVsX2ZpbGVuYW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwKICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29uc3QgY2hhciAqY3B1 X21vZGVsKQogewpkaWZmIC0tZ2l0IGEvaHcvYm9hcmRzLmggYi9ody9ib2FyZHMuaAppbmRl eCA0ZjY5MGM5Li4wNTc3ZjA2IDEwMDY0NAotLS0gYS9ody9ib2FyZHMuaAorKysgYi9ody9i b2FyZHMuaApAQCAtNCw3ICs0LDcgQEAKICNkZWZpbmUgSFdfQk9BUkRTX0gKIAogdHlwZWRl ZiB2b2lkIFFFTVVNYWNoaW5lSW5pdEZ1bmMocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZn YV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo YXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5U3RhdGUgKmRzLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfY21kbGlu ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmluaXRy ZF9maWxlbmFtZSwKZGlmZiAtLWdpdCBhL2h3L2R1bW15X202OGsuYyBiL2h3L2R1bW15X202 OGsuYwppbmRleCA3OTMxYjZkLi45YzBhOWRjIDEwMDY0NAotLS0gYS9ody9kdW1teV9tNjhr LmMKKysrIGIvaHcvZHVtbXlfbTY4ay5jCkBAIC0xNSw3ICsxNSw3IEBACiAvKiBCb2FyZCBp bml0LiAgKi8KIAogc3RhdGljIHZvaWQgZHVtbXlfbTY4a19pbml0KHJhbV9hZGRyX3QgcmFt X3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgICAgICBjb25zdCBj aGFyICpib290X2RldmljZSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAogICAgICAgICAgICAgICAgICAgICAgY29u c3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwK ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29u c3QgY2hhciAqY3B1X21vZGVsKQogewpkaWZmIC0tZ2l0IGEvaHcvZXRyYXhmcy5jIGIvaHcv ZXRyYXhmcy5jCmluZGV4IGU0MDlhOTQuLmVkYTk5MjkgMTAwNjQ0Ci0tLSBhL2h3L2V0cmF4 ZnMuYworKysgYi9ody9ldHJheGZzLmMKQEAgLTQ3LDcgKzQ3LDcgQEAgc3RhdGljIHZvaWQg bWFpbl9jcHVfcmVzZXQodm9pZCAqb3BhcXVlKQogCiBzdGF0aWMKIHZvaWQgYmFyZWV0cmF4 ZnNfaW5pdCAocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAgICAg ICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0 ZSAqZHMsCisgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNl LAogICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUs IGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsK ZGlmZiAtLWdpdCBhL2h3L2d1bXN0aXguYyBiL2h3L2d1bXN0aXguYwppbmRleCAyOWNkNjlk Li43MGFiYmRjIDEwMDY0NAotLS0gYS9ody9ndW1zdGl4LmMKKysrIGIvaHcvZ3Vtc3RpeC5j CkBAIC00Miw3ICs0Miw3IEBACiBzdGF0aWMgY29uc3QgaW50IHNlY3Rvcl9sZW4gPSAxMjgg KiAxMDI0OwogCiBzdGF0aWMgdm9pZCBjb25uZXhfaW5pdChyYW1fYWRkcl90IHJhbV9zaXpl LCBpbnQgdmdhX3JhbV9zaXplLAotICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3Rf ZGV2aWNlLCBEaXNwbGF5U3RhdGUgKmRzLAorICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIg KmJvb3RfZGV2aWNlLAogICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxl bmFtZSwgY29uc3QgY2hhciAqa2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgICAgY29u c3QgY2hhciAqaW5pdHJkX2ZpbGVuYW1lLCBjb25zdCBjaGFyICpjcHVfbW9kZWwpCiB7CkBA IC01OCw3ICs1OCw3IEBAIHN0YXRpYyB2b2lkIGNvbm5leF9pbml0KHJhbV9hZGRyX3QgcmFt X3NpemUsIGludCB2Z2FfcmFtX3NpemUsCiAgICAgICAgIGV4aXQoMSk7CiAgICAgfQogCi0g ICAgY3B1ID0gcHhhMjU1X2luaXQoY29ubmV4X3JhbSwgZHMpOworICAgIGNwdSA9IHB4YTI1 NV9pbml0KGNvbm5leF9yYW0pOwogCiAgICAgaW5kZXggPSBkcml2ZV9nZXRfaW5kZXgoSUZf UEZMQVNILCAwLCAwKTsKICAgICBpZiAoaW5kZXggPT0gLTEpIHsKQEAgLTgyLDcgKzgyLDcg QEAgc3RhdGljIHZvaWQgY29ubmV4X2luaXQocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZn YV9yYW1fc2l6ZSwKIH0KIAogc3RhdGljIHZvaWQgdmVyZGV4X2luaXQocmFtX2FkZHJfdCBy YW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAgICBjb25zdCBjaGFy ICpib290X2RldmljZSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAgICAgICAgICAgICBjb25z dCBjaGFyICpib290X2RldmljZSwKICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJu ZWxfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAg ICAgIGNvbnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29uc3QgY2hhciAqY3B1X21vZGVs KQogewpAQCAtOTgsNyArOTgsNyBAQCBzdGF0aWMgdm9pZCB2ZXJkZXhfaW5pdChyYW1fYWRk cl90IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAogICAgICAgICBleGl0KDEpOwogICAg IH0KIAotICAgIGNwdSA9IHB4YTI3MF9pbml0KHZlcmRleF9yYW0sIGRzLCBjcHVfbW9kZWwg PzogInB4YTI3MC1jMCIpOworICAgIGNwdSA9IHB4YTI3MF9pbml0KHZlcmRleF9yYW0sIGNw dV9tb2RlbCA/OiAicHhhMjcwLWMwIik7CiAKICAgICBpbmRleCA9IGRyaXZlX2dldF9pbmRl eChJRl9QRkxBU0gsIDAsIDApOwogICAgIGlmIChpbmRleCA9PSAtMSkgewpkaWZmIC0tZ2l0 IGEvaHcvaW50ZWdyYXRvcmNwLmMgYi9ody9pbnRlZ3JhdG9yY3AuYwppbmRleCBmZGJmZTIw Li40YzU2MjNhIDEwMDY0NAotLS0gYS9ody9pbnRlZ3JhdG9yY3AuYworKysgYi9ody9pbnRl Z3JhdG9yY3AuYwpAQCAtNDU0LDcgKzQ1NCw3IEBAIHN0YXRpYyBzdHJ1Y3QgYXJtX2Jvb3Rf aW5mbyBpbnRlZ3JhdG9yX2JpbmZvID0gewogfTsKIAogc3RhdGljIHZvaWQgaW50ZWdyYXRv cmNwX2luaXQocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5U3RhdGUg KmRzLAorICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsIGNvbnN0 IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hh ciAqaW5pdHJkX2ZpbGVuYW1lLCBjb25zdCBjaGFyICpjcHVfbW9kZWwpCiB7CkBAIC00OTks NyArNDk5LDcgQEAgc3RhdGljIHZvaWQgaW50ZWdyYXRvcmNwX2luaXQocmFtX2FkZHJfdCBy YW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKICAgICBwbDE4MV9pbml0KDB4MWMwMDAwMDAs IGRyaXZlc190YWJsZVtzZF0uYmRydiwgcGljWzIzXSwgcGljWzI0XSk7CiAgICAgaWYgKG5k X3RhYmxlWzBdLnZsYW4pCiAgICAgICAgIHNtYzkxYzExMV9pbml0KCZuZF90YWJsZVswXSwg MHhjODAwMDAwMCwgcGljWzI3XSk7Ci0gICAgcGwxMTBfaW5pdChkcywgMHhjMDAwMDAwMCwg cGljWzIyXSwgMCk7CisgICAgcGwxMTBfaW5pdCgweGMwMDAwMDAwLCBwaWNbMjJdLCAwKTsK IAogICAgIGludGVncmF0b3JfYmluZm8ucmFtX3NpemUgPSByYW1fc2l6ZTsKICAgICBpbnRl Z3JhdG9yX2JpbmZvLmtlcm5lbF9maWxlbmFtZSA9IGtlcm5lbF9maWxlbmFtZTsKZGlmZiAt LWdpdCBhL2h3L21haW5zdG9uZS5jIGIvaHcvbWFpbnN0b25lLmMKaW5kZXggODkyMzM4NS4u NWY0Y2M5MSAxMDA2NDQKLS0tIGEvaHcvbWFpbnN0b25lLmMKKysrIGIvaHcvbWFpbnN0b25l LmMKQEAgLTY5LDcgKzY5LDcgQEAgc3RhdGljIHN0cnVjdCBhcm1fYm9vdF9pbmZvIG1haW5z dG9uZV9iaW5mbyA9IHsKIH07CiAKIHN0YXRpYyB2b2lkIG1haW5zdG9uZV9jb21tb25faW5p dChyYW1fYWRkcl90IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAotICAgICAgICAgICAg ICAgIERpc3BsYXlTdGF0ZSAqZHMsIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwKKyAg ICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsCiAgICAgICAgICAg ICAgICAgY29uc3QgY2hhciAqa2VybmVsX2NtZGxpbmUsIGNvbnN0IGNoYXIgKmluaXRyZF9m aWxlbmFtZSwKICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpjcHVfbW9kZWwsIGVudW0g bWFpbnN0b25lX21vZGVsX2UgbW9kZWwsIGludCBhcm1faWQpCiB7CkBAIC05MSw3ICs5MSw3 IEBAIHN0YXRpYyB2b2lkIG1haW5zdG9uZV9jb21tb25faW5pdChyYW1fYWRkcl90IHJhbV9z aXplLCBpbnQgdmdhX3JhbV9zaXplLAogICAgICAgICBleGl0KDEpOwogICAgIH0KIAotICAg IGNwdSA9IHB4YTI3MF9pbml0KG1haW5zdG9uZV9iaW5mby5yYW1fc2l6ZSwgZHMsIGNwdV9t b2RlbCk7CisgICAgY3B1ID0gcHhhMjcwX2luaXQobWFpbnN0b25lX2JpbmZvLnJhbV9zaXpl LCBjcHVfbW9kZWwpOwogICAgIGNwdV9yZWdpc3Rlcl9waHlzaWNhbF9tZW1vcnkoMCwgTUFJ TlNUT05FX1JPTSwKICAgICAgICAgICAgICAgICAgICAgcWVtdV9yYW1fYWxsb2MoTUFJTlNU T05FX1JPTSkgfCBJT19NRU1fUk9NKTsKIApAQCAtMTM1LDExICsxMzUsMTEgQEAgc3RhdGlj IHZvaWQgbWFpbnN0b25lX2NvbW1vbl9pbml0KHJhbV9hZGRyX3QgcmFtX3NpemUsIGludCB2 Z2FfcmFtX3NpemUsCiB9CiAKIHN0YXRpYyB2b2lkIG1haW5zdG9uZV9pbml0KHJhbV9hZGRy X3QgcmFtX3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgY29uc3Qg Y2hhciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAg Y29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAq a2VybmVsX2ZpbGVuYW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwKICAgICAgICAg ICAgICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9t b2RlbCkKIHsKLSAgICBtYWluc3RvbmVfY29tbW9uX2luaXQocmFtX3NpemUsIHZnYV9yYW1f c2l6ZSwgZHMsIGtlcm5lbF9maWxlbmFtZSwKKyAgICBtYWluc3RvbmVfY29tbW9uX2luaXQo cmFtX3NpemUsIHZnYV9yYW1fc2l6ZSwga2VybmVsX2ZpbGVuYW1lLAogICAgICAgICAgICAg ICAgIGtlcm5lbF9jbWRsaW5lLCBpbml0cmRfZmlsZW5hbWUsIGNwdV9tb2RlbCwgbWFpbnN0 b25lLCAweDE5Nik7CiB9CiAKZGlmZiAtLWdpdCBhL2h3L21jZjUyMDguYyBiL2h3L21jZjUy MDguYwppbmRleCBmMDZjMjVhLi5kYWU5YTYxIDEwMDY0NAotLS0gYS9ody9tY2Y1MjA4LmMK KysrIGIvaHcvbWNmNTIwOC5jCkBAIC0xOTgsNyArMTk4LDcgQEAgc3RhdGljIHZvaWQgbWNm NTIwOF9zeXNfaW5pdChxZW11X2lycSAqcGljKQogfQogCiBzdGF0aWMgdm9pZCBtY2Y1MjA4 ZXZiX2luaXQocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5U3RhdGUg KmRzLAorICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsIGNvbnN0 IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hh ciAqaW5pdHJkX2ZpbGVuYW1lLCBjb25zdCBjaGFyICpjcHVfbW9kZWwpCiB7CmRpZmYgLS1n aXQgYS9ody9taXBzX2phenouYyBiL2h3L21pcHNfamF6ei5jCmluZGV4IGRjMDhkZWIuLmI0 MjJlYTYgMTAwNjQ0Ci0tLSBhL2h3L21pcHNfamF6ei5jCisrKyBiL2h3L21pcHNfamF6ei5j CkBAIC0xMjUsNyArMTI1LDcgQEAgc3RhdGljIHZvaWQgYXVkaW9faW5pdChxZW11X2lycSAq cGljKQogCiBzdGF0aWMKIHZvaWQgbWlwc19qYXp6X2luaXQgKHJhbV9hZGRyX3QgcmFtX3Np emUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgICAgICBEaXNwbGF5U3Rh dGUgKmRzLCBjb25zdCBjaGFyICpjcHVfbW9kZWwsCisgICAgICAgICAgICAgICAgICAgICBj b25zdCBjaGFyICpjcHVfbW9kZWwsCiAgICAgICAgICAgICAgICAgICAgICBlbnVtIGphenpf bW9kZWxfZSBqYXp6X21vZGVsKQogewogICAgIGNoYXIgYnVmWzEwMjRdOwpAQCAtMjAxLDEw ICsyMDEsMTAgQEAgdm9pZCBtaXBzX2phenpfaW5pdCAocmFtX2FkZHJfdCByYW1fc2l6ZSwg aW50IHZnYV9yYW1fc2l6ZSwKICAgICAvKiBWaWRlbyBjYXJkICovCiAgICAgc3dpdGNoIChq YXp6X21vZGVsKSB7CiAgICAgY2FzZSBKQVpaX01BR05VTToKLSAgICAgICAgZzM2NGZiX21t X2luaXQoZHMsIHZnYV9yYW1fc2l6ZSwgMCwgMHg0MDAwMDAwMCwgMHg2MDAwMDAwMCk7Cisg ICAgICAgIGczNjRmYl9tbV9pbml0KHZnYV9yYW1fc2l6ZSwgMCwgMHg0MDAwMDAwMCwgMHg2 MDAwMDAwMCk7CiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgSkFaWl9QSUNBNjE6Ci0gICAg ICAgIGlzYV92Z2FfbW1faW5pdChkcywgcGh5c19yYW1fYmFzZSArIHJhbV9zaXplLCByYW1f c2l6ZSwgdmdhX3JhbV9zaXplLAorICAgICAgICBpc2FfdmdhX21tX2luaXQocGh5c19yYW1f YmFzZSArIHJhbV9zaXplLCByYW1fc2l6ZSwgdmdhX3JhbV9zaXplLAogICAgICAgICAgICAg ICAgICAgICAgICAgMHg0MDAwMDAwMCwgMHg2MDAwMDAwMCwgMCk7CiAgICAgICAgIGJyZWFr OwogICAgIGRlZmF1bHQ6CkBAIC0yNjcsMjUgKzI2NywyNSBAQCB2b2lkIG1pcHNfamF6el9p bml0IChyYW1fYWRkcl90IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAogICAgIGRzMTIy NXlfaW5pdCgweDgwMDA5MDAwLCAibnZyYW0iKTsKIAogICAgIC8qIExFRCBpbmRpY2F0b3Ig Ki8KLSAgICBqYXp6X2xlZF9pbml0KGRzLCAweDgwMDBmMDAwKTsKKyAgICBqYXp6X2xlZF9p bml0KDB4ODAwMGYwMDApOwogfQogCiBzdGF0aWMKIHZvaWQgbWlwc19tYWdudW1faW5pdCAo cmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAg ICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAogICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsIGNvbnN0IGNo YXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFy ICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsKLSAgICBtaXBz X2phenpfaW5pdChyYW1fc2l6ZSwgdmdhX3JhbV9zaXplLCBkcywgY3B1X21vZGVsLCBKQVpa X01BR05VTSk7CisgICAgbWlwc19qYXp6X2luaXQocmFtX3NpemUsIHZnYV9yYW1fc2l6ZSwg Y3B1X21vZGVsLCBKQVpaX01BR05VTSk7CiB9CiAKIHN0YXRpYwogdm9pZCBtaXBzX3BpY2E2 MV9pbml0IChyYW1fYWRkcl90IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAotICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwgRGlzcGxheVN0YXRl ICpkcywKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2Us CiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwg Y29uc3QgY2hhciAqa2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgICAgICAgICAgIGNv bnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29uc3QgY2hhciAqY3B1X21vZGVsKQogewot ICAgIG1pcHNfamF6el9pbml0KHJhbV9zaXplLCB2Z2FfcmFtX3NpemUsIGRzLCBjcHVfbW9k ZWwsIEpBWlpfUElDQTYxKTsKKyAgICBtaXBzX2phenpfaW5pdChyYW1fc2l6ZSwgdmdhX3Jh bV9zaXplLCBjcHVfbW9kZWwsIEpBWlpfUElDQTYxKTsKIH0KIAogUUVNVU1hY2hpbmUgbWlw c19tYWdudW1fbWFjaGluZSA9IHsKZGlmZiAtLWdpdCBhL2h3L21pcHNfbWFsdGEuYyBiL2h3 L21pcHNfbWFsdGEuYwppbmRleCAzY2EwMzZiLi40MmY3N2YxIDEwMDY0NAotLS0gYS9ody9t aXBzX21hbHRhLmMKKysrIGIvaHcvbWlwc19tYWx0YS5jCkBAIC03NjMsNyArNzYzLDcgQEAg c3RhdGljIHZvaWQgbWFpbl9jcHVfcmVzZXQodm9pZCAqb3BhcXVlKQogCiBzdGF0aWMKIHZv aWQgbWlwc19tYWx0YV9pbml0IChyYW1fYWRkcl90IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9z aXplLAotICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLCBE aXNwbGF5U3RhdGUgKmRzLAorICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJv b3RfZGV2aWNlLAogICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9m aWxlbmFtZSwgY29uc3QgY2hhciAqa2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgY2hhciAqaW5pdHJkX2ZpbGVuYW1lLCBjb25zdCBjaGFyICpjcHVfbW9k ZWwpCiB7CkBAIC05MzgsNyArOTM4LDcgQEAgdm9pZCBtaXBzX21hbHRhX2luaXQgKHJhbV9h ZGRyX3QgcmFtX3NpemUsIGludCB2Z2FfcmFtX3NpemUsCiAgICAgbmV0d29ya19pbml0KHBj aV9idXMpOwogCiAgICAgLyogT3B0aW9uYWwgUENJIHZpZGVvIGNhcmQgKi8KLSAgICBwY2lf Y2lycnVzX3ZnYV9pbml0KHBjaV9idXMsIGRzLCBwaHlzX3JhbV9iYXNlICsgcmFtX3NpemUs CisgICAgcGNpX2NpcnJ1c192Z2FfaW5pdChwY2lfYnVzLCBwaHlzX3JhbV9iYXNlICsgcmFt X3NpemUsCiAgICAgICAgICAgICAgICAgICAgICAgICByYW1fc2l6ZSwgdmdhX3JhbV9zaXpl KTsKIH0KIApkaWZmIC0tZ2l0IGEvaHcvbWlwc19taXBzc2ltLmMgYi9ody9taXBzX21pcHNz aW0uYwppbmRleCA4M2YxYTYzLi4zZjU0OTAwIDEwMDY0NAotLS0gYS9ody9taXBzX21pcHNz aW0uYworKysgYi9ody9taXBzX21pcHNzaW0uYwpAQCAtMTA4LDcgKzEwOCw3IEBAIHN0YXRp YyB2b2lkIG1haW5fY3B1X3Jlc2V0KHZvaWQgKm9wYXF1ZSkKIAogc3RhdGljIHZvaWQKIG1p cHNfbWlwc3NpbV9pbml0IChyYW1fYWRkcl90IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9zaXpl LAotICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5 U3RhdGUgKmRzLAorICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNl LAogICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwgY29u c3QgY2hhciAqa2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hh ciAqaW5pdHJkX2ZpbGVuYW1lLCBjb25zdCBjaGFyICpjcHVfbW9kZWwpCiB7CmRpZmYgLS1n aXQgYS9ody9taXBzX3I0ay5jIGIvaHcvbWlwc19yNGsuYwppbmRleCBjMTJhYjU0Li4zNGIz ODUzIDEwMDY0NAotLS0gYS9ody9taXBzX3I0ay5jCisrKyBiL2h3L21pcHNfcjRrLmMKQEAg LTE0OCw3ICsxNDgsNyBAQCBzdGF0aWMgdm9pZCBtYWluX2NwdV9yZXNldCh2b2lkICpvcGFx dWUpCiBzdGF0aWMgY29uc3QgaW50IHNlY3Rvcl9sZW4gPSAzMiAqIDEwMjQ7CiBzdGF0aWMK IHZvaWQgbWlwc19yNGtfaW5pdCAocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1f c2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsIERp c3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3Rf ZGV2aWNlLAogICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5h bWUsIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAgICAgICBj b25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsK QEAgLTI0NCw3ICsyNDQsNyBAQCB2b2lkIG1pcHNfcjRrX2luaXQgKHJhbV9hZGRyX3QgcmFt X3NpemUsIGludCB2Z2FfcmFtX3NpemUsCiAgICAgICAgIH0KICAgICB9CiAKLSAgICBpc2Ff dmdhX2luaXQoZHMsIHBoeXNfcmFtX2Jhc2UgKyByYW1fc2l6ZSwgcmFtX3NpemUsCisgICAg aXNhX3ZnYV9pbml0KHBoeXNfcmFtX2Jhc2UgKyByYW1fc2l6ZSwgcmFtX3NpemUsCiAgICAg ICAgICAgICAgICAgIHZnYV9yYW1fc2l6ZSk7CiAKICAgICBpZiAobmRfdGFibGVbMF0udmxh bikKZGlmZiAtLWdpdCBhL2h3L211c2ljcGFsLmMgYi9ody9tdXNpY3BhbC5jCmluZGV4IGZj NGI0NzAuLjMyZDVjMTMgMTAwNjQ0Ci0tLSBhL2h3L211c2ljcGFsLmMKKysrIGIvaHcvbXVz aWNwYWwuYwpAQCAtMTQwNCw3ICsxNDA0LDcgQEAgc3RhdGljIHN0cnVjdCBhcm1fYm9vdF9p bmZvIG11c2ljcGFsX2JpbmZvID0gewogfTsKIAogc3RhdGljIHZvaWQgbXVzaWNwYWxfaW5p dChyYW1fYWRkcl90IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAotICAgICAgICAgICAg ICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAg ICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwKICAgICAgICAgICAgICAgIGNvbnN0 IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwgY29uc3QgY2hhciAqa2VybmVsX2NtZGxpbmUsCiAg ICAgICAgICAgICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIg KmNwdV9tb2RlbCkKIHsKQEAgLTE0NzAsNyArMTQ3MCw3IEBAIHN0YXRpYyB2b2lkIG11c2lj cGFsX2luaXQocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKICAgICB9 CiAgICAgbXY4OHc4NjE4X2ZsYXNoY2ZnX2luaXQoTVBfRkxBU0hDRkdfQkFTRSk7CiAKLSAg ICBtdXNpY3BhbF9sY2RfaW5pdChkcywgTVBfTENEX0JBU0UpOworICAgIG11c2ljcGFsX2xj ZF9pbml0KE1QX0xDRF9CQVNFKTsKIAogICAgIHFlbXVfYWRkX2tiZF9ldmVudF9oYW5kbGVy KG11c2ljcGFsX2tleV9ldmVudCwgcGljW01QX0dQSU9fSVJRXSk7CiAKZGlmZiAtLWdpdCBh L2h3L25zZXJpZXMuYyBiL2h3L25zZXJpZXMuYwppbmRleCA5NTU5ZmQwLi5iNGYyOTUxIDEw MDY0NAotLS0gYS9ody9uc2VyaWVzLmMKKysrIGIvaHcvbnNlcmllcy5jCkBAIC03MTQsOSAr NzE0LDkgQEAgc3RhdGljIHZvaWQgbjgwMF9kc3NfaW5pdChzdHJ1Y3QgcmZiaV9jaGlwX3Mg KmNoaXApCiAgICAgZnJlZShmYl9ibGFuayk7CiB9CiAKLXN0YXRpYyB2b2lkIG44eDBfZHNz X3NldHVwKHN0cnVjdCBuODAwX3MgKnMsIERpc3BsYXlTdGF0ZSAqZHMpCitzdGF0aWMgdm9p ZCBuOHgwX2Rzc19zZXR1cChzdHJ1Y3QgbjgwMF9zICpzKQogewotICAgIHMtPmJsaXp6YXJk Lm9wYXF1ZSA9IHMxZDEzNzQ1X2luaXQoMCwgZHMpOworICAgIHMtPmJsaXp6YXJkLm9wYXF1 ZSA9IHMxZDEzNzQ1X2luaXQoMCk7CiAgICAgcy0+YmxpenphcmQuYmxvY2sgPSBzMWQxMzc0 NV93cml0ZV9ibG9jazsKICAgICBzLT5ibGl6emFyZC53cml0ZSA9IHMxZDEzNzQ1X3dyaXRl OwogICAgIHMtPmJsaXp6YXJkLnJlYWQgPSBzMWQxMzc0NV9yZWFkOwpAQCAtMTI2NiwxMyAr MTI2NiwxNCBAQCBzdGF0aWMgaW50IG44MTBfYXRhZ19zZXR1cChzdHJ1Y3QgYXJtX2Jvb3Rf aW5mbyAqaW5mbywgdm9pZCAqcCkKIH0KIAogc3RhdGljIHZvaWQgbjh4MF9pbml0KHJhbV9h ZGRyX3QgcmFtX3NpemUsIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAotICAgICAgICAgICAg ICAgIERpc3BsYXlTdGF0ZSAqZHMsIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwKKyAg ICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsCiAgICAgICAgICAg ICAgICAgY29uc3QgY2hhciAqa2VybmVsX2NtZGxpbmUsIGNvbnN0IGNoYXIgKmluaXRyZF9m aWxlbmFtZSwKICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpjcHVfbW9kZWwsIHN0cnVj dCBhcm1fYm9vdF9pbmZvICpiaW5mbywgaW50IG1vZGVsKQogewogICAgIHN0cnVjdCBuODAw X3MgKnMgPSAoc3RydWN0IG44MDBfcyAqKSBxZW11X21hbGxvY3ooc2l6ZW9mKCpzKSk7CiAg ICAgaW50IHNkcmFtX3NpemUgPSBiaW5mby0+cmFtX3NpemU7CiAgICAgaW50IG9uZW5hbmRy YW1fc2l6ZSA9IDB4MDAwMTAwMDA7CisgICAgRGlzcGxheVN0YXRlICpkcyA9IGdldF9kaXNw bGF5c3RhdGUoKTsKIAogICAgIGlmIChyYW1fc2l6ZSA8IHNkcmFtX3NpemUgKyBvbmVuYW5k cmFtX3NpemUgKyBPTUFQMjQyWF9TUkFNX1NJWkUpIHsKICAgICAgICAgZnByaW50ZihzdGRl cnIsICJUaGlzIGFyY2hpdGVjdHVyZSB1c2VzICVpIGJ5dGVzIG9mIG1lbW9yeVxuIiwKQEAg LTEyODAsNyArMTI4MSw3IEBAIHN0YXRpYyB2b2lkIG44eDBfaW5pdChyYW1fYWRkcl90IHJh bV9zaXplLCBjb25zdCBjaGFyICpib290X2RldmljZSwKICAgICAgICAgZXhpdCgxKTsKICAg ICB9CiAKLSAgICBzLT5jcHUgPSBvbWFwMjQyMF9tcHVfaW5pdChzZHJhbV9zaXplLCBOVUxM LCBjcHVfbW9kZWwpOworICAgIHMtPmNwdSA9IG9tYXAyNDIwX21wdV9pbml0KHNkcmFtX3Np emUsIGNwdV9tb2RlbCk7CiAKICAgICAvKiBTZXR1cCBwZXJpcGhlcmFscwogICAgICAqCkBA IC0xMzE3LDcgKzEzMTgsNyBAQCBzdGF0aWMgdm9pZCBuOHgwX2luaXQocmFtX2FkZHJfdCBy YW1fc2l6ZSwgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAgICAgICAgIG44MTBfa2JkX3Nl dHVwKHMpOwogICAgIH0KICAgICBuOHgwX3NwaV9zZXR1cChzKTsKLSAgICBuOHgwX2Rzc19z ZXR1cChzLCBkcyk7CisgICAgbjh4MF9kc3Nfc2V0dXAocyk7CiAgICAgbjh4MF9jYnVzX3Nl dHVwKHMpOwogICAgIG44eDBfdWFydF9zZXR1cChzKTsKICAgICBpZiAodXNiX2VuYWJsZWQp CkBAIC0xMzg0LDIxICsxMzg1LDIxIEBAIHN0YXRpYyBzdHJ1Y3QgYXJtX2Jvb3RfaW5mbyBu ODEwX2JpbmZvID0gewogfTsKIAogc3RhdGljIHZvaWQgbjgwMF9pbml0KHJhbV9hZGRyX3Qg cmFtX3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgY29uc3QgY2hh ciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAgY29u c3QgY2hhciAqYm9vdF9kZXZpY2UsCiAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqa2Vy bmVsX2ZpbGVuYW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwKICAgICAgICAgICAg ICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2Rl bCkKIHsKLSAgICByZXR1cm4gbjh4MF9pbml0KHJhbV9zaXplLCBib290X2RldmljZSwgZHMs CisgICAgcmV0dXJuIG44eDBfaW5pdChyYW1fc2l6ZSwgYm9vdF9kZXZpY2UsCiAgICAgICAg ICAgICAgICAgICAgIGtlcm5lbF9maWxlbmFtZSwga2VybmVsX2NtZGxpbmUsIGluaXRyZF9m aWxlbmFtZSwKICAgICAgICAgICAgICAgICAgICAgY3B1X21vZGVsLCAmbjgwMF9iaW5mbywg ODAwKTsKIH0KIAogc3RhdGljIHZvaWQgbjgxMF9pbml0KHJhbV9hZGRyX3QgcmFtX3NpemUs IGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9k ZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAgY29uc3QgY2hhciAq Ym9vdF9kZXZpY2UsCiAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqa2VybmVsX2ZpbGVu YW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwKICAgICAgICAgICAgICAgICBjb25z dCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsKLSAg ICByZXR1cm4gbjh4MF9pbml0KHJhbV9zaXplLCBib290X2RldmljZSwgZHMsCisgICAgcmV0 dXJuIG44eDBfaW5pdChyYW1fc2l6ZSwgYm9vdF9kZXZpY2UsCiAgICAgICAgICAgICAgICAg ICAgIGtlcm5lbF9maWxlbmFtZSwga2VybmVsX2NtZGxpbmUsIGluaXRyZF9maWxlbmFtZSwK ICAgICAgICAgICAgICAgICAgICAgY3B1X21vZGVsLCAmbjgxMF9iaW5mbywgODEwKTsKIH0K ZGlmZiAtLWdpdCBhL2h3L29tYXAxLmMgYi9ody9vbWFwMS5jCmluZGV4IDk3ZDIyMzQuLjRj NzkwMjggMTAwNjQ0Ci0tLSBhL2h3L29tYXAxLmMKKysrIGIvaHcvb21hcDEuYwpAQCAtNDYy Miw3ICs0NjIyLDcgQEAgc3RhdGljIGludCBvbWFwX3ZhbGlkYXRlX3RpcGJfbXB1aV9hZGRy KHN0cnVjdCBvbWFwX21wdV9zdGF0ZV9zICpzLAogfQogCiBzdHJ1Y3Qgb21hcF9tcHVfc3Rh dGVfcyAqb21hcDMxMF9tcHVfaW5pdCh1bnNpZ25lZCBsb25nIHNkcmFtX3NpemUsCi0gICAg ICAgICAgICAgICAgRGlzcGxheVN0YXRlICpkcywgY29uc3QgY2hhciAqY29yZSkKKyAgICAg ICAgICAgICAgICBjb25zdCBjaGFyICpjb3JlKQogewogICAgIGludCBpOwogICAgIHN0cnVj dCBvbWFwX21wdV9zdGF0ZV9zICpzID0gKHN0cnVjdCBvbWFwX21wdV9zdGF0ZV9zICopCkBA IC00NzA0LDcgKzQ3MDQsNyBAQCBzdHJ1Y3Qgb21hcF9tcHVfc3RhdGVfcyAqb21hcDMxMF9t cHVfaW5pdCh1bnNpZ25lZCBsb25nIHNkcmFtX3NpemUsCiAgICAgICAgICAgICAgICAgICAg IG9tYXBfZmluZGNsayhzLCAiY2xrMzIta0h6IikpOwogCiAgICAgcy0+bGNkID0gb21hcF9s Y2RjX2luaXQoMHhmZmZlYzAwMCwgcy0+aXJxWzBdW09NQVBfSU5UX0xDRF9DVFJMXSwKLSAg ICAgICAgICAgICAgICAgICAgb21hcF9kbWFfZ2V0X2xjZGNoKHMtPmRtYSksIGRzLCBpbWlm X2Jhc2UsIGVtaWZmX2Jhc2UsCisgICAgICAgICAgICAgICAgICAgIG9tYXBfZG1hX2dldF9s Y2RjaChzLT5kbWEpLCBpbWlmX2Jhc2UsIGVtaWZmX2Jhc2UsCiAgICAgICAgICAgICAgICAg ICAgIG9tYXBfZmluZGNsayhzLCAibGNkX2NrIikpOwogCiAgICAgb21hcF91bHBkX3BtX2lu aXQoMHhmZmZlMDgwMCwgcyk7CmRpZmYgLS1naXQgYS9ody9vbWFwMi5jIGIvaHcvb21hcDIu YwppbmRleCAxYjc0NWIzLi5iOWY3NzA2IDEwMDY0NAotLS0gYS9ody9vbWFwMi5jCisrKyBi L2h3L29tYXAyLmMKQEAgLTQ0OTIsNyArNDQ5Miw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg ZG1hX2lycV9tYXAgb21hcDJfZG1hX2lycV9tYXBbXSA9IHsKIH07CiAKIHN0cnVjdCBvbWFw X21wdV9zdGF0ZV9zICpvbWFwMjQyMF9tcHVfaW5pdCh1bnNpZ25lZCBsb25nIHNkcmFtX3Np emUsCi0gICAgICAgICAgICAgICAgRGlzcGxheVN0YXRlICpkcywgY29uc3QgY2hhciAqY29y ZSkKKyAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpjb3JlKQogewogICAgIHN0cnVjdCBv bWFwX21wdV9zdGF0ZV9zICpzID0gKHN0cnVjdCBvbWFwX21wdV9zdGF0ZV9zICopCiAgICAg ICAgICAgICBxZW11X21hbGxvY3ooc2l6ZW9mKHN0cnVjdCBvbWFwX21wdV9zdGF0ZV9zKSk7 CkBAIC00NjcwLDcgKzQ2NzAsNyBAQCBzdHJ1Y3Qgb21hcF9tcHVfc3RhdGVfcyAqb21hcDI0 MjBfbXB1X2luaXQodW5zaWduZWQgbG9uZyBzZHJhbV9zaXplLAogICAgICAgICAgICAgICAg ICAgICBvbWFwX2ZpbmRjbGsocywgInNwaTJfZmNsayIpLAogICAgICAgICAgICAgICAgICAg ICBvbWFwX2ZpbmRjbGsocywgInNwaTJfaWNsayIpKTsKIAotICAgIHMtPmRzcyA9IG9tYXBf ZHNzX2luaXQob21hcF9sNHRhKHMtPmw0LCAxMCksIDB4NjgwMDA4MDAsIGRzLAorICAgIHMt PmRzcyA9IG9tYXBfZHNzX2luaXQob21hcF9sNHRhKHMtPmw0LCAxMCksIDB4NjgwMDA4MDAs CiAgICAgICAgICAgICAgICAgICAgIC8qIFhYWCB3aXJlIE1fSVJRXzI1LCBEX0wyX0lSUV8z MCBhbmQgSV9JUlFfMTMgdG9nZXRoZXIgKi8KICAgICAgICAgICAgICAgICAgICAgcy0+aXJx WzBdW09NQVBfSU5UXzI0WFhfRFNTX0lSUV0sIHMtPmRycVtPTUFQMjRYWF9ETUFfRFNTXSwK ICAgICAgICAgICAgICAgICAgICAgb21hcF9maW5kY2xrKHMsICJkc3NfY2xrMSIpLCBvbWFw X2ZpbmRjbGsocywgImRzc19jbGsyIiksCmRpZmYgLS1naXQgYS9ody9vbWFwX3N4MS5jIGIv aHcvb21hcF9zeDEuYwppbmRleCA2N2QzMTdhLi5hMTQwODA1IDEwMDY0NAotLS0gYS9ody9v bWFwX3N4MS5jCisrKyBiL2h3L29tYXBfc3gxLmMKQEAgLTEzNiw3ICsxMzYsNyBAQCBzdGF0 aWMgdm9pZCBzeDFfaW5pdChyYW1fYWRkcl90IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9zaXpl LAogICAgICAgICBmbGFzaF9zaXplID0gZmxhc2gyX3NpemU7CiAgICAgfQogCi0gICAgY3B1 ID0gb21hcDMxMF9tcHVfaW5pdChzeDFfYmluZm8ucmFtX3NpemUsIGRzLCBjcHVfbW9kZWwp OworICAgIGNwdSA9IG9tYXAzMTBfbXB1X2luaXQoc3gxX2JpbmZvLnJhbV9zaXplLCBjcHVf bW9kZWwpOwogCiAgICAgLyogRXh0ZXJuYWwgRmxhc2ggKEVNSUZTKSAqLwogICAgIGNwdV9y ZWdpc3Rlcl9waHlzaWNhbF9tZW1vcnkoT01BUF9DUzBfQkFTRSwgZmxhc2hfc2l6ZSwKZGlm ZiAtLWdpdCBhL2h3L3BhbG0uYyBiL2h3L3BhbG0uYwppbmRleCA3MzlkM2Y4Li45M2QxMjM2 IDEwMDY0NAotLS0gYS9ody9wYWxtLmMKKysrIGIvaHcvcGFsbS5jCkBAIC0yMDAsNyArMjAw LDcgQEAgc3RhdGljIHN0cnVjdCBhcm1fYm9vdF9pbmZvIHBhbG10ZV9iaW5mbyA9IHsKIH07 CiAKIHN0YXRpYyB2b2lkIHBhbG10ZV9pbml0KHJhbV9hZGRyX3QgcmFtX3NpemUsIGludCB2 Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2Us IERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9k ZXZpY2UsCiAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLCBj b25zdCBjaGFyICprZXJuZWxfY21kbGluZSwKICAgICAgICAgICAgICAgICBjb25zdCBjaGFy ICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsKQEAgLTIxNCw2 ICsyMTQsNyBAQCBzdGF0aWMgdm9pZCBwYWxtdGVfaW5pdChyYW1fYWRkcl90IHJhbV9zaXpl LCBpbnQgdmdhX3JhbV9zaXplLAogICAgIHN0YXRpYyB1aW50MzJfdCBjczN2YWwgPSAweGUx YTBlMWEwOwogICAgIHJhbV9hZGRyX3QgcGh5c19mbGFzaDsKICAgICBpbnQgcm9tX3NpemUs IHJvbV9sb2FkZWQgPSAwOworICAgIERpc3BsYXlTdGF0ZSAqZHMgPSBnZXRfZGlzcGxheXN0 YXRlKCk7CiAKICAgICBpZiAocmFtX3NpemUgPCBmbGFzaF9zaXplICsgc2RyYW1fc2l6ZSAr IE9NQVAxNVhYX1NSQU1fU0laRSkgewogICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIlRoaXMg YXJjaGl0ZWN0dXJlIHVzZXMgJWkgYnl0ZXMgb2YgbWVtb3J5XG4iLApAQCAtMjIxLDcgKzIy Miw3IEBAIHN0YXRpYyB2b2lkIHBhbG10ZV9pbml0KHJhbV9hZGRyX3QgcmFtX3NpemUsIGlu dCB2Z2FfcmFtX3NpemUsCiAgICAgICAgIGV4aXQoMSk7CiAgICAgfQogCi0gICAgY3B1ID0g b21hcDMxMF9tcHVfaW5pdChzZHJhbV9zaXplLCBkcywgY3B1X21vZGVsKTsKKyAgICBjcHUg PSBvbWFwMzEwX21wdV9pbml0KHNkcmFtX3NpemUsIGNwdV9tb2RlbCk7CiAKICAgICAvKiBF eHRlcm5hbCBGbGFzaCAoRU1JRlMpICovCiAgICAgY3B1X3JlZ2lzdGVyX3BoeXNpY2FsX21l bW9yeShPTUFQX0NTMF9CQVNFLCBmbGFzaF9zaXplLApkaWZmIC0tZ2l0IGEvaHcvcGMuYyBi L2h3L3BjLmMKaW5kZXggZDY0ZTQ0Mi4uOTA1MzhjNyAxMDA2NDQKLS0tIGEvaHcvcGMuYwor KysgYi9ody9wYy5jCkBAIC03NTIsNyArNzUyLDcgQEAgc3RhdGljIHZvaWQgcGNfaW5pdF9u ZTJrX2lzYShOSUNJbmZvICpuZCwgcWVtdV9pcnEgKnBpYykKIAogLyogUEMgaGFyZHdhcmUg aW5pdGlhbGlzYXRpb24gKi8KIHN0YXRpYyB2b2lkIHBjX2luaXQxKHJhbV9hZGRyX3QgcmFt X3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgICAgICBjb25zdCBj aGFyICpib290X2RldmljZSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAogICAgICAgICAgICAgICAgICAgICAgY29u c3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwK ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwKICAg ICAgICAgICAgICAgICAgICAgIGludCBwY2lfZW5hYmxlZCwgY29uc3QgY2hhciAqY3B1X21v ZGVsKQpAQCAtOTQ2LDI0ICs5NDYsMjQgQEAgdmdhX2Jpb3NfZXJyb3I6CiAgICAgaWYgKGNp cnJ1c192Z2FfZW5hYmxlZCkgewogICAgICAgICBpZiAocGNpX2VuYWJsZWQpIHsKICAgICAg ICAgICAgIHBjaV9jaXJydXNfdmdhX2luaXQocGNpX2J1cywKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZHMsIHBoeXNfcmFtX2Jhc2UgKyB2Z2FfcmFtX2FkZHIsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBoeXNfcmFtX2Jhc2UgKyB2Z2FfcmFtX2Fk ZHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZnYV9yYW1fYWRkciwgdmdh X3JhbV9zaXplKTsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGlzYV9jaXJydXNf dmdhX2luaXQoZHMsIHBoeXNfcmFtX2Jhc2UgKyB2Z2FfcmFtX2FkZHIsCisgICAgICAgICAg ICBpc2FfY2lycnVzX3ZnYV9pbml0KHBoeXNfcmFtX2Jhc2UgKyB2Z2FfcmFtX2FkZHIsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZnYV9yYW1fYWRkciwgdmdhX3JhbV9z aXplKTsKICAgICAgICAgfQogICAgIH0gZWxzZSBpZiAodm1zdmdhX2VuYWJsZWQpIHsKICAg ICAgICAgaWYgKHBjaV9lbmFibGVkKQotICAgICAgICAgICAgcGNpX3Ztc3ZnYV9pbml0KHBj aV9idXMsIGRzLCBwaHlzX3JhbV9iYXNlICsgdmdhX3JhbV9hZGRyLAorICAgICAgICAgICAg cGNpX3Ztc3ZnYV9pbml0KHBjaV9idXMsIHBoeXNfcmFtX2Jhc2UgKyB2Z2FfcmFtX2FkZHIs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmdhX3JhbV9hZGRyLCB2Z2FfcmFtX3Np emUpOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiB2 bXdhcmVfdmdhOiBubyBQQ0kgYnVzXG4iLCBfX0ZVTkNUSU9OX18pOwogICAgIH0gZWxzZSBp ZiAoc3RkX3ZnYV9lbmFibGVkKSB7CiAgICAgICAgIGlmIChwY2lfZW5hYmxlZCkgewotICAg ICAgICAgICAgcGNpX3ZnYV9pbml0KHBjaV9idXMsIGRzLCBwaHlzX3JhbV9iYXNlICsgdmdh X3JhbV9hZGRyLAorICAgICAgICAgICAgcGNpX3ZnYV9pbml0KHBjaV9idXMsIHBoeXNfcmFt X2Jhc2UgKyB2Z2FfcmFtX2FkZHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgdmdhX3Jh bV9hZGRyLCB2Z2FfcmFtX3NpemUsIDAsIDApOwogICAgICAgICB9IGVsc2UgewotICAgICAg ICAgICAgaXNhX3ZnYV9pbml0KGRzLCBwaHlzX3JhbV9iYXNlICsgdmdhX3JhbV9hZGRyLAor ICAgICAgICAgICAgaXNhX3ZnYV9pbml0KHBoeXNfcmFtX2Jhc2UgKyB2Z2FfcmFtX2FkZHIs CiAgICAgICAgICAgICAgICAgICAgICAgICAgdmdhX3JhbV9hZGRyLCB2Z2FfcmFtX3NpemUp OwogICAgICAgICB9CiAgICAgfQpAQCAtMTExMSwyNSArMTExMSwyNSBAQCB2Z2FfYmlvc19l cnJvcjoKIH0KIAogc3RhdGljIHZvaWQgcGNfaW5pdF9wY2kocmFtX2FkZHJfdCByYW1fc2l6 ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo YXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5U3RhdGUgKmRzLAorICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwKICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsKLSAgICBwY19pbml0MShyYW1fc2l6ZSwgdmdh X3JhbV9zaXplLCBib290X2RldmljZSwgZHMsCisgICAgcGNfaW5pdDEocmFtX3NpemUsIHZn YV9yYW1fc2l6ZSwgYm9vdF9kZXZpY2UsCiAgICAgICAgICAgICAga2VybmVsX2ZpbGVuYW1l LCBrZXJuZWxfY21kbGluZSwKICAgICAgICAgICAgICBpbml0cmRfZmlsZW5hbWUsIDEsIGNw dV9tb2RlbCk7CiB9CiAKIHN0YXRpYyB2b2lkIHBjX2luaXRfaXNhKHJhbV9hZGRyX3QgcmFt X3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICBjb25z dCBjaGFyICpib290X2RldmljZSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAogICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLAogICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgY2hhciAqa2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgICAgICAg ICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICAg ICAgICBjb25zdCBjaGFyICpjcHVfbW9kZWwpCiB7Ci0gICAgcGNfaW5pdDEocmFtX3NpemUs IHZnYV9yYW1fc2l6ZSwgYm9vdF9kZXZpY2UsIGRzLAorICAgIHBjX2luaXQxKHJhbV9zaXpl LCB2Z2FfcmFtX3NpemUsIGJvb3RfZGV2aWNlLAogICAgICAgICAgICAgIGtlcm5lbF9maWxl bmFtZSwga2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgaW5pdHJkX2ZpbGVuYW1lLCAw LCBjcHVfbW9kZWwpOwogfQpkaWZmIC0tZ2l0IGEvaHcvcHBjNDA1X2JvYXJkcy5jIGIvaHcv cHBjNDA1X2JvYXJkcy5jCmluZGV4IDFkOGI2YWIuLjQ5ZGQxMGYgMTAwNjQ0Ci0tLSBhL2h3 L3BwYzQwNV9ib2FyZHMuYworKysgYi9ody9wcGM0MDVfYm9hcmRzLmMKQEAgLTE3Miw3ICsx NzIsNyBAQCBzdGF0aWMgdm9pZCByZWY0MDVlcF9mcGdhX2luaXQgKHVpbnQzMl90IGJhc2Up CiB9CiAKIHN0YXRpYyB2b2lkIHJlZjQwNWVwX2luaXQgKHJhbV9hZGRyX3QgcmFtX3NpemUs IGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBj aGFyICpib290X2RldmljZSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3QgY2hhciAqa2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsCkBAIC00OTYsNyAr NDk2LDcgQEAgc3RhdGljIHZvaWQgdGFpaHVfY3BsZF9pbml0ICh1aW50MzJfdCBiYXNlKQog fQogCiBzdGF0aWMgdm9pZCB0YWlodV80MDVlcF9pbml0KHJhbV9hZGRyX3QgcmFtX3NpemUs IGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0 IGNoYXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5U3RhdGUgKmRzLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaW5pdHJkX2ZpbGVuYW1lLApk aWZmIC0tZ2l0IGEvaHcvcHBjX2NocnAuYyBiL2h3L3BwY19jaHJwLmMKaW5kZXggZTZmYmZj Zi4uNjRhNjEzYyAxMDA2NDQKLS0tIGEvaHcvcHBjX2NocnAuYworKysgYi9ody9wcGNfY2hy cC5jCkBAIC01OSw3ICs1OSw3IEBAIHN0YXRpYyBDUFVSZWFkTWVtb3J5RnVuYyAqdW5pbl9y ZWFkW10gPSB7CiAKIC8qIFBvd2VyUEMgTWFjOTkgaGFyZHdhcmUgaW5pdGlhbGlzYXRpb24g Ki8KIHN0YXRpYyB2b2lkIHBwY19jb3JlOTlfaW5pdCAocmFtX2FkZHJfdCByYW1fc2l6ZSwg aW50IHZnYV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg Y2hhciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsCkBA IC0yNTYsNyArMjU2LDcgQEAgc3RhdGljIHZvaWQgcHBjX2NvcmU5OV9pbml0IChyYW1fYWRk cl90IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAogICAgIHBpYyA9IG9wZW5waWNfaW5p dChOVUxMLCAmcGljX21lbV9pbmRleCwgc21wX2NwdXMsIG9wZW5waWNfaXJxcywgTlVMTCk7 CiAgICAgcGNpX2J1cyA9IHBjaV9wbWFjX2luaXQocGljKTsKICAgICAvKiBpbml0IGJhc2lj IFBDIGhhcmR3YXJlICovCi0gICAgcGNpX3ZnYV9pbml0KHBjaV9idXMsIGRzLCBwaHlzX3Jh bV9iYXNlICsgcmFtX3NpemUsCisgICAgcGNpX3ZnYV9pbml0KHBjaV9idXMsIHBoeXNfcmFt X2Jhc2UgKyByYW1fc2l6ZSwKICAgICAgICAgICAgICAgICAgcmFtX3NpemUsIHZnYV9yYW1f c2l6ZSwKICAgICAgICAgICAgICAgICAgdmdhX2Jpb3Nfb2Zmc2V0LCB2Z2FfYmlvc19zaXpl KTsKIApkaWZmIC0tZ2l0IGEvaHcvcHBjX29sZHdvcmxkLmMgYi9ody9wcGNfb2xkd29ybGQu YwppbmRleCAzZWIxMDYxLi41NjkyYWQyIDEwMDY0NAotLS0gYS9ody9wcGNfb2xkd29ybGQu YworKysgYi9ody9wcGNfb2xkd29ybGQuYwpAQCAtMTA4LDcgKzEwOCw3IEBAIHN0YXRpYyBp bnQgdmdhX29zaV9jYWxsIChDUFVTdGF0ZSAqZW52KQogfQogCiBzdGF0aWMgdm9pZCBwcGNf aGVhdGhyb3dfaW5pdCAocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2Rldmlj ZSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCBjaGFyICpib290X2RldmljZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3QgY2hhciAqa2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaW5pdHJkX2ZpbGVuYW1lLApAQCAtMjk3LDcg KzI5Nyw3IEBAIHN0YXRpYyB2b2lkIHBwY19oZWF0aHJvd19pbml0IChyYW1fYWRkcl90IHJh bV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAogICAgIH0KICAgICBwaWMgPSBoZWF0aHJvd19w aWNfaW5pdCgmcGljX21lbV9pbmRleCwgMSwgaGVhdGhyb3dfaXJxcyk7CiAgICAgcGNpX2J1 cyA9IHBjaV9ncmFja2xlX2luaXQoMHhmZWMwMDAwMCwgcGljKTsKLSAgICBwY2lfdmdhX2lu aXQocGNpX2J1cywgZHMsIHBoeXNfcmFtX2Jhc2UgKyB2Z2FfcmFtX29mZnNldCwKKyAgICBw Y2lfdmdhX2luaXQocGNpX2J1cywgcGh5c19yYW1fYmFzZSArIHZnYV9yYW1fb2Zmc2V0LAog ICAgICAgICAgICAgICAgICB2Z2FfcmFtX29mZnNldCwgdmdhX3JhbV9zaXplLAogICAgICAg ICAgICAgICAgICB2Z2FfYmlvc19vZmZzZXQsIHZnYV9iaW9zX3NpemUpOwogCmRpZmYgLS1n aXQgYS9ody9wcGNfcHJlcC5jIGIvaHcvcHBjX3ByZXAuYwppbmRleCAxZDYxY2M5Li45MzRk NTIwIDEwMDY0NAotLS0gYS9ody9wcGNfcHJlcC5jCisrKyBiL2h3L3BwY19wcmVwLmMKQEAg LTUzMSw3ICs1MzEsNyBAQCBzdGF0aWMgQ1BVUmVhZE1lbW9yeUZ1bmMgKlBQQ19wcmVwX2lv X3JlYWRbXSA9IHsKIAogLyogUG93ZXJQQyBQUkVQIGhhcmR3YXJlIGluaXRpYWxpc2F0aW9u ICovCiBzdGF0aWMgdm9pZCBwcGNfcHJlcF9pbml0IChyYW1fYWRkcl90IHJhbV9zaXplLCBp bnQgdmdhX3JhbV9zaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hh ciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3QgY2hhciAqaW5pdHJkX2ZpbGVuYW1lLApAQCAtNjU1LDcgKzY1 NSw3IEBAIHN0YXRpYyB2b2lkIHBwY19wcmVwX2luaXQgKHJhbV9hZGRyX3QgcmFtX3NpemUs IGludCB2Z2FfcmFtX3NpemUsCiAgICAgY3B1X3JlZ2lzdGVyX3BoeXNpY2FsX21lbW9yeSgw eDgwMDAwMDAwLCAweDAwODAwMDAwLCBQUENfaW9fbWVtb3J5KTsKIAogICAgIC8qIGluaXQg YmFzaWMgUEMgaGFyZHdhcmUgKi8KLSAgICBwY2lfdmdhX2luaXQocGNpX2J1cywgZHMsIHBo eXNfcmFtX2Jhc2UgKyByYW1fc2l6ZSwgcmFtX3NpemUsCisgICAgcGNpX3ZnYV9pbml0KHBj aV9idXMsIHBoeXNfcmFtX2Jhc2UgKyByYW1fc2l6ZSwgcmFtX3NpemUsCiAgICAgICAgICAg ICAgICAgIHZnYV9yYW1fc2l6ZSwgMCwgMCk7CiAgICAgLy8gICAgb3BlbnBpYyA9IG9wZW5w aWNfaW5pdCgweDAwMDAwMDAwLCAweEYwMDAwMDAwLCAxKTsKICAgICAvLyAgICBwaXQgPSBw aXRfaW5pdCgweDQwLCBpODI1OVswXSk7CmRpZmYgLS1naXQgYS9ody9weGEyeHguYyBiL2h3 L3B4YTJ4eC5jCmluZGV4IGI3ODBiYWQuLjUzZDliMGIgMTAwNjQ0Ci0tLSBhL2h3L3B4YTJ4 eC5jCisrKyBiL2h3L3B4YTJ4eC5jCkBAIC0yMDEwLDggKzIwMTAsNyBAQCBzdGF0aWMgdm9p ZCBweGEyeHhfcmVzZXQodm9pZCAqb3BhcXVlLCBpbnQgbGluZSwgaW50IGxldmVsKQogfQog CiAvKiBJbml0aWFsaXNlIGEgUFhBMjcwIGludGVncmF0ZWQgY2hpcCAoQVJNIGJhc2VkIGNv cmUpLiAgKi8KLXN0cnVjdCBweGEyeHhfc3RhdGVfcyAqcHhhMjcwX2luaXQodW5zaWduZWQg aW50IHNkcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgRGlzcGxheVN0YXRlICpkcywgY29u c3QgY2hhciAqcmV2aXNpb24pCitzdHJ1Y3QgcHhhMnh4X3N0YXRlX3MgKnB4YTI3MF9pbml0 KHVuc2lnbmVkIGludCBzZHJhbV9zaXplLCBjb25zdCBjaGFyICpyZXZpc2lvbikKIHsKICAg ICBzdHJ1Y3QgcHhhMnh4X3N0YXRlX3MgKnM7CiAgICAgc3RydWN0IHB4YTJ4eF9zc3BfcyAq c3NwOwpAQCAtMjA2Nyw4ICsyMDY2LDcgQEAgc3RydWN0IHB4YTJ4eF9zdGF0ZV9zICpweGEy NzBfaW5pdCh1bnNpZ25lZCBpbnQgc2RyYW1fc2l6ZSwKICAgICAgICAgcy0+ZmlyID0gcHhh Mnh4X2Zpcl9pbml0KDB4NDA4MDAwMDAsIHMtPnBpY1tQWEEyWFhfUElDX0lDUF0sCiAgICAg ICAgICAgICAgICAgICAgICAgICBzLT5kbWEsIHNlcmlhbF9oZHNbaV0pOwogCi0gICAgaWYg KGRzKQotICAgICAgICBzLT5sY2QgPSBweGEyeHhfbGNkY19pbml0KDB4NDQwMDAwMDAsIHMt PnBpY1tQWEEyWFhfUElDX0xDRF0sIGRzKTsKKyAgICBzLT5sY2QgPSBweGEyeHhfbGNkY19p bml0KDB4NDQwMDAwMDAsIHMtPnBpY1tQWEEyWFhfUElDX0xDRF0pOwogCiAgICAgcy0+Y21f YmFzZSA9IDB4NDEzMDAwMDA7CiAgICAgcy0+Y21fcmVnc1tDQ0NSID4+IDJdID0gMHgwMjAw MDIxMDsJLyogNDE2LjAgTUh6ICovCkBAIC0yMTQxLDggKzIxMzksNyBAQCBzdHJ1Y3QgcHhh Mnh4X3N0YXRlX3MgKnB4YTI3MF9pbml0KHVuc2lnbmVkIGludCBzZHJhbV9zaXplLAogfQog CiAvKiBJbml0aWFsaXNlIGEgUFhBMjU1IGludGVncmF0ZWQgY2hpcCAoQVJNIGJhc2VkIGNv cmUpLiAgKi8KLXN0cnVjdCBweGEyeHhfc3RhdGVfcyAqcHhhMjU1X2luaXQodW5zaWduZWQg aW50IHNkcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgRGlzcGxheVN0YXRlICpkcykKK3N0 cnVjdCBweGEyeHhfc3RhdGVfcyAqcHhhMjU1X2luaXQodW5zaWduZWQgaW50IHNkcmFtX3Np emUpCiB7CiAgICAgc3RydWN0IHB4YTJ4eF9zdGF0ZV9zICpzOwogICAgIHN0cnVjdCBweGEy eHhfc3NwX3MgKnNzcDsKQEAgLTIxOTEsOCArMjE4OCw3IEBAIHN0cnVjdCBweGEyeHhfc3Rh dGVfcyAqcHhhMjU1X2luaXQodW5zaWduZWQgaW50IHNkcmFtX3NpemUsCiAgICAgICAgIHMt PmZpciA9IHB4YTJ4eF9maXJfaW5pdCgweDQwODAwMDAwLCBzLT5waWNbUFhBMlhYX1BJQ19J Q1BdLAogICAgICAgICAgICAgICAgICAgICAgICAgcy0+ZG1hLCBzZXJpYWxfaGRzW2ldKTsK IAotICAgIGlmIChkcykKLSAgICAgICAgcy0+bGNkID0gcHhhMnh4X2xjZGNfaW5pdCgweDQ0 MDAwMDAwLCBzLT5waWNbUFhBMlhYX1BJQ19MQ0RdLCBkcyk7CisgICAgcy0+bGNkID0gcHhh Mnh4X2xjZGNfaW5pdCgweDQ0MDAwMDAwLCBzLT5waWNbUFhBMlhYX1BJQ19MQ0RdKTsKIAog ICAgIHMtPmNtX2Jhc2UgPSAweDQxMzAwMDAwOwogICAgIHMtPmNtX3JlZ3NbQ0NDUiA+PiAy XSA9IDB4MDIwMDAyMTA7CS8qIDQxNi4wIE1IeiAqLwpkaWZmIC0tZ2l0IGEvaHcvcjJkLmMg Yi9ody9yMmQuYwppbmRleCA4ODg1M2U3Li4wOTMwNWYzIDEwMDY0NAotLS0gYS9ody9yMmQu YworKysgYi9ody9yMmQuYwpAQCAtMTkzLDcgKzE5Myw3IEBAIHN0YXRpYyBpbnQgcjJkX3Bj aV9tYXBfaXJxKFBDSURldmljZSAqZCwgaW50IGlycV9udW0pCiB9CiAKIHN0YXRpYyB2b2lk IHIyZF9pbml0KHJhbV9hZGRyX3QgcmFtX3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAg ICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5U3RhdGUgKiBkcywK KyAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAJICAgICAgY29uc3Qg Y2hhciAqa2VybmVsX2ZpbGVuYW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwKIAkg ICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2Rl bCkKIHsKQEAgLTIyMiw3ICsyMjIsNyBAQCBzdGF0aWMgdm9pZCByMmRfaW5pdChyYW1fYWRk cl90IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAogICAgIHBjaSA9IHNoX3BjaV9yZWdp c3Rlcl9idXMocjJkX3BjaV9zZXRfaXJxLCByMmRfcGNpX21hcF9pcnEsIGlycSwgMCwgNCk7 CiAKICAgICBzbTUwMV92Z2FfcmFtX2FkZHIgPSBxZW11X3JhbV9hbGxvYyhTTTUwMV9WUkFN X1NJWkUpOwotICAgIHNtNTAxX2luaXQoZHMsIDB4MTAwMDAwMDAsIHNtNTAxX3ZnYV9yYW1f YWRkciwgU001MDFfVlJBTV9TSVpFLAorICAgIHNtNTAxX2luaXQoMHgxMDAwMDAwMCwgc201 MDFfdmdhX3JhbV9hZGRyLCBTTTUwMV9WUkFNX1NJWkUsCiAJICAgICAgIHNlcmlhbF9oZHNb Ml0pOwogCiAgICAgLyogb25ib2FyZCBDRiAoVHJ1ZSBJREUgbW9kZSwgTWFzdGVyIG9ubHkp LiAqLwpkaWZmIC0tZ2l0IGEvaHcvcmVhbHZpZXcuYyBiL2h3L3JlYWx2aWV3LmMKaW5kZXgg ZTI4NTMzOC4uYWFlNGI4NiAxMDA2NDQKLS0tIGEvaHcvcmVhbHZpZXcuYworKysgYi9ody9y ZWFsdmlldy5jCkBAIC0yNCw3ICsyNCw3IEBAIHN0YXRpYyBzdHJ1Y3QgYXJtX2Jvb3RfaW5m byByZWFsdmlld19iaW5mbyA9IHsKIH07CiAKIHN0YXRpYyB2b2lkIHJlYWx2aWV3X2luaXQo cmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5U3RhdGUgKmRzLAorICAg ICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmtl cm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaW5pdHJk X2ZpbGVuYW1lLCBjb25zdCBjaGFyICpjcHVfbW9kZWwpCiB7CkBAIC05Myw3ICs5Myw3IEBA IHN0YXRpYyB2b2lkIHJlYWx2aWV3X2luaXQocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZn YV9yYW1fc2l6ZSwKICAgICBzcDgwNF9pbml0KDB4MTAwMTEwMDAsIHBpY1s0XSk7CiAgICAg c3A4MDRfaW5pdCgweDEwMDEyMDAwLCBwaWNbNV0pOwogCi0gICAgcGwxMTBfaW5pdChkcywg MHgxMDAyMDAwMCwgcGljWzIzXSwgMSk7CisgICAgcGwxMTBfaW5pdCgweDEwMDIwMDAwLCBw aWNbMjNdLCAxKTsKIAogICAgIGluZGV4ID0gZHJpdmVfZ2V0X2luZGV4KElGX1NELCAwLCAw KTsKICAgICBpZiAoaW5kZXggPT0gLTEpIHsKZGlmZiAtLWdpdCBhL2h3L3NoaXguYyBiL2h3 L3NoaXguYwppbmRleCBlYjUzZWU1Li5lZTRmMDNmIDEwMDY0NAotLS0gYS9ody9zaGl4LmMK KysrIGIvaHcvc2hpeC5jCkBAIC02MSw3ICs2MSw3IEBAIHZvaWQgdmdhX3NjcmVlbl9kdW1w KGNvbnN0IGNoYXIgKmZpbGVuYW1lKQogfQogCiBzdGF0aWMgdm9pZCBzaGl4X2luaXQocmFt X2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAgIGNv bnN0IGNoYXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5U3RhdGUgKiBkcywKKyAgICAgICAgICAg ICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAogCSAgICAgICBjb25zdCBjaGFyICprZXJu ZWxfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogCSAgICAgICBjb25z dCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsKZGlm ZiAtLWdpdCBhL2h3L3NwaXR6LmMgYi9ody9zcGl0ei5jCmluZGV4IDg1YjQ4MjkuLmFjODQ0 YmQgMTAwNjQ0Ci0tLSBhL2h3L3NwaXR6LmMKKysrIGIvaHcvc3BpdHouYwpAQCAtOTA4LDcg KzkwOCw3IEBAIHN0YXRpYyBzdHJ1Y3QgYXJtX2Jvb3RfaW5mbyBzcGl0el9iaW5mbyA9IHsK IH07CiAKIHN0YXRpYyB2b2lkIHNwaXR6X2NvbW1vbl9pbml0KHJhbV9hZGRyX3QgcmFtX3Np emUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgRGlzcGxheVN0YXRlICpk cywgY29uc3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLAorICAgICAgICAgICAgICAgIGNvbnN0 IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwKICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpr ZXJuZWxfY21kbGluZSwgY29uc3QgY2hhciAqaW5pdHJkX2ZpbGVuYW1lLAogICAgICAgICAg ICAgICAgIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCwgZW51bSBzcGl0el9tb2RlbF9lIG1vZGVs LCBpbnQgYXJtX2lkKQogewpAQCAtOTI0LDcgKzkyNCw3IEBAIHN0YXRpYyB2b2lkIHNwaXR6 X2NvbW1vbl9pbml0KHJhbV9hZGRyX3QgcmFtX3NpemUsIGludCB2Z2FfcmFtX3NpemUsCiAg ICAgICAgICAgICAgICAgICAgICAgICBTUElUWl9SQU0gKyBTUElUWl9ST00gKyBQWEEyWFhf SU5URVJOQUxfU0laRSk7CiAgICAgICAgIGV4aXQoMSk7CiAgICAgfQotICAgIGNwdSA9IHB4 YTI3MF9pbml0KHNwaXR6X2JpbmZvLnJhbV9zaXplLCBkcywgY3B1X21vZGVsKTsKKyAgICBj cHUgPSBweGEyNzBfaW5pdChzcGl0el9iaW5mby5yYW1fc2l6ZSwgY3B1X21vZGVsKTsKIAog ICAgIHNsX2ZsYXNoX3JlZ2lzdGVyKGNwdSwgKG1vZGVsID09IHNwaXR6KSA/IEZMQVNIXzEy OE0gOiBGTEFTSF8xMDI0TSk7CiAKQEAgLTk2OSwzOCArOTY5LDM4IEBAIHN0YXRpYyB2b2lk IHNwaXR6X2NvbW1vbl9pbml0KHJhbV9hZGRyX3QgcmFtX3NpemUsIGludCB2Z2FfcmFtX3Np emUsCiB9CiAKIHN0YXRpYyB2b2lkIHNwaXR6X2luaXQocmFtX2FkZHJfdCByYW1fc2l6ZSwg aW50IHZnYV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2Rl dmljZSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpi b290X2RldmljZSwKICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5h bWUsIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAgIGNvbnN0 IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29uc3QgY2hhciAqY3B1X21vZGVsKQogewotICAg IHNwaXR6X2NvbW1vbl9pbml0KHJhbV9zaXplLCB2Z2FfcmFtX3NpemUsIGRzLCBrZXJuZWxf ZmlsZW5hbWUsCisgICAgc3BpdHpfY29tbW9uX2luaXQocmFtX3NpemUsIHZnYV9yYW1fc2l6 ZSwga2VybmVsX2ZpbGVuYW1lLAogICAgICAgICAgICAgICAgIGtlcm5lbF9jbWRsaW5lLCBp bml0cmRfZmlsZW5hbWUsIGNwdV9tb2RlbCwgc3BpdHosIDB4MmM5KTsKIH0KIAogc3RhdGlj IHZvaWQgYm9yem9pX2luaXQocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6 ZSwKLSAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwgRGlzcGxheVN0 YXRlICpkcywKKyAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwKICAg ICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsIGNvbnN0IGNoYXIg Kmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmluaXRyZF9m aWxlbmFtZSwgY29uc3QgY2hhciAqY3B1X21vZGVsKQogewotICAgIHNwaXR6X2NvbW1vbl9p bml0KHJhbV9zaXplLCB2Z2FfcmFtX3NpemUsIGRzLCBrZXJuZWxfZmlsZW5hbWUsCisgICAg c3BpdHpfY29tbW9uX2luaXQocmFtX3NpemUsIHZnYV9yYW1fc2l6ZSwga2VybmVsX2ZpbGVu YW1lLAogICAgICAgICAgICAgICAgIGtlcm5lbF9jbWRsaW5lLCBpbml0cmRfZmlsZW5hbWUs IGNwdV9tb2RlbCwgYm9yem9pLCAweDMzZik7CiB9CiAKIHN0YXRpYyB2b2lkIGFraXRhX2lu aXQocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAgICAgICAgICAg ICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAg ICAgICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwKICAgICAgICAgICAgICAgICBj b25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5l LAogICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29uc3Qg Y2hhciAqY3B1X21vZGVsKQogewotICAgIHNwaXR6X2NvbW1vbl9pbml0KHJhbV9zaXplLCB2 Z2FfcmFtX3NpemUsIGRzLCBrZXJuZWxfZmlsZW5hbWUsCisgICAgc3BpdHpfY29tbW9uX2lu aXQocmFtX3NpemUsIHZnYV9yYW1fc2l6ZSwga2VybmVsX2ZpbGVuYW1lLAogICAgICAgICAg ICAgICAgIGtlcm5lbF9jbWRsaW5lLCBpbml0cmRfZmlsZW5hbWUsIGNwdV9tb2RlbCwgYWtp dGEsIDB4MmU4KTsKIH0KIAogc3RhdGljIHZvaWQgdGVycmllcl9pbml0KHJhbV9hZGRyX3Qg cmFtX3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgY29uc3QgY2hh ciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAgY29u c3QgY2hhciAqYm9vdF9kZXZpY2UsCiAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqa2Vy bmVsX2ZpbGVuYW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwKICAgICAgICAgICAg ICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2Rl bCkKIHsKLSAgICBzcGl0el9jb21tb25faW5pdChyYW1fc2l6ZSwgdmdhX3JhbV9zaXplLCBk cywga2VybmVsX2ZpbGVuYW1lLAorICAgIHNwaXR6X2NvbW1vbl9pbml0KHJhbV9zaXplLCB2 Z2FfcmFtX3NpemUsIGtlcm5lbF9maWxlbmFtZSwKICAgICAgICAgICAgICAgICBrZXJuZWxf Y21kbGluZSwgaW5pdHJkX2ZpbGVuYW1lLCBjcHVfbW9kZWwsIHRlcnJpZXIsIDB4MzNmKTsK IH0KIApkaWZmIC0tZ2l0IGEvaHcvc3RlbGxhcmlzLmMgYi9ody9zdGVsbGFyaXMuYwppbmRl eCA3MDY5NTE4Li5hZWVhYjk2IDEwMDY0NAotLS0gYS9ody9zdGVsbGFyaXMuYworKysgYi9o dy9zdGVsbGFyaXMuYwpAQCAtMTI4Miw3ICsxMjgyLDcgQEAgc3RhdGljIHN0ZWxsYXJpc19i b2FyZF9pbmZvIHN0ZWxsYXJpc19ib2FyZHNbXSA9IHsKIH07CiAKIHN0YXRpYyB2b2lkIHN0 ZWxsYXJpc19pbml0KGNvbnN0IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwgY29uc3QgY2hhciAq Y3B1X21vZGVsLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgRGlzcGxheVN0YXRlICpk cywgc3RlbGxhcmlzX2JvYXJkX2luZm8gKmJvYXJkKQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgc3RlbGxhcmlzX2JvYXJkX2luZm8gKmJvYXJkKQogewogICAgIHN0YXRpYyBjb25z dCBpbnQgdWFydF9pcnFbXSA9IHs1LCA2LCAzMywgMzR9OwogICAgIHN0YXRpYyBjb25zdCBp bnQgdGltZXJfaXJxW10gPSB7MTksIDIxLCAyMywgMzV9OwpAQCAtMTMyOSw3ICsxMzI5LDcg QEAgc3RhdGljIHZvaWQgc3RlbGxhcmlzX2luaXQoY29uc3QgY2hhciAqa2VybmVsX2ZpbGVu YW1lLCBjb25zdCBjaGFyICpjcHVfbW9kZWwsCiAgICAgICAgIGkyYyA9IGkyY19pbml0X2J1 cygpOwogICAgICAgICBzdGVsbGFyaXNfaTJjX2luaXQoMHg0MDAyMDAwMCwgcGljWzhdLCBp MmMpOwogICAgICAgICBpZiAoYm9hcmQtPnBlcmlwaGVyYWxzICYgQlBfT0xFRF9JMkMpIHsK LSAgICAgICAgICAgIHNzZDAzMDNfaW5pdChkcywgaTJjLCAweDNkKTsKKyAgICAgICAgICAg IHNzZDAzMDNfaW5pdChpMmMsIDB4M2QpOwogICAgICAgICB9CiAgICAgfQogCkBAIC0xMzQ2 LDcgKzEzNDYsNyBAQCBzdGF0aWMgdm9pZCBzdGVsbGFyaXNfaW5pdChjb25zdCBjaGFyICpr ZXJuZWxfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCwKICAgICAgICAgICAgIHZv aWQgKnNzaV9idXM7CiAgICAgICAgICAgICBpbnQgaW5kZXg7CiAKLSAgICAgICAgICAgIG9s ZWQgPSBzc2QwMzIzX2luaXQoZHMsICZncGlvX291dFtHUElPX0NdWzddKTsKKyAgICAgICAg ICAgIG9sZWQgPSBzc2QwMzIzX2luaXQoJmdwaW9fb3V0W0dQSU9fQ11bN10pOwogICAgICAg ICAgICAgaW5kZXggPSBkcml2ZV9nZXRfaW5kZXgoSUZfU0QsIDAsIDApOwogICAgICAgICAg ICAgc2QgPSBzc2lfc2RfaW5pdChkcml2ZXNfdGFibGVbaW5kZXhdLmJkcnYpOwogCkBAIC0x Mzc5LDE5ICsxMzc5LDE5IEBAIHN0YXRpYyB2b2lkIHN0ZWxsYXJpc19pbml0KGNvbnN0IGNo YXIgKmtlcm5lbF9maWxlbmFtZSwgY29uc3QgY2hhciAqY3B1X21vZGVsLAogCiAvKiBGSVhN RTogRmlndXJlIG91dCBob3cgdG8gZ2VuZXJhdGUgdGhlc2UgZnJvbSBzdGVsbGFyaXNfYm9h cmRzLiAgKi8KIHN0YXRpYyB2b2lkIGxtM3M4MTFldmJfaW5pdChyYW1fYWRkcl90IHJhbV9z aXplLCBpbnQgdmdhX3JhbV9zaXplLAotICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hh ciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAgICAg ICBjb25zdCBjaGFyICpib290X2RldmljZSwKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0 IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwgY29uc3QgY2hhciAqa2VybmVsX2NtZGxpbmUsCiAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0 IGNoYXIgKmNwdV9tb2RlbCkKIHsKLSAgICBzdGVsbGFyaXNfaW5pdChrZXJuZWxfZmlsZW5h bWUsIGNwdV9tb2RlbCwgZHMsICZzdGVsbGFyaXNfYm9hcmRzWzBdKTsKKyAgICBzdGVsbGFy aXNfaW5pdChrZXJuZWxfZmlsZW5hbWUsIGNwdV9tb2RlbCwgJnN0ZWxsYXJpc19ib2FyZHNb MF0pOwogfQogCiBzdGF0aWMgdm9pZCBsbTNzNjk2NWV2Yl9pbml0KHJhbV9hZGRyX3QgcmFt X3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgICAgICBjb25zdCBj aGFyICpib290X2RldmljZSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAogICAgICAgICAgICAgICAgICAgICAgY29u c3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwK ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29u c3QgY2hhciAqY3B1X21vZGVsKQogewotICAgIHN0ZWxsYXJpc19pbml0KGtlcm5lbF9maWxl bmFtZSwgY3B1X21vZGVsLCBkcywgJnN0ZWxsYXJpc19ib2FyZHNbMV0pOworICAgIHN0ZWxs YXJpc19pbml0KGtlcm5lbF9maWxlbmFtZSwgY3B1X21vZGVsLCAmc3RlbGxhcmlzX2JvYXJk c1sxXSk7CiB9CiAKIFFFTVVNYWNoaW5lIGxtM3M4MTFldmJfbWFjaGluZSA9IHsKZGlmZiAt LWdpdCBhL2h3L3N1bjRtLmMgYi9ody9zdW40bS5jCmluZGV4IGQzYzFlMTkuLmJhZTg4MDMg MTAwNjQ0Ci0tLSBhL2h3L3N1bjRtLmMKKysrIGIvaHcvc3VuNG0uYwpAQCAtNDIzLDcgKzQy Myw3IEBAIHN0YXRpYyB1bnNpZ25lZCBsb25nIHN1bjRtX2xvYWRfa2VybmVsKGNvbnN0IGNo YXIgKmtlcm5lbF9maWxlbmFtZSwKIAogc3RhdGljIHZvaWQgc3VuNG1faHdfaW5pdChjb25z dCBzdHJ1Y3Qgc3VuNG1faHdkZWYgKmh3ZGVmLCByYW1fYWRkcl90IFJBTV9zaXplLAogICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgRGlzcGxheVN0YXRlICpkcywgY29uc3QgY2hhciAqa2Vy bmVsX2ZpbGVuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpr ZXJuZWxfZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIg Kmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFy ICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIApAQCAtNTMzLDcg KzUzMyw3IEBAIHN0YXRpYyB2b2lkIHN1bjRtX2h3X2luaXQoY29uc3Qgc3RydWN0IHN1bjRt X2h3ZGVmICpod2RlZiwgcmFtX2FkZHJfdCBSQU1fc2l6ZSwKICAgICAgICAgZXhpdCAoMSk7 CiAgICAgfQogICAgIHRjeF9vZmZzZXQgPSBxZW11X3JhbV9hbGxvYyhod2RlZi0+dnJhbV9z aXplKTsKLSAgICB0Y3hfaW5pdChkcywgaHdkZWYtPnRjeF9iYXNlLCBwaHlzX3JhbV9iYXNl ICsgdGN4X29mZnNldCwgdGN4X29mZnNldCwKKyAgICB0Y3hfaW5pdChod2RlZi0+dGN4X2Jh c2UsIHBoeXNfcmFtX2Jhc2UgKyB0Y3hfb2Zmc2V0LCB0Y3hfb2Zmc2V0LAogICAgICAgICAg ICAgIGh3ZGVmLT52cmFtX3NpemUsIGdyYXBoaWNfd2lkdGgsIGdyYXBoaWNfaGVpZ2h0LCBn cmFwaGljX2RlcHRoKTsKIAogICAgIGxhbmNlX2luaXQoJm5kX3RhYmxlWzBdLCBod2RlZi0+ bGVfYmFzZSwgbGVkbWEsICpsZWRtYV9pcnEsIGxlX3Jlc2V0KTsKQEAgLTk3OCw5MiArOTc4 LDkyIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgc3VuNG1faHdkZWYgc3VuNG1faHdkZWZzW10g PSB7CiAKIC8qIFNQQVJDc3RhdGlvbiA1IGhhcmR3YXJlIGluaXRpYWxpc2F0aW9uICovCiBz dGF0aWMgdm9pZCBzczVfaW5pdChyYW1fYWRkcl90IFJBTV9zaXplLCBpbnQgdmdhX3JhbV9z aXplLAotICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsIERp c3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290 X2RldmljZSwKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxl bmFtZSwgY29uc3QgY2hhciAqa2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkK IHsKLSAgICBzdW40bV9od19pbml0KCZzdW40bV9od2RlZnNbMF0sIFJBTV9zaXplLCBib290 X2RldmljZSwgZHMsIGtlcm5lbF9maWxlbmFtZSwKKyAgICBzdW40bV9od19pbml0KCZzdW40 bV9od2RlZnNbMF0sIFJBTV9zaXplLCBib290X2RldmljZSwga2VybmVsX2ZpbGVuYW1lLAog ICAgICAgICAgICAgICAgICAga2VybmVsX2NtZGxpbmUsIGluaXRyZF9maWxlbmFtZSwgY3B1 X21vZGVsKTsKIH0KIAogLyogU1BBUkNzdGF0aW9uIDEwIGhhcmR3YXJlIGluaXRpYWxpc2F0 aW9uICovCiBzdGF0aWMgdm9pZCBzczEwX2luaXQocmFtX2FkZHJfdCBSQU1fc2l6ZSwgaW50 IHZnYV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290 X2RldmljZSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAgICAgICAgICAgICAgICAgICBjb25z dCBjaGFyICpib290X2RldmljZSwKICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFy ICprZXJuZWxfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29uc3QgY2hh ciAqY3B1X21vZGVsKQogewotICAgIHN1bjRtX2h3X2luaXQoJnN1bjRtX2h3ZGVmc1sxXSwg UkFNX3NpemUsIGJvb3RfZGV2aWNlLCBkcywga2VybmVsX2ZpbGVuYW1lLAorICAgIHN1bjRt X2h3X2luaXQoJnN1bjRtX2h3ZGVmc1sxXSwgUkFNX3NpemUsIGJvb3RfZGV2aWNlLCBrZXJu ZWxfZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICBrZXJuZWxfY21kbGluZSwgaW5pdHJk X2ZpbGVuYW1lLCBjcHVfbW9kZWwpOwogfQogCiAvKiBTUEFSQ3NlcnZlciA2MDBNUCBoYXJk d2FyZSBpbml0aWFsaXNhdGlvbiAqLwogc3RhdGljIHZvaWQgc3M2MDBtcF9pbml0KHJhbV9h ZGRyX3QgUkFNX3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAg ICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLAogICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29uc3Qg Y2hhciAqY3B1X21vZGVsKQogewotICAgIHN1bjRtX2h3X2luaXQoJnN1bjRtX2h3ZGVmc1sy XSwgUkFNX3NpemUsIGJvb3RfZGV2aWNlLCBkcywga2VybmVsX2ZpbGVuYW1lLAorICAgIHN1 bjRtX2h3X2luaXQoJnN1bjRtX2h3ZGVmc1syXSwgUkFNX3NpemUsIGJvb3RfZGV2aWNlLCBr ZXJuZWxfZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICBrZXJuZWxfY21kbGluZSwgaW5p dHJkX2ZpbGVuYW1lLCBjcHVfbW9kZWwpOwogfQogCiAvKiBTUEFSQ3N0YXRpb24gMjAgaGFy ZHdhcmUgaW5pdGlhbGlzYXRpb24gKi8KIHN0YXRpYyB2b2lkIHNzMjBfaW5pdChyYW1fYWRk cl90IFJBTV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAotICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5U3RhdGUgKmRzLAorICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAogICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwgY29uc3QgY2hhciAqa2VybmVs X2NtZGxpbmUsCiAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaW5pdHJkX2Zp bGVuYW1lLCBjb25zdCBjaGFyICpjcHVfbW9kZWwpCiB7Ci0gICAgc3VuNG1faHdfaW5pdCgm c3VuNG1faHdkZWZzWzNdLCBSQU1fc2l6ZSwgYm9vdF9kZXZpY2UsIGRzLCBrZXJuZWxfZmls ZW5hbWUsCisgICAgc3VuNG1faHdfaW5pdCgmc3VuNG1faHdkZWZzWzNdLCBSQU1fc2l6ZSwg Ym9vdF9kZXZpY2UsIGtlcm5lbF9maWxlbmFtZSwKICAgICAgICAgICAgICAgICAgIGtlcm5l bF9jbWRsaW5lLCBpbml0cmRfZmlsZW5hbWUsIGNwdV9tb2RlbCk7CiB9CiAKIC8qIFNQQVJD c3RhdGlvbiBWb3lhZ2VyIGhhcmR3YXJlIGluaXRpYWxpc2F0aW9uICovCiBzdGF0aWMgdm9p ZCB2Z2VyX2luaXQocmFtX2FkZHJfdCBSQU1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwgRGlzcGxheVN0 YXRlICpkcywKKyAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2Rldmlj ZSwKICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUs IGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAgICAgICAgIGNv bnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29uc3QgY2hhciAqY3B1X21vZGVsKQogewot ICAgIHN1bjRtX2h3X2luaXQoJnN1bjRtX2h3ZGVmc1s0XSwgUkFNX3NpemUsIGJvb3RfZGV2 aWNlLCBkcywga2VybmVsX2ZpbGVuYW1lLAorICAgIHN1bjRtX2h3X2luaXQoJnN1bjRtX2h3 ZGVmc1s0XSwgUkFNX3NpemUsIGJvb3RfZGV2aWNlLCBrZXJuZWxfZmlsZW5hbWUsCiAgICAg ICAgICAgICAgICAgICBrZXJuZWxfY21kbGluZSwgaW5pdHJkX2ZpbGVuYW1lLCBjcHVfbW9k ZWwpOwogfQogCiAvKiBTUEFSQ3N0YXRpb24gTFggaGFyZHdhcmUgaW5pdGlhbGlzYXRpb24g Ki8KIHN0YXRpYyB2b2lkIHNzX2x4X2luaXQocmFtX2FkZHJfdCBSQU1fc2l6ZSwgaW50IHZn YV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9k ZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0 IGNoYXIgKmJvb3RfZGV2aWNlLAogICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFy ICprZXJuZWxfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNo YXIgKmNwdV9tb2RlbCkKIHsKLSAgICBzdW40bV9od19pbml0KCZzdW40bV9od2RlZnNbNV0s IFJBTV9zaXplLCBib290X2RldmljZSwgZHMsIGtlcm5lbF9maWxlbmFtZSwKKyAgICBzdW40 bV9od19pbml0KCZzdW40bV9od2RlZnNbNV0sIFJBTV9zaXplLCBib290X2RldmljZSwga2Vy bmVsX2ZpbGVuYW1lLAogICAgICAgICAgICAgICAgICAga2VybmVsX2NtZGxpbmUsIGluaXRy ZF9maWxlbmFtZSwgY3B1X21vZGVsKTsKIH0KIAogLyogU1BBUkNzdGF0aW9uIDQgaGFyZHdh cmUgaW5pdGlhbGlzYXRpb24gKi8KIHN0YXRpYyB2b2lkIHNzNF9pbml0KHJhbV9hZGRyX3Qg UkFNX3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgICAgICBjb25z dCBjaGFyICpib290X2RldmljZSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAogICAgICAgICAgICAgICAgICAgICAg Y29uc3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21kbGlu ZSwKICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwg Y29uc3QgY2hhciAqY3B1X21vZGVsKQogewotICAgIHN1bjRtX2h3X2luaXQoJnN1bjRtX2h3 ZGVmc1s2XSwgUkFNX3NpemUsIGJvb3RfZGV2aWNlLCBkcywga2VybmVsX2ZpbGVuYW1lLAor ICAgIHN1bjRtX2h3X2luaXQoJnN1bjRtX2h3ZGVmc1s2XSwgUkFNX3NpemUsIGJvb3RfZGV2 aWNlLCBrZXJuZWxfZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICBrZXJuZWxfY21kbGlu ZSwgaW5pdHJkX2ZpbGVuYW1lLCBjcHVfbW9kZWwpOwogfQogCiAvKiBTUEFSQ0NsYXNzaWMg aGFyZHdhcmUgaW5pdGlhbGlzYXRpb24gKi8KIHN0YXRpYyB2b2lkIHNjbHNfaW5pdChyYW1f YWRkcl90IFJBTV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAotICAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5U3RhdGUgKmRzLAorICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAogICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwgY29uc3QgY2hhciAqa2Vy bmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaW5pdHJk X2ZpbGVuYW1lLCBjb25zdCBjaGFyICpjcHVfbW9kZWwpCiB7Ci0gICAgc3VuNG1faHdfaW5p dCgmc3VuNG1faHdkZWZzWzddLCBSQU1fc2l6ZSwgYm9vdF9kZXZpY2UsIGRzLCBrZXJuZWxf ZmlsZW5hbWUsCisgICAgc3VuNG1faHdfaW5pdCgmc3VuNG1faHdkZWZzWzddLCBSQU1fc2l6 ZSwgYm9vdF9kZXZpY2UsIGtlcm5lbF9maWxlbmFtZSwKICAgICAgICAgICAgICAgICAgIGtl cm5lbF9jbWRsaW5lLCBpbml0cmRfZmlsZW5hbWUsIGNwdV9tb2RlbCk7CiB9CiAKIC8qIFNQ QVJDYm9vayBoYXJkd2FyZSBpbml0aWFsaXNhdGlvbiAqLwogc3RhdGljIHZvaWQgc2Jvb2tf aW5pdChyYW1fYWRkcl90IFJBTV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAotICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwgRGlzcGxheVN0YXRlICpk cywKKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwgY29u c3QgY2hhciAqa2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0 IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29uc3QgY2hhciAqY3B1X21vZGVsKQogewotICAg IHN1bjRtX2h3X2luaXQoJnN1bjRtX2h3ZGVmc1s4XSwgUkFNX3NpemUsIGJvb3RfZGV2aWNl LCBkcywga2VybmVsX2ZpbGVuYW1lLAorICAgIHN1bjRtX2h3X2luaXQoJnN1bjRtX2h3ZGVm c1s4XSwgUkFNX3NpemUsIGJvb3RfZGV2aWNlLCBrZXJuZWxfZmlsZW5hbWUsCiAgICAgICAg ICAgICAgICAgICBrZXJuZWxfY21kbGluZSwgaW5pdHJkX2ZpbGVuYW1lLCBjcHVfbW9kZWwp OwogfQogCkBAIC0xMjI0LDcgKzEyMjQsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHN1bjRk X2h3ZGVmIHN1bjRkX2h3ZGVmc1tdID0gewogCiBzdGF0aWMgdm9pZCBzdW40ZF9od19pbml0 KGNvbnN0IHN0cnVjdCBzdW40ZF9od2RlZiAqaHdkZWYsIHJhbV9hZGRyX3QgUkFNX3NpemUs CiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLAot ICAgICAgICAgICAgICAgICAgICAgICAgICBEaXNwbGF5U3RhdGUgKmRzLCBjb25zdCBjaGFy ICprZXJuZWxfZmlsZW5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo YXIgKmtlcm5lbF9maWxlbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg Y2hhciAqa2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0 IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29uc3QgY2hhciAqY3B1X21vZGVsKQogewpAQCAt MTMxNiw3ICsxMzE2LDcgQEAgc3RhdGljIHZvaWQgc3VuNGRfaHdfaW5pdChjb25zdCBzdHJ1 Y3Qgc3VuNGRfaHdkZWYgKmh3ZGVmLCByYW1fYWRkcl90IFJBTV9zaXplLAogICAgICAgICBl eGl0ICgxKTsKICAgICB9CiAgICAgdGN4X29mZnNldCA9IHFlbXVfcmFtX2FsbG9jKGh3ZGVm LT52cmFtX3NpemUpOwotICAgIHRjeF9pbml0KGRzLCBod2RlZi0+dGN4X2Jhc2UsIHBoeXNf cmFtX2Jhc2UgKyB0Y3hfb2Zmc2V0LCB0Y3hfb2Zmc2V0LAorICAgIHRjeF9pbml0KGh3ZGVm LT50Y3hfYmFzZSwgcGh5c19yYW1fYmFzZSArIHRjeF9vZmZzZXQsIHRjeF9vZmZzZXQsCiAg ICAgICAgICAgICAgaHdkZWYtPnZyYW1fc2l6ZSwgZ3JhcGhpY193aWR0aCwgZ3JhcGhpY19o ZWlnaHQsIGdyYXBoaWNfZGVwdGgpOwogCiAgICAgbGFuY2VfaW5pdCgmbmRfdGFibGVbMF0s IGh3ZGVmLT5sZV9iYXNlLCBsZWRtYSwgKmxlZG1hX2lycSwgbGVfcmVzZXQpOwpAQCAtMTM2 NiwyMSArMTM2NiwyMSBAQCBzdGF0aWMgdm9pZCBzdW40ZF9od19pbml0KGNvbnN0IHN0cnVj dCBzdW40ZF9od2RlZiAqaHdkZWYsIHJhbV9hZGRyX3QgUkFNX3NpemUsCiAKIC8qIFNQQVJD c2VydmVyIDEwMDAgaGFyZHdhcmUgaW5pdGlhbGlzYXRpb24gKi8KIHN0YXRpYyB2b2lkIHNz MTAwMF9pbml0KHJhbV9hZGRyX3QgUkFNX3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwgRGlzcGxheVN0 YXRlICpkcywKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2 aWNlLAogICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqa2VybmVsX2ZpbGVu YW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwKICAgICAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29uc3QgY2hhciAqY3B1X21vZGVs KQogewotICAgIHN1bjRkX2h3X2luaXQoJnN1bjRkX2h3ZGVmc1swXSwgUkFNX3NpemUsIGJv b3RfZGV2aWNlLCBkcywga2VybmVsX2ZpbGVuYW1lLAorICAgIHN1bjRkX2h3X2luaXQoJnN1 bjRkX2h3ZGVmc1swXSwgUkFNX3NpemUsIGJvb3RfZGV2aWNlLCBrZXJuZWxfZmlsZW5hbWUs CiAgICAgICAgICAgICAgICAgICBrZXJuZWxfY21kbGluZSwgaW5pdHJkX2ZpbGVuYW1lLCBj cHVfbW9kZWwpOwogfQogCiAvKiBTUEFSQ2NlbnRlciAyMDAwIGhhcmR3YXJlIGluaXRpYWxp c2F0aW9uICovCiBzdGF0aWMgdm9pZCBzczIwMDBfaW5pdChyYW1fYWRkcl90IFJBTV9zaXpl LCBpbnQgdmdhX3JhbV9zaXplLAotICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hh ciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAgICAg ICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwKICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwgY29uc3QgY2hhciAqa2VybmVsX2NtZGxp bmUsCiAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5h bWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsKLSAgICBzdW40ZF9od19pbml0KCZzdW40 ZF9od2RlZnNbMV0sIFJBTV9zaXplLCBib290X2RldmljZSwgZHMsIGtlcm5lbF9maWxlbmFt ZSwKKyAgICBzdW40ZF9od19pbml0KCZzdW40ZF9od2RlZnNbMV0sIFJBTV9zaXplLCBib290 X2RldmljZSwga2VybmVsX2ZpbGVuYW1lLAogICAgICAgICAgICAgICAgICAga2VybmVsX2Nt ZGxpbmUsIGluaXRyZF9maWxlbmFtZSwgY3B1X21vZGVsKTsKIH0KIApAQCAtMTQzOSw3ICsx NDM5LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBzdW40Y19od2RlZiBzdW40Y19od2RlZnNb XSA9IHsKIAogc3RhdGljIHZvaWQgc3VuNGNfaHdfaW5pdChjb25zdCBzdHJ1Y3Qgc3VuNGNf aHdkZWYgKmh3ZGVmLCByYW1fYWRkcl90IFJBTV9zaXplLAogICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgRGlzcGxheVN0YXRlICpkcywgY29uc3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLAor ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUs CiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5l LAogICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5h bWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsKQEAgLTE1MjIsNyArMTUyMiw3IEBAIHN0 YXRpYyB2b2lkIHN1bjRjX2h3X2luaXQoY29uc3Qgc3RydWN0IHN1bjRjX2h3ZGVmICpod2Rl ZiwgcmFtX2FkZHJfdCBSQU1fc2l6ZSwKICAgICAgICAgZXhpdCAoMSk7CiAgICAgfQogICAg IHRjeF9vZmZzZXQgPSBxZW11X3JhbV9hbGxvYyhod2RlZi0+dnJhbV9zaXplKTsKLSAgICB0 Y3hfaW5pdChkcywgaHdkZWYtPnRjeF9iYXNlLCBwaHlzX3JhbV9iYXNlICsgdGN4X29mZnNl dCwgdGN4X29mZnNldCwKKyAgICB0Y3hfaW5pdChod2RlZi0+dGN4X2Jhc2UsIHBoeXNfcmFt X2Jhc2UgKyB0Y3hfb2Zmc2V0LCB0Y3hfb2Zmc2V0LAogICAgICAgICAgICAgIGh3ZGVmLT52 cmFtX3NpemUsIGdyYXBoaWNfd2lkdGgsIGdyYXBoaWNfaGVpZ2h0LCBncmFwaGljX2RlcHRo KTsKIAogICAgIGxhbmNlX2luaXQoJm5kX3RhYmxlWzBdLCBod2RlZi0+bGVfYmFzZSwgbGVk bWEsICpsZWRtYV9pcnEsIGxlX3Jlc2V0KTsKQEAgLTE1ODQsMTEgKzE1ODQsMTEgQEAgc3Rh dGljIHZvaWQgc3VuNGNfaHdfaW5pdChjb25zdCBzdHJ1Y3Qgc3VuNGNfaHdkZWYgKmh3ZGVm LCByYW1fYWRkcl90IFJBTV9zaXplLAogCiAvKiBTUEFSQ3N0YXRpb24gMiBoYXJkd2FyZSBp bml0aWFsaXNhdGlvbiAqLwogc3RhdGljIHZvaWQgc3MyX2luaXQocmFtX2FkZHJfdCBSQU1f c2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo YXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5U3RhdGUgKmRzLAorICAgICAgICAgICAgICAgICAg ICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAgICAgICAgICAgICAgICAgICAgICBjb25z dCBjaGFyICprZXJuZWxfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAog ICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaW5pdHJkX2ZpbGVuYW1lLCBjb25z dCBjaGFyICpjcHVfbW9kZWwpCiB7Ci0gICAgc3VuNGNfaHdfaW5pdCgmc3VuNGNfaHdkZWZz WzBdLCBSQU1fc2l6ZSwgYm9vdF9kZXZpY2UsIGRzLCBrZXJuZWxfZmlsZW5hbWUsCisgICAg c3VuNGNfaHdfaW5pdCgmc3VuNGNfaHdkZWZzWzBdLCBSQU1fc2l6ZSwgYm9vdF9kZXZpY2Us IGtlcm5lbF9maWxlbmFtZSwKICAgICAgICAgICAgICAgICAgIGtlcm5lbF9jbWRsaW5lLCBp bml0cmRfZmlsZW5hbWUsIGNwdV9tb2RlbCk7CiB9CiAKZGlmZiAtLWdpdCBhL2h3L3N1bjR1 LmMgYi9ody9zdW40dS5jCmluZGV4IDkxZTc1MzguLjkzOGU4YjIgMTAwNjQ0Ci0tLSBhL2h3 L3N1bjR1LmMKKysrIGIvaHcvc3VuNHUuYwpAQCAtMzg3LDcgKzM4Nyw3IEBAIHBjaV9lYnVz X2luaXQoUENJQnVzICpidXMsIGludCBkZXZmbikKIH0KIAogc3RhdGljIHZvaWQgc3VuNHV2 X2luaXQocmFtX2FkZHJfdCBSQU1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlcywgRGlzcGxheVN0YXRl ICpkcywKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNl cywKICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxlbmFt ZSwgY29uc3QgY2hhciAqa2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCwK ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBod2RlZiAqaHdkZWYpCkBA IC01MDgsNyArNTA4LDcgQEAgc3RhdGljIHZvaWQgc3VuNHV2X2luaXQocmFtX2FkZHJfdCBS QU1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICZwY2lfYnVzMyk7CiAgICAgaXNhX21lbV9iYXNlID0gVkdBX0JBU0U7CiAgICAgdmdhX3Jh bV9vZmZzZXQgPSBxZW11X3JhbV9hbGxvYyh2Z2FfcmFtX3NpemUpOwotICAgIHBjaV92Z2Ff aW5pdChwY2lfYnVzLCBkcywgcGh5c19yYW1fYmFzZSArIHZnYV9yYW1fb2Zmc2V0LAorICAg IHBjaV92Z2FfaW5pdChwY2lfYnVzLCBwaHlzX3JhbV9iYXNlICsgdmdhX3JhbV9vZmZzZXQs CiAgICAgICAgICAgICAgICAgIHZnYV9yYW1fb2Zmc2V0LCB2Z2FfcmFtX3NpemUsCiAgICAg ICAgICAgICAgICAgIDAsIDApOwogCkBAIC02MTIsMzEgKzYxMiwzMSBAQCBzdGF0aWMgY29u c3Qgc3RydWN0IGh3ZGVmIGh3ZGVmc1tdID0gewogCiAvKiBTdW40dSBoYXJkd2FyZSBpbml0 aWFsaXNhdGlvbiAqLwogc3RhdGljIHZvaWQgc3VuNHVfaW5pdChyYW1fYWRkcl90IFJBTV9z aXplLCBpbnQgdmdhX3JhbV9zaXplLAotICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBj aGFyICpib290X2RldmljZXMsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlcywKICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3QgY2hhciAqa2VybmVsX2ZpbGVuYW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21k bGluZSwKICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaW5pdHJkX2ZpbGVu YW1lLCBjb25zdCBjaGFyICpjcHVfbW9kZWwpCiB7Ci0gICAgc3VuNHV2X2luaXQoUkFNX3Np emUsIHZnYV9yYW1fc2l6ZSwgYm9vdF9kZXZpY2VzLCBkcywga2VybmVsX2ZpbGVuYW1lLAor ICAgIHN1bjR1dl9pbml0KFJBTV9zaXplLCB2Z2FfcmFtX3NpemUsIGJvb3RfZGV2aWNlcywg a2VybmVsX2ZpbGVuYW1lLAogICAgICAgICAgICAgICAgIGtlcm5lbF9jbWRsaW5lLCBpbml0 cmRfZmlsZW5hbWUsIGNwdV9tb2RlbCwgJmh3ZGVmc1swXSk7CiB9CiAKIC8qIFN1bjR2IGhh cmR3YXJlIGluaXRpYWxpc2F0aW9uICovCiBzdGF0aWMgdm9pZCBzdW40dl9pbml0KHJhbV9h ZGRyX3QgUkFNX3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlcywgRGlzcGxheVN0YXRlICpkcywKKyAgICAg ICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2VzLAogICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUsIGNvbnN0IGNoYXIg Kmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpp bml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsKLSAgICBzdW40dXZf aW5pdChSQU1fc2l6ZSwgdmdhX3JhbV9zaXplLCBib290X2RldmljZXMsIGRzLCBrZXJuZWxf ZmlsZW5hbWUsCisgICAgc3VuNHV2X2luaXQoUkFNX3NpemUsIHZnYV9yYW1fc2l6ZSwgYm9v dF9kZXZpY2VzLCBrZXJuZWxfZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAga2VybmVsX2Nt ZGxpbmUsIGluaXRyZF9maWxlbmFtZSwgY3B1X21vZGVsLCAmaHdkZWZzWzFdKTsKIH0KIAog LyogTmlhZ2FyYSBoYXJkd2FyZSBpbml0aWFsaXNhdGlvbiAqLwogc3RhdGljIHZvaWQgbmlh Z2FyYV9pbml0KHJhbV9hZGRyX3QgUkFNX3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAg ICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2VzLCBEaXNwbGF5 U3RhdGUgKmRzLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3Rf ZGV2aWNlcywKICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxf ZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IGNoYXIgKmluaXRyZF9maWxlbmFtZSwgY29uc3QgY2hhciAqY3B1 X21vZGVsKQogewotICAgIHN1bjR1dl9pbml0KFJBTV9zaXplLCB2Z2FfcmFtX3NpemUsIGJv b3RfZGV2aWNlcywgZHMsIGtlcm5lbF9maWxlbmFtZSwKKyAgICBzdW40dXZfaW5pdChSQU1f c2l6ZSwgdmdhX3JhbV9zaXplLCBib290X2RldmljZXMsIGtlcm5lbF9maWxlbmFtZSwKICAg ICAgICAgICAgICAgICBrZXJuZWxfY21kbGluZSwgaW5pdHJkX2ZpbGVuYW1lLCBjcHVfbW9k ZWwsICZod2RlZnNbMl0pOwogfQogCmRpZmYgLS1naXQgYS9ody90b3NhLmMgYi9ody90b3Nh LmMKaW5kZXggZWZmYmE0Mi4uNjRlYmFhNCAxMDA2NDQKLS0tIGEvaHcvdG9zYS5jCisrKyBi L2h3L3Rvc2EuYwpAQCAtMTk3LDcgKzE5Nyw3IEBAIHN0YXRpYyBzdHJ1Y3QgYXJtX2Jvb3Rf aW5mbyB0b3NhX2JpbmZvID0gewogfTsKIAogc3RhdGljIHZvaWQgdG9zYV9pbml0KHJhbV9h ZGRyX3QgcmFtX3NpemUsIGludCB2Z2FfcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgY29u c3QgY2hhciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisgICAgICAgICAgICAg ICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAgICAgICAgICAgICAgICAgY29uc3QgY2hh ciAqa2VybmVsX2ZpbGVuYW1lLCBjb25zdCBjaGFyICprZXJuZWxfY21kbGluZSwKICAgICAg ICAgICAgICAgICBjb25zdCBjaGFyICppbml0cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNw dV9tb2RlbCkKIHsKQEAgLTIxNCwxNCArMjE0LDEzIEBAIHN0YXRpYyB2b2lkIHRvc2FfaW5p dChyYW1fYWRkcl90IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAogICAgIGlmICghY3B1 X21vZGVsKQogICAgICAgICBjcHVfbW9kZWwgPSAicHhhMjU1IjsKIAotICAgIGNwdSA9IHB4 YTI1NV9pbml0KHRvc2FfYmluZm8ucmFtX3NpemUsIE5VTEwpOworICAgIGNwdSA9IHB4YTI1 NV9pbml0KHRvc2FfYmluZm8ucmFtX3NpemUpOwogCiAgICAgY3B1X3JlZ2lzdGVyX3BoeXNp Y2FsX21lbW9yeSgwLCBUT1NBX1JPTSwKICAgICAgICAgICAgICAgICAgICAgcWVtdV9yYW1f YWxsb2MoVE9TQV9ST00pIHwgSU9fTUVNX1JPTSk7CiAKICAgICB0bWlvID0gdGM2MzkzeGJf aW5pdCgweDEwMDAwMDAwLAotICAgICAgICAgICAgcHhhMnh4X2dwaW9faW5fZ2V0KGNwdS0+ Z3BpbylbVE9TQV9HUElPX1RDNjM5M1hCX0lOVF0sCi0gICAgICAgICAgICBkcyk7CisgICAg ICAgICAgICBweGEyeHhfZ3Bpb19pbl9nZXQoY3B1LT5ncGlvKVtUT1NBX0dQSU9fVEM2Mzkz WEJfSU5UXSk7CiAKICAgICBzY3AwID0gc2Nvb3BfaW5pdChjcHUsIDAsIDB4MDg4MDAwMDAp OwogICAgIHNjcDEgPSBzY29vcF9pbml0KGNwdSwgMSwgMHgxNDgwMDA0MCk7CmRpZmYgLS1n aXQgYS9ody92ZXJzYXRpbGVwYi5jIGIvaHcvdmVyc2F0aWxlcGIuYwppbmRleCAyNjdhYTQy Li5mNjAxZTJmIDEwMDY0NAotLS0gYS9ody92ZXJzYXRpbGVwYi5jCisrKyBiL2h3L3ZlcnNh dGlsZXBiLmMKQEAgLTE1Niw3ICsxNTYsNyBAQCBzdGF0aWMgcWVtdV9pcnEgKnZwYl9zaWNf aW5pdCh1aW50MzJfdCBiYXNlLCBxZW11X2lycSAqcGFyZW50LCBpbnQgaXJxKQogc3RhdGlj IHN0cnVjdCBhcm1fYm9vdF9pbmZvIHZlcnNhdGlsZV9iaW5mbzsKIAogc3RhdGljIHZvaWQg dmVyc2F0aWxlX2luaXQocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwK LSAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5 U3RhdGUgKmRzLAorICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZp Y2UsCiAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICprZXJuZWxfZmlsZW5hbWUs IGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAogICAgICAgICAgICAgICAgICAgICAgY29u c3QgY2hhciAqaW5pdHJkX2ZpbGVuYW1lLCBjb25zdCBjaGFyICpjcHVfbW9kZWwsCiAgICAg ICAgICAgICAgICAgICAgICBpbnQgYm9hcmRfaWQpCkBAIC0yMjgsNyArMjI4LDcgQEAgc3Rh dGljIHZvaWQgdmVyc2F0aWxlX2luaXQocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9y YW1fc2l6ZSwKIAogICAgIC8qIFRoZSB2ZXJzYXRpbGUvUEIgYWN0dWFsbHkgaGFzIGEgbW9k aWZpZWQgQ29sb3IgTENEIGNvbnRyb2xsZXIKICAgICAgICB0aGF0IGluY2x1ZGVzIGhhcmR3 YXJlIGN1cnNvciBzdXBwb3J0IGZyb20gdGhlIFBMMTExLiAgKi8KLSAgICBwbDExMF9pbml0 KGRzLCAweDEwMTIwMDAwLCBwaWNbMTZdLCAxKTsKKyAgICBwbDExMF9pbml0KDB4MTAxMjAw MDAsIHBpY1sxNl0sIDEpOwogCiAgICAgaW5kZXggPSBkcml2ZV9nZXRfaW5kZXgoSUZfU0Qs IDAsIDApOwogICAgIGlmIChpbmRleCA9PSAtMSkgewpAQCAtMjkwLDIzICsyOTAsMjMgQEAg c3RhdGljIHZvaWQgdmVyc2F0aWxlX2luaXQocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZn YV9yYW1fc2l6ZSwKIH0KIAogc3RhdGljIHZvaWQgdnBiX2luaXQocmFtX2FkZHJfdCByYW1f c2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo YXIgKmJvb3RfZGV2aWNlLCBEaXNwbGF5U3RhdGUgKmRzLAorICAgICAgICAgICAgICAgICAg ICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsCiAgICAgICAgICAgICAgICAgICAgICBjb25z dCBjaGFyICprZXJuZWxfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmtlcm5lbF9jbWRsaW5lLAog ICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaW5pdHJkX2ZpbGVuYW1lLCBjb25z dCBjaGFyICpjcHVfbW9kZWwpCiB7CiAgICAgdmVyc2F0aWxlX2luaXQocmFtX3NpemUsIHZn YV9yYW1fc2l6ZSwKLSAgICAgICAgICAgICAgICAgICBib290X2RldmljZSwgZHMsCisgICAg ICAgICAgICAgICAgICAgYm9vdF9kZXZpY2UsCiAgICAgICAgICAgICAgICAgICAga2VybmVs X2ZpbGVuYW1lLCBrZXJuZWxfY21kbGluZSwKICAgICAgICAgICAgICAgICAgICBpbml0cmRf ZmlsZW5hbWUsIGNwdV9tb2RlbCwgMHgxODMpOwogfQogCiBzdGF0aWMgdm9pZCB2YWJfaW5p dChyYW1fYWRkcl90IHJhbV9zaXplLCBpbnQgdmdhX3JhbV9zaXplLAotICAgICAgICAgICAg ICAgICAgICAgY29uc3QgY2hhciAqYm9vdF9kZXZpY2UsIERpc3BsYXlTdGF0ZSAqZHMsCisg ICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpib290X2RldmljZSwKICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmtlcm5lbF9maWxlbmFtZSwgY29uc3QgY2hhciAq a2VybmVsX2NtZGxpbmUsCiAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICppbml0 cmRfZmlsZW5hbWUsIGNvbnN0IGNoYXIgKmNwdV9tb2RlbCkKIHsKICAgICB2ZXJzYXRpbGVf aW5pdChyYW1fc2l6ZSwgdmdhX3JhbV9zaXplLAotICAgICAgICAgICAgICAgICAgIGJvb3Rf ZGV2aWNlLCBkcywKKyAgICAgICAgICAgICAgICAgICBib290X2RldmljZSwKICAgICAgICAg ICAgICAgICAgICBrZXJuZWxfZmlsZW5hbWUsIGtlcm5lbF9jbWRsaW5lLAogICAgICAgICAg ICAgICAgICAgIGluaXRyZF9maWxlbmFtZSwgY3B1X21vZGVsLCAweDI1ZSk7CiB9CmRpZmYg LS1naXQgYS92bC5jIGIvdmwuYwppbmRleCA0Zjk3ZjgxLi5hZTJkMTI3IDEwMDY0NAotLS0g YS92bC5jCisrKyBiL3ZsLmMKQEAgLTU0NjEsNyArNTQ2MSw3IEBAIGludCBtYWluKGludCBh cmdjLCBjaGFyICoqYXJndiwgY2hhciAqKmVudnApCiAgICAgICAgIH0KICAgICB9CiAKLSAg ICBtYWNoaW5lLT5pbml0KHJhbV9zaXplLCB2Z2FfcmFtX3NpemUsIGJvb3RfZGV2aWNlcywg ZHMsCisgICAgbWFjaGluZS0+aW5pdChyYW1fc2l6ZSwgdmdhX3JhbV9zaXplLCBib290X2Rl dmljZXMsCiAgICAgICAgICAgICAgICAgICBrZXJuZWxfZmlsZW5hbWUsIGtlcm5lbF9jbWRs aW5lLCBpbml0cmRfZmlsZW5hbWUsIGNwdV9tb2RlbCk7CiAKICAgICAvKiBTZXQgS1ZNJ3Mg dmNwdSBzdGF0ZSB0byBxZW11J3MgaW5pdGlhbCBDUFVTdGF0ZS4gKi8K --------------070505070302080001040906 Content-Type: text/plain; name="hwcahnges" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="hwcahnges" ZGlmZiAtLWdpdCBhL2h3L2JsaXp6YXJkLmMgYi9ody9ibGl6emFyZC5jCmluZGV4IGVlYWFj ZGQuLjk4MzlhMzkgMTAwNjQ0Ci0tLSBhL2h3L2JsaXp6YXJkLmMKKysrIGIvaHcvYmxpenph cmQuYwpAQCAtNzIsNyArNzIsNiBAQCBzdHJ1Y3QgYmxpenphcmRfcyB7CiAgICAgdWludDhf dCBpZm9ybWF0OwogICAgIHVpbnQ4X3Qgc291cmNlOwogICAgIERpc3BsYXlTdGF0ZSAqc3Rh dGU7Ci0gICAgUUVNVUNvbnNvbGUgKmNvbnNvbGU7CiAgICAgYmxpenphcmRfZm5fdCAqbGlu ZV9mbl90YWJbMl07CiAgICAgdm9pZCAqZmI7CiAKQEAgLTg5Niw3ICs4OTUsNyBAQCBzdGF0 aWMgdm9pZCBibGl6emFyZF91cGRhdGVfZGlzcGxheSh2b2lkICpvcGFxdWUpCiAKICAgICBp ZiAocy0+eCAhPSBkc19nZXRfd2lkdGgocy0+c3RhdGUpIHx8IHMtPnkgIT0gZHNfZ2V0X2hl aWdodChzLT5zdGF0ZSkpIHsKICAgICAgICAgcy0+aW52YWxpZGF0ZSA9IDE7Ci0gICAgICAg IHFlbXVfY29uc29sZV9yZXNpemUocy0+Y29uc29sZSwgcy0+eCwgcy0+eSk7CisgICAgICAg IHFlbXVfY29uc29sZV9yZXNpemUocy0+c3RhdGUsIHMtPngsIHMtPnkpOwogICAgIH0KIAog ICAgIGlmIChzLT5pbnZhbGlkYXRlKSB7CkBAIC05NTQsMTEgKzk1MywxMCBAQCBzdGF0aWMg dm9pZCBibGl6emFyZF9zY3JlZW5fZHVtcCh2b2lkICpvcGFxdWUsIGNvbnN0IGNoYXIgKmZp bGVuYW1lKSB7CiAjZGVmaW5lIERFUFRIIDMyCiAjaW5jbHVkZSAiYmxpenphcmRfdGVtcGxh dGUuaCIKIAotdm9pZCAqczFkMTM3NDVfaW5pdChxZW11X2lycSBncGlvX2ludCwgRGlzcGxh eVN0YXRlICpkcykKK3ZvaWQgKnMxZDEzNzQ1X2luaXQocWVtdV9pcnEgZ3Bpb19pbnQpCiB7 CiAgICAgc3RydWN0IGJsaXp6YXJkX3MgKnMgPSAoc3RydWN0IGJsaXp6YXJkX3MgKikgcWVt dV9tYWxsb2N6KHNpemVvZigqcykpOwogCi0gICAgcy0+c3RhdGUgPSBkczsKICAgICBzLT5m YiA9IHFlbXVfbWFsbG9jKDB4MTgwMDAwKTsKIAogICAgIHN3aXRjaCAoZHNfZ2V0X2JpdHNf cGVyX3BpeGVsKHMtPnN0YXRlKSkgewpAQCAtOTkzLDkgKzk5MSw5IEBAIHZvaWQgKnMxZDEz NzQ1X2luaXQocWVtdV9pcnEgZ3Bpb19pbnQsIERpc3BsYXlTdGF0ZSAqZHMpCiAKICAgICBi bGl6emFyZF9yZXNldChzKTsKIAotICAgIHMtPmNvbnNvbGUgPSBncmFwaGljX2NvbnNvbGVf aW5pdChzLT5zdGF0ZSwgYmxpenphcmRfdXBkYXRlX2Rpc3BsYXksCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGJsaXp6YXJkX2ludmFsaWRhdGVfZGlzcGxheSwK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxpenphcmRfc2NyZWVu X2R1bXAsIE5VTEwsIHMpOworICAgIHMtPnN0YXRlID0gZ3JhcGhpY19jb25zb2xlX2luaXQo YmxpenphcmRfdXBkYXRlX2Rpc3BsYXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBibGl6emFyZF9pbnZhbGlkYXRlX2Rpc3BsYXksCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBibGl6emFyZF9zY3JlZW5fZHVtcCwgTlVMTCwgcyk7CiAKICAgICBy ZXR1cm4gczsKIH0KZGlmZiAtLWdpdCBhL2h3L2NpcnJ1c192Z2EuYyBiL2h3L2NpcnJ1c192 Z2EuYwppbmRleCA1NWMyY2MxLi5lZjkzOWFlIDEwMDY0NAotLS0gYS9ody9jaXJydXNfdmdh LmMKKysrIGIvaHcvY2lycnVzX3ZnYS5jCkBAIC03NzQsNyArNzc0LDcgQEAgc3RhdGljIHZv aWQgY2lycnVzX2RvX2NvcHkoQ2lycnVzVkdBU3RhdGUgKnMsIGludCBkc3QsIGludCBzcmMs IGludCB3LCBpbnQgaCkKIAkJICAgICAgcy0+Y2lycnVzX2JsdF93aWR0aCwgcy0+Y2lycnVz X2JsdF9oZWlnaHQpOwogCiAgICAgaWYgKG5vdGlmeSkKLQlxZW11X2NvbnNvbGVfY29weShz LT5jb25zb2xlLAorCXFlbXVfY29uc29sZV9jb3B5KHMtPmRzLAogCQkJICBzeCwgc3ksIGR4 LCBkeSwKIAkJCSAgcy0+Y2lycnVzX2JsdF93aWR0aCAvIGRlcHRoLAogCQkJICBzLT5jaXJy dXNfYmx0X2hlaWdodCk7CkBAIC0zMjkwLDcgKzMyOTAsNyBAQCBzdGF0aWMgdm9pZCBjaXJy dXNfaW5pdF9jb21tb24oQ2lycnVzVkdBU3RhdGUgKiBzLCBpbnQgZGV2aWNlX2lkLCBpbnQg aXNfcGNpKQogICoKICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov CiAKLXZvaWQgaXNhX2NpcnJ1c192Z2FfaW5pdChEaXNwbGF5U3RhdGUgKmRzLCB1aW50OF90 ICp2Z2FfcmFtX2Jhc2UsCit2b2lkIGlzYV9jaXJydXNfdmdhX2luaXQodWludDhfdCAqdmdh X3JhbV9iYXNlLAogICAgICAgICAgICAgICAgICAgICAgICAgIHJhbV9hZGRyX3QgdmdhX3Jh bV9vZmZzZXQsIGludCB2Z2FfcmFtX3NpemUpCiB7CiAgICAgQ2lycnVzVkdBU3RhdGUgKnM7 CkBAIC0zMjk4LDEwICszMjk4LDEwIEBAIHZvaWQgaXNhX2NpcnJ1c192Z2FfaW5pdChEaXNw bGF5U3RhdGUgKmRzLCB1aW50OF90ICp2Z2FfcmFtX2Jhc2UsCiAgICAgcyA9IHFlbXVfbWFs bG9jeihzaXplb2YoQ2lycnVzVkdBU3RhdGUpKTsKIAogICAgIHZnYV9jb21tb25faW5pdCgo VkdBU3RhdGUgKilzLAotICAgICAgICAgICAgICAgICAgICBkcywgdmdhX3JhbV9iYXNlLCB2 Z2FfcmFtX29mZnNldCwgdmdhX3JhbV9zaXplKTsKKyAgICAgICAgICAgICAgICAgICAgdmdh X3JhbV9iYXNlLCB2Z2FfcmFtX29mZnNldCwgdmdhX3JhbV9zaXplKTsKICAgICBjaXJydXNf aW5pdF9jb21tb24ocywgQ0lSUlVTX0lEX0NMR0Q1NDMwLCAwKTsKLSAgICBzLT5jb25zb2xl ID0gZ3JhcGhpY19jb25zb2xlX2luaXQocy0+ZHMsIHMtPnVwZGF0ZSwgcy0+aW52YWxpZGF0 ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcy0+c2NyZWVuX2R1 bXAsIHMtPnRleHRfdXBkYXRlLCBzKTsKKyAgICBzLT5kcyA9IGdyYXBoaWNfY29uc29sZV9p bml0KHMtPnVwZGF0ZSwgcy0+aW52YWxpZGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHMtPnNjcmVlbl9kdW1wLCBzLT50ZXh0X3VwZGF0ZSwgcyk7CiAgICAgLyog WFhYIElTQS1MRkIgc3VwcG9ydCAqLwogfQogCkBAIC0zMzM5LDcgKzMzMzksNyBAQCBzdGF0 aWMgdm9pZCBjaXJydXNfcGNpX21taW9fbWFwKFBDSURldmljZSAqZCwgaW50IHJlZ2lvbl9u dW0sCiAJCQkJIHMtPmNpcnJ1c19tbWlvX2lvX2FkZHIpOwogfQogCi12b2lkIHBjaV9jaXJy dXNfdmdhX2luaXQoUENJQnVzICpidXMsIERpc3BsYXlTdGF0ZSAqZHMsIHVpbnQ4X3QgKnZn YV9yYW1fYmFzZSwKK3ZvaWQgcGNpX2NpcnJ1c192Z2FfaW5pdChQQ0lCdXMgKmJ1cywgdWlu dDhfdCAqdmdhX3JhbV9iYXNlLAogICAgICAgICAgICAgICAgICAgICAgICAgIHJhbV9hZGRy X3QgdmdhX3JhbV9vZmZzZXQsIGludCB2Z2FfcmFtX3NpemUpCiB7CiAgICAgUENJQ2lycnVz VkdBU3RhdGUgKmQ7CkBAIC0zMzY2LDExICszMzY2LDExIEBAIHZvaWQgcGNpX2NpcnJ1c192 Z2FfaW5pdChQQ0lCdXMgKmJ1cywgRGlzcGxheVN0YXRlICpkcywgdWludDhfdCAqdmdhX3Jh bV9iYXNlLAogICAgIC8qIHNldHVwIFZHQSAqLwogICAgIHMgPSAmZC0+Y2lycnVzX3ZnYTsK ICAgICB2Z2FfY29tbW9uX2luaXQoKFZHQVN0YXRlICopcywKLSAgICAgICAgICAgICAgICAg ICAgZHMsIHZnYV9yYW1fYmFzZSwgdmdhX3JhbV9vZmZzZXQsIHZnYV9yYW1fc2l6ZSk7Cisg ICAgICAgICAgICAgICAgICAgIHZnYV9yYW1fYmFzZSwgdmdhX3JhbV9vZmZzZXQsIHZnYV9y YW1fc2l6ZSk7CiAgICAgY2lycnVzX2luaXRfY29tbW9uKHMsIGRldmljZV9pZCwgMSk7CiAK LSAgICBzLT5jb25zb2xlID0gZ3JhcGhpY19jb25zb2xlX2luaXQocy0+ZHMsIHMtPnVwZGF0 ZSwgcy0+aW52YWxpZGF0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcy0+c2NyZWVuX2R1bXAsIHMtPnRleHRfdXBkYXRlLCBzKTsKKyAgICBzLT5kcyA9IGdy YXBoaWNfY29uc29sZV9pbml0KHMtPnVwZGF0ZSwgcy0+aW52YWxpZGF0ZSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHMtPnNjcmVlbl9kdW1wLCBzLT50ZXh0X3VwZGF0 ZSwgcyk7CiAKICAgICBzLT5wY2lfZGV2ID0gKFBDSURldmljZSAqKWQ7CiAKZGlmZiAtLWdp dCBhL2h3L2RldmljZXMuaCBiL2h3L2RldmljZXMuaAppbmRleCA0Zjg3MjYxLi5hOGFmYTk0 IDEwMDY0NAotLS0gYS9ody9kZXZpY2VzLmgKKysrIGIvaHcvZGV2aWNlcy5oCkBAIC04LDcg KzgsNyBAQCB2b2lkIHNtYzkxYzExMV9pbml0KE5JQ0luZm8gKiwgdWludDMyX3QsIHFlbXVf aXJxKTsKIAogLyogc3NkMDMyMy5jICovCiBpbnQgc3NkMDMyM194ZmVyX3NzaSh2b2lkICpv cGFxdWUsIGludCBkYXRhKTsKLXZvaWQgKnNzZDAzMjNfaW5pdChEaXNwbGF5U3RhdGUgKmRz LCBxZW11X2lycSAqY21kX3ApOwordm9pZCAqc3NkMDMyM19pbml0KHFlbXVfaXJxICpjbWRf cCk7CiAKIC8qIGFkczc4NDYuYyAqLwogc3RydWN0IGFkczc4NDZfc3RhdGVfczsKQEAgLTM3 LDcgKzM3LDcgQEAgdm9pZCB0c2MyMDA1X3NldF90cmFuc2Zvcm0odm9pZCAqb3BhcXVlLCBz dHJ1Y3QgbW91c2VfdHJhbnNmb3JtX2luZm9fcyAqaW5mbyk7CiB2b2lkIHN0ZWxsYXJpc19n YW1lcGFkX2luaXQoaW50IG4sIHFlbXVfaXJxICppcnEsIGNvbnN0IGludCAqa2V5Y29kZSk7 CiAKIC8qIGJsaXp6YXJkLmMgKi8KLXZvaWQgKnMxZDEzNzQ1X2luaXQocWVtdV9pcnEgZ3Bp b19pbnQsIERpc3BsYXlTdGF0ZSAqZHMpOwordm9pZCAqczFkMTM3NDVfaW5pdChxZW11X2ly cSBncGlvX2ludCk7CiB2b2lkIHMxZDEzNzQ1X3dyaXRlKHZvaWQgKm9wYXF1ZSwgaW50IGRj LCB1aW50MTZfdCB2YWx1ZSk7CiB2b2lkIHMxZDEzNzQ1X3dyaXRlX2Jsb2NrKHZvaWQgKm9w YXF1ZSwgaW50IGRjLAogICAgICAgICAgICAgICAgIHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbiwg aW50IHBpdGNoKTsKQEAgLTY3LDEzICs2NywxMyBAQCB2b2lkIHR1c2I2MDEwX3Bvd2VyKHN0 cnVjdCB0dXNiX3MgKnMsIGludCBvbik7CiAvKiB0YzYzOTN4Yi5jICovCiBzdHJ1Y3QgdGM2 MzkzeGJfczsKICNkZWZpbmUgVEM2MzkzWEJfUkFNCTB4MTEwMDAwIC8qIGFtb3VudCBvZiBy YW0gZm9yIFZpZGVvIGFuZCBVU0IgKi8KLXN0cnVjdCB0YzYzOTN4Yl9zICp0YzYzOTN4Yl9p bml0KHVpbnQzMl90IGJhc2UsIHFlbXVfaXJxIGlycSwgRGlzcGxheVN0YXRlICpkcyk7Citz dHJ1Y3QgdGM2MzkzeGJfcyAqdGM2MzkzeGJfaW5pdCh1aW50MzJfdCBiYXNlLCBxZW11X2ly cSBpcnEpOwogdm9pZCB0YzYzOTN4Yl9ncGlvX291dF9zZXQoc3RydWN0IHRjNjM5M3hiX3Mg KnMsIGludCBsaW5lLAogICAgICAgICAgICAgICAgICAgICBxZW11X2lycSBoYW5kbGVyKTsK IHFlbXVfaXJxICp0YzYzOTN4Yl9ncGlvX2luX2dldChzdHJ1Y3QgdGM2MzkzeGJfcyAqcyk7 CiBxZW11X2lycSB0YzYzOTN4Yl9sM3ZfZ2V0KHN0cnVjdCB0YzYzOTN4Yl9zICpzKTsKIAog Lyogc201MDEuYyAqLwotdm9pZCBzbTUwMV9pbml0KERpc3BsYXlTdGF0ZSAqZHMsIHVpbnQz Ml90IGJhc2UsIHVuc2lnbmVkIGxvbmcgbG9jYWxfbWVtX2Jhc2UsCit2b2lkIHNtNTAxX2lu aXQodWludDMyX3QgYmFzZSwgdW5zaWduZWQgbG9uZyBsb2NhbF9tZW1fYmFzZSwKIAkJdWlu dDMyX3QgbG9jYWxfbWVtX2J5dGVzLCBDaGFyRHJpdmVyU3RhdGUgKmNocik7CiAjZW5kaWYK ZGlmZiAtLWdpdCBhL2h3L2czNjRmYi5jIGIvaHcvZzM2NGZiLmMKaW5kZXggYjJhZWFhYi4u YzQyYzdlNyAxMDA2NDQKLS0tIGEvaHcvZzM2NGZiLmMKKysrIGIvaHcvZzM2NGZiLmMKQEAg LTMyLDcgKzMyLDYgQEAgdHlwZWRlZiBzdHJ1Y3QgRzM2NFN0YXRlIHsKICAgICB1aW50OF90 IHBhbGV0dGVbMjU2XVszXTsKICAgICAvKiBkaXNwbGF5IHJlZnJlc2ggc3VwcG9ydCAqLwog ICAgIERpc3BsYXlTdGF0ZSAqZHM7Ci0gICAgUUVNVUNvbnNvbGUgKmNvbnNvbGU7CiAgICAg aW50IGdyYXBoaWNfbW9kZTsKICAgICB1aW50MzJfdCBzY3Jfd2lkdGgsIHNjcl9oZWlnaHQ7 IC8qIGluIHBpeGVscyAqLwogfSBHMzY0U3RhdGU7CkBAIC0xMzEsNyArMTMwLDcgQEAgc3Rh dGljIHZvaWQgZzM2NGZiX3VwZGF0ZV9kaXNwbGF5KHZvaWQgKm9wYXF1ZSkKICAgICAgICAg ZnVsbF91cGRhdGUgPSAxOwogICAgIH0KICAgICBpZiAocy0+c2NyX3dpZHRoICE9IGRzX2dl dF93aWR0aChzLT5kcykgfHwgcy0+c2NyX2hlaWdodCAhPSBkc19nZXRfaGVpZ2h0KHMtPmRz KSkgewotICAgICAgICBxZW11X2NvbnNvbGVfcmVzaXplKHMtPmNvbnNvbGUsIHMtPnNjcl93 aWR0aCwgcy0+c2NyX2hlaWdodCk7CisgICAgICAgIHFlbXVfY29uc29sZV9yZXNpemUocy0+ ZHMsIHMtPnNjcl93aWR0aCwgcy0+c2NyX2hlaWdodCk7CiAgICAgICAgIGZ1bGxfdXBkYXRl ID0gMTsKICAgICB9CiAgICAgc3dpdGNoKGdyYXBoaWNfbW9kZSkgewpAQCAtMzU0LDggKzM1 Myw3IEBAIHN0YXRpYyBDUFVXcml0ZU1lbW9yeUZ1bmMgKmczNjRmYl9tZW1fd3JpdGVbM10g PSB7CiAgICAgZzM2NGZiX21lbV93cml0ZWwsCiB9OwogCi1pbnQgZzM2NGZiX21tX2luaXQo RGlzcGxheVN0YXRlICpkcywKLSAgICAgICAgICAgICAgICAgICBpbnQgdnJhbV9zaXplLCBp bnQgaXRfc2hpZnQsCitpbnQgZzM2NGZiX21tX2luaXQoaW50IHZyYW1fc2l6ZSwgaW50IGl0 X3NoaWZ0LAogICAgICAgICAgICAgICAgICAgIHRhcmdldF9waHlzX2FkZHJfdCB2cmFtX2Jh c2UsIHRhcmdldF9waHlzX2FkZHJfdCBjdHJsX2Jhc2UpCiB7CiAgICAgRzM2NFN0YXRlICpz OwpAQCAtMzcxLDExICszNjksOSBAQCBpbnQgZzM2NGZiX21tX2luaXQoRGlzcGxheVN0YXRl ICpkcywKICAgICBxZW11X3JlZ2lzdGVyX3Jlc2V0KGczNjRmYl9yZXNldCwgcyk7CiAgICAg ZzM2NGZiX3Jlc2V0KHMpOwogCi0gICAgcy0+ZHMgPSBkczsKLQotICAgIHMtPmNvbnNvbGUg PSBncmFwaGljX2NvbnNvbGVfaW5pdChkcywgZzM2NGZiX3VwZGF0ZV9kaXNwbGF5LAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnMzY0ZmJfaW52YWxpZGF0ZV9k aXNwbGF5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnMzY0ZmJf c2NyZWVuX2R1bXAsIE5VTEwsIHMpOworICAgIHMtPmRzID0gZ3JhcGhpY19jb25zb2xlX2lu aXQoZzM2NGZiX3VwZGF0ZV9kaXNwbGF5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZzM2NGZiX2ludmFsaWRhdGVfZGlzcGxheSwKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGczNjRmYl9zY3JlZW5fZHVtcCwgTlVMTCwgcyk7CiAKICAgICBpb192 cmFtID0gY3B1X3JlZ2lzdGVyX2lvX21lbW9yeSgwLCBnMzY0ZmJfbWVtX3JlYWQsIGczNjRm Yl9tZW1fd3JpdGUsIHMpOwogICAgIGNwdV9yZWdpc3Rlcl9waHlzaWNhbF9tZW1vcnkodnJh bV9iYXNlLCB2cmFtX3NpemUsIGlvX3ZyYW0pOwpkaWZmIC0tZ2l0IGEvaHcvaTJjLmggYi9o dy9pMmMuaAppbmRleCA2ODU1Mzc1Li4zOTZjNTYyIDEwMDY0NAotLS0gYS9ody9pMmMuaAor KysgYi9ody9pMmMuaApAQCAtNzEsNyArNzEsNyBAQCB2b2lkIHdtODc1MF9kYWNfY29tbWl0 KHZvaWQgKm9wYXF1ZSk7CiB2b2lkIHdtODc1MF9zZXRfYmNsa19pbih2b2lkICpvcGFxdWUs IGludCBuZXdfaHopOwogCiAvKiBzc2QwMzAzLmMgKi8KLXZvaWQgc3NkMDMwM19pbml0KERp c3BsYXlTdGF0ZSAqZHMsIGkyY19idXMgKmJ1cywgaW50IGFkZHJlc3MpOwordm9pZCBzc2Qw MzAzX2luaXQoaTJjX2J1cyAqYnVzLCBpbnQgYWRkcmVzcyk7CiAKIC8qIHR3bDkyMjMwLmMg Ki8KIGkyY19zbGF2ZSAqdHdsOTIyMzBfaW5pdChpMmNfYnVzICpidXMsIHFlbXVfaXJxIGly cSk7CmRpZmYgLS1naXQgYS9ody9qYXp6X2xlZC5jIGIvaHcvamF6el9sZWQuYwppbmRleCBh M2FhZWM3Li5mZGVmOWQ4IDEwMDY0NAotLS0gYS9ody9qYXp6X2xlZC5jCisrKyBiL2h3L2ph enpfbGVkLmMKQEAgLTM2LDcgKzM2LDYgQEAgdHlwZWRlZiBlbnVtIHsKIHR5cGVkZWYgc3Ry dWN0IExlZFN0YXRlIHsKICAgICB1aW50OF90IHNlZ21lbnRzOwogICAgIERpc3BsYXlTdGF0 ZSAqZHM7Ci0gICAgUUVNVUNvbnNvbGUgKmNvbnNvbGU7CiAgICAgc2NyZWVuX3N0YXRlX3Qg c3RhdGU7CiB9IExlZFN0YXRlOwogCkBAIC0yODksNyArMjg4LDcgQEAgc3RhdGljIHZvaWQg amF6el9sZWRfdGV4dF91cGRhdGUodm9pZCAqb3BhcXVlLCBjb25zb2xlX2NoX3QgKmNoYXJk YXRhKQogICAgIGNoYXIgYnVmWzJdOwogCiAgICAgZHB5X2N1cnNvcihzLT5kcywgLTEsIC0x KTsKLSAgICBxZW11X2NvbnNvbGVfcmVzaXplKHMtPmNvbnNvbGUsIDIsIDEpOworICAgIHFl bXVfY29uc29sZV9yZXNpemUocy0+ZHMsIDIsIDEpOwogCiAgICAgLyogVE9ETzogZHJhdyB0 aGUgc2VnbWVudHMgKi8KICAgICBzbnByaW50ZihidWYsIDIsICIlMDJoaHhcbiIsIHMtPnNl Z21lbnRzKTsKQEAgLTI5OSw3ICsyOTgsNyBAQCBzdGF0aWMgdm9pZCBqYXp6X2xlZF90ZXh0 X3VwZGF0ZSh2b2lkICpvcGFxdWUsIGNvbnNvbGVfY2hfdCAqY2hhcmRhdGEpCiAgICAgZHB5 X3VwZGF0ZShzLT5kcywgMCwgMCwgMiwgMSk7CiB9CiAKLXZvaWQgamF6el9sZWRfaW5pdChE aXNwbGF5U3RhdGUgKmRzLCB0YXJnZXRfcGh5c19hZGRyX3QgYmFzZSkKK3ZvaWQgamF6el9s ZWRfaW5pdCh0YXJnZXRfcGh5c19hZGRyX3QgYmFzZSkKIHsKICAgICBMZWRTdGF0ZSAqczsK ICAgICBpbnQgaW87CkBAIC0zMDgsMTUgKzMwNywxNCBAQCB2b2lkIGphenpfbGVkX2luaXQo RGlzcGxheVN0YXRlICpkcywgdGFyZ2V0X3BoeXNfYWRkcl90IGJhc2UpCiAgICAgaWYgKCFz KQogICAgICAgICByZXR1cm47CiAKLSAgICBzLT5kcyA9IGRzOwogICAgIHMtPnN0YXRlID0g UkVEUkFXX1NFR01FTlRTIHwgUkVEUkFXX0JBQ0tHUk9VTkQ7CiAKICAgICBpbyA9IGNwdV9y ZWdpc3Rlcl9pb19tZW1vcnkoMCwgbGVkX3JlYWQsIGxlZF93cml0ZSwgcyk7CiAgICAgY3B1 X3JlZ2lzdGVyX3BoeXNpY2FsX21lbW9yeShiYXNlLCAxLCBpbyk7CiAKLSAgICBzLT5jb25z b2xlID0gZ3JhcGhpY19jb25zb2xlX2luaXQoZHMsIGphenpfbGVkX3VwZGF0ZV9kaXNwbGF5 LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGphenpfbGVkX2ludmFs aWRhdGVfZGlzcGxheSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBq YXp6X2xlZF9zY3JlZW5fZHVtcCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBqYXp6X2xlZF90ZXh0X3VwZGF0ZSwgcyk7Ci0gICAgcWVtdV9jb25zb2xlX3Jlc2l6 ZShzLT5jb25zb2xlLCA2MCwgODApOworICAgIHMtPmRzID0gZ3JhcGhpY19jb25zb2xlX2lu aXQoamF6el9sZWRfdXBkYXRlX2Rpc3BsYXksCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBqYXp6X2xlZF9pbnZhbGlkYXRlX2Rpc3BsYXksCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBqYXp6X2xlZF9zY3JlZW5fZHVtcCwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGphenpfbGVkX3RleHRfdXBkYXRlLCBzKTsKKyAgICBxZW11 X2NvbnNvbGVfcmVzaXplKHMtPmRzLCA2MCwgODApOwogfQpkaWZmIC0tZ2l0IGEvaHcvbWlw cy5oIGIvaHcvbWlwcy5oCmluZGV4IDU4OWJlOWQuLjhlYWVhNmMgMTAwNjQ0Ci0tLSBhL2h3 L21pcHMuaAorKysgYi9ody9taXBzLmgKQEAgLTEwLDE1ICsxMCwxNCBAQCB2b2lkICpkczEy MjV5X2luaXQodGFyZ2V0X3BoeXNfYWRkcl90IG1lbV9iYXNlLCBjb25zdCBjaGFyICpmaWxl bmFtZSk7CiB2b2lkIGRzMTIyNXlfc2V0X3Byb3RlY3Rpb24odm9pZCAqb3BhcXVlLCBpbnQg cHJvdGVjdGlvbik7CiAKIC8qIGczNjRmYi5jICovCi1pbnQgZzM2NGZiX21tX2luaXQoRGlz cGxheVN0YXRlICpkcywKLSAgICAgICAgICAgICAgICAgICBpbnQgdnJhbV9zaXplLCBpbnQg aXRfc2hpZnQsCitpbnQgZzM2NGZiX21tX2luaXQoaW50IHZyYW1fc2l6ZSwgaW50IGl0X3No aWZ0LAogICAgICAgICAgICAgICAgICAgIHRhcmdldF9waHlzX2FkZHJfdCB2cmFtX2Jhc2Us IHRhcmdldF9waHlzX2FkZHJfdCBjdHJsX2Jhc2UpOwogCiAvKiBtaXBzbmV0LmMgKi8KIHZv aWQgbWlwc25ldF9pbml0KGludCBiYXNlLCBxZW11X2lycSBpcnEsIE5JQ0luZm8gKm5kKTsK IAogLyogamF6el9sZWQuYyAqLwotZXh0ZXJuIHZvaWQgamF6el9sZWRfaW5pdChEaXNwbGF5 U3RhdGUgKmRzLCB0YXJnZXRfcGh5c19hZGRyX3QgYmFzZSk7CitleHRlcm4gdm9pZCBqYXp6 X2xlZF9pbml0KHRhcmdldF9waHlzX2FkZHJfdCBiYXNlKTsKIAogLyogbWlwc19pbnQuYyAq LwogZXh0ZXJuIHZvaWQgY3B1X21pcHNfaXJxX2luaXRfY3B1KENQVVN0YXRlICplbnYpOwpk aWZmIC0tZ2l0IGEvaHcvbXVzaWNwYWwuYyBiL2h3L211c2ljcGFsLmMKaW5kZXggMzJkNWMx My4uMDllYWZiMCAxMDA2NDQKLS0tIGEvaHcvbXVzaWNwYWwuYworKysgYi9ody9tdXNpY3Bh bC5jCkBAIC03NTIsNyArNzUyLDYgQEAgdHlwZWRlZiBzdHJ1Y3QgbXVzaWNwYWxfbGNkX3N0 YXRlIHsKICAgICBpbnQgcGFnZTsKICAgICBpbnQgcGFnZV9vZmY7CiAgICAgRGlzcGxheVN0 YXRlICpkczsKLSAgICBRRU1VQ29uc29sZSAqY29uc29sZTsKICAgICB1aW50OF90IHZpZGVv X3JhbVsxMjgqNjQvOF07CiB9IG11c2ljcGFsX2xjZF9zdGF0ZTsKIApAQCAtOTA2LDcgKzkw NSw3IEBAIHN0YXRpYyBDUFVXcml0ZU1lbW9yeUZ1bmMgKm11c2ljcGFsX2xjZF93cml0ZWZu W10gPSB7CiAgICAgbXVzaWNwYWxfbGNkX3dyaXRlCiB9OwogCi1zdGF0aWMgdm9pZCBtdXNp Y3BhbF9sY2RfaW5pdChEaXNwbGF5U3RhdGUgKmRzLCB1aW50MzJfdCBiYXNlKQorc3RhdGlj IHZvaWQgbXVzaWNwYWxfbGNkX2luaXQodWludDMyX3QgYmFzZSkKIHsKICAgICBtdXNpY3Bh bF9sY2Rfc3RhdGUgKnM7CiAgICAgaW50IGlvbWVtdHlwZTsKQEAgLTkxNCwxNCArOTEzLDEz IEBAIHN0YXRpYyB2b2lkIG11c2ljcGFsX2xjZF9pbml0KERpc3BsYXlTdGF0ZSAqZHMsIHVp bnQzMl90IGJhc2UpCiAgICAgcyA9IHFlbXVfbWFsbG9jeihzaXplb2YobXVzaWNwYWxfbGNk X3N0YXRlKSk7CiAgICAgaWYgKCFzKQogICAgICAgICByZXR1cm47Ci0gICAgcy0+ZHMgPSBk czsKICAgICBpb21lbXR5cGUgPSBjcHVfcmVnaXN0ZXJfaW9fbWVtb3J5KDAsIG11c2ljcGFs X2xjZF9yZWFkZm4sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBt dXNpY3BhbF9sY2Rfd3JpdGVmbiwgcyk7CiAgICAgY3B1X3JlZ2lzdGVyX3BoeXNpY2FsX21l bW9yeShiYXNlLCBNUF9MQ0RfU0laRSwgaW9tZW10eXBlKTsKIAotICAgIHMtPmNvbnNvbGUg PSBncmFwaGljX2NvbnNvbGVfaW5pdChkcywgbGNkX3JlZnJlc2gsIGxjZF9pbnZhbGlkYXRl LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMLCBz KTsKLSAgICBxZW11X2NvbnNvbGVfcmVzaXplKHMtPmNvbnNvbGUsIDEyOCozLCA2NCozKTsK KyAgICBzLT5kcyA9IGdyYXBoaWNfY29uc29sZV9pbml0KGxjZF9yZWZyZXNoLCBsY2RfaW52 YWxpZGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEws IHMpOworICAgIHFlbXVfY29uc29sZV9yZXNpemUocy0+ZHMsIDEyOCozLCA2NCozKTsKIH0K IAogLyogUElDIHJlZ2lzdGVyIG9mZnNldHMgKi8KZGlmZiAtLWdpdCBhL2h3L29tYXAuaCBi L2h3L29tYXAuaAppbmRleCA2MzZjM2MzLi43OTY1ZWIyIDEwMDY0NAotLS0gYS9ody9vbWFw LmgKKysrIGIvaHcvb21hcC5oCkBAIC03NDYsNyArNzQ2LDcgQEAgc3RydWN0IG9tYXBfZWFj X3MgKm9tYXBfZWFjX2luaXQoc3RydWN0IG9tYXBfdGFyZ2V0X2FnZW50X3MgKnRhLAogc3Ry dWN0IG9tYXBfbGNkX3BhbmVsX3M7CiB2b2lkIG9tYXBfbGNkY19yZXNldChzdHJ1Y3Qgb21h cF9sY2RfcGFuZWxfcyAqcyk7CiBzdHJ1Y3Qgb21hcF9sY2RfcGFuZWxfcyAqb21hcF9sY2Rj X2luaXQodGFyZ2V0X3BoeXNfYWRkcl90IGJhc2UsIHFlbXVfaXJxIGlycSwKLSAgICAgICAg ICAgICAgICBzdHJ1Y3Qgb21hcF9kbWFfbGNkX2NoYW5uZWxfcyAqZG1hLCBEaXNwbGF5U3Rh dGUgKmRzLAorICAgICAgICAgICAgICAgIHN0cnVjdCBvbWFwX2RtYV9sY2RfY2hhbm5lbF9z ICpkbWEsCiAgICAgICAgICAgICAgICAgcmFtX2FkZHJfdCBpbWlmX2Jhc2UsIHJhbV9hZGRy X3QgZW1pZmZfYmFzZSwgb21hcF9jbGsgY2xrKTsKIAogLyogb21hcF9kc3MuYyAqLwpAQCAt NzU5LDcgKzc1OSw3IEBAIHN0cnVjdCByZmJpX2NoaXBfcyB7CiBzdHJ1Y3Qgb21hcF9kc3Nf czsKIHZvaWQgb21hcF9kc3NfcmVzZXQoc3RydWN0IG9tYXBfZHNzX3MgKnMpOwogc3RydWN0 IG9tYXBfZHNzX3MgKm9tYXBfZHNzX2luaXQoc3RydWN0IG9tYXBfdGFyZ2V0X2FnZW50X3Mg KnRhLAotICAgICAgICAgICAgICAgIHRhcmdldF9waHlzX2FkZHJfdCBsM19iYXNlLCBEaXNw bGF5U3RhdGUgKmRzLAorICAgICAgICAgICAgICAgIHRhcmdldF9waHlzX2FkZHJfdCBsM19i YXNlLAogICAgICAgICAgICAgICAgIHFlbXVfaXJxIGlycSwgcWVtdV9pcnEgZHJxLAogICAg ICAgICAgICAgICAgIG9tYXBfY2xrIGZjazEsIG9tYXBfY2xrIGZjazIsIG9tYXBfY2xrIGNr NTRtLAogICAgICAgICAgICAgICAgIG9tYXBfY2xrIGljazEsIG9tYXBfY2xrIGljazIpOwpA QCAtOTU2LDExICs5NTYsMTEgQEAgc3RydWN0IG9tYXBfbXB1X3N0YXRlX3MgewogCiAvKiBv bWFwMS5jICovCiBzdHJ1Y3Qgb21hcF9tcHVfc3RhdGVfcyAqb21hcDMxMF9tcHVfaW5pdCh1 bnNpZ25lZCBsb25nIHNkcmFtX3NpemUsCi0gICAgICAgICAgICAgICAgRGlzcGxheVN0YXRl ICpkcywgY29uc3QgY2hhciAqY29yZSk7CisgICAgICAgICAgICAgICAgY29uc3QgY2hhciAq Y29yZSk7CiAKIC8qIG9tYXAyLmMgKi8KIHN0cnVjdCBvbWFwX21wdV9zdGF0ZV9zICpvbWFw MjQyMF9tcHVfaW5pdCh1bnNpZ25lZCBsb25nIHNkcmFtX3NpemUsCi0gICAgICAgICAgICAg ICAgRGlzcGxheVN0YXRlICpkcywgY29uc3QgY2hhciAqY29yZSk7CisgICAgICAgICAgICAg ICAgY29uc3QgY2hhciAqY29yZSk7CiAKICMgaWYgVEFSR0VUX1BIWVNfQUREUl9CSVRTID09 IDMyCiAjICBkZWZpbmUgT01BUF9GTVRfcGx4ICIlIzA4eCIKZGlmZiAtLWdpdCBhL2h3L29t YXBfZHNzLmMgYi9ody9vbWFwX2Rzcy5jCmluZGV4IDhiMTM5ZDcuLjY3YjJiMDIgMTAwNjQ0 Ci0tLSBhL2h3L29tYXBfZHNzLmMKKysrIGIvaHcvb21hcF9kc3MuYwpAQCAtMTAyMiw3ICsx MDIyLDcgQEAgc3RhdGljIENQVVdyaXRlTWVtb3J5RnVuYyAqb21hcF9pbTNfd3JpdGVmbltd ID0gewogfTsKIAogc3RydWN0IG9tYXBfZHNzX3MgKm9tYXBfZHNzX2luaXQoc3RydWN0IG9t YXBfdGFyZ2V0X2FnZW50X3MgKnRhLAotICAgICAgICAgICAgICAgIHRhcmdldF9waHlzX2Fk ZHJfdCBsM19iYXNlLCBEaXNwbGF5U3RhdGUgKmRzLAorICAgICAgICAgICAgICAgIHRhcmdl dF9waHlzX2FkZHJfdCBsM19iYXNlLAogICAgICAgICAgICAgICAgIHFlbXVfaXJxIGlycSwg cWVtdV9pcnEgZHJxLAogICAgICAgICAgICAgICAgIG9tYXBfY2xrIGZjazEsIG9tYXBfY2xr IGZjazIsIG9tYXBfY2xrIGNrNTRtLAogICAgICAgICAgICAgICAgIG9tYXBfY2xrIGljazEs IG9tYXBfY2xrIGljazIpCkBAIC0xMDMzLDcgKzEwMzMsNiBAQCBzdHJ1Y3Qgb21hcF9kc3Nf cyAqb21hcF9kc3NfaW5pdChzdHJ1Y3Qgb21hcF90YXJnZXRfYWdlbnRfcyAqdGEsCiAKICAg ICBzLT5pcnEgPSBpcnE7CiAgICAgcy0+ZHJxID0gZHJxOwotICAgIHMtPnN0YXRlID0gZHM7 CiAgICAgb21hcF9kc3NfcmVzZXQocyk7CiAKICAgICBpb21lbXR5cGVbMF0gPSBsNF9yZWdp c3Rlcl9pb19tZW1vcnkoMCwgb21hcF9kaXNzMV9yZWFkZm4sCkBAIC0xMDUzLDkgKzEwNTIs OCBAQCBzdHJ1Y3Qgb21hcF9kc3NfcyAqb21hcF9kc3NfaW5pdChzdHJ1Y3Qgb21hcF90YXJn ZXRfYWdlbnRfcyAqdGEsCiAgICAgY3B1X3JlZ2lzdGVyX3BoeXNpY2FsX21lbW9yeShsM19i YXNlLCAweDEwMDAsIGlvbWVtdHlwZVs0XSk7CiAKICNpZiAwCi0gICAgaWYgKGRzKQotICAg ICAgICBncmFwaGljX2NvbnNvbGVfaW5pdChkcywgb21hcF91cGRhdGVfZGlzcGxheSwKLSAg ICAgICAgICAgICAgICAgICAgICAgIG9tYXBfaW52YWxpZGF0ZV9kaXNwbGF5LCBvbWFwX3Nj cmVlbl9kdW1wLCBzKTsKKyAgICBzLT5zdGF0ZSA9IGdyYXBoaWNfY29uc29sZV9pbml0KG9t YXBfdXBkYXRlX2Rpc3BsYXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBvbWFwX2ludmFsaWRhdGVfZGlzcGxheSwgb21hcF9zY3JlZW5fZHVtcCwgcyk7CiAjZW5k aWYKIAogICAgIHJldHVybiBzOwpkaWZmIC0tZ2l0IGEvaHcvb21hcF9sY2RjLmMgYi9ody9v bWFwX2xjZGMuYwppbmRleCBkY2E2NDdjLi5hMDJkOTlkIDEwMDY0NAotLS0gYS9ody9vbWFw X2xjZGMuYworKysgYi9ody9vbWFwX2xjZGMuYwpAQCAtMjQsNyArMjQsNiBAQAogc3RydWN0 IG9tYXBfbGNkX3BhbmVsX3MgewogICAgIHFlbXVfaXJxIGlycTsKICAgICBEaXNwbGF5U3Rh dGUgKnN0YXRlOwotICAgIFFFTVVDb25zb2xlICpjb25zb2xlOwogICAgIHJhbV9hZGRyX3Qg aW1pZl9iYXNlOwogICAgIHJhbV9hZGRyX3QgZW1pZmZfYmFzZTsKIApAQCAtMTc0LDcgKzE3 Myw3IEBAIHN0YXRpYyB2b2lkIG9tYXBfdXBkYXRlX2Rpc3BsYXkodm9pZCAqb3BhcXVlKQog ICAgIHdpZHRoID0gb21hcF9sY2QtPndpZHRoOwogICAgIGlmICh3aWR0aCAhPSBkc19nZXRf d2lkdGgob21hcF9sY2QtPnN0YXRlKSB8fAogICAgICAgICAgICAgb21hcF9sY2QtPmhlaWdo dCAhPSBkc19nZXRfaGVpZ2h0KG9tYXBfbGNkLT5zdGF0ZSkpIHsKLSAgICAgICAgcWVtdV9j b25zb2xlX3Jlc2l6ZShvbWFwX2xjZC0+Y29uc29sZSwKKyAgICAgICAgcWVtdV9jb25zb2xl X3Jlc2l6ZShvbWFwX2xjZC0+c3RhdGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg b21hcF9sY2QtPndpZHRoLCBvbWFwX2xjZC0+aGVpZ2h0KTsKICAgICAgICAgb21hcF9sY2Qt PmludmFsaWRhdGUgPSAxOwogICAgIH0KQEAgLTQ3Miw3ICs0NzEsNyBAQCB2b2lkIG9tYXBf bGNkY19yZXNldChzdHJ1Y3Qgb21hcF9sY2RfcGFuZWxfcyAqcykKIH0KIAogc3RydWN0IG9t YXBfbGNkX3BhbmVsX3MgKm9tYXBfbGNkY19pbml0KHRhcmdldF9waHlzX2FkZHJfdCBiYXNl LCBxZW11X2lycSBpcnEsCi0gICAgICAgICAgICAgICAgc3RydWN0IG9tYXBfZG1hX2xjZF9j aGFubmVsX3MgKmRtYSwgRGlzcGxheVN0YXRlICpkcywKKyAgICAgICAgICAgICAgICBzdHJ1 Y3Qgb21hcF9kbWFfbGNkX2NoYW5uZWxfcyAqZG1hLAogICAgICAgICAgICAgICAgIHJhbV9h ZGRyX3QgaW1pZl9iYXNlLCByYW1fYWRkcl90IGVtaWZmX2Jhc2UsIG9tYXBfY2xrIGNsaykK IHsKICAgICBpbnQgaW9tZW10eXBlOwpAQCAtNDgxLDcgKzQ4MCw2IEBAIHN0cnVjdCBvbWFw X2xjZF9wYW5lbF9zICpvbWFwX2xjZGNfaW5pdCh0YXJnZXRfcGh5c19hZGRyX3QgYmFzZSwg cWVtdV9pcnEgaXJxLAogCiAgICAgcy0+aXJxID0gaXJxOwogICAgIHMtPmRtYSA9IGRtYTsK LSAgICBzLT5zdGF0ZSA9IGRzOwogICAgIHMtPmltaWZfYmFzZSA9IGltaWZfYmFzZTsKICAg ICBzLT5lbWlmZl9iYXNlID0gZW1pZmZfYmFzZTsKICAgICBvbWFwX2xjZGNfcmVzZXQocyk7 CkBAIC00OTAsOSArNDg4LDkgQEAgc3RydWN0IG9tYXBfbGNkX3BhbmVsX3MgKm9tYXBfbGNk Y19pbml0KHRhcmdldF9waHlzX2FkZHJfdCBiYXNlLCBxZW11X2lycSBpcnEsCiAgICAgICAg ICAgICAgICAgICAgIG9tYXBfbGNkY193cml0ZWZuLCBzKTsKICAgICBjcHVfcmVnaXN0ZXJf cGh5c2ljYWxfbWVtb3J5KGJhc2UsIDB4MTAwLCBpb21lbXR5cGUpOwogCi0gICAgcy0+Y29u c29sZSA9IGdyYXBoaWNfY29uc29sZV9pbml0KGRzLCBvbWFwX3VwZGF0ZV9kaXNwbGF5LAot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbWFwX2ludmFsaWRhdGVf ZGlzcGxheSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb21hcF9z Y3JlZW5fZHVtcCwgTlVMTCwgcyk7CisgICAgcy0+c3RhdGUgPSBncmFwaGljX2NvbnNvbGVf aW5pdChvbWFwX3VwZGF0ZV9kaXNwbGF5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgb21hcF9pbnZhbGlkYXRlX2Rpc3BsYXksCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBvbWFwX3NjcmVlbl9kdW1wLCBOVUxMLCBzKTsKIAogICAgIHJl dHVybiBzOwogfQpkaWZmIC0tZ2l0IGEvaHcvb21hcF9zeDEuYyBiL2h3L29tYXBfc3gxLmMK aW5kZXggYTE0MDgwNS4uOTgyMTFlZiAxMDA2NDQKLS0tIGEvaHcvb21hcF9zeDEuYworKysg Yi9ody9vbWFwX3N4MS5jCkBAIC0yMDEsOCArMjAxLDcgQEAgc3RhdGljIHZvaWQgc3gxX2lu aXQocmFtX2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKICAgICAgICAgY3B1 LT5lbnYtPnJlZ3NbMTVdID0gMHgwMDAwMDAwMDsKICAgICB9CiAKLSAgICBkcy0+c3VyZmFj ZSA9IHFlbXVfcmVzaXplX2Rpc3BsYXlzdXJmYWNlKGRzLT5zdXJmYWNlLCA2NDAsIDQ4MCwg MzIsIDQgKiA2NDApOwotICAgIGRweV9yZXNpemUoZHMpOworICAgIHFlbXVfY29uc29sZV9y ZXNpemUoZHMsIDY0MCwgNDgwKTsKIH0KIAogc3RhdGljIHZvaWQgc3gxX2luaXRfdjEocmFt X2FkZHJfdCByYW1fc2l6ZSwgaW50IHZnYV9yYW1fc2l6ZSwKZGlmZiAtLWdpdCBhL2h3L3Bj LmggYi9ody9wYy5oCmluZGV4IDVkYzc3MDkuLjFiYTNkOWUgMTAwNjQ0Ci0tLSBhL2h3L3Bj LmgKKysrIGIvaHcvcGMuaApAQCAtMTMyLDIwICsxMzIsMjAgQEAgZXh0ZXJuIGVudW0gdmdh X3JldHJhY2VfbWV0aG9kIHZnYV9yZXRyYWNlX21ldGhvZDsKICNkZWZpbmUgVkdBX1JBTV9T SVpFICg5ICogMTAyNCAqIDEwMjQpCiAjZW5kaWYKIAotaW50IGlzYV92Z2FfaW5pdChEaXNw bGF5U3RhdGUgKmRzLCB1aW50OF90ICp2Z2FfcmFtX2Jhc2UsCitpbnQgaXNhX3ZnYV9pbml0 KHVpbnQ4X3QgKnZnYV9yYW1fYmFzZSwKICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9u ZyB2Z2FfcmFtX29mZnNldCwgaW50IHZnYV9yYW1fc2l6ZSk7Ci1pbnQgcGNpX3ZnYV9pbml0 KFBDSUJ1cyAqYnVzLCBEaXNwbGF5U3RhdGUgKmRzLCB1aW50OF90ICp2Z2FfcmFtX2Jhc2Us CitpbnQgcGNpX3ZnYV9pbml0KFBDSUJ1cyAqYnVzLCB1aW50OF90ICp2Z2FfcmFtX2Jhc2Us CiAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgdmdhX3JhbV9vZmZzZXQsIGludCB2 Z2FfcmFtX3NpemUsCiAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgdmdhX2Jpb3Nf b2Zmc2V0LCBpbnQgdmdhX2Jpb3Nfc2l6ZSk7Ci1pbnQgaXNhX3ZnYV9tbV9pbml0KERpc3Bs YXlTdGF0ZSAqZHMsIHVpbnQ4X3QgKnZnYV9yYW1fYmFzZSwKK2ludCBpc2FfdmdhX21tX2lu aXQodWludDhfdCAqdmdhX3JhbV9iYXNlLAogICAgICAgICAgICAgICAgICAgICB1bnNpZ25l ZCBsb25nIHZnYV9yYW1fb2Zmc2V0LCBpbnQgdmdhX3JhbV9zaXplLAogICAgICAgICAgICAg ICAgICAgICB0YXJnZXRfcGh5c19hZGRyX3QgdnJhbV9iYXNlLCB0YXJnZXRfcGh5c19hZGRy X3QgY3RybF9iYXNlLAogICAgICAgICAgICAgICAgICAgICBpbnQgaXRfc2hpZnQpOwogCiAv KiBjaXJydXNfdmdhLmMgKi8KLXZvaWQgcGNpX2NpcnJ1c192Z2FfaW5pdChQQ0lCdXMgKmJ1 cywgRGlzcGxheVN0YXRlICpkcywgdWludDhfdCAqdmdhX3JhbV9iYXNlLAordm9pZCBwY2lf Y2lycnVzX3ZnYV9pbml0KFBDSUJ1cyAqYnVzLCB1aW50OF90ICp2Z2FfcmFtX2Jhc2UsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgcmFtX2FkZHJfdCB2Z2FfcmFtX29mZnNldCwgaW50 IHZnYV9yYW1fc2l6ZSk7Ci12b2lkIGlzYV9jaXJydXNfdmdhX2luaXQoRGlzcGxheVN0YXRl ICpkcywgdWludDhfdCAqdmdhX3JhbV9iYXNlLAordm9pZCBpc2FfY2lycnVzX3ZnYV9pbml0 KHVpbnQ4X3QgKnZnYV9yYW1fYmFzZSwKICAgICAgICAgICAgICAgICAgICAgICAgICByYW1f YWRkcl90IHZnYV9yYW1fb2Zmc2V0LCBpbnQgdmdhX3JhbV9zaXplKTsKIAogLyogaWRlLmMg Ki8KZGlmZiAtLWdpdCBhL2h3L3BjaS5oIGIvaHcvcGNpLmgKaW5kZXggNzZmNDQ3NC4uODY3 ZTZmZSAxMDA2NDQKLS0tIGEvaHcvcGNpLmgKKysrIGIvaHcvcGNpLmgKQEAgLTEzNSw3ICsx MzUsNyBAQCB2b2lkIGxzaV9zY3NpX2F0dGFjaCh2b2lkICpvcGFxdWUsIEJsb2NrRHJpdmVy U3RhdGUgKmJkLCBpbnQgaWQpOwogdm9pZCAqbHNpX3Njc2lfaW5pdChQQ0lCdXMgKmJ1cywg aW50IGRldmZuKTsKIAogLyogdm13YXJlX3ZnYS5jICovCi12b2lkIHBjaV92bXN2Z2FfaW5p dChQQ0lCdXMgKmJ1cywgRGlzcGxheVN0YXRlICpkcywgdWludDhfdCAqdmdhX3JhbV9iYXNl LAordm9pZCBwY2lfdm1zdmdhX2luaXQoUENJQnVzICpidXMsIHVpbnQ4X3QgKnZnYV9yYW1f YmFzZSwKICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgdmdhX3JhbV9vZmZz ZXQsIGludCB2Z2FfcmFtX3NpemUpOwogCiAvKiB1c2ItdWhjaS5jICovCmRpZmYgLS1naXQg YS9ody9wbDExMC5jIGIvaHcvcGwxMTAuYwppbmRleCBkMGMwMGE5Li5iYzMzZGE3IDEwMDY0 NAotLS0gYS9ody9wbDExMC5jCisrKyBiL2h3L3BsMTEwLmMKQEAgLTI5LDcgKzI5LDYgQEAg ZW51bSBwbDExMF9icHBtb2RlCiAKIHR5cGVkZWYgc3RydWN0IHsKICAgICBEaXNwbGF5U3Rh dGUgKmRzOwotICAgIFFFTVVDb25zb2xlICpjb25zb2xlOwogCiAgICAgLyogVGhlIFZlcnNh dGlsZS9QQiB1c2VzIGEgc2xpZ2h0bHkgbW9kaWZpZWQgUEwxMTAgY29udHJvbGxlci4gICov CiAgICAgaW50IHZlcnNhdGlsZTsKQEAgLTI3MSw3ICsyNzAsNyBAQCBzdGF0aWMgdm9pZCBw bDExMF9yZXNpemUocGwxMTBfc3RhdGUgKnMsIGludCB3aWR0aCwgaW50IGhlaWdodCkKIHsK ICAgICBpZiAod2lkdGggIT0gcy0+Y29scyB8fCBoZWlnaHQgIT0gcy0+cm93cykgewogICAg ICAgICBpZiAocGwxMTBfZW5hYmxlZChzKSkgewotICAgICAgICAgICAgcWVtdV9jb25zb2xl X3Jlc2l6ZShzLT5jb25zb2xlLCB3aWR0aCwgaGVpZ2h0KTsKKyAgICAgICAgICAgIHFlbXVf Y29uc29sZV9yZXNpemUocy0+ZHMsIHdpZHRoLCBoZWlnaHQpOwogICAgICAgICB9CiAgICAg fQogICAgIHMtPmNvbHMgPSB3aWR0aDsKQEAgLTM4Niw3ICszODUsNyBAQCBzdGF0aWMgdm9p ZCBwbDExMF93cml0ZSh2b2lkICpvcGFxdWUsIHRhcmdldF9waHlzX2FkZHJfdCBvZmZzZXQs CiAgICAgICAgIHMtPmNyID0gdmFsOwogICAgICAgICBzLT5icHAgPSAodmFsID4+IDEpICYg NzsKICAgICAgICAgaWYgKHBsMTEwX2VuYWJsZWQocykpIHsKLSAgICAgICAgICAgIHFlbXVf Y29uc29sZV9yZXNpemUocy0+Y29uc29sZSwgcy0+Y29scywgcy0+cm93cyk7CisgICAgICAg ICAgICBxZW11X2NvbnNvbGVfcmVzaXplKHMtPmRzLCBzLT5jb2xzLCBzLT5yb3dzKTsKICAg ICAgICAgfQogICAgICAgICBicmVhazsKICAgICBjYXNlIDEwOiAvKiBMQ0RJQ1IgKi8KQEAg LTQxMCw4ICs0MDksNyBAQCBzdGF0aWMgQ1BVV3JpdGVNZW1vcnlGdW5jICpwbDExMF93cml0 ZWZuW10gPSB7CiAgICBwbDExMF93cml0ZQogfTsKIAotdm9pZCAqcGwxMTBfaW5pdChEaXNw bGF5U3RhdGUgKmRzLCB1aW50MzJfdCBiYXNlLCBxZW11X2lycSBpcnEsCi0gICAgICAgICAg ICAgICAgIGludCB2ZXJzYXRpbGUpCit2b2lkICpwbDExMF9pbml0KHVpbnQzMl90IGJhc2Us IHFlbXVfaXJxIGlycSwgaW50IHZlcnNhdGlsZSkKIHsKICAgICBwbDExMF9zdGF0ZSAqczsK ICAgICBpbnQgaW9tZW10eXBlOwpAQCAtNDIwLDEyICs0MTgsMTEgQEAgdm9pZCAqcGwxMTBf aW5pdChEaXNwbGF5U3RhdGUgKmRzLCB1aW50MzJfdCBiYXNlLCBxZW11X2lycSBpcnEsCiAg ICAgaW9tZW10eXBlID0gY3B1X3JlZ2lzdGVyX2lvX21lbW9yeSgwLCBwbDExMF9yZWFkZm4s CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbDExMF93cml0ZWZu LCBzKTsKICAgICBjcHVfcmVnaXN0ZXJfcGh5c2ljYWxfbWVtb3J5KGJhc2UsIDB4MDAwMDEw MDAsIGlvbWVtdHlwZSk7Ci0gICAgcy0+ZHMgPSBkczsKICAgICBzLT52ZXJzYXRpbGUgPSB2 ZXJzYXRpbGU7CiAgICAgcy0+aXJxID0gaXJxOwotICAgIHMtPmNvbnNvbGUgPSBncmFwaGlj X2NvbnNvbGVfaW5pdChkcywgcGwxMTBfdXBkYXRlX2Rpc3BsYXksCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHBsMTEwX2ludmFsaWRhdGVfZGlzcGxheSwKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgcyk7Cisg ICAgcy0+ZHMgPSBncmFwaGljX2NvbnNvbGVfaW5pdChwbDExMF91cGRhdGVfZGlzcGxheSwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsMTEwX2ludmFsaWRhdGVfZGlz cGxheSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsIHMp OwogICAgIC8qID8/PyBTYXZlL3Jlc3RvcmUuICAqLwogICAgIHJldHVybiBzOwogfQpkaWZm IC0tZ2l0IGEvaHcvcHJpbWVjZWxsLmggYi9ody9wcmltZWNlbGwuaAppbmRleCBhYTM1YWRj Li4wOWU3M2VkIDEwMDY0NAotLS0gYS9ody9wcmltZWNlbGwuaAorKysgYi9ody9wcmltZWNl bGwuaApAQCAtOSw3ICs5LDcgQEAKIHZvaWQgcGwwMzFfaW5pdCh1aW50MzJfdCBiYXNlLCBx ZW11X2lycSBpcnEpOwogCiAvKiBwbDExMC5jICovCi12b2lkICpwbDExMF9pbml0KERpc3Bs YXlTdGF0ZSAqZHMsIHVpbnQzMl90IGJhc2UsIHFlbXVfaXJxIGlycSwgaW50KTsKK3ZvaWQg KnBsMTEwX2luaXQodWludDMyX3QgYmFzZSwgcWVtdV9pcnEgaXJxLCBpbnQpOwogCiAvKiBw bDAxMS5jICovCiBlbnVtIHBsMDExX3R5cGUgewpkaWZmIC0tZ2l0IGEvaHcvcHhhLmggYi9o dy9weGEuaAppbmRleCA2M2U1MzM1Li44MjUxNjQ0IDEwMDY0NAotLS0gYS9ody9weGEuaAor KysgYi9ody9weGEuaApAQCAtODksNyArODksNyBAQCB2b2lkIHB4YTJ4eF9kbWFfcmVxdWVz dChzdHJ1Y3QgcHhhMnh4X2RtYV9zdGF0ZV9zICpzLCBpbnQgcmVxX251bSwgaW50IG9uKTsK IC8qIHB4YTJ4eF9sY2QuYyAqLwogc3RydWN0IHB4YTJ4eF9sY2RjX3M7CiBzdHJ1Y3QgcHhh Mnh4X2xjZGNfcyAqcHhhMnh4X2xjZGNfaW5pdCh0YXJnZXRfcGh5c19hZGRyX3QgYmFzZSwK LSAgICAgICAgICAgICAgICBxZW11X2lycSBpcnEsIERpc3BsYXlTdGF0ZSAqZHMpOworICAg ICAgICAgICAgICAgIHFlbXVfaXJxIGlycSk7CiB2b2lkIHB4YTJ4eF9sY2RfdnN5bmNfbm90 aWZpZXIoc3RydWN0IHB4YTJ4eF9sY2RjX3MgKnMsIHFlbXVfaXJxIGhhbmRsZXIpOwogdm9p ZCBweGEyeHhfbGNkY19vcml0ZW50YXRpb24odm9pZCAqb3BhcXVlLCBpbnQgYW5nbGUpOwog CkBAIC0yMTUsOSArMjE1LDggQEAgc3RydWN0IHB4YTJ4eF9pMnNfcyB7CiAjIGRlZmluZSBQ QV9GTVQJCQkiMHglMDhseCIKICMgZGVmaW5lIFJFR19GTVQJCSIweCIgVEFSR0VUX0ZNVF9w bHgKIAotc3RydWN0IHB4YTJ4eF9zdGF0ZV9zICpweGEyNzBfaW5pdCh1bnNpZ25lZCBpbnQg c2RyYW1fc2l6ZSwgRGlzcGxheVN0YXRlICpkcywKLSAgICAgICAgICAgICAgICBjb25zdCBj aGFyICpyZXZpc2lvbik7Ci1zdHJ1Y3QgcHhhMnh4X3N0YXRlX3MgKnB4YTI1NV9pbml0KHVu c2lnbmVkIGludCBzZHJhbV9zaXplLCBEaXNwbGF5U3RhdGUgKmRzKTsKK3N0cnVjdCBweGEy eHhfc3RhdGVfcyAqcHhhMjcwX2luaXQodW5zaWduZWQgaW50IHNkcmFtX3NpemUsIGNvbnN0 IGNoYXIgKnJldmlzaW9uKTsKK3N0cnVjdCBweGEyeHhfc3RhdGVfcyAqcHhhMjU1X2luaXQo dW5zaWduZWQgaW50IHNkcmFtX3NpemUpOwogCiAvKiB1c2Itb2hjaS5jICovCiB2b2lkIHVz Yl9vaGNpX2luaXRfcHhhKHRhcmdldF9waHlzX2FkZHJfdCBiYXNlLCBpbnQgbnVtX3BvcnRz LCBpbnQgZGV2Zm4sCmRpZmYgLS1naXQgYS9ody9weGEyeHhfbGNkLmMgYi9ody9weGEyeHhf bGNkLmMKaW5kZXggZmZlN2E1Ni4uNWMyZWZmMSAxMDA2NDQKLS0tIGEvaHcvcHhhMnh4X2xj ZC5jCisrKyBiL2h3L3B4YTJ4eF9sY2QuYwpAQCAtMjIsNyArMjIsNiBAQCBzdHJ1Y3QgcHhh Mnh4X2xjZGNfcyB7CiAKICAgICBpbnQgaW52YWxpZGF0ZWQ7CiAgICAgRGlzcGxheVN0YXRl ICpkczsKLSAgICBRRU1VQ29uc29sZSAqY29uc29sZTsKICAgICBkcmF3Zm4gKmxpbmVfZm5b Ml07CiAgICAgaW50IGRlc3Rfd2lkdGg7CiAgICAgaW50IHhyZXMsIHlyZXM7CkBAIC03OTIs OSArNzkxLDkgQEAgc3RhdGljIHZvaWQgcHhhMnh4X2xjZGNfcmVzaXplKHN0cnVjdCBweGEy eHhfbGNkY19zICpzKQogCiAgICAgaWYgKHdpZHRoICE9IHMtPnhyZXMgfHwgaGVpZ2h0ICE9 IHMtPnlyZXMpIHsKICAgICAgICAgaWYgKHMtPm9yaWVudGF0aW9uKQotICAgICAgICAgICAg cWVtdV9jb25zb2xlX3Jlc2l6ZShzLT5jb25zb2xlLCBoZWlnaHQsIHdpZHRoKTsKKyAgICAg ICAgICAgIHFlbXVfY29uc29sZV9yZXNpemUocy0+ZHMsIGhlaWdodCwgd2lkdGgpOwogICAg ICAgICBlbHNlCi0gICAgICAgICAgICBxZW11X2NvbnNvbGVfcmVzaXplKHMtPmNvbnNvbGUs IHdpZHRoLCBoZWlnaHQpOworICAgICAgICAgICAgcWVtdV9jb25zb2xlX3Jlc2l6ZShzLT5k cywgd2lkdGgsIGhlaWdodCk7CiAgICAgICAgIHMtPmludmFsaWRhdGVkID0gMTsKICAgICAg ICAgcy0+eHJlcyA9IHdpZHRoOwogICAgICAgICBzLT55cmVzID0gaGVpZ2h0OwpAQCAtOTgx LDggKzk4MCw3IEBAIHN0YXRpYyBpbnQgcHhhMnh4X2xjZGNfbG9hZChRRU1VRmlsZSAqZiwg dm9pZCAqb3BhcXVlLCBpbnQgdmVyc2lvbl9pZCkKICNkZWZpbmUgQklUUyAzMgogI2luY2x1 ZGUgInB4YTJ4eF90ZW1wbGF0ZS5oIgogCi1zdHJ1Y3QgcHhhMnh4X2xjZGNfcyAqcHhhMnh4 X2xjZGNfaW5pdCh0YXJnZXRfcGh5c19hZGRyX3QgYmFzZSwgcWVtdV9pcnEgaXJxLAotICAg ICAgICAgICAgICAgIERpc3BsYXlTdGF0ZSAqZHMpCitzdHJ1Y3QgcHhhMnh4X2xjZGNfcyAq cHhhMnh4X2xjZGNfaW5pdCh0YXJnZXRfcGh5c19hZGRyX3QgYmFzZSwgcWVtdV9pcnEgaXJx KQogewogICAgIGludCBpb21lbXR5cGU7CiAgICAgc3RydWN0IHB4YTJ4eF9sY2RjX3MgKnM7 CkBAIC05OTAsNyArOTg4LDYgQEAgc3RydWN0IHB4YTJ4eF9sY2RjX3MgKnB4YTJ4eF9sY2Rj X2luaXQodGFyZ2V0X3BoeXNfYWRkcl90IGJhc2UsIHFlbXVfaXJxIGlycSwKICAgICBzID0g KHN0cnVjdCBweGEyeHhfbGNkY19zICopIHFlbXVfbWFsbG9jeihzaXplb2Yoc3RydWN0IHB4 YTJ4eF9sY2RjX3MpKTsKICAgICBzLT5pbnZhbGlkYXRlZCA9IDE7CiAgICAgcy0+aXJxID0g aXJxOwotICAgIHMtPmRzID0gZHM7CiAKICAgICBweGEyeHhfbGNkY19vcmllbnRhdGlvbihz LCBncmFwaGljX3JvdGF0ZSk7CiAKQEAgLTk5OCw5ICs5OTUsOSBAQCBzdHJ1Y3QgcHhhMnh4 X2xjZGNfcyAqcHhhMnh4X2xjZGNfaW5pdCh0YXJnZXRfcGh5c19hZGRyX3QgYmFzZSwgcWVt dV9pcnEgaXJxLAogICAgICAgICAgICAgICAgICAgICBweGEyeHhfbGNkY193cml0ZWZuLCBz KTsKICAgICBjcHVfcmVnaXN0ZXJfcGh5c2ljYWxfbWVtb3J5KGJhc2UsIDB4MDAxMDAwMDAs IGlvbWVtdHlwZSk7CiAKLSAgICBzLT5jb25zb2xlID0gZ3JhcGhpY19jb25zb2xlX2luaXQo ZHMsIHB4YTJ4eF91cGRhdGVfZGlzcGxheSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgcHhhMnh4X2ludmFsaWRhdGVfZGlzcGxheSwKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgcHhhMnh4X3NjcmVlbl9kdW1wLCBOVUxMLCBzKTsK KyAgICBzLT5kcyA9IGdyYXBoaWNfY29uc29sZV9pbml0KHB4YTJ4eF91cGRhdGVfZGlzcGxh eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB4YTJ4eF9pbnZhbGlkYXRl X2Rpc3BsYXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBweGEyeHhfc2Ny ZWVuX2R1bXAsIE5VTEwsIHMpOwogCiAgICAgc3dpdGNoIChkc19nZXRfYml0c19wZXJfcGl4 ZWwocy0+ZHMpKSB7CiAgICAgY2FzZSAwOgpkaWZmIC0tZ2l0IGEvaHcvc201MDEuYyBiL2h3 L3NtNTAxLmMKaW5kZXggMGRmZDA4YS4uY2E5NTI4YiAxMDA2NDQKLS0tIGEvaHcvc201MDEu YworKysgYi9ody9zbTUwMS5jCkBAIC00NTAsNyArNDUwLDYgQEAgc3RhdGljIGNvbnN0IHVp bnQzMl90IHNtNTAxX21lbV9sb2NhbF9zaXplW10gPSB7CiB0eXBlZGVmIHN0cnVjdCBTTTUw MVN0YXRlIHsKICAgICAvKiBncmFwaGljIGNvbnNvbGUgc3RhdHVzICovCiAgICAgRGlzcGxh eVN0YXRlICpkczsKLSAgICBRRU1VQ29uc29sZSAqY29uc29sZTsKIAogICAgIC8qIHN0YXR1 cyAmIGludGVybmFsIHJlc291cmNlcyAqLwogICAgIHRhcmdldF9waHlzX2FkZHJfdCBiYXNl OwpAQCAtOTk0LDcgKzk5Myw3IEBAIHN0YXRpYyB2b2lkIHNtNTAxX2RyYXdfY3J0KFNNNTAx U3RhdGUgKiBzKQogCiAgICAgLyogYWRqdXN0IGNvbnNvbGUgc2l6ZSAqLwogICAgIGlmIChz LT5sYXN0X3dpZHRoICE9IHdpZHRoIHx8IHMtPmxhc3RfaGVpZ2h0ICE9IGhlaWdodCkgewot CXFlbXVfY29uc29sZV9yZXNpemUocy0+Y29uc29sZSwgd2lkdGgsIGhlaWdodCk7CisJcWVt dV9jb25zb2xlX3Jlc2l6ZShzLT5kcywgd2lkdGgsIGhlaWdodCk7CiAJcy0+bGFzdF93aWR0 aCA9IHdpZHRoOwogCXMtPmxhc3RfaGVpZ2h0ID0gaGVpZ2h0OwogCWZ1bGxfdXBkYXRlID0g MTsKQEAgLTEwNTEsNyArMTA1MCw3IEBAIHN0YXRpYyB2b2lkIHNtNTAxX3VwZGF0ZV9kaXNw bGF5KHZvaWQgKm9wYXF1ZSkKIAlzbTUwMV9kcmF3X2NydChzKTsKIH0KIAotdm9pZCBzbTUw MV9pbml0KERpc3BsYXlTdGF0ZSAqZHMsIHVpbnQzMl90IGJhc2UsIHVuc2lnbmVkIGxvbmcg bG9jYWxfbWVtX2Jhc2UsCit2b2lkIHNtNTAxX2luaXQodWludDMyX3QgYmFzZSwgdW5zaWdu ZWQgbG9uZyBsb2NhbF9tZW1fYmFzZSwKIAkJdWludDMyX3QgbG9jYWxfbWVtX2J5dGVzLCBD aGFyRHJpdmVyU3RhdGUgKmNocikKIHsKICAgICBTTTUwMVN0YXRlICogczsKQEAgLTEwNjks NyArMTA2OCw2IEBAIHZvaWQgc201MDFfaW5pdChEaXNwbGF5U3RhdGUgKmRzLCB1aW50MzJf dCBiYXNlLCB1bnNpZ25lZCBsb25nIGxvY2FsX21lbV9iYXNlLAogICAgIHMtPm1pc2NfY29u dHJvbCA9IDB4MDAwMDEwMDA7IC8qIGFzc3VtZXMgU0gsIGFjdGl2ZT1sb3cgKi8KICAgICBz LT5kY19wYW5lbF9jb250cm9sID0gMHgwMDAxMDAwMDsKICAgICBzLT5kY19jcnRfY29udHJv bCA9IDB4MDAwMTAwMDA7Ci0gICAgcy0+ZHMgPSBkczsKIAogICAgIC8qIGFsbG9jYXRlIGxv Y2FsIG1lbW9yeSAqLwogICAgIHMtPmxvY2FsX21lbSA9ICh1aW50OCAqKXBoeXNfcmFtX2Jh c2UgKyBsb2NhbF9tZW1fYmFzZTsKQEAgLTEwOTMsNiArMTA5MSw2IEBAIHZvaWQgc201MDFf aW5pdChEaXNwbGF5U3RhdGUgKmRzLCB1aW50MzJfdCBiYXNlLCB1bnNpZ25lZCBsb25nIGxv Y2FsX21lbV9iYXNlLAogCQkgICAgICAgMTE1MjAwLCBjaHIsIDEpOwogCiAgICAgLyogY3Jl YXRlIHFlbXUgZ3JhcGhpYyBjb25zb2xlICovCi0gICAgcy0+Y29uc29sZSA9IGdyYXBoaWNf Y29uc29sZV9pbml0KHMtPmRzLCBzbTUwMV91cGRhdGVfZGlzcGxheSwgTlVMTCwKLQkJCQkg ICAgICBOVUxMLCBOVUxMLCBzKTsKKyAgICBzLT5kcyA9IGdyYXBoaWNfY29uc29sZV9pbml0 KHNtNTAxX3VwZGF0ZV9kaXNwbGF5LCBOVUxMLAorCQkJCSBOVUxMLCBOVUxMLCBzKTsKIH0K ZGlmZiAtLWdpdCBhL2h3L3NzZDAzMDMuYyBiL2h3L3NzZDAzMDMuYwppbmRleCBkMTAzNzE5 Li41NmNmNzJkIDEwMDY0NAotLS0gYS9ody9zc2QwMzAzLmMKKysrIGIvaHcvc3NkMDMwMy5j CkBAIC00NSw3ICs0NSw2IEBAIGVudW0gc3NkMDMwM19jbWQgewogdHlwZWRlZiBzdHJ1Y3Qg ewogICAgIGkyY19zbGF2ZSBpMmM7CiAgICAgRGlzcGxheVN0YXRlICpkczsKLSAgICBRRU1V Q29uc29sZSAqY29uc29sZTsKICAgICBpbnQgcm93OwogICAgIGludCBjb2w7CiAgICAgaW50 IHN0YXJ0X2xpbmU7CkBAIC0zMDYsMTggKzMwNSwxNyBAQCBzdGF0aWMgaW50IHNzZDAzMDNf bG9hZChRRU1VRmlsZSAqZiwgdm9pZCAqb3BhcXVlLCBpbnQgdmVyc2lvbl9pZCkKICAgICBy ZXR1cm4gMDsKIH0KIAotdm9pZCBzc2QwMzAzX2luaXQoRGlzcGxheVN0YXRlICpkcywgaTJj X2J1cyAqYnVzLCBpbnQgYWRkcmVzcykKK3ZvaWQgc3NkMDMwM19pbml0KGkyY19idXMgKmJ1 cywgaW50IGFkZHJlc3MpCiB7CiAgICAgc3NkMDMwM19zdGF0ZSAqczsKIAogICAgIHMgPSAo c3NkMDMwM19zdGF0ZSAqKWkyY19zbGF2ZV9pbml0KGJ1cywgYWRkcmVzcywgc2l6ZW9mKHNz ZDAzMDNfc3RhdGUpKTsKLSAgICBzLT5kcyA9IGRzOwogICAgIHMtPmkyYy5ldmVudCA9IHNz ZDAzMDNfZXZlbnQ7CiAgICAgcy0+aTJjLnJlY3YgPSBzc2QwMzAzX3JlY3Y7CiAgICAgcy0+ aTJjLnNlbmQgPSBzc2QwMzAzX3NlbmQ7Ci0gICAgcy0+Y29uc29sZSA9IGdyYXBoaWNfY29u c29sZV9pbml0KGRzLCBzc2QwMzAzX3VwZGF0ZV9kaXNwbGF5LAotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBzc2QwMzAzX2ludmFsaWRhdGVfZGlzcGxheSwKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgcyk7Ci0g ICAgcWVtdV9jb25zb2xlX3Jlc2l6ZShzLT5jb25zb2xlLCA5NiAqIE1BR05JRlksIDE2ICog TUFHTklGWSk7CisgICAgcy0+ZHMgPSBncmFwaGljX2NvbnNvbGVfaW5pdChzc2QwMzAzX3Vw ZGF0ZV9kaXNwbGF5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3NkMDMw M19pbnZhbGlkYXRlX2Rpc3BsYXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCBOVUxMLCBzKTsKKyAgICBxZW11X2NvbnNvbGVfcmVzaXplKHMtPmRzLCA5NiAq IE1BR05JRlksIDE2ICogTUFHTklGWSk7CiAgICAgcmVnaXN0ZXJfc2F2ZXZtKCJzc2QwMzAz X29sZWQiLCAtMSwgMSwgc3NkMDMwM19zYXZlLCBzc2QwMzAzX2xvYWQsIHMpOwogfQpkaWZm IC0tZ2l0IGEvaHcvc3NkMDMyMy5jIGIvaHcvc3NkMDMyMy5jCmluZGV4IDI5Y2Q1MmMuLmI2 NDBkZDAgMTAwNjQ0Ci0tLSBhL2h3L3NzZDAzMjMuYworKysgYi9ody9zc2QwMzIzLmMKQEAg LTQ0LDcgKzQ0LDYgQEAgZW51bSBzc2QwMzIzX21vZGUKIAogdHlwZWRlZiBzdHJ1Y3Qgewog ICAgIERpc3BsYXlTdGF0ZSAqZHM7Ci0gICAgUUVNVUNvbnNvbGUgKmNvbnNvbGU7CiAKICAg ICBpbnQgY21kX2xlbjsKICAgICBpbnQgY21kOwpAQCAtMzIyLDcgKzMyMSw3IEBAIHN0YXRp YyBpbnQgc3NkMDMyM19sb2FkKFFFTVVGaWxlICpmLCB2b2lkICpvcGFxdWUsIGludCB2ZXJz aW9uX2lkKQogICAgIHJldHVybiAwOwogfQogCi12b2lkICpzc2QwMzIzX2luaXQoRGlzcGxh eVN0YXRlICpkcywgcWVtdV9pcnEgKmNtZF9wKQordm9pZCAqc3NkMDMyM19pbml0KHFlbXVf aXJxICpjbWRfcCkKIHsKICAgICBzc2QwMzIzX3N0YXRlICpzOwogICAgIHFlbXVfaXJxICpj bWQ7CkBAIC0zMzAsMTEgKzMyOSwxMCBAQCB2b2lkICpzc2QwMzIzX2luaXQoRGlzcGxheVN0 YXRlICpkcywgcWVtdV9pcnEgKmNtZF9wKQogICAgIHMgPSAoc3NkMDMyM19zdGF0ZSAqKXFl bXVfbWFsbG9jeihzaXplb2Yoc3NkMDMyM19zdGF0ZSkpOwogICAgIHMtPmNvbF9lbmQgPSA2 MzsKICAgICBzLT5yb3dfZW5kID0gNzk7Ci0gICAgcy0+ZHMgPSBkczsKLSAgICBzLT5jb25z b2xlID0gZ3JhcGhpY19jb25zb2xlX2luaXQoZHMsIHNzZDAzMjNfdXBkYXRlX2Rpc3BsYXks Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNzZDAzMjNfaW52YWxp ZGF0ZV9kaXNwbGF5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBO VUxMLCBOVUxMLCBzKTsKLSAgICBxZW11X2NvbnNvbGVfcmVzaXplKHMtPmNvbnNvbGUsIDEy OCAqIE1BR05JRlksIDY0ICogTUFHTklGWSk7CisgICAgcy0+ZHMgPSBncmFwaGljX2NvbnNv bGVfaW5pdChzc2QwMzIzX3VwZGF0ZV9kaXNwbGF5LAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc3NkMDMyM19pbnZhbGlkYXRlX2Rpc3BsYXksCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMLCBzKTsKKyAgICBxZW11X2NvbnNvbGVf cmVzaXplKHMtPmRzLCAxMjggKiBNQUdOSUZZLCA2NCAqIE1BR05JRlkpOwogCiAgICAgY21k ID0gcWVtdV9hbGxvY2F0ZV9pcnFzKHNzZDAzMjNfY2QsIHMsIDEpOwogICAgICpjbWRfcCA9 ICpjbWQ7CmRpZmYgLS1naXQgYS9ody9zdW40bS5oIGIvaHcvc3VuNG0uaAppbmRleCBjOTYw MWVkLi5lMWZhODM3IDEwMDY0NAotLS0gYS9ody9zdW40bS5oCisrKyBiL2h3L3N1bjRtLmgK QEAgLTIyLDcgKzIyLDcgQEAgc3RhdGljIGlubGluZSB2b2lkIHNwYXJjX2lvbW11X21lbW9y eV93cml0ZSh2b2lkICpvcGFxdWUsCiB9CiAKIC8qIHRjeC5jICovCi12b2lkIHRjeF9pbml0 KERpc3BsYXlTdGF0ZSAqZHMsIHRhcmdldF9waHlzX2FkZHJfdCBhZGRyLCB1aW50OF90ICp2 cmFtX2Jhc2UsCit2b2lkIHRjeF9pbml0KHRhcmdldF9waHlzX2FkZHJfdCBhZGRyLCB1aW50 OF90ICp2cmFtX2Jhc2UsCiAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgdnJhbV9vZmZz ZXQsIGludCB2cmFtX3NpemUsIGludCB3aWR0aCwgaW50IGhlaWdodCwKICAgICAgICAgICAg ICAgaW50IGRlcHRoKTsKIApkaWZmIC0tZ2l0IGEvaHcvdGM2MzkzeGIuYyBiL2h3L3RjNjM5 M3hiLmMKaW5kZXggYTVmZWQ1Zi4uN2QyZjFiMiAxMDA2NDQKLS0tIGEvaHcvdGM2MzkzeGIu YworKysgYi9ody90YzYzOTN4Yi5jCkBAIC0xMjIsNyArMTIyLDYgQEAgc3RydWN0IHRjNjM5 M3hiX3MgewogICAgIHN0cnVjdCBlY2Nfc3RhdGVfcyBlY2M7CiAKICAgICBEaXNwbGF5U3Rh dGUgKmRzOwotICAgIFFFTVVDb25zb2xlICpjb25zb2xlOwogICAgIHJhbV9hZGRyX3QgdnJh bV9hZGRyOwogICAgIHVpbnQzMl90IHNjcl93aWR0aCwgc2NyX2hlaWdodDsgLyogaW4gcGl4 ZWxzICovCiAgICAgcWVtdV9pcnEgbDN2OwpAQCAtNDg1LDcgKzQ4NCw3IEBAIHN0YXRpYyB2 b2lkIHRjNjM5M3hiX3VwZGF0ZV9kaXNwbGF5KHZvaWQgKm9wYXF1ZSkKICAgICAgICAgZnVs bF91cGRhdGUgPSAxOwogICAgIH0KICAgICBpZiAocy0+c2NyX3dpZHRoICE9IGRzX2dldF93 aWR0aChzLT5kcykgfHwgcy0+c2NyX2hlaWdodCAhPSBkc19nZXRfaGVpZ2h0KHMtPmRzKSkg ewotICAgICAgICBxZW11X2NvbnNvbGVfcmVzaXplKHMtPmNvbnNvbGUsIHMtPnNjcl93aWR0 aCwgcy0+c2NyX2hlaWdodCk7CisgICAgICAgIHFlbXVfY29uc29sZV9yZXNpemUocy0+ZHMs IHMtPnNjcl93aWR0aCwgcy0+c2NyX2hlaWdodCk7CiAgICAgICAgIGZ1bGxfdXBkYXRlID0g MTsKICAgICB9CiAgICAgaWYgKHMtPmJsYW5rZWQpCkBAIC01NjMsNyArNTYyLDcgQEAgc3Rh dGljIHZvaWQgdGM2MzkzeGJfd3JpdGVsKHZvaWQgKm9wYXF1ZSwgdGFyZ2V0X3BoeXNfYWRk cl90IGFkZHIsIHVpbnQzMl90IHZhbHUKICAgICB0YzYzOTN4Yl93cml0ZWIob3BhcXVlLCBh ZGRyICsgMywgdmFsdWUgPj4gMjQpOwogfQogCi1zdHJ1Y3QgdGM2MzkzeGJfcyAqdGM2Mzkz eGJfaW5pdCh1aW50MzJfdCBiYXNlLCBxZW11X2lycSBpcnEsIERpc3BsYXlTdGF0ZSAqZHMp CitzdHJ1Y3QgdGM2MzkzeGJfcyAqdGM2MzkzeGJfaW5pdCh1aW50MzJfdCBiYXNlLCBxZW11 X2lycSBpcnEpCiB7CiAgICAgaW50IGlvbWVtdHlwZTsKICAgICBzdHJ1Y3QgdGM2MzkzeGJf cyAqczsKQEAgLTU5MywxOSArNTkyLDE1IEBAIHN0cnVjdCB0YzYzOTN4Yl9zICp0YzYzOTN4 Yl9pbml0KHVpbnQzMl90IGJhc2UsIHFlbXVfaXJxIGlycSwgRGlzcGxheVN0YXRlICpkcykK ICAgICAgICAgICAgICAgICAgICAgdGM2MzkzeGJfd3JpdGVmbiwgcyk7CiAgICAgY3B1X3Jl Z2lzdGVyX3BoeXNpY2FsX21lbW9yeShiYXNlLCAweDEwMDAwLCBpb21lbXR5cGUpOwogCi0g ICAgaWYgKGRzKSB7Ci0gICAgICAgIHMtPmRzID0gZHM7Ci0gICAgICAgIHMtPnZyYW1fYWRk ciA9IHFlbXVfcmFtX2FsbG9jKDB4MTAwMDAwKTsKLSAgICAgICAgY3B1X3JlZ2lzdGVyX3Bo eXNpY2FsX21lbW9yeShiYXNlICsgMHgxMDAwMDAsIDB4MTAwMDAwLCBzLT52cmFtX2FkZHIp OwotICAgICAgICBzLT5zY3Jfd2lkdGggPSA0ODA7Ci0gICAgICAgIHMtPnNjcl9oZWlnaHQg PSA2NDA7Ci0gICAgICAgIHMtPmNvbnNvbGUgPSBncmFwaGljX2NvbnNvbGVfaW5pdChkcywK LSAgICAgICAgICAgICAgICB0YzYzOTN4Yl91cGRhdGVfZGlzcGxheSwKLSAgICAgICAgICAg ICAgICBOVUxMLCAvKiBpbnZhbGlkYXRlICovCi0gICAgICAgICAgICAgICAgTlVMTCwgLyog c2NyZWVuX2R1bXAgKi8KLSAgICAgICAgICAgICAgICBOVUxMLCAvKiB0ZXh0X3VwZGF0ZSAq LwotICAgICAgICAgICAgICAgIHMpOwotICAgIH0KKyAgICBzLT52cmFtX2FkZHIgPSBxZW11 X3JhbV9hbGxvYygweDEwMDAwMCk7CisgICAgY3B1X3JlZ2lzdGVyX3BoeXNpY2FsX21lbW9y eShiYXNlICsgMHgxMDAwMDAsIDB4MTAwMDAwLCBzLT52cmFtX2FkZHIpOworICAgIHMtPnNj cl93aWR0aCA9IDQ4MDsKKyAgICBzLT5zY3JfaGVpZ2h0ID0gNjQwOworICAgIHMtPmRzID0g Z3JhcGhpY19jb25zb2xlX2luaXQodGM2MzkzeGJfdXBkYXRlX2Rpc3BsYXksCisgICAgICAg ICAgICBOVUxMLCAvKiBpbnZhbGlkYXRlICovCisgICAgICAgICAgICBOVUxMLCAvKiBzY3Jl ZW5fZHVtcCAqLworICAgICAgICAgICAgTlVMTCwgLyogdGV4dF91cGRhdGUgKi8KKyAgICAg ICAgICAgIHMpOwogCiAgICAgcmV0dXJuIHM7CiB9CmRpZmYgLS1naXQgYS9ody90Y3guYyBi L2h3L3RjeC5jCmluZGV4IDRkOWY1MjcuLjEwMDVlNjMgMTAwNjQ0Ci0tLSBhL2h3L3RjeC5j CisrKyBiL2h3L3RjeC5jCkBAIC0zNiw3ICszNiw2IEBACiB0eXBlZGVmIHN0cnVjdCBUQ1hT dGF0ZSB7CiAgICAgdGFyZ2V0X3BoeXNfYWRkcl90IGFkZHI7CiAgICAgRGlzcGxheVN0YXRl ICpkczsKLSAgICBRRU1VQ29uc29sZSAqY29uc29sZTsKICAgICB1aW50OF90ICp2cmFtOwog ICAgIHVpbnQzMl90ICp2cmFtMjQsICpjcGxhbmU7CiAgICAgcmFtX2FkZHJfdCB2cmFtX29m ZnNldCwgdnJhbTI0X29mZnNldCwgY3BsYW5lX29mZnNldDsKQEAgLTQ5MSw3ICs0OTAsNyBA QCBzdGF0aWMgQ1BVV3JpdGVNZW1vcnlGdW5jICp0Y3hfZHVtbXlfd3JpdGVbM10gPSB7CiAg ICAgdGN4X2R1bW15X3dyaXRlbCwKIH07CiAKLXZvaWQgdGN4X2luaXQoRGlzcGxheVN0YXRl ICpkcywgdGFyZ2V0X3BoeXNfYWRkcl90IGFkZHIsIHVpbnQ4X3QgKnZyYW1fYmFzZSwKK3Zv aWQgdGN4X2luaXQodGFyZ2V0X3BoeXNfYWRkcl90IGFkZHIsIHVpbnQ4X3QgKnZyYW1fYmFz ZSwKICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyB2cmFtX29mZnNldCwgaW50IHZyYW1f c2l6ZSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0LAogICAgICAgICAgICAgICBpbnQgZGVwdGgp CiB7CkBAIC01MDIsNyArNTAxLDYgQEAgdm9pZCB0Y3hfaW5pdChEaXNwbGF5U3RhdGUgKmRz LCB0YXJnZXRfcGh5c19hZGRyX3QgYWRkciwgdWludDhfdCAqdnJhbV9iYXNlLAogICAgIHMg PSBxZW11X21hbGxvY3ooc2l6ZW9mKFRDWFN0YXRlKSk7CiAgICAgaWYgKCFzKQogICAgICAg ICByZXR1cm47Ci0gICAgcy0+ZHMgPSBkczsKICAgICBzLT5hZGRyID0gYWRkcjsKICAgICBz LT52cmFtX29mZnNldCA9IHZyYW1fb2Zmc2V0OwogICAgIHMtPndpZHRoID0gd2lkdGg7CkBA IC01MzgsMTUgKzUzNiwxNSBAQCB2b2lkIHRjeF9pbml0KERpc3BsYXlTdGF0ZSAqZHMsIHRh cmdldF9waHlzX2FkZHJfdCBhZGRyLCB1aW50OF90ICp2cmFtX2Jhc2UsCiAgICAgICAgIHMt PmNwbGFuZSA9ICh1aW50MzJfdCAqKXZyYW1fYmFzZTsKICAgICAgICAgcy0+Y3BsYW5lX29m ZnNldCA9IHZyYW1fb2Zmc2V0OwogICAgICAgICBjcHVfcmVnaXN0ZXJfcGh5c2ljYWxfbWVt b3J5KGFkZHIgKyAweDBhMDAwMDAwVUxMLCBzaXplLCB2cmFtX29mZnNldCk7Ci0gICAgICAg IHMtPmNvbnNvbGUgPSBncmFwaGljX2NvbnNvbGVfaW5pdChzLT5kcywgdGN4MjRfdXBkYXRl X2Rpc3BsYXksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0 Y3gyNF9pbnZhbGlkYXRlX2Rpc3BsYXksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB0Y3gyNF9zY3JlZW5fZHVtcCwgTlVMTCwgcyk7CisgICAgICAgIHMt PmRzID0gZ3JhcGhpY19jb25zb2xlX2luaXQodGN4MjRfdXBkYXRlX2Rpc3BsYXksCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGN4MjRfaW52YWxpZGF0ZV9kaXNw bGF5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRjeDI0X3NjcmVl bl9kdW1wLCBOVUxMLCBzKTsKICAgICB9IGVsc2UgewogICAgICAgICBjcHVfcmVnaXN0ZXJf cGh5c2ljYWxfbWVtb3J5KGFkZHIgKyAweDAwMzAwMDAwVUxMLCBUQ1hfVEhDX05SRUdTXzgs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHVtbXlfbWVtb3J5KTsK LSAgICAgICAgcy0+Y29uc29sZSA9IGdyYXBoaWNfY29uc29sZV9pbml0KHMtPmRzLCB0Y3hf dXBkYXRlX2Rpc3BsYXksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0Y3hfaW52YWxpZGF0ZV9kaXNwbGF5LAotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdGN4X3NjcmVlbl9kdW1wLCBOVUxMLCBzKTsKKyAgICAgICAg cy0+ZHMgPSBncmFwaGljX2NvbnNvbGVfaW5pdCh0Y3hfdXBkYXRlX2Rpc3BsYXksCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGN4X2ludmFsaWRhdGVfZGlzcGxh eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0Y3hfc2NyZWVuX2R1 bXAsIE5VTEwsIHMpOwogICAgIH0KICAgICAvLyBOZXRCU0Qgd3JpdGVzIGhlcmUgZXZlbiB3 aXRoIDgtYml0IGRpc3BsYXkKICAgICBjcHVfcmVnaXN0ZXJfcGh5c2ljYWxfbWVtb3J5KGFk ZHIgKyAweDAwMzAxMDAwVUxMLCBUQ1hfVEhDX05SRUdTXzI0LApAQCAtNTU1LDcgKzU1Myw3 IEBAIHZvaWQgdGN4X2luaXQoRGlzcGxheVN0YXRlICpkcywgdGFyZ2V0X3BoeXNfYWRkcl90 IGFkZHIsIHVpbnQ4X3QgKnZyYW1fYmFzZSwKICAgICByZWdpc3Rlcl9zYXZldm0oInRjeCIs IGFkZHIsIDQsIHRjeF9zYXZlLCB0Y3hfbG9hZCwgcyk7CiAgICAgcWVtdV9yZWdpc3Rlcl9y ZXNldCh0Y3hfcmVzZXQsIHMpOwogICAgIHRjeF9yZXNldChzKTsKLSAgICBxZW11X2NvbnNv bGVfcmVzaXplKHMtPmNvbnNvbGUsIHdpZHRoLCBoZWlnaHQpOworICAgIHFlbXVfY29uc29s ZV9yZXNpemUocy0+ZHMsIHdpZHRoLCBoZWlnaHQpOwogfQogCiBzdGF0aWMgdm9pZCB0Y3hf c2NyZWVuX2R1bXAodm9pZCAqb3BhcXVlLCBjb25zdCBjaGFyICpmaWxlbmFtZSkKZGlmZiAt LWdpdCBhL2h3L3ZnYS5jIGIvaHcvdmdhLmMKaW5kZXggZjJkOThiMC4uZjM3NmNhNiAxMDA2 NDQKLS0tIGEvaHcvdmdhLmMKKysrIGIvaHcvdmdhLmMKQEAgLTEzMDcsNyArMTMwNyw3IEBA IHN0YXRpYyB2b2lkIHZnYV9kcmF3X3RleHQoVkdBU3RhdGUgKnMsIGludCBmdWxsX3VwZGF0 ZSkKICAgICAgICAgY3cgIT0gcy0+bGFzdF9jdyB8fCBjaGVpZ2h0ICE9IHMtPmxhc3RfY2gg fHwgcy0+bGFzdF9kZXB0aCkgewogICAgICAgICBzLT5sYXN0X3Njcl93aWR0aCA9IHdpZHRo ICogY3c7CiAgICAgICAgIHMtPmxhc3Rfc2NyX2hlaWdodCA9IGhlaWdodCAqIGNoZWlnaHQ7 Ci0gICAgICAgIHFlbXVfY29uc29sZV9yZXNpemUocy0+Y29uc29sZSwgcy0+bGFzdF9zY3Jf d2lkdGgsIHMtPmxhc3Rfc2NyX2hlaWdodCk7CisgICAgICAgIHFlbXVfY29uc29sZV9yZXNp emUocy0+ZHMsIHMtPmxhc3Rfc2NyX3dpZHRoLCBzLT5sYXN0X3Njcl9oZWlnaHQpOwogICAg ICAgICBzLT5sYXN0X2RlcHRoID0gMDsKICAgICAgICAgcy0+bGFzdF93aWR0aCA9IHdpZHRo OwogICAgICAgICBzLT5sYXN0X2hlaWdodCA9IGhlaWdodDsKQEAgLTE2ODIsMTAgKzE2ODIs MTAgQEAgc3RhdGljIHZvaWQgdmdhX2RyYXdfZ3JhcGhpYyhWR0FTdGF0ZSAqcywgaW50IGZ1 bGxfdXBkYXRlKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgcy0+dnJhbV9wdHIgKyAocy0+c3RhcnRfYWRkciAqIDQp KTsKICAgICAgICAgICAgICAgICBkcHlfcmVzaXplKHMtPmRzKTsKICAgICAgICAgICAgIH0g ZWxzZSB7Ci0gICAgICAgICAgICAgICAgcWVtdV9jb25zb2xlX3Jlc2l6ZShzLT5jb25zb2xl LCBkaXNwX3dpZHRoLCBoZWlnaHQpOworICAgICAgICAgICAgICAgIHFlbXVfY29uc29sZV9y ZXNpemUocy0+ZHMsIGRpc3Bfd2lkdGgsIGhlaWdodCk7CiAgICAgICAgICAgICB9CiAgICAg ICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBxZW11X2NvbnNvbGVfcmVzaXplKHMtPmNvbnNv bGUsIGRpc3Bfd2lkdGgsIGhlaWdodCk7CisgICAgICAgICAgICBxZW11X2NvbnNvbGVfcmVz aXplKHMtPmRzLCBkaXNwX3dpZHRoLCBoZWlnaHQpOwogICAgICAgICB9CiAgICAgICAgIHMt Pmxhc3Rfc2NyX3dpZHRoID0gZGlzcF93aWR0aDsKICAgICAgICAgcy0+bGFzdF9zY3JfaGVp Z2h0ID0gaGVpZ2h0OwpAQCAtMjI1NCw3ICsyMjU0LDcgQEAgc3RhdGljIHZvaWQgdmdhX21h cChQQ0lEZXZpY2UgKnBjaV9kZXYsIGludCByZWdpb25fbnVtLAogICAgIHZnYV9kaXJ0eV9s b2dfc3RhcnQocyk7CiB9CiAKLXZvaWQgdmdhX2NvbW1vbl9pbml0KFZHQVN0YXRlICpzLCBE aXNwbGF5U3RhdGUgKmRzLCB1aW50OF90ICp2Z2FfcmFtX2Jhc2UsCit2b2lkIHZnYV9jb21t b25faW5pdChWR0FTdGF0ZSAqcywgdWludDhfdCAqdmdhX3JhbV9iYXNlLAogICAgICAgICAg ICAgICAgICAgICAgcmFtX2FkZHJfdCB2Z2FfcmFtX29mZnNldCwgaW50IHZnYV9yYW1fc2l6 ZSkKIHsKICAgICBpbnQgaSwgaiwgdiwgYjsKQEAgLTIyODUsNyArMjI4NSw2IEBAIHZvaWQg dmdhX2NvbW1vbl9pbml0KFZHQVN0YXRlICpzLCBEaXNwbGF5U3RhdGUgKmRzLCB1aW50OF90 ICp2Z2FfcmFtX2Jhc2UsCiAgICAgcy0+dnJhbV9wdHIgPSB2Z2FfcmFtX2Jhc2U7CiAgICAg cy0+dnJhbV9vZmZzZXQgPSB2Z2FfcmFtX29mZnNldDsKICAgICBzLT52cmFtX3NpemUgPSB2 Z2FfcmFtX3NpemU7Ci0gICAgcy0+ZHMgPSBkczsKICAgICBzLT5nZXRfYnBwID0gdmdhX2dl dF9icHA7CiAgICAgcy0+Z2V0X29mZnNldHMgPSB2Z2FfZ2V0X29mZnNldHM7CiAgICAgcy0+ Z2V0X3Jlc29sdXRpb24gPSB2Z2FfZ2V0X3Jlc29sdXRpb247CkBAIC0yNDM0LDcgKzI0MzMs NyBAQCBzdGF0aWMgdm9pZCB2Z2FfbW1faW5pdChWR0FTdGF0ZSAqcywgdGFyZ2V0X3BoeXNf YWRkcl90IHZyYW1fYmFzZSwKICAgICBxZW11X3JlZ2lzdGVyX2NvYWxlc2NlZF9tbWlvKHZy YW1fYmFzZSArIDB4MDAwYTAwMDAsIDB4MjAwMDApOwogfQogCi1pbnQgaXNhX3ZnYV9pbml0 KERpc3BsYXlTdGF0ZSAqZHMsIHVpbnQ4X3QgKnZnYV9yYW1fYmFzZSwKK2ludCBpc2Ffdmdh X2luaXQodWludDhfdCAqdmdhX3JhbV9iYXNlLAogICAgICAgICAgICAgICAgICB1bnNpZ25l ZCBsb25nIHZnYV9yYW1fb2Zmc2V0LCBpbnQgdmdhX3JhbV9zaXplKQogewogICAgIFZHQVN0 YXRlICpzOwpAQCAtMjQ0MywxMSArMjQ0MiwxMSBAQCBpbnQgaXNhX3ZnYV9pbml0KERpc3Bs YXlTdGF0ZSAqZHMsIHVpbnQ4X3QgKnZnYV9yYW1fYmFzZSwKICAgICBpZiAoIXMpCiAgICAg ICAgIHJldHVybiAtMTsKIAotICAgIHZnYV9jb21tb25faW5pdChzLCBkcywgdmdhX3JhbV9i YXNlLCB2Z2FfcmFtX29mZnNldCwgdmdhX3JhbV9zaXplKTsKKyAgICB2Z2FfY29tbW9uX2lu aXQocywgdmdhX3JhbV9iYXNlLCB2Z2FfcmFtX29mZnNldCwgdmdhX3JhbV9zaXplKTsKICAg ICB2Z2FfaW5pdChzKTsKIAotICAgIHMtPmNvbnNvbGUgPSBncmFwaGljX2NvbnNvbGVfaW5p dChzLT5kcywgcy0+dXBkYXRlLCBzLT5pbnZhbGlkYXRlLAotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBzLT5zY3JlZW5fZHVtcCwgcy0+dGV4dF91cGRhdGUsIHMp OworICAgIHMtPmRzID0gZ3JhcGhpY19jb25zb2xlX2luaXQocy0+dXBkYXRlLCBzLT5pbnZh bGlkYXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcy0+c2NyZWVuX2R1 bXAsIHMtPnRleHRfdXBkYXRlLCBzKTsKIAogI2lmZGVmIENPTkZJR19CT0NIU19WQkUKICAg ICAvKiBYWFg6IHVzZSBvcHRpbWl6ZWQgc3RhbmRhcmQgdmdhIGFjY2Vzc2VzICovCkBAIC0y NDU3LDcgKzI0NTYsNyBAQCBpbnQgaXNhX3ZnYV9pbml0KERpc3BsYXlTdGF0ZSAqZHMsIHVp bnQ4X3QgKnZnYV9yYW1fYmFzZSwKICAgICByZXR1cm4gMDsKIH0KIAotaW50IGlzYV92Z2Ff bW1faW5pdChEaXNwbGF5U3RhdGUgKmRzLCB1aW50OF90ICp2Z2FfcmFtX2Jhc2UsCitpbnQg aXNhX3ZnYV9tbV9pbml0KHVpbnQ4X3QgKnZnYV9yYW1fYmFzZSwKICAgICAgICAgICAgICAg ICAgICAgdW5zaWduZWQgbG9uZyB2Z2FfcmFtX29mZnNldCwgaW50IHZnYV9yYW1fc2l6ZSwK ICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X3BoeXNfYWRkcl90IHZyYW1fYmFzZSwgdGFy Z2V0X3BoeXNfYWRkcl90IGN0cmxfYmFzZSwKICAgICAgICAgICAgICAgICAgICAgaW50IGl0 X3NoaWZ0KQpAQCAtMjQ2OCwxMSArMjQ2NywxMSBAQCBpbnQgaXNhX3ZnYV9tbV9pbml0KERp c3BsYXlTdGF0ZSAqZHMsIHVpbnQ4X3QgKnZnYV9yYW1fYmFzZSwKICAgICBpZiAoIXMpCiAg ICAgICAgIHJldHVybiAtMTsKIAotICAgIHZnYV9jb21tb25faW5pdChzLCBkcywgdmdhX3Jh bV9iYXNlLCB2Z2FfcmFtX29mZnNldCwgdmdhX3JhbV9zaXplKTsKKyAgICB2Z2FfY29tbW9u X2luaXQocywgdmdhX3JhbV9iYXNlLCB2Z2FfcmFtX29mZnNldCwgdmdhX3JhbV9zaXplKTsK ICAgICB2Z2FfbW1faW5pdChzLCB2cmFtX2Jhc2UsIGN0cmxfYmFzZSwgaXRfc2hpZnQpOwog Ci0gICAgcy0+Y29uc29sZSA9IGdyYXBoaWNfY29uc29sZV9pbml0KHMtPmRzLCBzLT51cGRh dGUsIHMtPmludmFsaWRhdGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHMtPnNjcmVlbl9kdW1wLCBzLT50ZXh0X3VwZGF0ZSwgcyk7CisgICAgcy0+ZHMgPSBn cmFwaGljX2NvbnNvbGVfaW5pdChzLT51cGRhdGUsIHMtPmludmFsaWRhdGUsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBzLT5zY3JlZW5fZHVtcCwgcy0+dGV4dF91cGRh dGUsIHMpOwogCiAjaWZkZWYgQ09ORklHX0JPQ0hTX1ZCRQogICAgIC8qIFhYWDogdXNlIG9w dGltaXplZCBzdGFuZGFyZCB2Z2EgYWNjZXNzZXMgKi8KQEAgLTI0ODIsNyArMjQ4MSw3IEBA IGludCBpc2FfdmdhX21tX2luaXQoRGlzcGxheVN0YXRlICpkcywgdWludDhfdCAqdmdhX3Jh bV9iYXNlLAogICAgIHJldHVybiAwOwogfQogCi1pbnQgcGNpX3ZnYV9pbml0KFBDSUJ1cyAq YnVzLCBEaXNwbGF5U3RhdGUgKmRzLCB1aW50OF90ICp2Z2FfcmFtX2Jhc2UsCitpbnQgcGNp X3ZnYV9pbml0KFBDSUJ1cyAqYnVzLCB1aW50OF90ICp2Z2FfcmFtX2Jhc2UsCiAgICAgICAg ICAgICAgICAgIHVuc2lnbmVkIGxvbmcgdmdhX3JhbV9vZmZzZXQsIGludCB2Z2FfcmFtX3Np emUsCiAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgdmdhX2Jpb3Nfb2Zmc2V0LCBp bnQgdmdhX2Jpb3Nfc2l6ZSkKIHsKQEAgLTI0OTcsMTEgKzI0OTYsMTEgQEAgaW50IHBjaV92 Z2FfaW5pdChQQ0lCdXMgKmJ1cywgRGlzcGxheVN0YXRlICpkcywgdWludDhfdCAqdmdhX3Jh bV9iYXNlLAogICAgICAgICByZXR1cm4gLTE7CiAgICAgcyA9ICZkLT52Z2Ffc3RhdGU7CiAK LSAgICB2Z2FfY29tbW9uX2luaXQocywgZHMsIHZnYV9yYW1fYmFzZSwgdmdhX3JhbV9vZmZz ZXQsIHZnYV9yYW1fc2l6ZSk7CisgICAgdmdhX2NvbW1vbl9pbml0KHMsIHZnYV9yYW1fYmFz ZSwgdmdhX3JhbV9vZmZzZXQsIHZnYV9yYW1fc2l6ZSk7CiAgICAgdmdhX2luaXQocyk7CiAK LSAgICBzLT5jb25zb2xlID0gZ3JhcGhpY19jb25zb2xlX2luaXQocy0+ZHMsIHMtPnVwZGF0 ZSwgcy0+aW52YWxpZGF0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcy0+c2NyZWVuX2R1bXAsIHMtPnRleHRfdXBkYXRlLCBzKTsKKyAgICBzLT5kcyA9IGdy YXBoaWNfY29uc29sZV9pbml0KHMtPnVwZGF0ZSwgcy0+aW52YWxpZGF0ZSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHMtPnNjcmVlbl9kdW1wLCBzLT50ZXh0X3VwZGF0 ZSwgcyk7CiAKICAgICBzLT5wY2lfZGV2ID0gJmQtPmRldjsKIApkaWZmIC0tZ2l0IGEvaHcv dmdhX2ludC5oIGIvaHcvdmdhX2ludC5oCmluZGV4IDMxOTY3OGEuLjVkMDZlZWQgMTAwNjQ0 Ci0tLSBhL2h3L3ZnYV9pbnQuaAorKysgYi9ody92Z2FfaW50LmgKQEAgLTE0NSw3ICsxNDUs NiBAQCB0eXBlZGVmIHZvaWQgKCogdmdhX3VwZGF0ZV9yZXRyYWNlX2luZm9fZm4pKHN0cnVj dCBWR0FTdGF0ZSAqcyk7CiAgICAgVkdBX1NUQVRFX0NPTU1PTl9CT0NIU19WQkUgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgLyogZGlzcGxheSBy ZWZyZXNoIHN1cHBvcnQgKi8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcCiAgICAgRGlzcGxheVN0YXRlICpkczsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgUUVNVUNvbnNvbGUgKmNvbnNvbGU7ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgdWlu dDMyX3QgZm9udF9vZmZzZXRzWzJdOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcCiAgICAgaW50IGdyYXBoaWNfbW9kZTsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgdWludDhfdCBzaGlmdF9j b250cm9sOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc CkBAIC0xOTIsNyArMTkxLDcgQEAgc3RhdGljIGlubGluZSBpbnQgYzZfdG9fOChpbnQgdikK ICAgICByZXR1cm4gKHYgPDwgMikgfCAoYiA8PCAxKSB8IGI7CiB9CiAKLXZvaWQgdmdhX2Nv bW1vbl9pbml0KFZHQVN0YXRlICpzLCBEaXNwbGF5U3RhdGUgKmRzLCB1aW50OF90ICp2Z2Ff cmFtX2Jhc2UsCit2b2lkIHZnYV9jb21tb25faW5pdChWR0FTdGF0ZSAqcywgdWludDhfdCAq dmdhX3JhbV9iYXNlLAogICAgICAgICAgICAgICAgICAgICAgcmFtX2FkZHJfdCB2Z2FfcmFt X29mZnNldCwgaW50IHZnYV9yYW1fc2l6ZSk7CiB2b2lkIHZnYV9pbml0KFZHQVN0YXRlICpz KTsKIHZvaWQgdmdhX3Jlc2V0KHZvaWQgKnMpOwpkaWZmIC0tZ2l0IGEvaHcvdm13YXJlX3Zn YS5jIGIvaHcvdm13YXJlX3ZnYS5jCmluZGV4IGUzMGQwM2YuLjViNjAwNzQgMTAwNjQ0Ci0t LSBhL2h3L3Ztd2FyZV92Z2EuYworKysgYi9ody92bXdhcmVfdmdhLmMKQEAgLTU3LDcgKzU3 LDYgQEAgc3RydWN0IHZtc3ZnYV9zdGF0ZV9zIHsKIAogI2lmbmRlZiBFTUJFRF9TVERWR0EK ICAgICBEaXNwbGF5U3RhdGUgKmRzOwotICAgIFFFTVVDb25zb2xlICpjb25zb2xlOwogICAg IGludCB2cmFtX3NpemU7CiAgICAgcmFtX2FkZHJfdCB2cmFtX29mZnNldDsKICNlbmRpZgpA QCAtMzg0LDcgKzM4Myw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCB2bXN2Z2FfY29weV9yZWN0 KHN0cnVjdCB2bXN2Z2Ffc3RhdGVfcyAqcywKIAogIyBpZmRlZiBESVJFQ1RfVlJBTQogICAg IGlmIChzLT5kcy0+ZHB5X2NvcHkpCi0gICAgICAgIHFlbXVfY29uc29sZV9jb3B5KHMtPmNv bnNvbGUsIHgwLCB5MCwgeDEsIHkxLCB3LCBoKTsKKyAgICAgICAgcWVtdV9jb25zb2xlX2Nv cHkocy0+ZHMsIHgwLCB5MCwgeDEsIHkxLCB3LCBoKTsKICAgICBlbHNlCiAjIGVuZGlmCiAg ICAgewpAQCAtODc3LDcgKzg3Niw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCB2bXN2Z2Ffc2l6 ZShzdHJ1Y3Qgdm1zdmdhX3N0YXRlX3MgKnMpCiAgICAgaWYgKHMtPm5ld193aWR0aCAhPSBz LT53aWR0aCB8fCBzLT5uZXdfaGVpZ2h0ICE9IHMtPmhlaWdodCkgewogICAgICAgICBzLT53 aWR0aCA9IHMtPm5ld193aWR0aDsKICAgICAgICAgcy0+aGVpZ2h0ID0gcy0+bmV3X2hlaWdo dDsKLSAgICAgICAgcWVtdV9jb25zb2xlX3Jlc2l6ZShzLT5jb25zb2xlLCBzLT53aWR0aCwg cy0+aGVpZ2h0KTsKKyAgICAgICAgcWVtdV9jb25zb2xlX3Jlc2l6ZShzLT5kcywgcy0+d2lk dGgsIHMtPmhlaWdodCk7CiAgICAgICAgIHMtPmludmFsaWRhdGVkID0gMTsKICAgICB9CiB9 CkBAIC05MTUsNyArOTE0LDcgQEAgc3RhdGljIHZvaWQgdm1zdmdhX3Jlc2V0KHN0cnVjdCB2 bXN2Z2Ffc3RhdGVfcyAqcykKICAgICBzLT53aWR0aCA9IC0xOwogICAgIHMtPmhlaWdodCA9 IC0xOwogICAgIHMtPnN2Z2FpZCA9IFNWR0FfSUQ7Ci0gICAgcy0+ZGVwdGggPSBkc19nZXRf Yml0c19wZXJfcGl4ZWwocy0+ZHMpID8gZHNfZ2V0X2JpdHNfcGVyX3BpeGVsKHMtPmRzKSA6 IDI0OworICAgIHMtPmRlcHRoID0gMjQ7CiAgICAgcy0+YnlwcCA9IChzLT5kZXB0aCArIDcp ID4+IDM7CiAgICAgcy0+Y3Vyc29yLm9uID0gMDsKICAgICBzLT5yZWRyYXdfZmlmb19maXJz dCA9IDA7CkBAIC0xMTEwLDExICsxMTA5LDEwIEBAIHN0YXRpYyBpbnQgdm1zdmdhX2xvYWQo c3RydWN0IHZtc3ZnYV9zdGF0ZV9zICpzLCBRRU1VRmlsZSAqZikKICAgICByZXR1cm4gMDsK IH0KIAotc3RhdGljIHZvaWQgdm1zdmdhX2luaXQoc3RydWN0IHZtc3ZnYV9zdGF0ZV9zICpz LCBEaXNwbGF5U3RhdGUgKmRzLAorc3RhdGljIHZvaWQgdm1zdmdhX2luaXQoc3RydWN0IHZt c3ZnYV9zdGF0ZV9zICpzLAogICAgICAgICAgICAgICAgIHVpbnQ4X3QgKnZnYV9yYW1fYmFz ZSwgdW5zaWduZWQgbG9uZyB2Z2FfcmFtX29mZnNldCwKICAgICAgICAgICAgICAgICBpbnQg dmdhX3JhbV9zaXplKQogewotICAgIHMtPmRzID0gZHM7CiAgICAgcy0+dnJhbSA9IHZnYV9y YW1fYmFzZTsKICAgICBzLT52cmFtX3NpemUgPSB2Z2FfcmFtX3NpemU7CiAgICAgcy0+dnJh bV9vZmZzZXQgPSB2Z2FfcmFtX29mZnNldDsKQEAgLTExMjUsMTUgKzExMjMsMTUgQEAgc3Rh dGljIHZvaWQgdm1zdmdhX2luaXQoc3RydWN0IHZtc3ZnYV9zdGF0ZV9zICpzLCBEaXNwbGF5 U3RhdGUgKmRzLAogICAgIHZtc3ZnYV9yZXNldChzKTsKIAogI2lmZGVmIEVNQkVEX1NURFZH QQotICAgIHZnYV9jb21tb25faW5pdCgoVkdBU3RhdGUgKikgcywgZHMsCisgICAgdmdhX2Nv bW1vbl9pbml0KChWR0FTdGF0ZSAqKSBzLAogICAgICAgICAgICAgICAgICAgICB2Z2FfcmFt X2Jhc2UsIHZnYV9yYW1fb2Zmc2V0LCB2Z2FfcmFtX3NpemUpOwogICAgIHZnYV9pbml0KChW R0FTdGF0ZSAqKSBzKTsKICNlbmRpZgogCi0gICAgcy0+Y29uc29sZSA9IGdyYXBoaWNfY29u c29sZV9pbml0KGRzLCB2bXN2Z2FfdXBkYXRlX2Rpc3BsYXksCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHZtc3ZnYV9pbnZhbGlkYXRlX2Rpc3BsYXksCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZtc3ZnYV9zY3JlZW5fZHVtcCwK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm1zdmdhX3RleHRfdXBk YXRlLCBzKTsKKyAgICBzLT5kcyA9IGdyYXBoaWNfY29uc29sZV9pbml0KHZtc3ZnYV91cGRh dGVfZGlzcGxheSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZtc3ZnYV9p bnZhbGlkYXRlX2Rpc3BsYXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2 bXN2Z2Ffc2NyZWVuX2R1bXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2 bXN2Z2FfdGV4dF91cGRhdGUsIHMpOwogCiAjaWZkZWYgQ09ORklHX0JPQ0hTX1ZCRQogICAg IC8qIFhYWDogdXNlIG9wdGltaXplZCBzdGFuZGFyZCB2Z2EgYWNjZXNzZXMgKi8KQEAgLTEy MTMsNyArMTIxMSw3IEBAIHN0YXRpYyB2b2lkIHBjaV92bXN2Z2FfbWFwX21lbShQQ0lEZXZp Y2UgKnBjaV9kZXYsIGludCByZWdpb25fbnVtLAogI2RlZmluZSBQQ0lfQ0xBU1NfU1VCX1ZH QQkJMHgwMAogI2RlZmluZSBQQ0lfQ0xBU1NfSEVBREVSVFlQRV8wMGgJMHgwMAogCi12b2lk IHBjaV92bXN2Z2FfaW5pdChQQ0lCdXMgKmJ1cywgRGlzcGxheVN0YXRlICpkcywgdWludDhf dCAqdmdhX3JhbV9iYXNlLAordm9pZCBwY2lfdm1zdmdhX2luaXQoUENJQnVzICpidXMsIHVp bnQ4X3QgKnZnYV9yYW1fYmFzZSwKICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxv bmcgdmdhX3JhbV9vZmZzZXQsIGludCB2Z2FfcmFtX3NpemUpCiB7CiAgICAgc3RydWN0IHBj aV92bXN2Z2Ffc3RhdGVfcyAqczsKQEAgLTEyNDMsNyArMTI0MSw3IEBAIHZvaWQgcGNpX3Zt c3ZnYV9pbml0KFBDSUJ1cyAqYnVzLCBEaXNwbGF5U3RhdGUgKmRzLCB1aW50OF90ICp2Z2Ff cmFtX2Jhc2UsCiAgICAgcGNpX3JlZ2lzdGVyX2lvX3JlZ2lvbigmcy0+Y2FyZCwgMSwgdmdh X3JhbV9zaXplLAogICAgICAgICAgICAgICAgICAgICBQQ0lfQUREUkVTU19TUEFDRV9NRU1f UFJFRkVUQ0gsIHBjaV92bXN2Z2FfbWFwX21lbSk7CiAKLSAgICB2bXN2Z2FfaW5pdCgmcy0+ Y2hpcCwgZHMsIHZnYV9yYW1fYmFzZSwgdmdhX3JhbV9vZmZzZXQsIHZnYV9yYW1fc2l6ZSk7 CisgICAgdm1zdmdhX2luaXQoJnMtPmNoaXAsIHZnYV9yYW1fYmFzZSwgdmdhX3JhbV9vZmZz ZXQsIHZnYV9yYW1fc2l6ZSk7CiAKICAgICByZWdpc3Rlcl9zYXZldm0oInZtd2FyZV92Z2Ei LCAwLCAwLCBwY2lfdm1zdmdhX3NhdmUsIHBjaV92bXN2Z2FfbG9hZCwgcyk7CiB9Cg== --------------070505070302080001040906--