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=-9.9 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham 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 036CBC43603 for ; Thu, 19 Dec 2019 18:05:41 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A5DF020716 for ; Thu, 19 Dec 2019 18:05:40 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=nutanix.com header.i=@nutanix.com header.b="LfZ7ICxQ" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A5DF020716 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=nutanix.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:45988 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ii0B9-0007L2-Du for qemu-devel@archiver.kernel.org; Thu, 19 Dec 2019 13:05:39 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:39197) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ii08F-00043n-CF for qemu-devel@nongnu.org; Thu, 19 Dec 2019 13:02:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ii08C-0002MR-Bj for qemu-devel@nongnu.org; Thu, 19 Dec 2019 13:02:39 -0500 Received: from mx0b-002c1b01.pphosted.com ([148.163.155.12]:63394) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1ii08C-0002Gc-0o for qemu-devel@nongnu.org; Thu, 19 Dec 2019 13:02:36 -0500 Received: from pps.filterd (m0127842.ppops.net [127.0.0.1]) by mx0b-002c1b01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id xBJHu2LS010088; Thu, 19 Dec 2019 10:02:34 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nutanix.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=proofpoint20171006; bh=/VWQLM4sX5qeykkiOYYdqhWfRwZl5KHgSxVCs4islm0=; b=LfZ7ICxQ6M722nMRVa4SiC/wHX45EWkuD+9zV3jhm9sS05k8k6aYLIgaWI2/5LyZLooH Oax0k5sZeNVLdY0oe9MEjhe30LDEioaYedm9w/8payIVikDKSudO1dsFOOTb5n1UdoK0 B3029+1nqrAqR49uJnGEjBTahm4XQekZRljV0PSZoCyIiqYjd/Aby7OdeuukwmTY3Kw+ YzFzMOTLsjUiYu16tQ8G1YPi2AdTe2heesfXdhgkAL5Z3YMdQvRjiQFUkO3Kw7dW9o6q mOo1xfMC4QdlaKvyPXWdgZ+d2LctqnZzY1XjggXDMz4GcYiCkyJndq8vy6u941BXQ0G7 bQ== Received: from nam04-co1-obe.outbound.protection.outlook.com (mail-co1nam04lp2052.outbound.protection.outlook.com [104.47.45.52]) by mx0b-002c1b01.pphosted.com with ESMTP id 2wvyxmkab7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 19 Dec 2019 10:02:34 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ccn4LHWKcQP92jdXz283EOEkzL0YKuRG920uz2E+mGyDa/OaeMKNZbbUAaRDIaj8VJi2ZFLVlGqzFwo8e8pGXNTs6ZfYIKRLwctIGk4eC2UqYZ8sG/HFO2mY0lTNbUQUDdvv9nfM+o2h5Wy4eAsr9V71AAxqBHpvkEJdHhb36KJ1kkOJNkGwELSUWuBf1H/MbzkQ7Ov1W2CsJhirYLaT6nYnHMNPyT6yq5hfaGrWa0jp0DT2TK2EV1sfYWz+bRTtJ4u9mC1S61V8DkxlExY3UFtzVjY2uDRnMWSZ7mCZz93YOMbnSglhFHj7NI5sukUtKp//olKYSflBiWWiZ+8jHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/VWQLM4sX5qeykkiOYYdqhWfRwZl5KHgSxVCs4islm0=; b=K4V00K+z0ypGvWmjp9nGBEa+onfLWl/ZMYtciErkWLqOAHypzvMRNJm9WoxJzEAxvJhhhzqUCKxop+PMYY89mPywDOWHyOJ2KahTZw6KH+a7NsAx80pa/wxvFB4SMF4xWQC6UPg06396JqTrkwvS1N1wlUj2N3s2hdmE6ngKfQMIMpUplCi4NmZ4La/VgBKWWgB3Sy0AKPbRalhkQL6pUKSNUC6JWlS9epXJz05ZdYUpwSXl81ewQL2NtfrKwpHNo65mV2NtiAt4Q+/FNE/0alJWeW3B8r1U2mvsEv5XA3rR0e2XV5xQjQQ2Pgk/pZVBxU8XXKTP7fXnOUzNDA9gqg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nutanix.com; dmarc=pass action=none header.from=nutanix.com; dkim=pass header.d=nutanix.com; arc=none Received: from MWHPR02MB2656.namprd02.prod.outlook.com (10.168.206.142) by MWHPR02MB2303.namprd02.prod.outlook.com (10.168.245.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2559.14; Thu, 19 Dec 2019 18:02:31 +0000 Received: from MWHPR02MB2656.namprd02.prod.outlook.com ([fe80::c8f8:4820:a24c:3029]) by MWHPR02MB2656.namprd02.prod.outlook.com ([fe80::c8f8:4820:a24c:3029%10]) with mapi id 15.20.2559.012; Thu, 19 Dec 2019 18:02:31 +0000 Received: from nutanix.com (82.9.225.166) by AM4PR07CA0004.eurprd07.prod.outlook.com (2603:10a6:205:1::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2581.4 via Frontend Transport; Thu, 19 Dec 2019 18:02:29 +0000 From: Felipe Franciosi To: Marc-Andre Lureau , Phillipe Mathieu-Daude , Stefan Hajnoczi , Eduardo Habkost , Markus Armbruster , Alexey Kardashevskiy Subject: [PATCH v4 1/4] qom/object: enable setter for uint types Thread-Topic: [PATCH v4 1/4] qom/object: enable setter for uint types Thread-Index: AQHVtpZ7FkfEhVsX+kaB19cHfsfUcw== Date: Thu, 19 Dec 2019 18:02:31 +0000 Message-ID: <20191219180205.25191-2-felipe@nutanix.com> References: <20191219180205.25191-1-felipe@nutanix.com> In-Reply-To: <20191219180205.25191-1-felipe@nutanix.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: AM4PR07CA0004.eurprd07.prod.outlook.com (2603:10a6:205:1::17) To MWHPR02MB2656.namprd02.prod.outlook.com (2603:10b6:300:45::14) x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.20.1 x-originating-ip: [82.9.225.166] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 3fa90218-6420-4c07-82f3-08d784ad9df2 x-ms-traffictypediagnostic: MWHPR02MB2303: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-proofpoint-crosstenant: true x-ms-oob-tlc-oobclassifiers: OLM:287; x-forefront-prvs: 0256C18696 x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(396003)(376002)(346002)(39860400002)(136003)(366004)(189003)(199004)(66476007)(5660300002)(16526019)(186003)(66446008)(26005)(956004)(2906002)(4326008)(36756003)(8886007)(52116002)(1076003)(7696005)(81166006)(30864003)(8936002)(81156014)(86362001)(8676002)(478600001)(66946007)(6666004)(2616005)(64756008)(55016002)(107886003)(71200400001)(110136005)(66556008)(54906003)(316002)(64030200001)(579004); DIR:OUT; SFP:1102; SCL:1; SRVR:MWHPR02MB2303; H:MWHPR02MB2656.namprd02.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: nutanix.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: N0XFKmwjNnMe+Qh8pa+jbwnhVOglQ71cSCo4Ds8sBUxvhTovcTXxgFEy5npUm2RISbj9pn+FLr+cSvHeVxe3Q3eqXdmIny0eYLVADKAJI+v0YMW9GSXphMUFfS6x+x5mE2UbOx4PXkRo/K+kPzqOmdldDlnwAc4JNoEU0iImBTYeoMynDTWyyz6tV3EksB3ZPI1iHA1gG4RJZ9Lk7maVaRgEzRYdYKV0z4sgI3vJo5Erwcrmc3T6cbLxvOxa4IBPZRsLEbiAwIBu++U4sph+R3wl2Q+mbp5nwGgEqnfxzmEsl3CdKhuwhAQid7MR3w66+vHMXhoT5PO4TNWLVzRGSSf0+KB2FZAJGcmtIzG6T8jU604/lgbWm2jCqW+RutYjNnccbKyG+TYEQGoCAzZQQRGMrqiI4x536vB6wQp4lsq0Sk77Pzm9PZK6qXnv6n+wZ8Pedw2BTd0HElgCZk+ON0X59r6rlMlPYX4xtgO+QuPwQ6C1nBgr8BJWoG0Nz0VQ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: nutanix.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3fa90218-6420-4c07-82f3-08d784ad9df2 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Dec 2019 18:02:31.4407 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: bb047546-786f-4de1-bd75-24e5b6f79043 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 1veqXHQeBkx5cguF3jlB9NCP6U9k0P1Ke7I3yT3d7LclFotR6L8KBvww49Sd4lHob1/B4D4Xj5AQYPZglvCGaFstQqbXn1nkisN8DccfylA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR02MB2303 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.95,18.0.572 definitions=2019-12-19_06:2019-12-17,2019-12-19 signatures=0 X-Proofpoint-Spam-Reason: safe X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] [fuzzy] X-Received-From: 148.163.155.12 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "qemu-devel@nongnu.org" , Felipe Franciosi Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" VHJhZGl0aW9uYWxseSwgdGhlIHVpbnQtc3BlY2lmaWMgcHJvcGVydHkgaGVscGVycyBvbmx5IG9m ZmVyIGdldHRlcnMuDQpXaGVuIGFkZGluZyBvYmplY3QgKG9yIGNsYXNzKSB1aW50IHR5cGVzLCBv bmUgbXVzdCB0aGVyZWZvcmUgdXNlIHRoZQ0KZ2VuZXJpYyBwcm9wZXJ0eSBoZWxwZXIgaWYgYSBz ZXR0ZXIgaXMgbmVlZGVkIChhbmQgcHJvYmFibHkgZHVwbGljYXRlDQpzb21lIGNvZGUgd3JpdGlu ZyB0aGVpciBvd24gZ2V0dGVycy9zZXR0ZXJzKS4NCg0KVGhpcyBlbmhhbmNlcyB0aGUgdWludC1z cGVjaWZpYyBwcm9wZXJ0eSBoZWxwZXIgQVBJcyBieSBhZGRpbmcgYQ0KYml0d2lzZS1vcidkICdm bGFncycgZmllbGQgYW5kIG1vZGlmeWluZyBhbGwgY2xpZW50cyBvZiB0aGF0IEFQSSB0byBzZXQN CnRoaXMgcGFyYW1hdGVyIHRvIE9CSl9QUk9QX0ZMQUdfUkVBRC4gVGhpcyBtYWludGFpbnMgdGhl IGN1cnJlbnQNCmJlaGF2aW91ciB3aGlsc3QgYWxsb3dpbmcgb3RoZXJzIHRvIGFsc28gc2V0IE9C Sl9QUk9QX0ZMQUdfV1JJVEUgKG9yIHVzZQ0KdGhlIG1vcmUgY29udmVuaWVudCBPQkpfUFJPUF9G TEFHX1JFQURXUklURSkgaW4gdGhlIGZ1dHVyZSAod2hpY2ggd2lsbA0KYXV0b21hdGljYWxseSBp bnN0YWxsIGEgc2V0dGVyKS4gT3RoZXIgZmxhZ3MgbWF5IGJlIGFkZGVkIGxhdGVyLg0KDQpTaWdu ZWQtb2ZmLWJ5OiBGZWxpcGUgRnJhbmNpb3NpIDxmZWxpcGVAbnV0YW5peC5jb20+DQotLS0NCiBo dy9hY3BpL2ljaDkuYyAgICAgICB8ICAgNCArLQ0KIGh3L2FjcGkvcGNpaHAuYyAgICAgIHwgICA3 ICstDQogaHcvYWNwaS9waWl4NC5jICAgICAgfCAgMTIgKy0tDQogaHcvaXNhL2xwY19pY2g5LmMg ICAgfCAgIDQgKy0NCiBody9wcGMvc3BhcHJfZHJjLmMgICB8ICAgMyArLQ0KIGluY2x1ZGUvcW9t L29iamVjdC5oIHwgIDQ0ICsrKysrKystLQ0KIHFvbS9vYmplY3QuYyAgICAgICAgIHwgMjE2ICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0NCiB1aS9jb25zb2xlLmMg ICAgICAgICB8ICAgNCArLQ0KIDggZmlsZXMgY2hhbmdlZCwgMjQ2IGluc2VydGlvbnMoKyksIDQ4 IGRlbGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEvaHcvYWNwaS9pY2g5LmMgYi9ody9hY3BpL2lj aDkuYw0KaW5kZXggMjAzNGRkNzQ5ZS4uNzQyZmI3ODIyNiAxMDA2NDQNCi0tLSBhL2h3L2FjcGkv aWNoOS5jDQorKysgYi9ody9hY3BpL2ljaDkuYw0KQEAgLTQ1NCwxMiArNDU0LDEyIEBAIHZvaWQg aWNoOV9wbV9hZGRfcHJvcGVydGllcyhPYmplY3QgKm9iaiwgSUNIOUxQQ1BNUmVncyAqcG0sIEVy cm9yICoqZXJycCkNCiAgICAgcG0tPnM0X3ZhbCA9IDI7DQogDQogICAgIG9iamVjdF9wcm9wZXJ0 eV9hZGRfdWludDMyX3B0cihvYmosIEFDUElfUE1fUFJPUF9QTV9JT19CQVNFLA0KLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgJnBtLT5wbV9pb19iYXNlLCBlcnJwKTsNCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwbS0+cG1faW9fYmFzZSwgT0JKX1BST1Bf RkxBR19SRUFELCBlcnJwKTsNCiAgICAgb2JqZWN0X3Byb3BlcnR5X2FkZChvYmosIEFDUElfUE1f UFJPUF9HUEUwX0JMSywgInVpbnQzMiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgaWNoOV9w bV9nZXRfZ3BlMF9ibGssDQogICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgcG0s IE5VTEwpOw0KICAgICBvYmplY3RfcHJvcGVydHlfYWRkX3VpbnQzMl9wdHIob2JqLCBBQ1BJX1BN X1BST1BfR1BFMF9CTEtfTEVOLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg JmdwZTBfbGVuLCBlcnJwKTsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZn cGUwX2xlbiwgT0JKX1BST1BfRkxBR19SRUFELCBlcnJwKTsNCiAgICAgb2JqZWN0X3Byb3BlcnR5 X2FkZF9ib29sKG9iaiwgIm1lbW9yeS1ob3RwbHVnLXN1cHBvcnQiLA0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgaWNoOV9wbV9nZXRfbWVtb3J5X2hvdHBsdWdfc3VwcG9ydCwNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGljaDlfcG1fc2V0X21lbW9yeV9ob3RwbHVnX3N1cHBv cnQsDQpkaWZmIC0tZ2l0IGEvaHcvYWNwaS9wY2locC5jIGIvaHcvYWNwaS9wY2locC5jDQppbmRl eCA4NDEzMzQ4YTMzLi40ZGNlZjM3MmJmIDEwMDY0NA0KLS0tIGEvaHcvYWNwaS9wY2locC5jDQor KysgYi9ody9hY3BpL3BjaWhwLmMNCkBAIC04MCw3ICs4MCw4IEBAIHN0YXRpYyB2b2lkICphY3Bp X3NldF9ic2VsKFBDSUJ1cyAqYnVzLCB2b2lkICpvcGFxdWUpDQogDQogICAgICAgICAqYnVzX2Jz ZWwgPSAoKmJzZWxfYWxsb2MpKys7DQogICAgICAgICBvYmplY3RfcHJvcGVydHlfYWRkX3VpbnQz Ml9wdHIoT0JKRUNUKGJ1cyksIEFDUElfUENJSFBfUFJPUF9CU0VMLA0KLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGJ1c19ic2VsLCAmZXJyb3JfYWJvcnQpOw0KKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1c19ic2VsLCBPQkpfUFJPUF9GTEFH X1JFQUQsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmVycm9yX2Fi b3J0KTsNCiAgICAgfQ0KIA0KICAgICByZXR1cm4gYnNlbF9hbGxvYzsNCkBAIC0zNzMsOSArMzc0 LDkgQEAgdm9pZCBhY3BpX3BjaWhwX2luaXQoT2JqZWN0ICpvd25lciwgQWNwaVBjaUhwU3RhdGUg KnMsIFBDSUJ1cyAqcm9vdF9idXMsDQogICAgIG1lbW9yeV9yZWdpb25fYWRkX3N1YnJlZ2lvbihh ZGRyZXNzX3NwYWNlX2lvLCBzLT5pb19iYXNlLCAmcy0+aW8pOw0KIA0KICAgICBvYmplY3RfcHJv cGVydHlfYWRkX3VpbnQxNl9wdHIob3duZXIsIEFDUElfUENJSFBfSU9fQkFTRV9QUk9QLCAmcy0+ aW9fYmFzZSwNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZlcnJvcl9hYm9y dCk7DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPQkpfUFJPUF9GTEFHX1JF QUQsICZlcnJvcl9hYm9ydCk7DQogICAgIG9iamVjdF9wcm9wZXJ0eV9hZGRfdWludDE2X3B0cihv d25lciwgQUNQSV9QQ0lIUF9JT19MRU5fUFJPUCwgJnMtPmlvX2xlbiwNCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICZlcnJvcl9hYm9ydCk7DQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBPQkpfUFJPUF9GTEFHX1JFQUQsICZlcnJvcl9hYm9ydCk7DQogfQ0K IA0KIGNvbnN0IFZNU3RhdGVEZXNjcmlwdGlvbiB2bXN0YXRlX2FjcGlfcGNpaHBfcGNpX3N0YXR1 cyA9IHsNCmRpZmYgLS1naXQgYS9ody9hY3BpL3BpaXg0LmMgYi9ody9hY3BpL3BpaXg0LmMNCmlu ZGV4IDkzYWVjMmRkMmMuLmZlMDVhM2NlNDYgMTAwNjQ0DQotLS0gYS9ody9hY3BpL3BpaXg0LmMN CisrKyBiL2h3L2FjcGkvcGlpeDQuYw0KQEAgLTQ0MywxNyArNDQzLDE3IEBAIHN0YXRpYyB2b2lk IHBpaXg0X3BtX2FkZF9wcm9wZXRpZXMoUElJWDRQTVN0YXRlICpzKQ0KICAgICBzdGF0aWMgY29u c3QgdWludDE2X3Qgc2NpX2ludCA9IDk7DQogDQogICAgIG9iamVjdF9wcm9wZXJ0eV9hZGRfdWlu dDhfcHRyKE9CSkVDVChzKSwgQUNQSV9QTV9QUk9QX0FDUElfRU5BQkxFX0NNRCwNCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgJmFjcGlfZW5hYmxlX2NtZCwgTlVMTCk7DQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZhY3BpX2VuYWJsZV9jbWQsIE9CSl9QUk9Q X0ZMQUdfUkVBRCwgTlVMTCk7DQogICAgIG9iamVjdF9wcm9wZXJ0eV9hZGRfdWludDhfcHRyKE9C SkVDVChzKSwgQUNQSV9QTV9QUk9QX0FDUElfRElTQUJMRV9DTUQsDQotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICZhY3BpX2Rpc2FibGVfY21kLCBOVUxMKTsNCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgJmFjcGlfZGlzYWJsZV9jbWQsIE9CSl9QUk9QX0ZMQUdf UkVBRCwgTlVMTCk7DQogICAgIG9iamVjdF9wcm9wZXJ0eV9hZGRfdWludDMyX3B0cihPQkpFQ1Qo cyksIEFDUElfUE1fUFJPUF9HUEUwX0JMSywNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgJmdwZTBfYmxrLCBOVUxMKTsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJmdwZTBfYmxrLCBPQkpfUFJPUF9GTEFHX1JFQUQsIE5VTEwpOw0KICAgICBvYmplY3RfcHJv cGVydHlfYWRkX3VpbnQzMl9wdHIoT0JKRUNUKHMpLCBBQ1BJX1BNX1BST1BfR1BFMF9CTEtfTEVO LA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZ3BlMF9ibGtfbGVuLCBOVUxM KTsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmdwZTBfYmxrX2xlbiwgT0JK X1BST1BfRkxBR19SRUFELCBOVUxMKTsNCiAgICAgb2JqZWN0X3Byb3BlcnR5X2FkZF91aW50MTZf cHRyKE9CSkVDVChzKSwgQUNQSV9QTV9QUk9QX1NDSV9JTlQsDQotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICZzY2lfaW50LCBOVUxMKTsNCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgJnNjaV9pbnQsIE9CSl9QUk9QX0ZMQUdfUkVBRCwgTlVMTCk7DQogICAgIG9i amVjdF9wcm9wZXJ0eV9hZGRfdWludDMyX3B0cihPQkpFQ1QocyksIEFDUElfUE1fUFJPUF9QTV9J T19CQVNFLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcy0+aW9fYmFzZSwg TlVMTCk7DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzLT5pb19iYXNlLCBP QkpfUFJPUF9GTEFHX1JFQUQsIE5VTEwpOw0KIH0NCiANCiBzdGF0aWMgdm9pZCBwaWl4NF9wbV9y ZWFsaXplKFBDSURldmljZSAqZGV2LCBFcnJvciAqKmVycnApDQpkaWZmIC0tZ2l0IGEvaHcvaXNh L2xwY19pY2g5LmMgYi9ody9pc2EvbHBjX2ljaDkuYw0KaW5kZXggMTdjMjkyZTMwNi4uOTk1MTdj Mzk0NiAxMDA2NDQNCi0tLSBhL2h3L2lzYS9scGNfaWNoOS5jDQorKysgYi9ody9pc2EvbHBjX2lj aDkuYw0KQEAgLTY0NSw5ICs2NDUsOSBAQCBzdGF0aWMgdm9pZCBpY2g5X2xwY19hZGRfcHJvcGVy dGllcyhJQ0g5TFBDU3RhdGUgKmxwYykNCiAgICAgICAgICAgICAgICAgICAgICAgICBpY2g5X2xw Y19nZXRfc2NpX2ludCwNCiAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMLCBOVUxM LCBOVUxMKTsNCiAgICAgb2JqZWN0X3Byb3BlcnR5X2FkZF91aW50OF9wdHIoT0JKRUNUKGxwYyks IEFDUElfUE1fUFJPUF9BQ1BJX0VOQUJMRV9DTUQsDQotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICZhY3BpX2VuYWJsZV9jbWQsIE5VTEwpOw0KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAmYWNwaV9lbmFibGVfY21kLCBPQkpfUFJPUF9GTEFHX1JFQUQsIE5VTEwp Ow0KICAgICBvYmplY3RfcHJvcGVydHlfYWRkX3VpbnQ4X3B0cihPQkpFQ1QobHBjKSwgQUNQSV9Q TV9QUk9QX0FDUElfRElTQUJMRV9DTUQsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICZhY3BpX2Rpc2FibGVfY21kLCBOVUxMKTsNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJmFjcGlfZGlzYWJsZV9jbWQsIE9CSl9QUk9QX0ZMQUdfUkVBRCwgTlVMTCk7DQog DQogICAgIGljaDlfcG1fYWRkX3Byb3BlcnRpZXMoT0JKRUNUKGxwYyksICZscGMtPnBtLCBOVUxM KTsNCiB9DQpkaWZmIC0tZ2l0IGEvaHcvcHBjL3NwYXByX2RyYy5jIGIvaHcvcHBjL3NwYXByX2Ry Yy5jDQppbmRleCA2MmYxYTQyNTkyLi5iYmQ0YmYzNWM3IDEwMDY0NA0KLS0tIGEvaHcvcHBjL3Nw YXByX2RyYy5jDQorKysgYi9ody9wcGMvc3BhcHJfZHJjLmMNCkBAIC01NTMsNyArNTUzLDggQEAg c3RhdGljIHZvaWQgc3BhcHJfZHJfY29ubmVjdG9yX2luc3RhbmNlX2luaXQoT2JqZWN0ICpvYmop DQogICAgIFNwYXByRHJjICpkcmMgPSBTUEFQUl9EUl9DT05ORUNUT1Iob2JqKTsNCiAgICAgU3Bh cHJEcmNDbGFzcyAqZHJjayA9IFNQQVBSX0RSX0NPTk5FQ1RPUl9HRVRfQ0xBU1MoZHJjKTsNCiAN Ci0gICAgb2JqZWN0X3Byb3BlcnR5X2FkZF91aW50MzJfcHRyKG9iaiwgImlkIiwgJmRyYy0+aWQs IE5VTEwpOw0KKyAgICBvYmplY3RfcHJvcGVydHlfYWRkX3VpbnQzMl9wdHIob2JqLCAiaWQiLCAm ZHJjLT5pZCwgT0JKX1BST1BfRkxBR19SRUFELA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCk7DQogICAgIG9iamVjdF9wcm9wZXJ0eV9hZGQob2JqLCAiaW5kZXgiLCAi dWludDMyIiwgcHJvcF9nZXRfaW5kZXgsDQogICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg TlVMTCwgTlVMTCwgTlVMTCk7DQogICAgIG9iamVjdF9wcm9wZXJ0eV9hZGQob2JqLCAiZmR0Iiwg InN0cnVjdCIsIHByb3BfZ2V0X2ZkdCwNCmRpZmYgLS1naXQgYS9pbmNsdWRlL3FvbS9vYmplY3Qu aCBiL2luY2x1ZGUvcW9tL29iamVjdC5oDQppbmRleCAxMjhkMDBjNzdmLi5kMmJmZDc2NzQxIDEw MDY0NA0KLS0tIGEvaW5jbHVkZS9xb20vb2JqZWN0LmgNCisrKyBiL2luY2x1ZGUvcW9tL29iamVj dC5oDQpAQCAtMTU3OSw2NSArMTU3OSw5MyBAQCB2b2lkIG9iamVjdF9jbGFzc19wcm9wZXJ0eV9h ZGRfdG0oT2JqZWN0Q2xhc3MgKmtsYXNzLCBjb25zdCBjaGFyICpuYW1lLA0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB2b2lkICgqZ2V0KShPYmplY3QgKiwgc3RydWN0IHRtICos IEVycm9yICoqKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXJyb3IgKipl cnJwKTsNCiANCit0eXBlZGVmIGVudW0gew0KKyAgICAvKiBBdXRvbWF0aWNhbGx5IGFkZCBhIGdl dHRlciB0byB0aGUgcHJvcGVydHkgKi8NCisgICAgT0JKX1BST1BfRkxBR19SRUFEID0gMSA8PCAw LA0KKyAgICAvKiBBdXRvbWF0aWNhbGx5IGFkZCBhIHNldHRlciB0byB0aGUgcHJvcGVydHkgKi8N CisgICAgT0JKX1BST1BfRkxBR19XUklURSA9IDEgPDwgMSwNCisgICAgLyogQXV0b21hdGljYWxs eSBhZGQgYSBnZXR0ZXIgYW5kIGEgc2V0dGVyIHRvIHRoZSBwcm9wZXJ0eSAqLw0KKyAgICBPQkpf UFJPUF9GTEFHX1JFQURXUklURSA9IChPQkpfUFJPUF9GTEFHX1JFQUQgfCBPQkpfUFJPUF9GTEFH X1dSSVRFKSwNCit9IE9iamVjdFByb3BlcnR5RmxhZ3M7DQorDQogLyoqDQogICogb2JqZWN0X3By b3BlcnR5X2FkZF91aW50OF9wdHI6DQogICogQG9iajogdGhlIG9iamVjdCB0byBhZGQgYSBwcm9w ZXJ0eSB0bw0KICAqIEBuYW1lOiB0aGUgbmFtZSBvZiB0aGUgcHJvcGVydHkNCiAgKiBAdjogcG9p bnRlciB0byB2YWx1ZQ0KKyAqIEBmbGFnczogYml0d2lzZS1vcidkIE9iamVjdFByb3BlcnR5Rmxh Z3MNCiAgKiBAZXJycDogaWYgYW4gZXJyb3Igb2NjdXJzLCBhIHBvaW50ZXIgdG8gYW4gYXJlYSB0 byBzdG9yZSB0aGUgZXJyb3INCiAgKg0KICAqIEFkZCBhbiBpbnRlZ2VyIHByb3BlcnR5IGluIG1l bW9yeS4gIFRoaXMgZnVuY3Rpb24gd2lsbCBhZGQgYQ0KICAqIHByb3BlcnR5IG9mIHR5cGUgJ3Vp bnQ4Jy4NCiAgKi8NCiB2b2lkIG9iamVjdF9wcm9wZXJ0eV9hZGRfdWludDhfcHRyKE9iamVjdCAq b2JqLCBjb25zdCBjaGFyICpuYW1lLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3QgdWludDhfdCAqdiwgRXJyb3IgKiplcnJwKTsNCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKnYsIE9iamVjdFByb3BlcnR5RmxhZ3MgZmxh Z3MsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFcnJvciAqKmVycnApOw0K IHZvaWQgb2JqZWN0X2NsYXNzX3Byb3BlcnR5X2FkZF91aW50OF9wdHIoT2JqZWN0Q2xhc3MgKmts YXNzLCBjb25zdCBjaGFyICpuYW1lLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3QgdWludDhfdCAqdiwgRXJyb3IgKiplcnJwKTsNCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKnYsDQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPYmplY3RQcm9wZXJ0eUZsYWdzIGZsYWdz LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXJyb3IgKiplcnJw KTsNCiANCiAvKioNCiAgKiBvYmplY3RfcHJvcGVydHlfYWRkX3VpbnQxNl9wdHI6DQogICogQG9i ajogdGhlIG9iamVjdCB0byBhZGQgYSBwcm9wZXJ0eSB0bw0KICAqIEBuYW1lOiB0aGUgbmFtZSBv ZiB0aGUgcHJvcGVydHkNCiAgKiBAdjogcG9pbnRlciB0byB2YWx1ZQ0KKyAqIEBmbGFnczogYml0 d2lzZS1vcidkIE9iamVjdFByb3BlcnR5RmxhZ3MNCiAgKiBAZXJycDogaWYgYW4gZXJyb3Igb2Nj dXJzLCBhIHBvaW50ZXIgdG8gYW4gYXJlYSB0byBzdG9yZSB0aGUgZXJyb3INCiAgKg0KICAqIEFk ZCBhbiBpbnRlZ2VyIHByb3BlcnR5IGluIG1lbW9yeS4gIFRoaXMgZnVuY3Rpb24gd2lsbCBhZGQg YQ0KICAqIHByb3BlcnR5IG9mIHR5cGUgJ3VpbnQxNicuDQogICovDQogdm9pZCBvYmplY3RfcHJv cGVydHlfYWRkX3VpbnQxNl9wdHIoT2JqZWN0ICpvYmosIGNvbnN0IGNoYXIgKm5hbWUsDQotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDE2X3QgKnYsIEVycm9y ICoqZXJycCk7DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWlu dDE2X3QgKnYsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0UHJv cGVydHlGbGFncyBmbGFncywNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBF cnJvciAqKmVycnApOw0KIHZvaWQgb2JqZWN0X2NsYXNzX3Byb3BlcnR5X2FkZF91aW50MTZfcHRy KE9iamVjdENsYXNzICprbGFzcywgY29uc3QgY2hhciAqbmFtZSwNCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50MTZfdCAqdiwgRXJyb3IgKiplcnJw KTsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50 MTZfdCAqdiwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPYmpl Y3RQcm9wZXJ0eUZsYWdzIGZsYWdzLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEVycm9yICoqZXJycCk7DQogDQogLyoqDQogICogb2JqZWN0X3Byb3BlcnR5X2Fk ZF91aW50MzJfcHRyOg0KICAqIEBvYmo6IHRoZSBvYmplY3QgdG8gYWRkIGEgcHJvcGVydHkgdG8N CiAgKiBAbmFtZTogdGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5DQogICogQHY6IHBvaW50ZXIgdG8g dmFsdWUNCisgKiBAZmxhZ3M6IGJpdHdpc2Utb3InZCBPYmplY3RQcm9wZXJ0eUZsYWdzDQogICog QGVycnA6IGlmIGFuIGVycm9yIG9jY3VycywgYSBwb2ludGVyIHRvIGFuIGFyZWEgdG8gc3RvcmUg dGhlIGVycm9yDQogICoNCiAgKiBBZGQgYW4gaW50ZWdlciBwcm9wZXJ0eSBpbiBtZW1vcnkuICBU aGlzIGZ1bmN0aW9uIHdpbGwgYWRkIGENCiAgKiBwcm9wZXJ0eSBvZiB0eXBlICd1aW50MzInLg0K ICAqLw0KIHZvaWQgb2JqZWN0X3Byb3BlcnR5X2FkZF91aW50MzJfcHRyKE9iamVjdCAqb2JqLCBj b25zdCBjaGFyICpuYW1lLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv bnN0IHVpbnQzMl90ICp2LCBFcnJvciAqKmVycnApOw0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IHVpbnQzMl90ICp2LA0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE9iamVjdFByb3BlcnR5RmxhZ3MgZmxhZ3MsDQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgRXJyb3IgKiplcnJwKTsNCiB2b2lkIG9iamVjdF9jbGFzc19w cm9wZXJ0eV9hZGRfdWludDMyX3B0cihPYmplY3RDbGFzcyAqa2xhc3MsIGNvbnN0IGNoYXIgKm5h bWUsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWlu dDMyX3QgKnYsIEVycm9yICoqZXJycCk7DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3QgdWludDMyX3QgKnYsDQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgT2JqZWN0UHJvcGVydHlGbGFncyBmbGFncywNCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFcnJvciAqKmVycnApOw0KIA0KIC8qKg0K ICAqIG9iamVjdF9wcm9wZXJ0eV9hZGRfdWludDY0X3B0cjoNCiAgKiBAb2JqOiB0aGUgb2JqZWN0 IHRvIGFkZCBhIHByb3BlcnR5IHRvDQogICogQG5hbWU6IHRoZSBuYW1lIG9mIHRoZSBwcm9wZXJ0 eQ0KICAqIEB2OiBwb2ludGVyIHRvIHZhbHVlDQorICogQGZsYWdzOiBiaXR3aXNlLW9yJ2QgT2Jq ZWN0UHJvcGVydHlGbGFncw0KICAqIEBlcnJwOiBpZiBhbiBlcnJvciBvY2N1cnMsIGEgcG9pbnRl ciB0byBhbiBhcmVhIHRvIHN0b3JlIHRoZSBlcnJvcg0KICAqDQogICogQWRkIGFuIGludGVnZXIg cHJvcGVydHkgaW4gbWVtb3J5LiAgVGhpcyBmdW5jdGlvbiB3aWxsIGFkZCBhDQogICogcHJvcGVy dHkgb2YgdHlwZSAndWludDY0Jy4NCiAgKi8NCiB2b2lkIG9iamVjdF9wcm9wZXJ0eV9hZGRfdWlu dDY0X3B0cihPYmplY3QgKm9iaiwgY29uc3QgY2hhciAqbmFtZSwNCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50NjRfdCAqdiwgRXJyb3IgKipFcnJwKTsNCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50NjRfdCAqdiwNCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPYmplY3RQcm9wZXJ0eUZsYWdzIGZs YWdzLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVycm9yICoqRXJycCk7 DQogdm9pZCBvYmplY3RfY2xhc3NfcHJvcGVydHlfYWRkX3VpbnQ2NF9wdHIoT2JqZWN0Q2xhc3Mg KmtsYXNzLCBjb25zdCBjaGFyICpuYW1lLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IHVpbnQ2NF90ICp2LCBFcnJvciAqKkVycnApOw0KKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ2NF90ICp2LA0KKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdFByb3BlcnR5Rmxh Z3MgZmxhZ3MsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXJy b3IgKipFcnJwKTsNCiANCiAvKioNCiAgKiBvYmplY3RfcHJvcGVydHlfYWRkX2FsaWFzOg0KZGlm ZiAtLWdpdCBhL3FvbS9vYmplY3QuYyBiL3FvbS9vYmplY3QuYw0KaW5kZXggZDUxYjU3ZmJhMS4u NzdjMjY4MjI5NiAxMDA2NDQNCi0tLSBhL3FvbS9vYmplY3QuYw0KKysrIGIvcW9tL29iamVjdC5j DQpAQCAtMjMyNiw2ICsyMzI2LDIyIEBAIHN0YXRpYyB2b2lkIHByb3BlcnR5X2dldF91aW50OF9w dHIoT2JqZWN0ICpvYmosIFZpc2l0b3IgKnYsIGNvbnN0IGNoYXIgKm5hbWUsDQogICAgIHZpc2l0 X3R5cGVfdWludDgodiwgbmFtZSwgJnZhbHVlLCBlcnJwKTsNCiB9DQogDQorc3RhdGljIHZvaWQg cHJvcGVydHlfc2V0X3VpbnQ4X3B0cihPYmplY3QgKm9iaiwgVmlzaXRvciAqdiwgY29uc3QgY2hh ciAqbmFtZSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKm9wYXF1 ZSwgRXJyb3IgKiplcnJwKQ0KK3sNCisgICAgdWludDhfdCAqZmllbGQgPSBvcGFxdWU7DQorICAg IHVpbnQ4X3QgdmFsdWU7DQorICAgIEVycm9yICpsb2NhbF9lcnIgPSBOVUxMOw0KKw0KKyAgICB2 aXNpdF90eXBlX3VpbnQ4KHYsIG5hbWUsICZ2YWx1ZSwgJmxvY2FsX2Vycik7DQorICAgIGlmIChs b2NhbF9lcnIpIHsNCisgICAgICAgIGVycm9yX3Byb3BhZ2F0ZShlcnJwLCBsb2NhbF9lcnIpOw0K KyAgICAgICAgcmV0dXJuOw0KKyAgICB9DQorDQorICAgICpmaWVsZCA9IHZhbHVlOw0KK30NCisN CiBzdGF0aWMgdm9pZCBwcm9wZXJ0eV9nZXRfdWludDE2X3B0cihPYmplY3QgKm9iaiwgVmlzaXRv ciAqdiwgY29uc3QgY2hhciAqbmFtZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB2b2lkICpvcGFxdWUsIEVycm9yICoqZXJycCkNCiB7DQpAQCAtMjMzMyw2ICsyMzQ5LDIy IEBAIHN0YXRpYyB2b2lkIHByb3BlcnR5X2dldF91aW50MTZfcHRyKE9iamVjdCAqb2JqLCBWaXNp dG9yICp2LCBjb25zdCBjaGFyICpuYW1lLA0KICAgICB2aXNpdF90eXBlX3VpbnQxNih2LCBuYW1l LCAmdmFsdWUsIGVycnApOw0KIH0NCiANCitzdGF0aWMgdm9pZCBwcm9wZXJ0eV9zZXRfdWludDE2 X3B0cihPYmplY3QgKm9iaiwgVmlzaXRvciAqdiwgY29uc3QgY2hhciAqbmFtZSwNCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpvcGFxdWUsIEVycm9yICoqZXJycCkN Cit7DQorICAgIHVpbnQxNl90ICpmaWVsZCA9IG9wYXF1ZTsNCisgICAgdWludDE2X3QgdmFsdWU7 DQorICAgIEVycm9yICpsb2NhbF9lcnIgPSBOVUxMOw0KKw0KKyAgICB2aXNpdF90eXBlX3VpbnQx Nih2LCBuYW1lLCAmdmFsdWUsICZsb2NhbF9lcnIpOw0KKyAgICBpZiAobG9jYWxfZXJyKSB7DQor ICAgICAgICBlcnJvcl9wcm9wYWdhdGUoZXJycCwgbG9jYWxfZXJyKTsNCisgICAgICAgIHJldHVy bjsNCisgICAgfQ0KKw0KKyAgICAqZmllbGQgPSB2YWx1ZTsNCit9DQorDQogc3RhdGljIHZvaWQg cHJvcGVydHlfZ2V0X3VpbnQzMl9wdHIoT2JqZWN0ICpvYmosIFZpc2l0b3IgKnYsIGNvbnN0IGNo YXIgKm5hbWUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqb3Bh cXVlLCBFcnJvciAqKmVycnApDQogew0KQEAgLTIzNDAsNiArMjM3MiwyMiBAQCBzdGF0aWMgdm9p ZCBwcm9wZXJ0eV9nZXRfdWludDMyX3B0cihPYmplY3QgKm9iaiwgVmlzaXRvciAqdiwgY29uc3Qg Y2hhciAqbmFtZSwNCiAgICAgdmlzaXRfdHlwZV91aW50MzIodiwgbmFtZSwgJnZhbHVlLCBlcnJw KTsNCiB9DQogDQorc3RhdGljIHZvaWQgcHJvcGVydHlfc2V0X3VpbnQzMl9wdHIoT2JqZWN0ICpv YmosIFZpc2l0b3IgKnYsIGNvbnN0IGNoYXIgKm5hbWUsDQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdm9pZCAqb3BhcXVlLCBFcnJvciAqKmVycnApDQorew0KKyAgICB1aW50 MzJfdCAqZmllbGQgPSBvcGFxdWU7DQorICAgIHVpbnQzMl90IHZhbHVlOw0KKyAgICBFcnJvciAq bG9jYWxfZXJyID0gTlVMTDsNCisNCisgICAgdmlzaXRfdHlwZV91aW50MzIodiwgbmFtZSwgJnZh bHVlLCAmbG9jYWxfZXJyKTsNCisgICAgaWYgKGxvY2FsX2Vycikgew0KKyAgICAgICAgZXJyb3Jf cHJvcGFnYXRlKGVycnAsIGxvY2FsX2Vycik7DQorICAgICAgICByZXR1cm47DQorICAgIH0NCisN CisgICAgKmZpZWxkID0gdmFsdWU7DQorfQ0KKw0KIHN0YXRpYyB2b2lkIHByb3BlcnR5X2dldF91 aW50NjRfcHRyKE9iamVjdCAqb2JqLCBWaXNpdG9yICp2LCBjb25zdCBjaGFyICpuYW1lLA0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKm9wYXF1ZSwgRXJyb3IgKipl cnJwKQ0KIHsNCkBAIC0yMzQ3LDYwICsyMzk1LDE4MCBAQCBzdGF0aWMgdm9pZCBwcm9wZXJ0eV9n ZXRfdWludDY0X3B0cihPYmplY3QgKm9iaiwgVmlzaXRvciAqdiwgY29uc3QgY2hhciAqbmFtZSwN CiAgICAgdmlzaXRfdHlwZV91aW50NjQodiwgbmFtZSwgJnZhbHVlLCBlcnJwKTsNCiB9DQogDQor c3RhdGljIHZvaWQgcHJvcGVydHlfc2V0X3VpbnQ2NF9wdHIoT2JqZWN0ICpvYmosIFZpc2l0b3Ig KnYsIGNvbnN0IGNoYXIgKm5hbWUsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgdm9pZCAqb3BhcXVlLCBFcnJvciAqKmVycnApDQorew0KKyAgICB1aW50NjRfdCAqZmllbGQg PSBvcGFxdWU7DQorICAgIHVpbnQ2NF90IHZhbHVlOw0KKyAgICBFcnJvciAqbG9jYWxfZXJyID0g TlVMTDsNCisNCisgICAgdmlzaXRfdHlwZV91aW50NjQodiwgbmFtZSwgJnZhbHVlLCAmbG9jYWxf ZXJyKTsNCisgICAgaWYgKGxvY2FsX2Vycikgew0KKyAgICAgICAgZXJyb3JfcHJvcGFnYXRlKGVy cnAsIGxvY2FsX2Vycik7DQorICAgICAgICByZXR1cm47DQorICAgIH0NCisNCisgICAgKmZpZWxk ID0gdmFsdWU7DQorfQ0KKw0KIHZvaWQgb2JqZWN0X3Byb3BlcnR5X2FkZF91aW50OF9wdHIoT2Jq ZWN0ICpvYmosIGNvbnN0IGNoYXIgKm5hbWUsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCB1aW50OF90ICp2LCBFcnJvciAqKmVycnApDQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICp2LA0KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgT2JqZWN0UHJvcGVydHlGbGFncyBmbGFncywNCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIEVycm9yICoqZXJycCkNCiB7DQotICAgIG9iamVjdF9w cm9wZXJ0eV9hZGQob2JqLCBuYW1lLCAidWludDgiLCBwcm9wZXJ0eV9nZXRfdWludDhfcHRyLA0K LSAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsICh2b2lkICopdiwgZXJycCk7DQor ICAgIE9iamVjdFByb3BlcnR5QWNjZXNzb3IgKmdldHRlciA9IE5VTEw7DQorICAgIE9iamVjdFBy b3BlcnR5QWNjZXNzb3IgKnNldHRlciA9IE5VTEw7DQorDQorICAgIGlmICgoZmxhZ3MgJiBPQkpf UFJPUF9GTEFHX1JFQUQpID09IE9CSl9QUk9QX0ZMQUdfUkVBRCkgew0KKyAgICAgICAgZ2V0dGVy ID0gcHJvcGVydHlfZ2V0X3VpbnQ4X3B0cjsNCisgICAgfQ0KKw0KKyAgICBpZiAoKGZsYWdzICYg T0JKX1BST1BfRkxBR19XUklURSkgPT0gT0JKX1BST1BfRkxBR19XUklURSkgew0KKyAgICAgICAg c2V0dGVyID0gcHJvcGVydHlfc2V0X3VpbnQ4X3B0cjsNCisgICAgfQ0KKw0KKyAgICBvYmplY3Rf cHJvcGVydHlfYWRkKG9iaiwgbmFtZSwgInVpbnQ4IiwNCisgICAgICAgICAgICAgICAgICAgICAg ICBnZXR0ZXIsIHNldHRlciwgTlVMTCwgKHZvaWQgKil2LCBlcnJwKTsNCiB9DQogDQogdm9pZCBv YmplY3RfY2xhc3NfcHJvcGVydHlfYWRkX3VpbnQ4X3B0cihPYmplY3RDbGFzcyAqa2xhc3MsIGNv bnN0IGNoYXIgKm5hbWUsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCB1aW50OF90ICp2LCBFcnJvciAqKmVycnApDQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICp2LA0KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0UHJvcGVydHlGbGFncyBmbGFncywNCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVycm9yICoqZXJycCkNCiB7DQot ICAgIG9iamVjdF9jbGFzc19wcm9wZXJ0eV9hZGQoa2xhc3MsIG5hbWUsICJ1aW50OCIsIHByb3Bl cnR5X2dldF91aW50OF9wdHIsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg TlVMTCwgKHZvaWQgKil2LCBlcnJwKTsNCisgICAgT2JqZWN0UHJvcGVydHlBY2Nlc3NvciAqZ2V0 dGVyID0gTlVMTDsNCisgICAgT2JqZWN0UHJvcGVydHlBY2Nlc3NvciAqc2V0dGVyID0gTlVMTDsN CisNCisgICAgaWYgKChmbGFncyAmIE9CSl9QUk9QX0ZMQUdfUkVBRCkgPT0gT0JKX1BST1BfRkxB R19SRUFEKSB7DQorICAgICAgICBnZXR0ZXIgPSBwcm9wZXJ0eV9nZXRfdWludDhfcHRyOw0KKyAg ICB9DQorDQorICAgIGlmICgoZmxhZ3MgJiBPQkpfUFJPUF9GTEFHX1dSSVRFKSA9PSBPQkpfUFJP UF9GTEFHX1dSSVRFKSB7DQorICAgICAgICBzZXR0ZXIgPSBwcm9wZXJ0eV9zZXRfdWludDhfcHRy Ow0KKyAgICB9DQorDQorICAgIG9iamVjdF9jbGFzc19wcm9wZXJ0eV9hZGQoa2xhc3MsIG5hbWUs ICJ1aW50OCIsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0dGVyLCBzZXR0ZXIs IE5VTEwsICh2b2lkICopdiwgZXJycCk7DQogfQ0KIA0KIHZvaWQgb2JqZWN0X3Byb3BlcnR5X2Fk ZF91aW50MTZfcHRyKE9iamVjdCAqb2JqLCBjb25zdCBjaGFyICpuYW1lLA0KLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQxNl90ICp2LCBFcnJvciAqKmVycnAp DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDE2X3QgKnYs DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0UHJvcGVydHlGbGFn cyBmbGFncywNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFcnJvciAqKmVy cnApDQogew0KLSAgICBvYmplY3RfcHJvcGVydHlfYWRkKG9iaiwgbmFtZSwgInVpbnQxNiIsIHBy b3BlcnR5X2dldF91aW50MTZfcHRyLA0KLSAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5V TEwsICh2b2lkICopdiwgZXJycCk7DQorICAgIE9iamVjdFByb3BlcnR5QWNjZXNzb3IgKmdldHRl ciA9IE5VTEw7DQorICAgIE9iamVjdFByb3BlcnR5QWNjZXNzb3IgKnNldHRlciA9IE5VTEw7DQor DQorICAgIGlmICgoZmxhZ3MgJiBPQkpfUFJPUF9GTEFHX1JFQUQpID09IE9CSl9QUk9QX0ZMQUdf UkVBRCkgew0KKyAgICAgICAgZ2V0dGVyID0gcHJvcGVydHlfZ2V0X3VpbnQxNl9wdHI7DQorICAg IH0NCisNCisgICAgaWYgKChmbGFncyAmIE9CSl9QUk9QX0ZMQUdfV1JJVEUpID09IE9CSl9QUk9Q X0ZMQUdfV1JJVEUpIHsNCisgICAgICAgIHNldHRlciA9IHByb3BlcnR5X3NldF91aW50MTZfcHRy Ow0KKyAgICB9DQorDQorICAgIG9iamVjdF9wcm9wZXJ0eV9hZGQob2JqLCBuYW1lLCAidWludDE2 IiwNCisgICAgICAgICAgICAgICAgICAgICAgICBnZXR0ZXIsIHNldHRlciwgTlVMTCwgKHZvaWQg Kil2LCBlcnJwKTsNCiB9DQogDQogdm9pZCBvYmplY3RfY2xhc3NfcHJvcGVydHlfYWRkX3VpbnQx Nl9wdHIoT2JqZWN0Q2xhc3MgKmtsYXNzLCBjb25zdCBjaGFyICpuYW1lLA0KLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQxNl90ICp2LCBFcnJvciAq KmVycnApDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg dWludDE2X3QgKnYsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg T2JqZWN0UHJvcGVydHlGbGFncyBmbGFncywNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBFcnJvciAqKmVycnApDQogew0KLSAgICBvYmplY3RfY2xhc3NfcHJvcGVy dHlfYWRkKGtsYXNzLCBuYW1lLCAidWludDE2IiwgcHJvcGVydHlfZ2V0X3VpbnQxNl9wdHIsDQot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgKHZvaWQgKil2LCBlcnJw KTsNCisgICAgT2JqZWN0UHJvcGVydHlBY2Nlc3NvciAqZ2V0dGVyID0gTlVMTDsNCisgICAgT2Jq ZWN0UHJvcGVydHlBY2Nlc3NvciAqc2V0dGVyID0gTlVMTDsNCisNCisgICAgaWYgKChmbGFncyAm IE9CSl9QUk9QX0ZMQUdfUkVBRCkgPT0gT0JKX1BST1BfRkxBR19SRUFEKSB7DQorICAgICAgICBn ZXR0ZXIgPSBwcm9wZXJ0eV9nZXRfdWludDE2X3B0cjsNCisgICAgfQ0KKw0KKyAgICBpZiAoKGZs YWdzICYgT0JKX1BST1BfRkxBR19XUklURSkgPT0gT0JKX1BST1BfRkxBR19XUklURSkgew0KKyAg ICAgICAgc2V0dGVyID0gcHJvcGVydHlfc2V0X3VpbnQxNl9wdHI7DQorICAgIH0NCisNCisgICAg b2JqZWN0X2NsYXNzX3Byb3BlcnR5X2FkZChrbGFzcywgbmFtZSwgInVpbnQxNiIsDQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgZ2V0dGVyLCBzZXR0ZXIsIE5VTEwsICh2b2lkICopdiwg ZXJycCk7DQogfQ0KIA0KIHZvaWQgb2JqZWN0X3Byb3BlcnR5X2FkZF91aW50MzJfcHRyKE9iamVj dCAqb2JqLCBjb25zdCBjaGFyICpuYW1lLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IHVpbnQzMl90ICp2LCBFcnJvciAqKmVycnApDQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDMyX3QgKnYsDQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgT2JqZWN0UHJvcGVydHlGbGFncyBmbGFncywNCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFcnJvciAqKmVycnApDQogew0KLSAgICBvYmpl Y3RfcHJvcGVydHlfYWRkKG9iaiwgbmFtZSwgInVpbnQzMiIsIHByb3BlcnR5X2dldF91aW50MzJf cHRyLA0KLSAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsICh2b2lkICopdiwgZXJy cCk7DQorICAgIE9iamVjdFByb3BlcnR5QWNjZXNzb3IgKmdldHRlciA9IE5VTEw7DQorICAgIE9i amVjdFByb3BlcnR5QWNjZXNzb3IgKnNldHRlciA9IE5VTEw7DQorDQorICAgIGlmICgoZmxhZ3Mg JiBPQkpfUFJPUF9GTEFHX1JFQUQpID09IE9CSl9QUk9QX0ZMQUdfUkVBRCkgew0KKyAgICAgICAg Z2V0dGVyID0gcHJvcGVydHlfZ2V0X3VpbnQzMl9wdHI7DQorICAgIH0NCisNCisgICAgaWYgKChm bGFncyAmIE9CSl9QUk9QX0ZMQUdfV1JJVEUpID09IE9CSl9QUk9QX0ZMQUdfV1JJVEUpIHsNCisg ICAgICAgIHNldHRlciA9IHByb3BlcnR5X3NldF91aW50MzJfcHRyOw0KKyAgICB9DQorDQorICAg IG9iamVjdF9wcm9wZXJ0eV9hZGQob2JqLCBuYW1lLCAidWludDMyIiwNCisgICAgICAgICAgICAg ICAgICAgICAgICBnZXR0ZXIsIHNldHRlciwgTlVMTCwgKHZvaWQgKil2LCBlcnJwKTsNCiB9DQog DQogdm9pZCBvYmplY3RfY2xhc3NfcHJvcGVydHlfYWRkX3VpbnQzMl9wdHIoT2JqZWN0Q2xhc3Mg KmtsYXNzLCBjb25zdCBjaGFyICpuYW1lLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IHVpbnQzMl90ICp2LCBFcnJvciAqKmVycnApDQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDMyX3QgKnYsDQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0UHJvcGVydHlGbGFn cyBmbGFncywNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFcnJv ciAqKmVycnApDQogew0KLSAgICBvYmplY3RfY2xhc3NfcHJvcGVydHlfYWRkKGtsYXNzLCBuYW1l LCAidWludDMyIiwgcHJvcGVydHlfZ2V0X3VpbnQzMl9wdHIsDQotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgTlVMTCwgKHZvaWQgKil2LCBlcnJwKTsNCisgICAgT2JqZWN0UHJv cGVydHlBY2Nlc3NvciAqZ2V0dGVyID0gTlVMTDsNCisgICAgT2JqZWN0UHJvcGVydHlBY2Nlc3Nv ciAqc2V0dGVyID0gTlVMTDsNCisNCisgICAgaWYgKChmbGFncyAmIE9CSl9QUk9QX0ZMQUdfUkVB RCkgPT0gT0JKX1BST1BfRkxBR19SRUFEKSB7DQorICAgICAgICBnZXR0ZXIgPSBwcm9wZXJ0eV9n ZXRfdWludDMyX3B0cjsNCisgICAgfQ0KKw0KKyAgICBpZiAoKGZsYWdzICYgT0JKX1BST1BfRkxB R19XUklURSkgPT0gT0JKX1BST1BfRkxBR19XUklURSkgew0KKyAgICAgICAgc2V0dGVyID0gcHJv cGVydHlfc2V0X3VpbnQzMl9wdHI7DQorICAgIH0NCisNCisgICAgb2JqZWN0X2NsYXNzX3Byb3Bl cnR5X2FkZChrbGFzcywgbmFtZSwgInVpbnQzMiIsDQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZ2V0dGVyLCBzZXR0ZXIsIE5VTEwsICh2b2lkICopdiwgZXJycCk7DQogfQ0KIA0KIHZv aWQgb2JqZWN0X3Byb3BlcnR5X2FkZF91aW50NjRfcHRyKE9iamVjdCAqb2JqLCBjb25zdCBjaGFy ICpuYW1lLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ2 NF90ICp2LCBFcnJvciAqKmVycnApDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3QgdWludDY0X3QgKnYsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgT2JqZWN0UHJvcGVydHlGbGFncyBmbGFncywNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBFcnJvciAqKmVycnApDQogew0KLSAgICBvYmplY3RfcHJvcGVydHlfYWRkKG9i aiwgbmFtZSwgInVpbnQ2NCIsIHByb3BlcnR5X2dldF91aW50NjRfcHRyLA0KLSAgICAgICAgICAg ICAgICAgICAgICAgIE5VTEwsIE5VTEwsICh2b2lkICopdiwgZXJycCk7DQorICAgIE9iamVjdFBy b3BlcnR5QWNjZXNzb3IgKmdldHRlciA9IE5VTEw7DQorICAgIE9iamVjdFByb3BlcnR5QWNjZXNz b3IgKnNldHRlciA9IE5VTEw7DQorDQorICAgIGlmICgoZmxhZ3MgJiBPQkpfUFJPUF9GTEFHX1JF QUQpID09IE9CSl9QUk9QX0ZMQUdfUkVBRCkgew0KKyAgICAgICAgZ2V0dGVyID0gcHJvcGVydHlf Z2V0X3VpbnQ2NF9wdHI7DQorICAgIH0NCisNCisgICAgaWYgKChmbGFncyAmIE9CSl9QUk9QX0ZM QUdfV1JJVEUpID09IE9CSl9QUk9QX0ZMQUdfV1JJVEUpIHsNCisgICAgICAgIHNldHRlciA9IHBy b3BlcnR5X3NldF91aW50NjRfcHRyOw0KKyAgICB9DQorDQorICAgIG9iamVjdF9wcm9wZXJ0eV9h ZGQob2JqLCBuYW1lLCAidWludDY0IiwNCisgICAgICAgICAgICAgICAgICAgICAgICBnZXR0ZXIs IHNldHRlciwgTlVMTCwgKHZvaWQgKil2LCBlcnJwKTsNCiB9DQogDQogdm9pZCBvYmplY3RfY2xh c3NfcHJvcGVydHlfYWRkX3VpbnQ2NF9wdHIoT2JqZWN0Q2xhc3MgKmtsYXNzLCBjb25zdCBjaGFy ICpuYW1lLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0 IHVpbnQ2NF90ICp2LCBFcnJvciAqKmVycnApDQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3QgdWludDY0X3QgKnYsDQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgT2JqZWN0UHJvcGVydHlGbGFncyBmbGFncywNCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFcnJvciAqKmVycnApDQogew0KLSAg ICBvYmplY3RfY2xhc3NfcHJvcGVydHlfYWRkKGtsYXNzLCBuYW1lLCAidWludDY0IiwgcHJvcGVy dHlfZ2V0X3VpbnQ2NF9wdHIsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg TlVMTCwgKHZvaWQgKil2LCBlcnJwKTsNCisgICAgT2JqZWN0UHJvcGVydHlBY2Nlc3NvciAqZ2V0 dGVyID0gTlVMTDsNCisgICAgT2JqZWN0UHJvcGVydHlBY2Nlc3NvciAqc2V0dGVyID0gTlVMTDsN CisNCisgICAgaWYgKChmbGFncyAmIE9CSl9QUk9QX0ZMQUdfUkVBRCkgPT0gT0JKX1BST1BfRkxB R19SRUFEKSB7DQorICAgICAgICBnZXR0ZXIgPSBwcm9wZXJ0eV9nZXRfdWludDY0X3B0cjsNCisg ICAgfQ0KKw0KKyAgICBpZiAoKGZsYWdzICYgT0JKX1BST1BfRkxBR19XUklURSkgPT0gT0JKX1BS T1BfRkxBR19XUklURSkgew0KKyAgICAgICAgc2V0dGVyID0gcHJvcGVydHlfc2V0X3VpbnQ2NF9w dHI7DQorICAgIH0NCisNCisgICAgb2JqZWN0X2NsYXNzX3Byb3BlcnR5X2FkZChrbGFzcywgbmFt ZSwgInVpbnQ2NCIsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2V0dGVyLCBzZXR0 ZXIsIE5VTEwsICh2b2lkICopdiwgZXJycCk7DQogfQ0KIA0KIHR5cGVkZWYgc3RydWN0IHsNCmRp ZmYgLS1naXQgYS91aS9jb25zb2xlLmMgYi91aS9jb25zb2xlLmMNCmluZGV4IDgyZDFkZGFjOWMu LmJjYmU2NWU2OTYgMTAwNjQ0DQotLS0gYS91aS9jb25zb2xlLmMNCisrKyBiL3VpL2NvbnNvbGUu Yw0KQEAgLTEyOTYsOCArMTI5Niw4IEBAIHN0YXRpYyBRZW11Q29uc29sZSAqbmV3X2NvbnNvbGUo RGlzcGxheVN0YXRlICpkcywgY29uc29sZV90eXBlX3QgY29uc29sZV90eXBlLA0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgb2JqZWN0X3Byb3BlcnR5X2FsbG93X3NldF9saW5rLA0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgT0JKX1BST1BfTElOS19TVFJPTkcsDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAmZXJyb3JfYWJvcnQpOw0KLSAgICBvYmplY3RfcHJvcGVy dHlfYWRkX3VpbnQzMl9wdHIob2JqLCAiaGVhZCIsDQotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAmcy0+aGVhZCwgJmVycm9yX2Fib3J0KTsNCisgICAgb2JqZWN0X3Byb3BlcnR5 X2FkZF91aW50MzJfcHRyKG9iaiwgImhlYWQiLCAmcy0+aGVhZCwNCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE9CSl9QUk9QX0ZMQUdfUkVBRCwgJmVycm9yX2Fib3J0KTsNCiAN CiAgICAgaWYgKCFhY3RpdmVfY29uc29sZSB8fCAoKGFjdGl2ZV9jb25zb2xlLT5jb25zb2xlX3R5 cGUgIT0gR1JBUEhJQ19DT05TT0xFKSAmJg0KICAgICAgICAgKGNvbnNvbGVfdHlwZSA9PSBHUkFQ SElDX0NPTlNPTEUpKSkgew0KLS0gDQoyLjIwLjENCg0K