From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D3E4BC33CB1 for ; Tue, 14 Jan 2020 14:47:35 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 8F4D8206D5 for ; Tue, 14 Jan 2020 14:47:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727285AbgANOrf (ORCPT ); Tue, 14 Jan 2020 09:47:35 -0500 Received: from imap2.colo.codethink.co.uk ([78.40.148.184]:46140 "EHLO imap2.colo.codethink.co.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726106AbgANOrf (ORCPT ); Tue, 14 Jan 2020 09:47:35 -0500 Received: from [167.98.27.226] (helo=xylophone) by imap2.colo.codethink.co.uk with esmtpsa (Exim 4.92 #3 (Debian)) id 1irNTg-0004yF-KC; Tue, 14 Jan 2020 14:47:32 +0000 Message-ID: <1eaa745218d25ab3c5c61361ae0d9b0601f1d99f.camel@codethink.co.uk> Subject: [4.19-stable] Mostly securit y fixes From: Ben Hutchings To: Greg Kroah-Hartman , Sasha Levin Cc: stable Date: Tue, 14 Jan 2020 14:47:31 +0000 Organization: Codethink Ltd. Content-Type: multipart/mixed; boundary="=-XQl1oKTPDnYhyPF0tPdK" User-Agent: Evolution 3.30.5-1.1 MIME-Version: 1.0 Sender: stable-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org --=-XQl1oKTPDnYhyPF0tPdK Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Some more fixes that required backporting for 4.19. All these fixes are related to CVEs though some of them don't seem to have any security impact. Ben. -- Ben Hutchings, Software Developer Codethink Ltd https://www.codethink.co.uk/ Dale House, 35 Dale Street Manchester, M1 2HF, United Kingdom --=-XQl1oKTPDnYhyPF0tPdK Content-Type: application/mbox; name="security-4.19.mbox" Content-Disposition: attachment; filename="security-4.19.mbox" Content-Transfer-Encoding: base64 RnJvbSAzNjNmN2Y4ZmYyZDdlNjU3Y2JkNTA0Mjk3NjE0MWVhYmEzZmFhZDYxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBEZWR5IExhbnNreSA8ZGxhbnNreUBjb2RlYXVyb3JhLm9yZz4K RGF0ZTogU3VuLCAyOSBKdWwgMjAxOCAxNDo1OToxNiArMDMwMApTdWJqZWN0OiBjZmc4MDIxMS9t YWM4MDIxMTogbWFrZSBpZWVlODAyMTFfc2VuZF9sYXllcjJfdXBkYXRlIGEgcHVibGljCiBmdW5j dGlvbgoKY29tbWl0IDMwY2ExYWE1MzYyMTFmNWFjM2RlMDE3MzUxM2E3YTk5YTk4YTk3ZjMgdXBz dHJlYW0uCgpNYWtlIGllZWU4MDIxMV9zZW5kX2xheWVyMl91cGRhdGUoKSBhIGNvbW1vbiBmdW5j dGlvbiBzbyBvdGhlciBkcml2ZXJzCmNhbiByZS11c2UgaXQuCgpTaWduZWQtb2ZmLWJ5OiBEZWR5 IExhbnNreSA8ZGxhbnNreUBjb2RlYXVyb3JhLm9yZz4KU2lnbmVkLW9mZi1ieTogSm9oYW5uZXMg QmVyZyA8am9oYW5uZXMuYmVyZ0BpbnRlbC5jb20+Cltid2g6IEJhY2twb3J0ZWQgdG8gNC4xOSBh cyBkZXBlbmRlbmN5IG9mIGNvbW1pdCAzZTQ5MzE3M2I3ODQKICJtYWM4MDIxMTogRG8gbm90IHNl bmQgTGF5ZXIgMiBVcGRhdGUgZnJhbWUgYmVmb3JlIGF1dGhvcml6YXRpb24iXQpTaWduZWQtb2Zm LWJ5OiBCZW4gSHV0Y2hpbmdzIDxiZW4uaHV0Y2hpbmdzQGNvZGV0aGluay5jby51az4KLS0tCiBp bmNsdWRlL25ldC9jZmc4MDIxMS5oIHwgMTEgKysrKysrKysrKwogbmV0L21hYzgwMjExL2NmZy5j ICAgICB8IDQ4ICsrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogbmV0 L3dpcmVsZXNzL3V0aWwuYyAgICB8IDQ1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA1OCBpbnNlcnRpb25zKCspLCA0NiBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9pbmNsdWRlL25ldC9jZmc4MDIxMS5oIGIvaW5jbHVkZS9uZXQvY2Zn ODAyMTEuaAppbmRleCA0NjhkZWFlNWQ2MDMuLjFmYTJlNzJmZjdhNiAxMDA2NDQKLS0tIGEvaW5j bHVkZS9uZXQvY2ZnODAyMTEuaAorKysgYi9pbmNsdWRlL25ldC9jZmc4MDIxMS5oCkBAIC00NzMz LDYgKzQ3MzMsMTcgQEAgc3RhdGljIGlubGluZSBjb25zdCB1OCAqY2ZnODAyMTFfZmluZF9leHRf aWUodTggZXh0X2VpZCwgY29uc3QgdTggKmllcywgaW50IGxlbikKIGNvbnN0IHU4ICpjZmc4MDIx MV9maW5kX3ZlbmRvcl9pZSh1bnNpZ25lZCBpbnQgb3VpLCBpbnQgb3VpX3R5cGUsCiAJCQkJICBj b25zdCB1OCAqaWVzLCBpbnQgbGVuKTsKIAorLyoqCisgKiBjZmc4MDIxMV9zZW5kX2xheWVyMl91 cGRhdGUgLSBzZW5kIGxheWVyIDIgdXBkYXRlIGZyYW1lCisgKgorICogQGRldjogbmV0d29yayBk ZXZpY2UKKyAqIEBhZGRyOiBTVEEgTUFDIGFkZHJlc3MKKyAqCisgKiBXaXJlbGVzcyBkcml2ZXJz IGNhbiB1c2UgdGhpcyBmdW5jdGlvbiB0byB1cGRhdGUgZm9yd2FyZGluZyB0YWJsZXMgaW4gYnJp ZGdlCisgKiBkZXZpY2VzIHVwb24gU1RBIGFzc29jaWF0aW9uLgorICovCit2b2lkIGNmZzgwMjEx X3NlbmRfbGF5ZXIyX3VwZGF0ZShzdHJ1Y3QgbmV0X2RldmljZSAqZGV2LCBjb25zdCB1OCAqYWRk cik7CisKIC8qKgogICogRE9DOiBSZWd1bGF0b3J5IGVuZm9yY2VtZW50IGluZnJhc3RydWN0dXJl CiAgKgpkaWZmIC0tZ2l0IGEvbmV0L21hYzgwMjExL2NmZy5jIGIvbmV0L21hYzgwMjExL2NmZy5j CmluZGV4IGE0OGU4M2IxOWNmYS4uNWViY2ExNDUyYTdkIDEwMDY0NAotLS0gYS9uZXQvbWFjODAy MTEvY2ZnLmMKKysrIGIvbmV0L21hYzgwMjExL2NmZy5jCkBAIC0xMDk2LDUwICsxMDk2LDYgQEAg c3RhdGljIGludCBpZWVlODAyMTFfc3RvcF9hcChzdHJ1Y3Qgd2lwaHkgKndpcGh5LCBzdHJ1Y3Qg bmV0X2RldmljZSAqZGV2KQogCXJldHVybiAwOwogfQogCi0vKiBMYXllciAyIFVwZGF0ZSBmcmFt ZSAoODAyLjIgVHlwZSAxIExMQyBYSUQgVXBkYXRlIHJlc3BvbnNlKSAqLwotc3RydWN0IGlhcHBf bGF5ZXIyX3VwZGF0ZSB7Ci0JdTggZGFbRVRIX0FMRU5dOwkvKiBicm9hZGNhc3QgKi8KLQl1OCBz YVtFVEhfQUxFTl07CS8qIFNUQSBhZGRyICovCi0JX19iZTE2IGxlbjsJCS8qIDYgKi8KLQl1OCBk c2FwOwkJLyogMCAqLwotCXU4IHNzYXA7CQkvKiAwICovCi0JdTggY29udHJvbDsKLQl1OCB4aWRf aW5mb1szXTsKLX0gX19wYWNrZWQ7Ci0KLXN0YXRpYyB2b2lkIGllZWU4MDIxMV9zZW5kX2xheWVy Ml91cGRhdGUoc3RydWN0IHN0YV9pbmZvICpzdGEpCi17Ci0Jc3RydWN0IGlhcHBfbGF5ZXIyX3Vw ZGF0ZSAqbXNnOwotCXN0cnVjdCBza19idWZmICpza2I7Ci0KLQkvKiBTZW5kIExldmVsIDIgVXBk YXRlIEZyYW1lIHRvIHVwZGF0ZSBmb3J3YXJkaW5nIHRhYmxlcyBpbiBsYXllciAyCi0JICogYnJp ZGdlIGRldmljZXMgKi8KLQotCXNrYiA9IGRldl9hbGxvY19za2Ioc2l6ZW9mKCptc2cpKTsKLQlp ZiAoIXNrYikKLQkJcmV0dXJuOwotCW1zZyA9IHNrYl9wdXQoc2tiLCBzaXplb2YoKm1zZykpOwot Ci0JLyogODAyLjIgVHlwZSAxIExvZ2ljYWwgTGluayBDb250cm9sIChMTEMpIEV4Y2hhbmdlIElk ZW50aWZpZXIgKFhJRCkKLQkgKiBVcGRhdGUgcmVzcG9uc2UgZnJhbWU7IElFRUUgU3RkIDgwMi4y LTE5OTgsIDUuNC4xLjIuMSAqLwotCi0JZXRoX2Jyb2FkY2FzdF9hZGRyKG1zZy0+ZGEpOwotCW1l bWNweShtc2ctPnNhLCBzdGEtPnN0YS5hZGRyLCBFVEhfQUxFTik7Ci0JbXNnLT5sZW4gPSBodG9u cyg2KTsKLQltc2ctPmRzYXAgPSAwOwotCW1zZy0+c3NhcCA9IDB4MDE7CS8qIE5VTEwgTFNBUCwg Q1IgQml0OiBSZXNwb25zZSAqLwotCW1zZy0+Y29udHJvbCA9IDB4YWY7CS8qIFhJRCByZXNwb25z ZSBsc2IuMTExMUYxMDEuCi0JCQkJICogRj0wIChubyBwb2xsIGNvbW1hbmQ7IHVuc29saWNpdGVk IGZyYW1lKSAqLwotCW1zZy0+eGlkX2luZm9bMF0gPSAweDgxOwkvKiBYSUQgZm9ybWF0IGlkZW50 aWZpZXIgKi8KLQltc2ctPnhpZF9pbmZvWzFdID0gMTsJLyogTExDIHR5cGVzL2NsYXNzZXM6IFR5 cGUgMSBMTEMgKi8KLQltc2ctPnhpZF9pbmZvWzJdID0gMDsJLyogWElEIHNlbmRlcidzIHJlY2Vp dmUgd2luZG93IHNpemUgKFJXKSAqLwotCi0Jc2tiLT5kZXYgPSBzdGEtPnNkYXRhLT5kZXY7Ci0J c2tiLT5wcm90b2NvbCA9IGV0aF90eXBlX3RyYW5zKHNrYiwgc3RhLT5zZGF0YS0+ZGV2KTsKLQlt ZW1zZXQoc2tiLT5jYiwgMCwgc2l6ZW9mKHNrYi0+Y2IpKTsKLQluZXRpZl9yeF9uaShza2IpOwot fQotCiBzdGF0aWMgaW50IHN0YV9hcHBseV9hdXRoX2ZsYWdzKHN0cnVjdCBpZWVlODAyMTFfbG9j YWwgKmxvY2FsLAogCQkJCXN0cnVjdCBzdGFfaW5mbyAqc3RhLAogCQkJCXUzMiBtYXNrLCB1MzIg c2V0KQpAQCAtMTUwOCw3ICsxNDY0LDcgQEAgc3RhdGljIGludCBpZWVlODAyMTFfYWRkX3N0YXRp b24oc3RydWN0IHdpcGh5ICp3aXBoeSwgc3RydWN0IG5ldF9kZXZpY2UgKmRldiwKIAl9CiAKIAlp ZiAobGF5ZXIyX3VwZGF0ZSkKLQkJaWVlZTgwMjExX3NlbmRfbGF5ZXIyX3VwZGF0ZShzdGEpOwor CQljZmc4MDIxMV9zZW5kX2xheWVyMl91cGRhdGUoc3RhLT5zZGF0YS0+ZGV2LCBzdGEtPnN0YS5h ZGRyKTsKIAogCXJjdV9yZWFkX3VubG9jaygpOwogCkBAIC0xNjEwLDcgKzE1NjYsNyBAQCBzdGF0 aWMgaW50IGllZWU4MDIxMV9jaGFuZ2Vfc3RhdGlvbihzdHJ1Y3Qgd2lwaHkgKndpcGh5LAogCQlp ZiAodGVzdF9zdGFfZmxhZyhzdGEsIFdMQU5fU1RBX0FVVEhPUklaRUQpKQogCQkJaWVlZTgwMjEx X3ZpZl9pbmNfbnVtX21jYXN0KHN0YS0+c2RhdGEpOwogCi0JCWllZWU4MDIxMV9zZW5kX2xheWVy Ml91cGRhdGUoc3RhKTsKKwkJY2ZnODAyMTFfc2VuZF9sYXllcjJfdXBkYXRlKHN0YS0+c2RhdGEt PmRldiwgc3RhLT5zdGEuYWRkcik7CiAJfQogCiAJZXJyID0gc3RhX2FwcGx5X3BhcmFtZXRlcnMo bG9jYWwsIHN0YSwgcGFyYW1zKTsKZGlmZiAtLWdpdCBhL25ldC93aXJlbGVzcy91dGlsLmMgYi9u ZXQvd2lyZWxlc3MvdXRpbC5jCmluZGV4IGQ2NDFkODFkYTc1OS4uODg1N2Y3YjBlZDQ4IDEwMDY0 NAotLS0gYS9uZXQvd2lyZWxlc3MvdXRpbC5jCisrKyBiL25ldC93aXJlbGVzcy91dGlsLmMKQEAg LTE5MTksMyArMTkxOSw0OCBAQCBib29sIGNmZzgwMjExX2lmdHlwZV9hbGxvd2VkKHN0cnVjdCB3 aXBoeSAqd2lwaHksIGVudW0gbmw4MDIxMV9pZnR5cGUgaWZ0eXBlLAogCXJldHVybiBmYWxzZTsK IH0KIEVYUE9SVF9TWU1CT0woY2ZnODAyMTFfaWZ0eXBlX2FsbG93ZWQpOworCisvKiBMYXllciAy IFVwZGF0ZSBmcmFtZSAoODAyLjIgVHlwZSAxIExMQyBYSUQgVXBkYXRlIHJlc3BvbnNlKSAqLwor c3RydWN0IGlhcHBfbGF5ZXIyX3VwZGF0ZSB7CisJdTggZGFbRVRIX0FMRU5dOwkvKiBicm9hZGNh c3QgKi8KKwl1OCBzYVtFVEhfQUxFTl07CS8qIFNUQSBhZGRyICovCisJX19iZTE2IGxlbjsJCS8q IDYgKi8KKwl1OCBkc2FwOwkJLyogMCAqLworCXU4IHNzYXA7CQkvKiAwICovCisJdTggY29udHJv bDsKKwl1OCB4aWRfaW5mb1szXTsKK30gX19wYWNrZWQ7CisKK3ZvaWQgY2ZnODAyMTFfc2VuZF9s YXllcjJfdXBkYXRlKHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsIGNvbnN0IHU4ICphZGRyKQorewor CXN0cnVjdCBpYXBwX2xheWVyMl91cGRhdGUgKm1zZzsKKwlzdHJ1Y3Qgc2tfYnVmZiAqc2tiOwor CisJLyogU2VuZCBMZXZlbCAyIFVwZGF0ZSBGcmFtZSB0byB1cGRhdGUgZm9yd2FyZGluZyB0YWJs ZXMgaW4gbGF5ZXIgMgorCSAqIGJyaWRnZSBkZXZpY2VzICovCisKKwlza2IgPSBkZXZfYWxsb2Nf c2tiKHNpemVvZigqbXNnKSk7CisJaWYgKCFza2IpCisJCXJldHVybjsKKwltc2cgPSBza2JfcHV0 KHNrYiwgc2l6ZW9mKCptc2cpKTsKKworCS8qIDgwMi4yIFR5cGUgMSBMb2dpY2FsIExpbmsgQ29u dHJvbCAoTExDKSBFeGNoYW5nZSBJZGVudGlmaWVyIChYSUQpCisJICogVXBkYXRlIHJlc3BvbnNl IGZyYW1lOyBJRUVFIFN0ZCA4MDIuMi0xOTk4LCA1LjQuMS4yLjEgKi8KKworCWV0aF9icm9hZGNh c3RfYWRkcihtc2ctPmRhKTsKKwlldGhlcl9hZGRyX2NvcHkobXNnLT5zYSwgYWRkcik7CisJbXNn LT5sZW4gPSBodG9ucyg2KTsKKwltc2ctPmRzYXAgPSAwOworCW1zZy0+c3NhcCA9IDB4MDE7CS8q IE5VTEwgTFNBUCwgQ1IgQml0OiBSZXNwb25zZSAqLworCW1zZy0+Y29udHJvbCA9IDB4YWY7CS8q IFhJRCByZXNwb25zZSBsc2IuMTExMUYxMDEuCisJCQkJICogRj0wIChubyBwb2xsIGNvbW1hbmQ7 IHVuc29saWNpdGVkIGZyYW1lKSAqLworCW1zZy0+eGlkX2luZm9bMF0gPSAweDgxOwkvKiBYSUQg Zm9ybWF0IGlkZW50aWZpZXIgKi8KKwltc2ctPnhpZF9pbmZvWzFdID0gMTsJLyogTExDIHR5cGVz L2NsYXNzZXM6IFR5cGUgMSBMTEMgKi8KKwltc2ctPnhpZF9pbmZvWzJdID0gMDsJLyogWElEIHNl bmRlcidzIHJlY2VpdmUgd2luZG93IHNpemUgKFJXKSAqLworCisJc2tiLT5kZXYgPSBkZXY7CisJ c2tiLT5wcm90b2NvbCA9IGV0aF90eXBlX3RyYW5zKHNrYiwgZGV2KTsKKwltZW1zZXQoc2tiLT5j YiwgMCwgc2l6ZW9mKHNrYi0+Y2IpKTsKKwluZXRpZl9yeF9uaShza2IpOworfQorRVhQT1JUX1NZ TUJPTChjZmc4MDIxMV9zZW5kX2xheWVyMl91cGRhdGUpOwoKRnJvbSBjYmRkMmEwZjE4MWM4YzBm YjUxOTk4NGY1Y2I5ZjQxMjY2MjE2MWIyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBK b3VuaSBNYWxpbmVuIDxqb3VuaUBjb2RlYXVyb3JhLm9yZz4KRGF0ZTogV2VkLCAxMSBTZXAgMjAx OSAxNjowMzowNSArMDMwMApTdWJqZWN0OiBtYWM4MDIxMTogRG8gbm90IHNlbmQgTGF5ZXIgMiBV cGRhdGUgZnJhbWUgYmVmb3JlIGF1dGhvcml6YXRpb24KCmNvbW1pdCAzZTQ5MzE3M2I3ODQxMjU5 YTA4YzVjOGU1Y2JlOTBhZGIzNDlkYTdlIHVwc3RyZWFtLgoKVGhlIExheWVyIDIgVXBkYXRlIGZy YW1lIGlzIHVzZWQgdG8gdXBkYXRlIGJyaWRnZXMgd2hlbiBhIHN0YXRpb24gcm9hbXMKdG8gYW5v dGhlciBBUCBldmVuIGlmIHRoYXQgU1RBIGRvZXMgbm90IHRyYW5zbWl0IGFueSBmcmFtZXMgYWZ0 ZXIgdGhlCnJlYXNzb2NpYXRpb24uIFRoaXMgYmVoYXZpb3Igd2FzIGRlc2NyaWJlZCBpbiBJRUVF IFN0ZCA4MDIuMTFGLTIwMDMgYXMKc29tZXRoaW5nIHRoYXQgd291bGQgaGFwcGVuIGJhc2VkIG9u IE1MTUUtQVNTT0NJQVRFLmluZGljYXRpb24sIGkuZS4sCmJlZm9yZSBjb21wbGV0aW5nIDQtd2F5 IGhhbmRzaGFrZS4gSG93ZXZlciwgdGhpcyBJRUVFIHRyaWFsLXVzZQpyZWNvbW1lbmRlZCBwcmFj dGljZSBkb2N1bWVudCB3YXMgcHVibGlzaGVkIGJlZm9yZSBSU04gKElFRUUgU3RkCjgwMi4xMWkt MjAwNCkgYW5kIGFzIHN1Y2gsIGRpZCBub3QgY29uc2lkZXIgUlNOIHVzZSBjYXNlcy4gRnVydGhl cm1vcmUsCklFRUUgU3RkIDgwMi4xMUYtMjAwMyB3YXMgd2l0aGRyYXduIGluIDIwMDYgYW5kIGFz IHN1Y2gsIGhhcyBub3QgYmVlbgptYWludGFpbmVkIGFtZCBzaG91bGQgbm90IGJlIHVzZWQgYW55 bW9yZS4KClNlbmRpbmcgb3V0IHRoZSBMYXllciAyIFVwZGF0ZSBmcmFtZSBpbW1lZGlhdGVseSBh ZnRlciBhc3NvY2lhdGlvbiBpcwpmaW5lIGZvciBvcGVuIG5ldHdvcmtzIChhbmQgYWxzbyB3aGVu IHVzaW5nIFNBRSwgRlQgcHJvdG9jb2wsIG9yIEZJTFMKYXV0aGVudGljYXRpb24gd2hlbiB0aGUg c3RhdGlvbiBpcyBhY3R1YWxseSBhdXRoZW50aWNhdGVkIGJ5IHRoZSB0aW1lCmFzc29jaWF0aW9u IGNvbXBsZXRlcykuIEhvd2V2ZXIsIGl0IGlzIG5vdCBhcHByb3ByaWF0ZSBmb3IgY2FzZXMgd2hl cmUKUlNOIGlzIHVzZWQgd2l0aCBQU0sgb3IgRUFQIGF1dGhlbnRpY2F0aW9uIHNpbmNlIHRoZSBz dGF0aW9uIGlzIGFjdHVhbGx5CmZ1bGx5IGF1dGhlbnRpY2F0ZWQgb25seSBvbmNlIHRoZSA0LXdh eSBoYW5kc2hha2UgY29tcGxldGVzIGFmdGVyCmF1dGhlbnRpY2F0aW9uIGFuZCBhdHRhY2tlcnMg bWlnaHQgYmUgYWJsZSB0byB1c2UgdGhlIHVuYXV0aGVudGljYXRlZAp0cmlnZ2VyaW5nIG9mIExh eWVyIDIgVXBkYXRlIGZyYW1lIHRyYW5zbWlzc2lvbiB0byBkaXNydXB0IGJyaWRnZQpiZWhhdmlv ci4KCkZpeCB0aGlzIGJ5IHBvc3Rwb25pbmcgdHJhbnNtaXNzaW9uIG9mIHRoZSBMYXllciAyIFVw ZGF0ZSBmcmFtZSBmcm9tCnN0YXRpb24gZW50cnkgYWRkaXRpb24gdG8gdGhlIHBvaW50IHdoZW4g dGhlIHN0YXRpb24gZW50cnkgaXMgbWFya2VkCmF1dGhvcml6ZWQuIFNpbWlsYXJseSwgc2VuZCBv dXQgdGhlIFZMQU4gYmluZGluZyB1cGRhdGUgb25seSBpZiB0aGUgU1RBCmVudHJ5IGhhcyBhbHJl YWR5IGJlZW4gYXV0aG9yaXplZC4KClNpZ25lZC1vZmYtYnk6IEpvdW5pIE1hbGluZW4gPGpvdW5p QGNvZGVhdXJvcmEub3JnPgpSZXZpZXdlZC1ieTogSm9oYW5uZXMgQmVyZyA8am9oYW5uZXNAc2lw c29sdXRpb25zLm5ldD4KU2lnbmVkLW9mZi1ieTogRGF2aWQgUy4gTWlsbGVyIDxkYXZlbUBkYXZl bWxvZnQubmV0PgpTaWduZWQtb2ZmLWJ5OiBCZW4gSHV0Y2hpbmdzIDxiZW4uaHV0Y2hpbmdzQGNv ZGV0aGluay5jby51az4KLS0tCiBuZXQvbWFjODAyMTEvY2ZnLmMgICAgICB8IDE0ICsrKystLS0t LS0tLS0tCiBuZXQvbWFjODAyMTEvc3RhX2luZm8uYyB8ICA0ICsrKysKIDIgZmlsZXMgY2hhbmdl ZCwgOCBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9uZXQvbWFj ODAyMTEvY2ZnLmMgYi9uZXQvbWFjODAyMTEvY2ZnLmMKaW5kZXggNWViY2ExNDUyYTdkLi5lNDY5 NDQ1MDBjZmEgMTAwNjQ0Ci0tLSBhL25ldC9tYWM4MDIxMS9jZmcuYworKysgYi9uZXQvbWFjODAy MTEvY2ZnLmMKQEAgLTE0MTAsNyArMTQxMCw2IEBAIHN0YXRpYyBpbnQgaWVlZTgwMjExX2FkZF9z dGF0aW9uKHN0cnVjdCB3aXBoeSAqd2lwaHksIHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsCiAJc3Ry dWN0IHN0YV9pbmZvICpzdGE7CiAJc3RydWN0IGllZWU4MDIxMV9zdWJfaWZfZGF0YSAqc2RhdGE7 CiAJaW50IGVycjsKLQlpbnQgbGF5ZXIyX3VwZGF0ZTsKIAogCWlmIChwYXJhbXMtPnZsYW4pIHsK IAkJc2RhdGEgPSBJRUVFODAyMTFfREVWX1RPX1NVQl9JRihwYXJhbXMtPnZsYW4pOwpAQCAtMTQ1 NCwxOCArMTQ1MywxMiBAQCBzdGF0aWMgaW50IGllZWU4MDIxMV9hZGRfc3RhdGlvbihzdHJ1Y3Qg d2lwaHkgKndpcGh5LCBzdHJ1Y3QgbmV0X2RldmljZSAqZGV2LAogCSAgICB0ZXN0X3N0YV9mbGFn KHN0YSwgV0xBTl9TVEFfQVNTT0MpKQogCQlyYXRlX2NvbnRyb2xfcmF0ZV9pbml0KHN0YSk7CiAK LQlsYXllcjJfdXBkYXRlID0gc2RhdGEtPnZpZi50eXBlID09IE5MODAyMTFfSUZUWVBFX0FQX1ZM QU4gfHwKLQkJc2RhdGEtPnZpZi50eXBlID09IE5MODAyMTFfSUZUWVBFX0FQOwotCiAJZXJyID0g c3RhX2luZm9faW5zZXJ0X3JjdShzdGEpOwogCWlmIChlcnIpIHsKIAkJcmN1X3JlYWRfdW5sb2Nr KCk7CiAJCXJldHVybiBlcnI7CiAJfQogCi0JaWYgKGxheWVyMl91cGRhdGUpCi0JCWNmZzgwMjEx X3NlbmRfbGF5ZXIyX3VwZGF0ZShzdGEtPnNkYXRhLT5kZXYsIHN0YS0+c3RhLmFkZHIpOwotCiAJ cmN1X3JlYWRfdW5sb2NrKCk7CiAKIAlyZXR1cm4gMDsKQEAgLTE1NjMsMTAgKzE1NTYsMTEgQEAg c3RhdGljIGludCBpZWVlODAyMTFfY2hhbmdlX3N0YXRpb24oc3RydWN0IHdpcGh5ICp3aXBoeSwK IAkJc3RhLT5zZGF0YSA9IHZsYW5zZGF0YTsKIAkJaWVlZTgwMjExX2NoZWNrX2Zhc3RfeG1pdChz dGEpOwogCi0JCWlmICh0ZXN0X3N0YV9mbGFnKHN0YSwgV0xBTl9TVEFfQVVUSE9SSVpFRCkpCisJ CWlmICh0ZXN0X3N0YV9mbGFnKHN0YSwgV0xBTl9TVEFfQVVUSE9SSVpFRCkpIHsKIAkJCWllZWU4 MDIxMV92aWZfaW5jX251bV9tY2FzdChzdGEtPnNkYXRhKTsKLQotCQljZmc4MDIxMV9zZW5kX2xh eWVyMl91cGRhdGUoc3RhLT5zZGF0YS0+ZGV2LCBzdGEtPnN0YS5hZGRyKTsKKwkJCWNmZzgwMjEx X3NlbmRfbGF5ZXIyX3VwZGF0ZShzdGEtPnNkYXRhLT5kZXYsCisJCQkJCQkgICAgc3RhLT5zdGEu YWRkcik7CisJCX0KIAl9CiAKIAllcnIgPSBzdGFfYXBwbHlfcGFyYW1ldGVycyhsb2NhbCwgc3Rh LCBwYXJhbXMpOwpkaWZmIC0tZ2l0IGEvbmV0L21hYzgwMjExL3N0YV9pbmZvLmMgYi9uZXQvbWFj ODAyMTEvc3RhX2luZm8uYwppbmRleCA1MDc0MDllM2ZkMzkuLjBjODBhNTllZjkxNCAxMDA2NDQK LS0tIGEvbmV0L21hYzgwMjExL3N0YV9pbmZvLmMKKysrIGIvbmV0L21hYzgwMjExL3N0YV9pbmZv LmMKQEAgLTE5MDYsNiArMTkwNiwxMCBAQCBpbnQgc3RhX2luZm9fbW92ZV9zdGF0ZShzdHJ1Y3Qg c3RhX2luZm8gKnN0YSwKIAkJCWllZWU4MDIxMV9jaGVja19mYXN0X3htaXQoc3RhKTsKIAkJCWll ZWU4MDIxMV9jaGVja19mYXN0X3J4KHN0YSk7CiAJCX0KKwkJaWYgKHN0YS0+c2RhdGEtPnZpZi50 eXBlID09IE5MODAyMTFfSUZUWVBFX0FQX1ZMQU4gfHwKKwkJICAgIHN0YS0+c2RhdGEtPnZpZi50 eXBlID09IE5MODAyMTFfSUZUWVBFX0FQKQorCQkJY2ZnODAyMTFfc2VuZF9sYXllcjJfdXBkYXRl KHN0YS0+c2RhdGEtPmRldiwKKwkJCQkJCSAgICBzdGEtPnN0YS5hZGRyKTsKIAkJYnJlYWs7CiAJ ZGVmYXVsdDoKIAkJYnJlYWs7CgpGcm9tIGJjODBmZWM4MDM2MzFlYjZjMzA1NzhhODE1Yjc0Y2I4 ODRkYTk1ZTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEJlbiBIdXRjaGluZ3MgPGJl bi5odXRjaGluZ3NAY29kZXRoaW5rLmNvLnVrPgpEYXRlOiBNb24sIDEzIEphbiAyMDIwIDIzOjIw OjA3ICswMDAwClN1YmplY3Q6IGYyZnM6IE1vdmUgZXJyIHZhcmlhYmxlIHRvIGZ1bmN0aW9uIHNj b3BlIGluIGYyZnNfZmlsbF9kZW50cmllcygpCgpUaGlzIGlzIHByZXBhcmF0aW9uIGZvciB0aGUg Zm9sbG93aW5nIGJhY2twb3J0ZWQgZml4ZXMuICBJdCB3YXMgZG9uZQp1cHN0cmVhbSBhcyBwYXJ0 IG9mIGNvbW1pdCBlMTI5M2JkZmEwMWQgImYyZnM6IHBsdWcgcmVhZGFoZWFkIElPIGluCnJlYWRk aXIoKSIsIHRoZSByZXN0IG9mIHdoaWNoIGRvZXMgbm90IHNlZW0gc3VpdGFibGUgZm9yIHN0YWJs ZS4KCkNjOiBKYWVnZXVrIEtpbSA8amFlZ2V1a0BrZXJuZWwub3JnPgpDYzogQ2hhbyBZdSA8eXVj aGFvMEBodWF3ZWkuY29tPgpTaWduZWQtb2ZmLWJ5OiBCZW4gSHV0Y2hpbmdzIDxiZW4uaHV0Y2hp bmdzQGNvZGV0aGluay5jby51az4KLS0tCiBmcy9mMmZzL2Rpci5jIHwgNSArKystLQogMSBmaWxl IGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9m cy9mMmZzL2Rpci5jIGIvZnMvZjJmcy9kaXIuYwppbmRleCBjZDYxMWE1N2QwNGQuLjM4ZDY1MDNm MDI3OCAxMDA2NDQKLS0tIGEvZnMvZjJmcy9kaXIuYworKysgYi9mcy9mMmZzL2Rpci5jCkBAIC03 ODUsNiArNzg1LDcgQEAgaW50IGYyZnNfZmlsbF9kZW50cmllcyhzdHJ1Y3QgZGlyX2NvbnRleHQg KmN0eCwgc3RydWN0IGYyZnNfZGVudHJ5X3B0ciAqZCwKIAlzdHJ1Y3QgZjJmc19kaXJfZW50cnkg KmRlID0gTlVMTDsKIAlzdHJ1Y3QgZnNjcnlwdF9zdHIgZGVfbmFtZSA9IEZTVFJfSU5JVChOVUxM LCAwKTsKIAlzdHJ1Y3QgZjJmc19zYl9pbmZvICpzYmkgPSBGMkZTX0lfU0IoZC0+aW5vZGUpOwor CWludCBlcnIgPSAwOwogCiAJYml0X3BvcyA9ICgodW5zaWduZWQgbG9uZyljdHgtPnBvcyAlIGQt Pm1heCk7CiAKQEAgLTgwNyw3ICs4MDgsNiBAQCBpbnQgZjJmc19maWxsX2RlbnRyaWVzKHN0cnVj dCBkaXJfY29udGV4dCAqY3R4LCBzdHJ1Y3QgZjJmc19kZW50cnlfcHRyICpkLAogCiAJCWlmIChm MmZzX2VuY3J5cHRlZF9pbm9kZShkLT5pbm9kZSkpIHsKIAkJCWludCBzYXZlX2xlbiA9IGZzdHIt PmxlbjsKLQkJCWludCBlcnI7CiAKIAkJCWVyciA9IGZzY3J5cHRfZm5hbWVfZGlza190b191c3Io ZC0+aW5vZGUsCiAJCQkJCQkodTMyKWRlLT5oYXNoX2NvZGUsIDAsCkBAIC04MjksNyArODI5LDgg QEAgaW50IGYyZnNfZmlsbF9kZW50cmllcyhzdHJ1Y3QgZGlyX2NvbnRleHQgKmN0eCwgc3RydWN0 IGYyZnNfZGVudHJ5X3B0ciAqZCwKIAkJYml0X3BvcyArPSBHRVRfREVOVFJZX1NMT1RTKGxlMTZf dG9fY3B1KGRlLT5uYW1lX2xlbikpOwogCQljdHgtPnBvcyA9IHN0YXJ0X3BvcyArIGJpdF9wb3M7 CiAJfQotCXJldHVybiAwOworb3V0OgorCXJldHVybiBlcnI7CiB9CiAKIHN0YXRpYyBpbnQgZjJm c19yZWFkZGlyKHN0cnVjdCBmaWxlICpmaWxlLCBzdHJ1Y3QgZGlyX2NvbnRleHQgKmN0eCkKCkZy b20gN2NiZDA0MjFjNjY5ZTU2NmFkNTgxNjc1NjA3NWFmOTY5OTRiODFjNCBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogSmFlZ2V1ayBLaW0gPGphZWdldWtAa2VybmVsLm9yZz4KRGF0ZTog V2VkLCAxNCBOb3YgMjAxOCAxMjo0MDozMCAtMDgwMApTdWJqZWN0OiBmMmZzOiBjaGVjayBtZW1v cnkgYm91bmRhcnkgYnkgaW5zYW5lIG5hbWVsZW4KCmNvbW1pdCA0ZTI0MGQxYmFiMWVhZDI4MGRk ZjVlYjA1MDU4ZGJhNmJiZDU3ZDEwIHVwc3RyZWFtLgoKSWYgbmFtZWxlbiBpcyBjb3JydXB0ZWQg dG8gaGF2ZSB2ZXJ5IGxvbmcgdmFsdWUsIGZpbGxfZGVudHJpZXMgY2FuIGNvcHkKd3JvbmcgbWVt b3J5IGFyZWEuCgpSZXZpZXdlZC1ieTogQ2hhbyBZdSA8eXVjaGFvMEBodWF3ZWkuY29tPgpTaWdu ZWQtb2ZmLWJ5OiBKYWVnZXVrIEtpbSA8amFlZ2V1a0BrZXJuZWwub3JnPgpTaWduZWQtb2ZmLWJ5 OiBCZW4gSHV0Y2hpbmdzIDxiZW4uaHV0Y2hpbmdzQGNvZGV0aGluay5jby51az4KLS0tCiBmcy9m MmZzL2Rpci5jIHwgMTIgKysrKysrKysrKystCiAxIGZpbGUgY2hhbmdlZCwgMTEgaW5zZXJ0aW9u cygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2ZzL2YyZnMvZGlyLmMgYi9mcy9mMmZz L2Rpci5jCmluZGV4IDM4ZDY1MDNmMDI3OC4uYWM2YmRkOGI4Y2I0IDEwMDY0NAotLS0gYS9mcy9m MmZzL2Rpci5jCisrKyBiL2ZzL2YyZnMvZGlyLmMKQEAgLTgwNiw2ICs4MDYsMTcgQEAgaW50IGYy ZnNfZmlsbF9kZW50cmllcyhzdHJ1Y3QgZGlyX2NvbnRleHQgKmN0eCwgc3RydWN0IGYyZnNfZGVu dHJ5X3B0ciAqZCwKIAkJZGVfbmFtZS5uYW1lID0gZC0+ZmlsZW5hbWVbYml0X3Bvc107CiAJCWRl X25hbWUubGVuID0gbGUxNl90b19jcHUoZGUtPm5hbWVfbGVuKTsKIAorCQkvKiBjaGVjayBtZW1v cnkgYm91bmRhcnkgYmVmb3JlIG1vdmluZyBmb3J3YXJkICovCisJCWJpdF9wb3MgKz0gR0VUX0RF TlRSWV9TTE9UUyhsZTE2X3RvX2NwdShkZS0+bmFtZV9sZW4pKTsKKwkJaWYgKHVubGlrZWx5KGJp dF9wb3MgPiBkLT5tYXgpKSB7CisJCQlmMmZzX21zZyhzYmktPnNiLCBLRVJOX1dBUk5JTkcsCisJ CQkJIiVzOiBjb3JydXB0ZWQgbmFtZWxlbj0lZCwgcnVuIGZzY2sgdG8gZml4LiIsCisJCQkJX19m dW5jX18sIGxlMTZfdG9fY3B1KGRlLT5uYW1lX2xlbikpOworCQkJc2V0X3NiaV9mbGFnKHNiaSwg U0JJX05FRURfRlNDSyk7CisJCQllcnIgPSAtRUlOVkFMOworCQkJZ290byBvdXQ7CisJCX0KKwog CQlpZiAoZjJmc19lbmNyeXB0ZWRfaW5vZGUoZC0+aW5vZGUpKSB7CiAJCQlpbnQgc2F2ZV9sZW4g PSBmc3RyLT5sZW47CiAKQEAgLTgyNiw3ICs4MzcsNiBAQCBpbnQgZjJmc19maWxsX2RlbnRyaWVz KHN0cnVjdCBkaXJfY29udGV4dCAqY3R4LCBzdHJ1Y3QgZjJmc19kZW50cnlfcHRyICpkLAogCQlp ZiAoc2JpLT5yZWFkZGlyX3JhID09IDEpCiAJCQlmMmZzX3JhX25vZGVfcGFnZShzYmksIGxlMzJf dG9fY3B1KGRlLT5pbm8pKTsKIAotCQliaXRfcG9zICs9IEdFVF9ERU5UUllfU0xPVFMobGUxNl90 b19jcHUoZGUtPm5hbWVfbGVuKSk7CiAJCWN0eC0+cG9zID0gc3RhcnRfcG9zICsgYml0X3BvczsK IAl9CiBvdXQ6CgpGcm9tIDM4ZDBiODViZmIyZDdjMmJiODExMjRhYmVjMGRiODdhYzQ0M2I2ZjIg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IFNoZW5nIFlvbmcgPHNoZW5neW9uZzFAaHVh d2VpLmNvbT4KRGF0ZTogTW9uLCA3IEphbiAyMDE5IDE1OjAyOjM0ICswODAwClN1YmplY3Q6IGYy ZnM6IGNoZWNrIGlmIGZpbGUgbmFtZWxlbiBleGNlZWRzIG1heCB2YWx1ZQoKY29tbWl0IDcyMGRi MDY4NjM0YzkxNTUzYThlMWQ5YTBmY2Q4YzcwNTBlMDZkMmIgdXBzdHJlYW0uCgpEZW50cnkgYml0 bWFwIGlzIG5vdCBlbm91Z2ggdG8gZGV0ZWN0IGluY29ycmVjdCBkZW50cmllcy4gU28gdGhpcyBw YXRjaAphbHNvIGNoZWNrcyB0aGUgbmFtZWxlbiB2YWx1ZSBvZiBhIGRlbnRyeS4KClNpZ25lZC1v ZmYtYnk6IEdvbmcgQ2hlbiA8Z29uZ2NoZW40QGh1YXdlaS5jb20+ClNpZ25lZC1vZmYtYnk6IFNo ZW5nIFlvbmcgPHNoZW5neW9uZzFAaHVhd2VpLmNvbT4KUmV2aWV3ZWQtYnk6IENoYW8gWXUgPHl1 Y2hhbzBAaHVhd2VpLmNvbT4KU2lnbmVkLW9mZi1ieTogSmFlZ2V1ayBLaW0gPGphZWdldWtAa2Vy bmVsLm9yZz4KU2lnbmVkLW9mZi1ieTogQmVuIEh1dGNoaW5ncyA8YmVuLmh1dGNoaW5nc0Bjb2Rl dGhpbmsuY28udWs+Ci0tLQogZnMvZjJmcy9kaXIuYyB8IDMgKystCiAxIGZpbGUgY2hhbmdlZCwg MiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvZnMvZjJmcy9kaXIu YyBiL2ZzL2YyZnMvZGlyLmMKaW5kZXggYWM2YmRkOGI4Y2I0Li4wZDNkODQ4ZDE4NmIgMTAwNjQ0 Ci0tLSBhL2ZzL2YyZnMvZGlyLmMKKysrIGIvZnMvZjJmcy9kaXIuYwpAQCAtODA4LDcgKzgwOCw4 IEBAIGludCBmMmZzX2ZpbGxfZGVudHJpZXMoc3RydWN0IGRpcl9jb250ZXh0ICpjdHgsIHN0cnVj dCBmMmZzX2RlbnRyeV9wdHIgKmQsCiAKIAkJLyogY2hlY2sgbWVtb3J5IGJvdW5kYXJ5IGJlZm9y ZSBtb3ZpbmcgZm9yd2FyZCAqLwogCQliaXRfcG9zICs9IEdFVF9ERU5UUllfU0xPVFMobGUxNl90 b19jcHUoZGUtPm5hbWVfbGVuKSk7Ci0JCWlmICh1bmxpa2VseShiaXRfcG9zID4gZC0+bWF4KSkg eworCQlpZiAodW5saWtlbHkoYml0X3BvcyA+IGQtPm1heCB8fAorCQkJCWxlMTZfdG9fY3B1KGRl LT5uYW1lX2xlbikgPiBGMkZTX05BTUVfTEVOKSkgewogCQkJZjJmc19tc2coc2JpLT5zYiwgS0VS Tl9XQVJOSU5HLAogCQkJCSIlczogY29ycnVwdGVkIG5hbWVsZW49JWQsIHJ1biBmc2NrIHRvIGZp eC4iLAogCQkJCV9fZnVuY19fLCBsZTE2X3RvX2NwdShkZS0+bmFtZV9sZW4pKTsKCkZyb20gYmZl MjI2YjE3OTc5YTJhMTE1OWE5ZjJlZDYxMTc3OWY5NDFhZTAzMiBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogVmFuZGFuYSBCTiA8Ym52YW5kYW5hQGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAy MiBNYXkgMjAxOSAwNDozNDoxNSAtMDQwMApTdWJqZWN0OiBtZWRpYTogdXNiOnpyMzY0eHg6Rml4 IEtBU0FOOm51bGwtcHRyLWRlcmVmIFJlYWQgaW4KIHpyMzY0eHhfdmlkaW9jX3F1ZXJ5Y2FwCgpj b21taXQgNWQyZTczYTVmODBhNWI1YWZmM2NhZjFlYzZkMzliNWIzZjU0YjI2ZSB1cHN0cmVhbS4K ClN5ekthbGxlciBoaXQgdGhlIG51bGwgcG9pbnRlciBkZXJlZiB3aGlsZSByZWFkaW5nIGZyb20g dW5pbml0aWFsaXplZAp1ZGV2LT5wcm9kdWN0IGluIHpyMzY0eHhfdmlkaW9jX3F1ZXJ5Y2FwKCku Cgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT0KQlVHOiBLQVNBTjogbnVsbC1wdHItZGVyZWYgaW4gcmVhZF93b3JkX2F0X2Ff dGltZSsweGUvMHgyMAppbmNsdWRlL2xpbnV4L2NvbXBpbGVyLmg6Mjc0ClJlYWQgb2Ygc2l6ZSAx IGF0IGFkZHIgMDAwMDAwMDAwMDAwMDAwMCBieSB0YXNrIHY0bF9pZC81Mjg3CgpDUFU6IDEgUElE OiA1Mjg3IENvbW06IHY0bF9pZCBOb3QgdGFpbnRlZCA1LjEuMC1yYzMtMzE5MDA0LWc0MzE1MWQ2 ICM2CkhhcmR3YXJlIG5hbWU6IEdvb2dsZSBHb29nbGUgQ29tcHV0ZSBFbmdpbmUvR29vZ2xlIENv bXB1dGUgRW5naW5lLCBCSU9TCkdvb2dsZSAwMS8wMS8yMDExCkNhbGwgVHJhY2U6CiAgX19kdW1w X3N0YWNrIGxpYi9kdW1wX3N0YWNrLmM6NzcgW2lubGluZV0KICBkdW1wX3N0YWNrKzB4ZTgvMHgx NmUgbGliL2R1bXBfc3RhY2suYzoxMTMKICBrYXNhbl9yZXBvcnQuY29sZCsweDUvMHgzYyBtbS9r YXNhbi9yZXBvcnQuYzozMjEKICByZWFkX3dvcmRfYXRfYV90aW1lKzB4ZS8weDIwIGluY2x1ZGUv bGludXgvY29tcGlsZXIuaDoyNzQKICBzdHJzY3B5KzB4OGEvMHgyODAgbGliL3N0cmluZy5jOjIw NwogIHpyMzY0eHhfdmlkaW9jX3F1ZXJ5Y2FwKzB4YjUvMHgyMTAgZHJpdmVycy9tZWRpYS91c2Iv enIzNjR4eC96cjM2NHh4LmM6NzA2CiAgdjRsX3F1ZXJ5Y2FwKzB4MTJiLzB4MzQwIGRyaXZlcnMv bWVkaWEvdjRsMi1jb3JlL3Y0bDItaW9jdGwuYzoxMDYyCiAgX192aWRlb19kb19pb2N0bCsweDVi Yi8weGI0MCBkcml2ZXJzL21lZGlhL3Y0bDItY29yZS92NGwyLWlvY3RsLmM6Mjg3NAogIHZpZGVv X3VzZXJjb3B5KzB4NDRlLzB4ZjAwIGRyaXZlcnMvbWVkaWEvdjRsMi1jb3JlL3Y0bDItaW9jdGwu YzozMDU2CiAgdjRsMl9pb2N0bCsweDE0ZS8weDFhMCBkcml2ZXJzL21lZGlhL3Y0bDItY29yZS92 NGwyLWRldi5jOjM2NAogIHZmc19pb2N0bCBmcy9pb2N0bC5jOjQ2IFtpbmxpbmVdCiAgZmlsZV9p b2N0bCBmcy9pb2N0bC5jOjUwOSBbaW5saW5lXQogIGRvX3Zmc19pb2N0bCsweGNlZC8weDEyZjAg ZnMvaW9jdGwuYzo2OTYKICBrc3lzX2lvY3RsKzB4YTAvMHhjMCBmcy9pb2N0bC5jOjcxMwogIF9f ZG9fc3lzX2lvY3RsIGZzL2lvY3RsLmM6NzIwIFtpbmxpbmVdCiAgX19zZV9zeXNfaW9jdGwgZnMv aW9jdGwuYzo3MTggW2lubGluZV0KICBfX3g2NF9zeXNfaW9jdGwrMHg3NC8weGIwIGZzL2lvY3Rs LmM6NzE4CiAgZG9fc3lzY2FsbF82NCsweGNmLzB4NGYwIGFyY2gveDg2L2VudHJ5L2NvbW1vbi5j OjI5MAogIGVudHJ5X1NZU0NBTExfNjRfYWZ0ZXJfaHdmcmFtZSsweDQ5LzB4YmUKUklQOiAwMDMz OjB4N2YzYjU2ZDhiMzQ3CkNvZGU6IDkwIDkwIDkwIDQ4IDhiIDA1IGYxIGZhIDJhIDAwIDY0IGM3 IDAwIDI2IDAwIDAwIDAwIDQ4IGM3IGMwIGZmIGZmIGZmCmZmIGMzIDkwIDkwIDkwIDkwIDkwIDkw IDkwIDkwIDkwIDkwIGI4IDEwIDAwIDAwIDAwIDBmIDA1IDw0OD4gM2QgMDEgZjAgZmYKZmYgNzMg MDEgYzMgNDggOGIgMGQgYzEgZmEgMmEgMDAgMzEgZDIgNDggMjkgYzIgNjQKUlNQOiAwMDJiOjAw MDA3ZmZlMDA1ZDVkNjggRUZMQUdTOiAwMDAwMDIwMiBPUklHX1JBWDogMDAwMDAwMDAwMDAwMDAx MApSQVg6IGZmZmZmZmZmZmZmZmZmZGEgUkJYOiAwMDAwMDAwMDAwMDAwMDAzIFJDWDogMDAwMDdm M2I1NmQ4YjM0NwpSRFg6IDAwMDA3ZmZlMDA1ZDVkNzAgUlNJOiAwMDAwMDAwMDgwNjg1NjAwIFJE STogMDAwMDAwMDAwMDAwMDAwMwpSQlA6IDAwMDAwMDAwMDAwMDAwMDAgUjA4OiAwMDAwMDAwMDAw MDAwMDAwIFIwOTogMDAwMDAwMDAwMDAwMDAwMApSMTA6IDAwMDAwMDAwMDAwMDAwMDAgUjExOiAw MDAwMDAwMDAwMDAwMjAyIFIxMjogMDAwMDAwMDAwMDQwMDg4NApSMTM6IDAwMDA3ZmZlMDA1ZDVl YzAgUjE0OiAwMDAwMDAwMDAwMDAwMDAwIFIxNTogMDAwMDAwMDAwMDAwMDAwMAo9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K CkZvciB0aGlzIGRldmljZSB1ZGV2LT5wcm9kdWN0IGlzIG5vdCBpbml0aWFsaXplZCBhbmQgYWNj ZXNzaW5nIGl0IGNhdXNlcyBhIE5VTEwgcG9pbnRlciBkZXJlZi4KClRoZSBmaXggaXMgdG8gY2hl Y2sgZm9yIE5VTEwgYmVmb3JlIHN0cnNjcHkoKSBhbmQgY29weSBlbXB0eSBzdHJpbmcsIGlmCnBy b2R1Y3QgaXMgTlVMTAoKUmVwb3J0ZWQtYnk6IHN5emJvdCs2NjAxMDAxMmZkNGM1MzFhMWE5NkBz eXprYWxsZXIuYXBwc3BvdG1haWwuY29tClNpZ25lZC1vZmYtYnk6IFZhbmRhbmEgQk4gPGJudmFu ZGFuYUBnbWFpbC5jb20+ClNpZ25lZC1vZmYtYnk6IEhhbnMgVmVya3VpbCA8aHZlcmt1aWwtY2lz Y29AeHM0YWxsLm5sPgpTaWduZWQtb2ZmLWJ5OiBNYXVybyBDYXJ2YWxobyBDaGVoYWIgPG1jaGVo YWIrc2Ftc3VuZ0BrZXJuZWwub3JnPgpbYndoOiBCYWNrcG9ydGVkIHRvIDQuMTk6IFRoaXMgZnVu Y3Rpb24gdXNlcyBzdHJsY3B5KCkgaW5zdGVhZCBvZiBzdHJzY3B5KCldClNpZ25lZC1vZmYtYnk6 IEJlbiBIdXRjaGluZ3MgPGJlbi5odXRjaGluZ3NAY29kZXRoaW5rLmNvLnVrPgotLS0KIGRyaXZl cnMvbWVkaWEvdXNiL3pyMzY0eHgvenIzNjR4eC5jIHwgMyArKy0KIDEgZmlsZSBjaGFuZ2VkLCAy IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlh L3VzYi96cjM2NHh4L3pyMzY0eHguYyBiL2RyaXZlcnMvbWVkaWEvdXNiL3pyMzY0eHgvenIzNjR4 eC5jCmluZGV4IGI4ODg2MTAyYzVlZC4uNTAxMDMwYmIyZTdkIDEwMDY0NAotLS0gYS9kcml2ZXJz L21lZGlhL3VzYi96cjM2NHh4L3pyMzY0eHguYworKysgYi9kcml2ZXJzL21lZGlhL3VzYi96cjM2 NHh4L3pyMzY0eHguYwpAQCAtNzAzLDcgKzcwMyw4IEBAIHN0YXRpYyBpbnQgenIzNjR4eF92aWRp b2NfcXVlcnljYXAoc3RydWN0IGZpbGUgKmZpbGUsIHZvaWQgKnByaXYsCiAJc3RydWN0IHpyMzY0 eHhfY2FtZXJhICpjYW0gPSB2aWRlb19kcnZkYXRhKGZpbGUpOwogCiAJc3RybGNweShjYXAtPmRy aXZlciwgRFJJVkVSX0RFU0MsIHNpemVvZihjYXAtPmRyaXZlcikpOwotCXN0cmxjcHkoY2FwLT5j YXJkLCBjYW0tPnVkZXYtPnByb2R1Y3QsIHNpemVvZihjYXAtPmNhcmQpKTsKKwlpZiAoY2FtLT51 ZGV2LT5wcm9kdWN0KQorCQlzdHJsY3B5KGNhcC0+Y2FyZCwgY2FtLT51ZGV2LT5wcm9kdWN0LCBz aXplb2YoY2FwLT5jYXJkKSk7CiAJc3RybGNweShjYXAtPmJ1c19pbmZvLCBkZXZfbmFtZSgmY2Ft LT51ZGV2LT5kZXYpLAogCQlzaXplb2YoY2FwLT5idXNfaW5mbykpOwogCWNhcC0+ZGV2aWNlX2Nh cHMgPSBWNEwyX0NBUF9WSURFT19DQVBUVVJFIHwKCkZyb20gNTRlYjYxZDc3MGE1NDFjOGNkYWJh MjI3NDgyYjMxMjE1ZWE4YTc0ZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmF2aWQg RW1hbWRvb3N0IDxuYXZpZC5lbWFtZG9vc3RAZ21haWwuY29tPgpEYXRlOiBUaHUsIDEyIFNlcCAy MDE5IDIzOjIzOjI3IC0wNTAwClN1YmplY3Q6IGl3bHdpZmk6IGRiZ19pbmk6IGZpeCBtZW1vcnkg bGVhayBpbiBhbGxvY19zZ3RhYmxlCgpjb21taXQgYjRiODE0ZmVjMWE1YTg0OTM4M2Y3YjM4ODZi NjU0YTEzYWJiZGE3ZCB1cHN0cmVhbS4KCkluIGFsbG9jX3NndGFibGUgaWYgYWxsb2NfcGFnZSBm YWlscywgdGhlIGFsb2NhdGVkIHRhYmxlIHNob3VsZCBiZQpyZWxlYXNlZC4KClNpZ25lZC1vZmYt Ynk6IE5hdmlkIEVtYW1kb29zdCA8bmF2aWQuZW1hbWRvb3N0QGdtYWlsLmNvbT4KU2lnbmVkLW9m Zi1ieTogTHVjYSBDb2VsaG8gPGx1Y2lhbm8uY29lbGhvQGludGVsLmNvbT4KU2lnbmVkLW9mZi1i eTogQmVuIEh1dGNoaW5ncyA8YmVuLmh1dGNoaW5nc0Bjb2RldGhpbmsuY28udWs+Ci0tLQogZHJp dmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9mdy9kYmcuYyB8IDEgKwogMSBmaWxlIGNo YW5nZWQsIDEgaW5zZXJ0aW9uKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvd2lyZWxlc3Mv aW50ZWwvaXdsd2lmaS9mdy9kYmcuYyBiL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bHdp ZmkvZncvZGJnLmMKaW5kZXggMzQ0M2NiZGJhYjRhLi5kNmZjYTAwZWNiODggMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvZncvZGJnLmMKKysrIGIvZHJpdmVy cy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9mdy9kYmcuYwpAQCAtNTQ3LDYgKzU0Nyw3IEBA IHN0YXRpYyBzdHJ1Y3Qgc2NhdHRlcmxpc3QgKmFsbG9jX3NndGFibGUoaW50IHNpemUpCiAJCQkJ aWYgKG5ld19wYWdlKQogCQkJCQlfX2ZyZWVfcGFnZShuZXdfcGFnZSk7CiAJCQl9CisJCQlrZnJl ZSh0YWJsZSk7CiAJCQlyZXR1cm4gTlVMTDsKIAkJfQogCQlhbGxvY19zaXplID0gbWluX3QoaW50 LCBzaXplLCBQQUdFX1NJWkUpOwoKRnJvbSA2NTk2NTY1MWJmNWY5MWY4ZjRjZjIwZjNlZTkxNmM1 YjdhM2I1ZGM2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYXZpZCBFbWFtZG9vc3Qg PG5hdmlkLmVtYW1kb29zdEBnbWFpbC5jb20+CkRhdGU6IEZyaSwgMjcgU2VwIDIwMTkgMTU6NTY6 MDQgLTA1MDAKU3ViamVjdDogaXdsd2lmaTogcGNpZTogZml4IG1lbW9yeSBsZWFrcyBpbiBpd2xf cGNpZV9jdHh0X2luZm9fZ2VuM19pbml0Cgpjb21taXQgMGY0ZjE5OTQ0M2ZhY2E3MTU1MjNiMDY1 OWFhNTM2MjUxZDhiOTc4ZiB1cHN0cmVhbS4KCkluIGl3bF9wY2llX2N0eHRfaW5mb19nZW4zX2lu aXQgdGhlcmUgYXJlIGNhc2VzIHRoYXQgdGhlIGFsbG9jYXRlZCBkbWEKbWVtb3J5IGlzIGxlYWtl ZCBpbiBjYXNlIG9mIGVycm9yLgoKRE1BIG1lbW9yaWVzIHBycGhfc2NyYXRjaCwgcHJwaF9pbmZv LCBhbmQgY3R4dF9pbmZvX2dlbjMgYXJlIGFsbG9jYXRlZAphbmQgaW5pdGlhbGl6ZWQgdG8gYmUg bGF0ZXIgYXNzaWduZWQgdG8gdHJhbnNfcGNpZS4gQnV0IGluIGFueSBlcnJvciBjYXNlCmJlZm9y ZSBzdWNoIGFzc2lnbm1lbnQgdGhlIGFsbG9jYXRlZCBtZW1vcmllcyBzaG91bGQgYmUgcmVsZWFz ZWQuCgpGaXJzdCBvZiBzdWNoIGVycm9yIGNhc2VzIGhhcHBlbnMgd2hlbiBpd2xfcGNpZV9pbml0 X2Z3X3NlYyBmYWlscy4KQ3VycmVudCBpbXBsZW1lbnRhdGlvbiBjb3JyZWN0bHkgcmVsZWFzZXMg cHJwaF9zY3JhdGNoLiBCdXQgaW4gdHdvCnN1bnNlcXVlbnQgZXJyb3IgY2FzZXMgd2hlcmUgZG1h X2FsbG9jX2NvaGVyZW50IG1heSBmYWlsLCBzdWNoCnJlbGVhc2VzIGFyZSBtaXNzaW5nLgoKVGhp cyBjb21taXQgYWRkcyByZWxlYXNlIGZvciBwcnBoX3NjcmF0Y2ggd2hlbiBhbGxvY2F0aW9uIGZv cgpwcnBoX2luZm8gZmFpbHMsIGFuZCBhZGRzIHJlbGVhc2VzIGZvciBwcnBoX3NjcmF0Y2ggYW5k IHBycGhfaW5mbyB3aGVuCmFsbG9jYXRpb24gZm9yIGN0eHRfaW5mb19nZW4zIGZhaWxzLgoKRml4 ZXM6IDJlZTgyNDAyNjI4OCAoIml3bHdpZmk6IHBjaWU6IHN1cHBvcnQgY29udGV4dCBpbmZvcm1h dGlvbiBmb3IgMjI1NjAgZGV2aWNlcyIpClNpZ25lZC1vZmYtYnk6IE5hdmlkIEVtYW1kb29zdCA8 bmF2aWQuZW1hbWRvb3N0QGdtYWlsLmNvbT4KU2lnbmVkLW9mZi1ieTogTHVjYSBDb2VsaG8gPGx1 Y2lhbm8uY29lbGhvQGludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogQmVuIEh1dGNoaW5ncyA8YmVu Lmh1dGNoaW5nc0Bjb2RldGhpbmsuY28udWs+Ci0tLQogLi4uL2ludGVsL2l3bHdpZmkvcGNpZS9j dHh0LWluZm8tZ2VuMy5jICAgICAgIHwgMzYgKysrKysrKysrKysrKy0tLS0tLQogMSBmaWxlIGNo YW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvcGNpZS9jdHh0LWluZm8tZ2VuMy5jIGIv ZHJpdmVycy9uZXQvd2lyZWxlc3MvaW50ZWwvaXdsd2lmaS9wY2llL2N0eHQtaW5mby1nZW4zLmMK aW5kZXggNjRkOTc2ZDg3MmI4Li42NzgzYjIwZDk2ODEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0 L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvcGNpZS9jdHh0LWluZm8tZ2VuMy5jCisrKyBiL2RyaXZl cnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvcGNpZS9jdHh0LWluZm8tZ2VuMy5jCkBAIC0x MDIsMTMgKzEwMiw5IEBAIGludCBpd2xfcGNpZV9jdHh0X2luZm9fZ2VuM19pbml0KHN0cnVjdCBp d2xfdHJhbnMgKnRyYW5zLAogCiAJLyogYWxsb2NhdGUgdWNvZGUgc2VjdGlvbnMgaW4gZHJhbSBh bmQgc2V0IGFkZHJlc3NlcyAqLwogCXJldCA9IGl3bF9wY2llX2luaXRfZndfc2VjKHRyYW5zLCBm dywgJnBycGhfc2NyYXRjaC0+ZHJhbSk7Ci0JaWYgKHJldCkgewotCQlkbWFfZnJlZV9jb2hlcmVu dCh0cmFucy0+ZGV2LAotCQkJCSAgc2l6ZW9mKCpwcnBoX3NjcmF0Y2gpLAotCQkJCSAgcHJwaF9z Y3JhdGNoLAotCQkJCSAgdHJhbnNfcGNpZS0+cHJwaF9zY3JhdGNoX2RtYV9hZGRyKTsKLQkJcmV0 dXJuIHJldDsKLQl9CisJaWYgKHJldCkKKwkJZ290byBlcnJfZnJlZV9wcnBoX3NjcmF0Y2g7CisK IAogCS8qIEFsbG9jYXRlIHBycGggaW5mb3JtYXRpb24KIAkgKiBjdXJyZW50bHkgd2UgZG9uJ3Qg YXNzaWduIHRvIHRoZSBwcnBoIGluZm8gYW55dGhpbmcsIGJ1dCBpdCB3b3VsZCBnZXQKQEAgLTEx NiwxNiArMTEyLDIwIEBAIGludCBpd2xfcGNpZV9jdHh0X2luZm9fZ2VuM19pbml0KHN0cnVjdCBp d2xfdHJhbnMgKnRyYW5zLAogCXBycGhfaW5mbyA9IGRtYV9hbGxvY19jb2hlcmVudCh0cmFucy0+ ZGV2LCBzaXplb2YoKnBycGhfaW5mbyksCiAJCQkJICAgICAgICZ0cmFuc19wY2llLT5wcnBoX2lu Zm9fZG1hX2FkZHIsCiAJCQkJICAgICAgIEdGUF9LRVJORUwpOwotCWlmICghcHJwaF9pbmZvKQot CQlyZXR1cm4gLUVOT01FTTsKKwlpZiAoIXBycGhfaW5mbykgeworCQlyZXQgPSAtRU5PTUVNOwor CQlnb3RvIGVycl9mcmVlX3BycGhfc2NyYXRjaDsKKwl9CiAKIAkvKiBBbGxvY2F0ZSBjb250ZXh0 IGluZm8gKi8KIAljdHh0X2luZm9fZ2VuMyA9IGRtYV9hbGxvY19jb2hlcmVudCh0cmFucy0+ZGV2 LAogCQkJCQkgICAgc2l6ZW9mKCpjdHh0X2luZm9fZ2VuMyksCiAJCQkJCSAgICAmdHJhbnNfcGNp ZS0+Y3R4dF9pbmZvX2RtYV9hZGRyLAogCQkJCQkgICAgR0ZQX0tFUk5FTCk7Ci0JaWYgKCFjdHh0 X2luZm9fZ2VuMykKLQkJcmV0dXJuIC1FTk9NRU07CisJaWYgKCFjdHh0X2luZm9fZ2VuMykgewor CQlyZXQgPSAtRU5PTUVNOworCQlnb3RvIGVycl9mcmVlX3BycGhfaW5mbzsKKwl9CiAKIAljdHh0 X2luZm9fZ2VuMy0+cHJwaF9pbmZvX2Jhc2VfYWRkciA9CiAJCWNwdV90b19sZTY0KHRyYW5zX3Bj aWUtPnBycGhfaW5mb19kbWFfYWRkcik7CkBAIC0xNzYsNiArMTc2LDIwIEBAIGludCBpd2xfcGNp ZV9jdHh0X2luZm9fZ2VuM19pbml0KHN0cnVjdCBpd2xfdHJhbnMgKnRyYW5zLAogCWl3bF9zZXRf Yml0KHRyYW5zLCBDU1JfR1BfQ05UUkwsIENTUl9BVVRPX0ZVTkNfSU5JVCk7CiAKIAlyZXR1cm4g MDsKKworZXJyX2ZyZWVfcHJwaF9pbmZvOgorCWRtYV9mcmVlX2NvaGVyZW50KHRyYW5zLT5kZXYs CisJCQkgIHNpemVvZigqcHJwaF9pbmZvKSwKKwkJCXBycGhfaW5mbywKKwkJCXRyYW5zX3BjaWUt PnBycGhfaW5mb19kbWFfYWRkcik7CisKK2Vycl9mcmVlX3BycGhfc2NyYXRjaDoKKwlkbWFfZnJl ZV9jb2hlcmVudCh0cmFucy0+ZGV2LAorCQkJICBzaXplb2YoKnBycGhfc2NyYXRjaCksCisJCQlw cnBoX3NjcmF0Y2gsCisJCQl0cmFuc19wY2llLT5wcnBoX3NjcmF0Y2hfZG1hX2FkZHIpOworCXJl dHVybiByZXQ7CisKIH0KIAogdm9pZCBpd2xfcGNpZV9jdHh0X2luZm9fZ2VuM19mcmVlKHN0cnVj dCBpd2xfdHJhbnMgKnRyYW5zKQoKRnJvbSA5M2Y1MGU5NjljMmY1MjM4MDQ4MDRiYTA4MTkzZDMx NzYzNzJiZWE3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYXZpZCBFbWFtZG9vc3Qg PG5hdmlkLmVtYW1kb29zdEBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMTAgU2VwIDIwMTkgMTc6MjE6 MTkgLTA1MDAKU3ViamVjdDogUkRNQTogRml4IGdvdG8gdGFyZ2V0IHRvIHJlbGVhc2UgdGhlIGFs bG9jYXRlZCBtZW1vcnkKCmNvbW1pdCA0YTlkNDZhOWZlMTQ0MDFmMjFkZjY5Y2VhOTdjNjIzOTZk NWZiMDUzIHVwc3RyZWFtLgoKSW4gYm54dF9yZV9jcmVhdGVfc3JxKCksIHdoZW4gaWJfY29weV90 b191ZGF0YSgpIGZhaWxzIGFsbG9jYXRlZCBtZW1vcnkKc2hvdWxkIGJlIHJlbGVhc2VkIGJ5IGdv dG8gZmFpbC4KCkZpeGVzOiAzN2NiMTFhY2YxZjcgKCJSRE1BL2JueHRfcmU6IEFkZCBTUlEgc3Vw cG9ydCBmb3IgQnJvYWRjb20gYWRhcHRlcnMiKQpMaW5rOiBodHRwczovL2xvcmUua2VybmVsLm9y Zy9yLzIwMTkwOTEwMjIyMTIwLjE2NTE3LTEtbmF2aWQuZW1hbWRvb3N0QGdtYWlsLmNvbQpTaWdu ZWQtb2ZmLWJ5OiBOYXZpZCBFbWFtZG9vc3QgPG5hdmlkLmVtYW1kb29zdEBnbWFpbC5jb20+ClJl dmlld2VkLWJ5OiBKYXNvbiBHdW50aG9ycGUgPGpnZ0BtZWxsYW5veC5jb20+ClNpZ25lZC1vZmYt Ynk6IEphc29uIEd1bnRob3JwZSA8amdnQG1lbGxhbm94LmNvbT4KU2lnbmVkLW9mZi1ieTogQmVu IEh1dGNoaW5ncyA8YmVuLmh1dGNoaW5nc0Bjb2RldGhpbmsuY28udWs+Ci0tLQogZHJpdmVycy9p bmZpbmliYW5kL2h3L2JueHRfcmUvaWJfdmVyYnMuYyB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAx IGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvaW5maW5p YmFuZC9ody9ibnh0X3JlL2liX3ZlcmJzLmMgYi9kcml2ZXJzL2luZmluaWJhbmQvaHcvYm54dF9y ZS9pYl92ZXJicy5jCmluZGV4IGJjMmI5ZTAzODQzOS4uOTVjOWJlODhjOTYyIDEwMDY0NAotLS0g YS9kcml2ZXJzL2luZmluaWJhbmQvaHcvYm54dF9yZS9pYl92ZXJicy5jCisrKyBiL2RyaXZlcnMv aW5maW5pYmFuZC9ody9ibnh0X3JlL2liX3ZlcmJzLmMKQEAgLTE0NDYsNyArMTQ0Niw3IEBAIHN0 cnVjdCBpYl9zcnEgKmJueHRfcmVfY3JlYXRlX3NycShzdHJ1Y3QgaWJfcGQgKmliX3BkLAogCQkJ ZGV2X2VycihyZGV2X3RvX2RldihyZGV2KSwgIlNSUSBjb3B5IHRvIHVkYXRhIGZhaWxlZCEiKTsK IAkJCWJueHRfcXBsaWJfZGVzdHJveV9zcnEoJnJkZXYtPnFwbGliX3JlcywKIAkJCQkJICAgICAg ICZzcnEtPnFwbGliX3NycSk7Ci0JCQlnb3RvIGV4aXQ7CisJCQlnb3RvIGZhaWw7CiAJCX0KIAl9 CiAJaWYgKG5xKQoKRnJvbSBkOTNhOWI1ZjMzYTQzZWVhZmM2ZTA1ODAwNDgwNmVmNzRmMDI3MGNh IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBZdWVIYWliaW5nIDx5dWVoYWliaW5nQGh1 YXdlaS5jb20+CkRhdGU6IE1vbiwgMSBBcHIgMjAxOSAwOTozNTo1NCArMDgwMApTdWJqZWN0OiBk Y2NwOiBGaXggbWVtbGVhayBpbiBfX2ZlYXRfcmVnaXN0ZXJfc3AKCmNvbW1pdCAxZDNmZjA5NTBl MmI0MGRjODYxYjE3MzkwMjk2NDlkMDNmNTkxODIwIHVwc3RyZWFtLgoKSWYgZGNjcF9mZWF0X3B1 c2hfY2hhbmdlIGZhaWxzLCB3ZSBmb3JnZXQgZnJlZSB0aGUgbWVtCndoaWNoIGlzIGFsbG9jZWQg Ynkga21lbWR1cCBpbiBkY2NwX2ZlYXRfY2xvbmVfc3BfdmFsLgoKUmVwb3J0ZWQtYnk6IEh1bGsg Um9ib3QgPGh1bGtjaUBodWF3ZWkuY29tPgpGaXhlczogZThlZjk2N2E1NGY0ICgiZGNjcDogUmVn aXN0cmF0aW9uIHJvdXRpbmVzIGZvciBjaGFuZ2luZyBmZWF0dXJlIHZhbHVlcyIpClJldmlld2Vk LWJ5OiBNdWtlc2ggT2poYSA8bW9qaGFAY29kZWF1cm9yYS5vcmc+ClNpZ25lZC1vZmYtYnk6IFl1 ZUhhaWJpbmcgPHl1ZWhhaWJpbmdAaHVhd2VpLmNvbT4KU2lnbmVkLW9mZi1ieTogRGF2aWQgUy4g TWlsbGVyIDxkYXZlbUBkYXZlbWxvZnQubmV0PgpTaWduZWQtb2ZmLWJ5OiBCZW4gSHV0Y2hpbmdz IDxiZW4uaHV0Y2hpbmdzQGNvZGV0aGluay5jby51az4KLS0tCiBuZXQvZGNjcC9mZWF0LmMgfCA3 ICsrKysrKy0KIDEgZmlsZSBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkK CmRpZmYgLS1naXQgYS9uZXQvZGNjcC9mZWF0LmMgYi9uZXQvZGNjcC9mZWF0LmMKaW5kZXggZjIy N2YwMDJjNzNkLi5kYjg3ZDlmNTgwMTkgMTAwNjQ0Ci0tLSBhL25ldC9kY2NwL2ZlYXQuYworKysg Yi9uZXQvZGNjcC9mZWF0LmMKQEAgLTczOCw3ICs3MzgsMTIgQEAgc3RhdGljIGludCBfX2ZlYXRf cmVnaXN0ZXJfc3Aoc3RydWN0IGxpc3RfaGVhZCAqZm4sIHU4IGZlYXQsIHU4IGlzX2xvY2FsLAog CWlmIChkY2NwX2ZlYXRfY2xvbmVfc3BfdmFsKCZmdmFsLCBzcF92YWwsIHNwX2xlbikpCiAJCXJl dHVybiAtRU5PTUVNOwogCi0JcmV0dXJuIGRjY3BfZmVhdF9wdXNoX2NoYW5nZShmbiwgZmVhdCwg aXNfbG9jYWwsIG1hbmRhdG9yeSwgJmZ2YWwpOworCWlmIChkY2NwX2ZlYXRfcHVzaF9jaGFuZ2Uo Zm4sIGZlYXQsIGlzX2xvY2FsLCBtYW5kYXRvcnksICZmdmFsKSkgeworCQlrZnJlZShmdmFsLnNw LnZlYyk7CisJCXJldHVybiAtRU5PTUVNOworCX0KKworCXJldHVybiAwOwogfQogCiAvKioK --=-XQl1oKTPDnYhyPF0tPdK--