From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=pass header.i=@citrix.com header.s=securemail header.b=Qd8ecEvH; spf=softfail (domain: citrix.com, ip: , mailfrom: anthony.perard@citrix.com) Received: from esa1.hc3370-68.iphmx.com (esa1.hc3370-68.iphmx.com []) by groups.io with SMTP; Fri, 13 Sep 2019 07:51:10 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1568386270; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=tOSh+NJLlZFM+kXJseLdwaIWhBFcG6mp1z5k4/rrlEY=; b=Qd8ecEvHtVmoRkm3LOlbU1mBFMQgZo0RIOnF1aPhLoCn4b86LMqraWK+ MpEVC8jz8dBfE+mHuch1ui3yZwYmkvzyRSn3bTqw0shRu8/hheYE/8Wnd xstJRRq/+6+3RmvJutNiZogzEEBH59hbQipvBx5QUOdges4VYaYr6bOEH s=; Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none; spf=None smtp.pra=anthony.perard@citrix.com; spf=Pass smtp.mailfrom=anthony.perard@citrix.com; spf=None smtp.helo=postmaster@mail.citrix.com Received-SPF: None (esa1.hc3370-68.iphmx.com: no sender authenticity information available from domain of anthony.perard@citrix.com) identity=pra; client-ip=162.221.158.21; receiver=esa1.hc3370-68.iphmx.com; envelope-from="anthony.perard@citrix.com"; x-sender="anthony.perard@citrix.com"; x-conformance=sidf_compatible Received-SPF: Pass (esa1.hc3370-68.iphmx.com: domain of anthony.perard@citrix.com designates 162.221.158.21 as permitted sender) identity=mailfrom; client-ip=162.221.158.21; receiver=esa1.hc3370-68.iphmx.com; envelope-from="anthony.perard@citrix.com"; x-sender="anthony.perard@citrix.com"; x-conformance=sidf_compatible; x-record-type="v=spf1"; x-record-text="v=spf1 ip4:209.167.231.154 ip4:178.63.86.133 ip4:195.66.111.40/30 ip4:85.115.9.32/28 ip4:199.102.83.4 ip4:192.28.146.160 ip4:192.28.146.107 ip4:216.52.6.88 ip4:216.52.6.188 ip4:162.221.158.21 ip4:162.221.156.83 ~all" Received-SPF: None (esa1.hc3370-68.iphmx.com: no sender authenticity information available from domain of postmaster@mail.citrix.com) identity=helo; client-ip=162.221.158.21; receiver=esa1.hc3370-68.iphmx.com; envelope-from="anthony.perard@citrix.com"; x-sender="postmaster@mail.citrix.com"; x-conformance=sidf_compatible IronPort-SDR: RuylfgGcqVmDM0HWqFvVTb6r7R49PW+toIafriwtLXe/fADmm1O5dAJePdatTR4U9SIm9LbcdE gqnRK1AopqtGDj6RCQpSsnIqGHjBH008UJeVm7kI5zw4zUOEo1qIw4Zf8x/Mpkj8zxxhKUTaCD BvzooSE052ejgBpepcaq4NAAJS/q9SQAk9yKL46BKmj3k0uhpb7PUKoC3IJd+ETHqy4h08phGI a3PGLOti5/nHeloggWVuWJ3UmjRnDxSf88winG10eO4LAhqdqKj6ufjwZfCjoJnBQflQ0qstyv P1s= X-SBRS: 2.7 X-MesageID: 5595152 X-Ironport-Server: esa1.hc3370-68.iphmx.com X-Remote-IP: 162.221.158.21 X-Policy: $RELAYED X-IronPort-AV: E=Sophos;i="5.64,501,1559534400"; d="scan'208";a="5595152" From: "Anthony PERARD" To: CC: Ard Biesheuvel , Julien Grall , Jordan Justen , , Anthony Perard , Laszlo Ersek Subject: [PATCH 08/11] OvmfPkg/XenBus: Change XENBUS_PROTOCOL to not return allocated memory Date: Fri, 13 Sep 2019 15:50:57 +0100 Message-ID: <20190913145100.303433-9-anthony.perard@citrix.com> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20190913145100.303433-1-anthony.perard@citrix.com> References: <20190913145100.303433-1-anthony.perard@citrix.com> MIME-Version: 1.0 Return-Path: anthony.perard@citrix.com Content-Transfer-Encoding: base64 Content-Type: text/plain WHNSZWFkIGFuZCBYc0JhY2tlbmRSZWFkIG9mIHRoZSBYRU5CVVNfUFJPVE9DT0wgcmV0dXJuIGFs bG9jYXRlZAptZW1vcnkgYnV0IHRoaXMgaXNuJ3QgYWxsb3dlZCBkdXJpbmcgdGhlIEV4aXRCb290 U2VydmljZXMgY2FsbC4gV2UKbmVlZCBYc1JlYWQgYW5kIFhzQmFja2VuZFJlYWQgdG8gZGlzY29u bmVjdCBmcm9tIHRoZSBkZXZpY2Ugc28KWEVOQlVTX1BST1RPQ09MIGlzIGNoYW5nZWQgdG8gdXNl IGEgYnVmZmVyIHN1cHBsaWVkIGJ5IGEgY2hpbGQgZHJpdmVyLgoKUmVmOiBodHRwczovL2J1Z3pp bGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTIxOTAKU2lnbmVkLW9mZi1ieTogQW50 aG9ueSBQRVJBUkQgPGFudGhvbnkucGVyYXJkQGNpdHJpeC5jb20+Ci0tLQogT3ZtZlBrZy9JbmNs dWRlL1Byb3RvY29sL1hlbkJ1cy5oIHwgMzIgKysrKysrKysrKysrLS0tLS0tLS0tLQogT3ZtZlBr Zy9YZW5CdXNEeGUvWGVuU3RvcmUuYyAgICAgIHwgNDQgKysrKystLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCiBPdm1mUGtnL1hlbkJ1c0R4ZS9YZW5TdG9yZS5oICAgICAgfCAgNiArKystLQogT3Zt ZlBrZy9YZW5QdkJsa0R4ZS9CbG9ja0Zyb250LmMgIHwgNDUgKysrKysrKysrKysrKysrKysrLS0t LS0tLS0tLS0tLQogNCBmaWxlcyBjaGFuZ2VkLCA1NCBpbnNlcnRpb25zKCspLCA3MyBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9Pdm1mUGtnL0luY2x1ZGUvUHJvdG9jb2wvWGVuQnVzLmggYi9P dm1mUGtnL0luY2x1ZGUvUHJvdG9jb2wvWGVuQnVzLmgKaW5kZXggOGZmNWNhMzU3NS4uYzIyYmRm YjM2OCAxMDA2NDQKLS0tIGEvT3ZtZlBrZy9JbmNsdWRlL1Byb3RvY29sL1hlbkJ1cy5oCisrKyBi L092bWZQa2cvSW5jbHVkZS9Qcm90b2NvbC9YZW5CdXMuaApAQCAtMzUsNiArMzUsMTIgQEAgdHlw ZWRlZiBzdHJ1Y3QKIA0KICNkZWZpbmUgWFNUX05JTCAoKFhFTlNUT1JFX1RSQU5TQUNUSU9OICop IE5VTEwpDQogDQorLy8NCisvLyBXaGVuIHJlYWRpbmcgYSBub2RlIGZyb20geGVuc3RvcmUsIGlm IHRoZSBzaXplIG9mIHRoZSBkYXRhIHRvIGJlIHJlYWQgaXMNCisvLyB1bmtub3duLCB0aGlzIHZh bHVlIGNhbiBiZSB1c2UgZm9yIHRoZSBzaXplIG9mIHRoZSBidWZmZXIuDQorLy8NCisjZGVmaW5l IFhFTlNUT1JFX1BBWUxPQURfTUFYIDQwOTYNCisNCiB0eXBlZGVmIGVudW0gew0KICAgWEVOU1RP UkVfU1RBVFVTX1NVQ0NFU1MgPSAwLA0KICAgWEVOU1RPUkVfU1RBVFVTX0ZBSUwsDQpAQCAtNjQs MTkgKzcwLDE3IEBAIHR5cGVkZWYgZW51bSB7CiAvLy8NCiANCiAvKioNCi0gIEdldCB0aGUgY29u dGVudHMgb2YgdGhlIG5vZGUgTm9kZSBvZiB0aGUgUFYgZGV2aWNlLiBSZXR1cm5zIHRoZSBjb250 ZW50cyBpbg0KLSAgKlJlc3VsdCB3aGljaCBzaG91bGQgYmUgZnJlZWQgYWZ0ZXIgdXNlLg0KKyAg R2V0IHRoZSBjb250ZW50cyBvZiB0aGUgbm9kZSBOb2RlIG9mIHRoZSBQViBkZXZpY2UuDQogDQog ICBAcGFyYW0gVGhpcyAgICAgICAgICAgQSBwb2ludGVyIHRvIFhFTkJVU19QUk9UT0NPTCBpbnN0 YW5jZS4NCiAgIEBwYXJhbSBUcmFuc2FjdGlvbiAgICBUaGUgWGVuU3RvcmUgdHJhbnNhY3Rpb24g Y292ZXJpbmcgdGhpcyByZXF1ZXN0Lg0KICAgQHBhcmFtIE5vZGUgICAgICAgICAgIFRoZSBiYXNl bmFtZSBvZiB0aGUgZmlsZSB0byByZWFkLg0KLSAgQHBhcmFtIFJlc3VsdCAgICAgICAgIFRoZSBy ZXR1cm5lZCBjb250ZW50cyBmcm9tIHRoaXMgZmlsZS4NCisgIEBwYXJhbSBCdWZmZXJTaXplICAg ICBPbiBpbnB1dCwgYSBwb2ludGVyIHRvIHRoZSBzaXplIG9mIHRoZSBidWZmZXIgYXQgQnVmZmVy Lg0KKyAgICAgICAgICAgICAgICAgICAgICAgIE9uIG91dHB1dCwgdGhlIHNpemUgb2YgdGhlIGRh dGEgd3JpdHRlbiB0byBCdWZmZXIuDQorICBAcGFyYW0gQnVmZmVyICAgICAgICAgQSBwb2ludGVy IHRvIGEgYnVmZmVyIGludG8gd2hpY2ggdGhlIGRhdGEgcmVhZCB3aWxsIGJlIHNhdmVkLg0KIA0K ICAgQHJldHVybiAgT24gc3VjY2VzcywgWEVOU1RPUkVfU1RBVFVTX1NVQ0NFU1MuIE90aGVyd2lz ZSBhbiBlcnJubyB2YWx1ZQ0KICAgICAgICAgICAgaW5kaWNhdGluZyB0aGUgdHlwZSBvZiBmYWls dXJlLg0KLQ0KLSAgQG5vdGUgVGhlIHJlc3VsdHMgYnVmZmVyIGlzIG1hbGxvY2VkIGFuZCBzaG91 bGQgYmUgZnJlZSdkIGJ5IHRoZQ0KLSAgICAgICAgY2FsbGVyLg0KICoqLw0KIHR5cGVkZWYNCiBY RU5TVE9SRV9TVEFUVVMNCkBAIC04NCwyMyArODgsMjIgQEAgWEVOU1RPUkVfU1RBVFVTCiAgIElO ICBYRU5CVVNfUFJPVE9DT0wgICAgICAgKlRoaXMsDQogICBJTiAgQ09OU1QgWEVOU1RPUkVfVFJB TlNBQ1RJT04gKlRyYW5zYWN0aW9uLA0KICAgSU4gIENPTlNUIENIQVI4ICAgICAgICAgICAqTm9k ZSwNCi0gIE9VVCBWT0lEICAgICAgICAgICAgICAgICAgKipSZXN1bHQNCisgIElOIE9VVCBVSU5U TiAgICAgICAgICAgICAgKkJ1ZmZlclNpemUsDQorICBPVVQgVk9JRCAgICAgICAgICAgICAgICAg ICpCdWZmZXINCiAgICk7DQogDQogLyoqDQotICBHZXQgdGhlIGNvbnRlbnRzIG9mIHRoZSBub2Rl IE5vZGUgb2YgdGhlIFBWIGRldmljZSdzIGJhY2tlbmQuIFJldHVybnMgdGhlDQotICBjb250ZW50 cyBpbiAqUmVzdWx0IHdoaWNoIHNob3VsZCBiZSBmcmVlZCBhZnRlciB1c2UuDQorICBHZXQgdGhl IGNvbnRlbnRzIG9mIHRoZSBub2RlIE5vZGUgb2YgdGhlIFBWIGRldmljZSdzIGJhY2tlbmQuDQog DQogICBAcGFyYW0gVGhpcyAgICAgICAgICAgQSBwb2ludGVyIHRvIFhFTkJVU19QUk9UT0NPTCBp bnN0YW5jZS4NCiAgIEBwYXJhbSBUcmFuc2FjdGlvbiAgICBUaGUgWGVuU3RvcmUgdHJhbnNhY3Rp b24gY292ZXJpbmcgdGhpcyByZXF1ZXN0Lg0KICAgQHBhcmFtIE5vZGUgICAgICAgICAgIFRoZSBi YXNlbmFtZSBvZiB0aGUgZmlsZSB0byByZWFkLg0KLSAgQHBhcmFtIFJlc3VsdCAgICAgICAgIFRo ZSByZXR1cm5lZCBjb250ZW50cyBmcm9tIHRoaXMgZmlsZS4NCisgIEBwYXJhbSBCdWZmZXJTaXpl ICAgICBPbiBpbnB1dCwgYSBwb2ludGVyIHRvIHRoZSBzaXplIG9mIHRoZSBidWZmZXIgYXQgQnVm ZmVyLg0KKyAgICAgICAgICAgICAgICAgICAgICAgIE9uIG91dHB1dCwgdGhlIHNpemUgb2YgdGhl IGRhdGEgd3JpdHRlbiB0byBCdWZmZXIuDQorICBAcGFyYW0gQnVmZmVyICAgICAgICAgQSBwb2lu dGVyIHRvIGEgYnVmZmVyIGludG8gd2hpY2ggdGhlIGRhdGEgcmVhZCB3aWxsIGJlIHNhdmVkLg0K IA0KICAgQHJldHVybiAgT24gc3VjY2VzcywgWEVOU1RPUkVfU1RBVFVTX1NVQ0NFU1MuIE90aGVy d2lzZSBhbiBlcnJubyB2YWx1ZQ0KICAgICAgICAgICAgaW5kaWNhdGluZyB0aGUgdHlwZSBvZiBm YWlsdXJlLg0KLQ0KLSAgQG5vdGUgVGhlIHJlc3VsdHMgYnVmZmVyIGlzIG1hbGxvY2VkIGFuZCBz aG91bGQgYmUgZnJlZSdkIGJ5IHRoZQ0KLSAgICAgICAgY2FsbGVyLg0KICoqLw0KIHR5cGVkZWYN CiBYRU5TVE9SRV9TVEFUVVMNCkBAIC0xMDgsNyArMTExLDggQEAgWEVOU1RPUkVfU1RBVFVTCiAg IElOICBYRU5CVVNfUFJPVE9DT0wgICAgICAgKlRoaXMsDQogICBJTiAgQ09OU1QgWEVOU1RPUkVf VFJBTlNBQ1RJT04gKlRyYW5zYWN0aW9uLA0KICAgSU4gIENPTlNUIENIQVI4ICAgICAgICAgICAq Tm9kZSwNCi0gIE9VVCBWT0lEICAgICAgICAgICAgICAgICAgKipSZXN1bHQNCisgIElOIE9VVCBV SU5UTiAgICAgICAgICAgICAgKkJ1ZmZlclNpemUsDQorICBPVVQgVk9JRCAgICAgICAgICAgICAg ICAgICpCdWZmZXINCiAgICk7DQogDQogLyoqDQpkaWZmIC0tZ2l0IGEvT3ZtZlBrZy9YZW5CdXNE eGUvWGVuU3RvcmUuYyBiL092bWZQa2cvWGVuQnVzRHhlL1hlblN0b3JlLmMKaW5kZXggYjk1ODhi YjhjNi4uY2IyZDllMTIxNSAxMDA2NDQKLS0tIGEvT3ZtZlBrZy9YZW5CdXNEeGUvWGVuU3RvcmUu YworKysgYi9Pdm1mUGtnL1hlbkJ1c0R4ZS9YZW5TdG9yZS5jCkBAIC0xMzM2LDI3ICsxMzM2LDEx IEBAIFhlbkJ1c1hlblN0b3JlUmVhZCAoCiAgIElOICBYRU5CVVNfUFJPVE9DT0wgICAgICAgKlRo aXMsDQogICBJTiAgQ09OU1QgWEVOU1RPUkVfVFJBTlNBQ1RJT04gKlRyYW5zYWN0aW9uLA0KICAg SU4gIENPTlNUIENIQVI4ICAgICAgICAgICAqTm9kZSwNCi0gIE9VVCBWT0lEICAgICAgICAgICAg ICAgICAgKipWYWx1ZQ0KKyAgSU4gT1VUIFVJTlROICAgICAgICAgICAgICAqQnVmZmVyU2l6ZSwN CisgIE9VVCBWT0lEICAgICAgICAgICAgICAgICAgKkJ1ZmZlcg0KICAgKQ0KIHsNCi0gIFhFTlNU T1JFX1NUQVRVUyBTdGF0dXM7DQotICBVSU5UTiAgICAgICAgICAgQnVmZmVyU2l6ZTsNCi0gIFZP SUQgICAgICAgICAgICAqQnVmZmVyOw0KLQ0KLSAgQnVmZmVyU2l6ZSA9IFhFTlNUT1JFX1BBWUxP QURfTUFYICsgMTsNCi0gIEJ1ZmZlciA9IEFsbG9jYXRlUG9vbCAoQnVmZmVyU2l6ZSk7DQotICBp ZiAoQnVmZmVyID09IE5VTEwpIHsNCi0gICAgcmV0dXJuIFhFTlNUT1JFX1NUQVRVU19FTk9NRU07 DQotICB9DQotDQotICBTdGF0dXMgPSBYZW5TdG9yZVJlYWQgKFRyYW5zYWN0aW9uLCBUaGlzLT5O b2RlLCBOb2RlLCAmQnVmZmVyU2l6ZSwgQnVmZmVyKTsNCi0NCi0gIGlmIChTdGF0dXMgPT0gWEVO U1RPUkVfU1RBVFVTX1NVQ0NFU1MpIHsNCi0gICAgKlZhbHVlID0gQnVmZmVyOw0KLSAgfSBlbHNl IHsNCi0gICAgRnJlZVBvb2wgKEJ1ZmZlcik7DQotICB9DQotICByZXR1cm4gU3RhdHVzOw0KKyAg cmV0dXJuIFhlblN0b3JlUmVhZCAoVHJhbnNhY3Rpb24sIFRoaXMtPk5vZGUsIE5vZGUsIEJ1ZmZl clNpemUsIEJ1ZmZlcik7DQogfQ0KIA0KIFhFTlNUT1JFX1NUQVRVUw0KQEAgLTEzNjUsMjcgKzEz NDksMTEgQEAgWGVuQnVzWGVuU3RvcmVCYWNrZW5kUmVhZCAoCiAgIElOICBYRU5CVVNfUFJPVE9D T0wgICAgICAgKlRoaXMsDQogICBJTiAgQ09OU1QgWEVOU1RPUkVfVFJBTlNBQ1RJT04gKlRyYW5z YWN0aW9uLA0KICAgSU4gIENPTlNUIENIQVI4ICAgICAgICAgICAqTm9kZSwNCi0gIE9VVCBWT0lE ICAgICAgICAgICAgICAgICAgKipWYWx1ZQ0KKyAgSU4gT1VUIFVJTlROICAgICAgICAgICAgICAq QnVmZmVyU2l6ZSwNCisgIE9VVCBWT0lEICAgICAgICAgICAgICAgICAgKkJ1ZmZlcg0KICAgKQ0K IHsNCi0gIFhFTlNUT1JFX1NUQVRVUyBTdGF0dXM7DQotICBVSU5UTiAgICAgICAgICAgQnVmZmVy U2l6ZTsNCi0gIFZPSUQgICAgICAgICAgICAqQnVmZmVyOw0KLQ0KLSAgQnVmZmVyU2l6ZSA9IFhF TlNUT1JFX1BBWUxPQURfTUFYICsgMTsNCi0gIEJ1ZmZlciA9IEFsbG9jYXRlUG9vbCAoQnVmZmVy U2l6ZSk7DQotICBpZiAoQnVmZmVyID09IE5VTEwpIHsNCi0gICAgcmV0dXJuIFhFTlNUT1JFX1NU QVRVU19FTk9NRU07DQotICB9DQotDQotICBTdGF0dXMgPSBYZW5TdG9yZVJlYWQgKFRyYW5zYWN0 aW9uLCBUaGlzLT5CYWNrZW5kLCBOb2RlLCAmQnVmZmVyU2l6ZSwgQnVmZmVyKTsNCi0NCi0gIGlm IChTdGF0dXMgPT0gWEVOU1RPUkVfU1RBVFVTX1NVQ0NFU1MpIHsNCi0gICAgKlZhbHVlID0gQnVm ZmVyOw0KLSAgfSBlbHNlIHsNCi0gICAgRnJlZVBvb2wgKEJ1ZmZlcik7DQotICB9DQotICByZXR1 cm4gU3RhdHVzOw0KKyAgcmV0dXJuIFhlblN0b3JlUmVhZCAoVHJhbnNhY3Rpb24sIFRoaXMtPkJh Y2tlbmQsIE5vZGUsIEJ1ZmZlclNpemUsIEJ1ZmZlcik7DQogfQ0KIA0KIFhFTlNUT1JFX1NUQVRV Uw0KZGlmZiAtLWdpdCBhL092bWZQa2cvWGVuQnVzRHhlL1hlblN0b3JlLmggYi9Pdm1mUGtnL1hl bkJ1c0R4ZS9YZW5TdG9yZS5oCmluZGV4IDEzZjdkMTMyZTYuLmNhOGMwODA0MzMgMTAwNjQ0Ci0t LSBhL092bWZQa2cvWGVuQnVzRHhlL1hlblN0b3JlLmgKKysrIGIvT3ZtZlBrZy9YZW5CdXNEeGUv WGVuU3RvcmUuaApAQCAtMjg5LDcgKzI4OSw4IEBAIFhlbkJ1c1hlblN0b3JlUmVhZCAoCiAgIElO ICBYRU5CVVNfUFJPVE9DT0wgICAgICAgKlRoaXMsDQogICBJTiAgQ09OU1QgWEVOU1RPUkVfVFJB TlNBQ1RJT04gKlRyYW5zYWN0aW9uLA0KICAgSU4gIENPTlNUIENIQVI4ICAgICAgICAgICAqTm9k ZSwNCi0gIE9VVCBWT0lEICAgICAgICAgICAgICAgICAgKipWYWx1ZQ0KKyAgSU4gT1VUIFVJTlRO ICAgICAgICAgICAgICAqQnVmZmVyU2l6ZSwNCisgIE9VVCBWT0lEICAgICAgICAgICAgICAgICAg KkJ1ZmZlcg0KICAgKTsNCiANCiBYRU5TVE9SRV9TVEFUVVMNCkBAIC0yOTgsNyArMjk5LDggQEAg WGVuQnVzWGVuU3RvcmVCYWNrZW5kUmVhZCAoCiAgIElOICBYRU5CVVNfUFJPVE9DT0wgICAgICAg KlRoaXMsDQogICBJTiAgQ09OU1QgWEVOU1RPUkVfVFJBTlNBQ1RJT04gKlRyYW5zYWN0aW9uLA0K ICAgSU4gIENPTlNUIENIQVI4ICAgICAgICAgICAqTm9kZSwNCi0gIE9VVCBWT0lEICAgICAgICAg ICAgICAgICAgKipWYWx1ZQ0KKyAgSU4gT1VUIFVJTlROICAgICAgICAgICAgICAqQnVmZmVyU2l6 ZSwNCisgIE9VVCBWT0lEICAgICAgICAgICAgICAgICAgKkJ1ZmZlcg0KICAgKTsNCiANCiBYRU5T VE9SRV9TVEFUVVMNCmRpZmYgLS1naXQgYS9Pdm1mUGtnL1hlblB2QmxrRHhlL0Jsb2NrRnJvbnQu YyBiL092bWZQa2cvWGVuUHZCbGtEeGUvQmxvY2tGcm9udC5jCmluZGV4IDhkY2E0YzgyZjAuLjI1 YTM5OGNjYzQgMTAwNjQ0Ci0tLSBhL092bWZQa2cvWGVuUHZCbGtEeGUvQmxvY2tGcm9udC5jCisr KyBiL092bWZQa2cvWGVuUHZCbGtEeGUvQmxvY2tGcm9udC5jCkBAIC00MSwxOSArNDEsMjIgQEAg WGVuQnVzUmVhZFVpbnQ2NCAoCiAgICkNCiB7DQogICBYRU5TVE9SRV9TVEFUVVMgU3RhdHVzOw0K LSAgQ0hBUjggKlB0cjsNCisgIENIQVI4ICAgICAgICAgICBCdWZmZXJbMjJdOw0KKyAgVUlOVE4g ICAgICAgICAgIEJ1ZmZlclNpemU7DQorDQorICBCdWZmZXJTaXplID0gc2l6ZW9mIChCdWZmZXIp IC0gMTsNCiANCiAgIGlmICghRnJvbUJhY2tlbmQpIHsNCi0gICAgU3RhdHVzID0gVGhpcy0+WHNS ZWFkIChUaGlzLCBYU1RfTklMLCBOb2RlLCAoVk9JRCoqKSZQdHIpOw0KKyAgICBTdGF0dXMgPSBU aGlzLT5Yc1JlYWQgKFRoaXMsIFhTVF9OSUwsIE5vZGUsICZCdWZmZXJTaXplLCBCdWZmZXIpOw0K ICAgfSBlbHNlIHsNCi0gICAgU3RhdHVzID0gVGhpcy0+WHNCYWNrZW5kUmVhZCAoVGhpcywgWFNU X05JTCwgTm9kZSwgKFZPSUQqKikmUHRyKTsNCisgICAgU3RhdHVzID0gVGhpcy0+WHNCYWNrZW5k UmVhZCAoVGhpcywgWFNUX05JTCwgTm9kZSwgJkJ1ZmZlclNpemUsIEJ1ZmZlcik7DQogICB9DQog ICBpZiAoU3RhdHVzICE9IFhFTlNUT1JFX1NUQVRVU19TVUNDRVNTKSB7DQogICAgIHJldHVybiBT dGF0dXM7DQogICB9DQorICBCdWZmZXJbQnVmZmVyU2l6ZV0gPSAnXDAnOw0KICAgLy8gQXNjaWlT dHJEZWNpbWFsVG9VaW50NjQgd2lsbCBBU1NFUlQgaWYgUHRyIG92ZXJmbG93IFVJTlQ2NC4NCi0g ICpWYWx1ZVB0ciA9IEFzY2lpU3RyRGVjaW1hbFRvVWludDY0IChQdHIpOw0KLSAgRnJlZVBvb2wg KFB0cik7DQorICAqVmFsdWVQdHIgPSBBc2NpaVN0ckRlY2ltYWxUb1VpbnQ2NCAoQnVmZmVyKTsN CiAgIHJldHVybiBTdGF0dXM7DQogfQ0KIA0KQEAgLTE0Myw0MyArMTQ2LDQ3IEBAIFhlblB2Qmxv Y2tGcm9udEluaXRpYWxpemF0aW9uICgKICAgT1VUIFhFTl9CTE9DS19GUk9OVF9ERVZJQ0UgICoq RGV2UHRyDQogICApDQogew0KLSAgWEVOU1RPUkVfVFJBTlNBQ1RJT04gVHJhbnNhY3Rpb247DQot ICBDSEFSOCAqRGV2aWNlVHlwZTsNCi0gIGJsa2lmX3NyaW5nX3QgKlNoYXJlZFJpbmc7DQotICBY RU5TVE9SRV9TVEFUVVMgU3RhdHVzOw0KKyAgWEVOU1RPUkVfVFJBTlNBQ1RJT04gICBUcmFuc2Fj dGlvbjsNCisgIENIQVI4ICAgICAgICAgICAgICAgICAgQnVmZmVyW1hFTlNUT1JFX1BBWUxPQURf TUFYICsgMV07DQorICBVSU5UTiAgICAgICAgICAgICAgICAgIEJ1ZmZlclNpemU7DQorICBibGtp Zl9zcmluZ190ICAgICAgICAgICpTaGFyZWRSaW5nOw0KKyAgWEVOU1RPUkVfU1RBVFVTICAgICAg ICBTdGF0dXM7DQogICBYRU5fQkxPQ0tfRlJPTlRfREVWSUNFICpEZXY7DQotICBYZW5idXNTdGF0 ZSBTdGF0ZTsNCi0gIFVJTlQ2NCBWYWx1ZTsNCi0gIENIQVI4ICpQYXJhbXM7DQorICBYZW5idXNT dGF0ZSAgICAgICAgICAgIFN0YXRlOw0KKyAgVUlOVDY0ICAgICAgICAgICAgICAgICBWYWx1ZTsN CiANCiAgIEFTU0VSVCAoTm9kZU5hbWUgIT0gTlVMTCk7DQogDQorICBCdWZmZXJTaXplID0gc2l6 ZW9mIChCdWZmZXIpIC0gMTsNCisNCiAgIERldiA9IEFsbG9jYXRlWmVyb1Bvb2wgKHNpemVvZiAo WEVOX0JMT0NLX0ZST05UX0RFVklDRSkpOw0KICAgRGV2LT5TaWduYXR1cmUgPSBYRU5fQkxPQ0tf RlJPTlRfU0lHTkFUVVJFOw0KICAgRGV2LT5Ob2RlTmFtZSA9IE5vZGVOYW1lOw0KICAgRGV2LT5Y ZW5CdXNJbyA9IFhlbkJ1c0lvOw0KICAgRGV2LT5EZXZpY2VJZCA9IFhlbkJ1c0lvLT5EZXZpY2VJ ZDsNCiANCi0gIFhlbkJ1c0lvLT5Yc1JlYWQgKFhlbkJ1c0lvLCBYU1RfTklMLCAiZGV2aWNlLXR5 cGUiLCAoVk9JRCoqKSZEZXZpY2VUeXBlKTsNCi0gIGlmIChBc2NpaVN0ckNtcCAoRGV2aWNlVHlw ZSwgImNkcm9tIikgPT0gMCkgew0KKyAgQnVmZmVyU2l6ZSA9IHNpemVvZiAoQnVmZmVyKSAtIDE7 DQorICBYZW5CdXNJby0+WHNSZWFkIChYZW5CdXNJbywgWFNUX05JTCwgImRldmljZS10eXBlIiwg JkJ1ZmZlclNpemUsIEJ1ZmZlcik7DQorICBCdWZmZXJbQnVmZmVyU2l6ZV0gPSAnXDAnOw0KKyAg aWYgKEFzY2lpU3RyQ21wIChCdWZmZXIsICJjZHJvbSIpID09IDApIHsNCiAgICAgRGV2LT5NZWRp YUluZm8uQ2RSb20gPSBUUlVFOw0KICAgfSBlbHNlIHsNCiAgICAgRGV2LT5NZWRpYUluZm8uQ2RS b20gPSBGQUxTRTsNCiAgIH0NCi0gIEZyZWVQb29sIChEZXZpY2VUeXBlKTsNCiANCiAgIGlmIChE ZXYtPk1lZGlhSW5mby5DZFJvbSkgew0KLSAgICBTdGF0dXMgPSBYZW5CdXNJby0+WHNCYWNrZW5k UmVhZCAoWGVuQnVzSW8sIFhTVF9OSUwsICJwYXJhbXMiLCAoVk9JRCoqKSZQYXJhbXMpOw0KKyAg ICBCdWZmZXJTaXplID0gc2l6ZW9mIChCdWZmZXIpIC0gMTsNCisgICAgU3RhdHVzID0gWGVuQnVz SW8tPlhzQmFja2VuZFJlYWQgKFhlbkJ1c0lvLCBYU1RfTklMLCAicGFyYW1zIiwNCisgICAgICAm QnVmZmVyU2l6ZSwgQnVmZmVyKTsNCiAgICAgaWYgKFN0YXR1cyAhPSBYRU5TVE9SRV9TVEFUVVNf U1VDQ0VTUykgew0KICAgICAgIERFQlVHICgoRUZJX0RfRVJST1IsICIlYTogRmFpbGVkIHRvIHJl YWQgcGFyYW1zICglZClcbiIsIF9fRlVOQ1RJT05fXywgU3RhdHVzKSk7DQogICAgICAgZ290byBF cnJvcjsNCiAgICAgfQ0KLSAgICBpZiAoQXNjaWlTdHJMZW4gKFBhcmFtcykgPT0gMCB8fCBBc2Np aVN0ckNtcCAoUGFyYW1zLCAiYWlvOiIpID09IDApIHsNCi0gICAgICBGcmVlUG9vbCAoUGFyYW1z KTsNCisgICAgQnVmZmVyW0J1ZmZlclNpemVdID0gJ1wwJzsNCisgICAgaWYgKEFzY2lpU3RyTGVu IChCdWZmZXIpID09IDAgfHwgQXNjaWlTdHJDbXAgKEJ1ZmZlciwgImFpbzoiKSA9PSAwKSB7DQog ICAgICAgREVCVUcgKChFRklfRF9JTkZPLCAiJWE6IEVtcHR5IGNkcm9tXG4iLCBfX0ZVTkNUSU9O X18pKTsNCiAgICAgICBnb3RvIEVycm9yOw0KICAgICB9DQotICAgIEZyZWVQb29sIChQYXJhbXMp Ow0KICAgfQ0KIA0KICAgU3RhdHVzID0gWGVuQnVzUmVhZFVpbnQ2NCAoWGVuQnVzSW8sICJiYWNr ZW5kLWlkIiwgRkFMU0UsICZWYWx1ZSk7DQotLSAKQW50aG9ueSBQRVJBUkQKCg==