From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= Subject: [PATCH 13/35] libxl/libxl_create.c: used LOG*D functions Date: Tue, 15 Nov 2016 11:18:51 +0100 Message-ID: <20161115101913.10396-14-cbosdonnat@suse.com> References: <20161115101913.10396-1-cbosdonnat@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20161115101913.10396-1-cbosdonnat@suse.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= , Wei Liu , Ian Jackson , =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= List-Id: xen-devel@lists.xenproject.org RnJvbTogQ8OpZHJpYyBCb3Nkb25uYXQgPGNlZHJpYy5ib3Nkb25uYXRAZnJlZS5mcj4KClVzZSBM T0cqRCBsb2dnaW5nIGZ1bmN0aW9ucyB3aGVyZSBwb3NzaWJsZSBpbnN0ZWFkIG9mIHRoZSBMT0cq IG9uZXMuCgpTaWduZWQtb2ZmLWJ5OiBDw6lkcmljIEJvc2Rvbm5hdCA8Y2Jvc2Rvbm5hdEBzdXNl LmNvbT4KLS0tCiB0b29scy9saWJ4bC9saWJ4bF9jcmVhdGUuYyB8IDExOSArKysrKysrKysrKysr KysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA2MCBpbnNl cnRpb25zKCspLCA1OSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4 bF9jcmVhdGUuYyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2NyZWF0ZS5jCmluZGV4IDdjMTY5NWEuLmUz YmMyNTcgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX2NyZWF0ZS5jCisrKyBiL3Rvb2xz L2xpYnhsL2xpYnhsX2NyZWF0ZS5jCkBAIC01MzksNyArNTM5LDcgQEAgaW50IGxpYnhsX19kb21h aW5fbWFrZShsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9kb21haW5fY29uZmlnICpkX2NvbmZpZywKICAg ICB9IGVsc2UgaWYgKGxpYnhsX2RlZmJvb2xfdmFsKGluZm8tPnB2aCkpIHsKICAgICAgICAgZmxh Z3MgfD0gWEVOX0RPTUNUTF9DREZfcHZoX2d1ZXN0OwogICAgICAgICBpZiAoIWxpYnhsX2RlZmJv b2xfdmFsKGluZm8tPmhhcCkpIHsKLSAgICAgICAgICAgIExPRyhFUlJPUiwgIkhBUCBtdXN0IGJl IG9uIGZvciBQVkgiKTsKKyAgICAgICAgICAgIExPR0QoRVJST1IsICpkb21pZCwgIkhBUCBtdXN0 IGJlIG9uIGZvciBQVkgiKTsKICAgICAgICAgICAgIHJjID0gRVJST1JfSU5WQUw7CiAgICAgICAg ICAgICBnb3RvIG91dDsKICAgICAgICAgfQpAQCAtNTUxLDcgKzU1MSw3IEBAIGludCBsaWJ4bF9f ZG9tYWluX21ha2UobGlieGxfX2djICpnYywgbGlieGxfZG9tYWluX2NvbmZpZyAqZF9jb25maWcs CiAKICAgICByZXQgPSBsaWJ4bF9fYXJjaF9kb21haW5fcHJlcGFyZV9jb25maWcoZ2MsIGRfY29u ZmlnLCB4Y19jb25maWcpOwogICAgIGlmIChyZXQgPCAwKSB7Ci0gICAgICAgIExPR0UoRVJST1Is ICJmYWlsIHRvIGdldCBkb21haW4gY29uZmlnIik7CisgICAgICAgIExPR0VEKEVSUk9SLCAqZG9t aWQsICJmYWlsIHRvIGdldCBkb21haW4gY29uZmlnIik7CiAgICAgICAgIHJjID0gRVJST1JfRkFJ TDsKICAgICAgICAgZ290byBvdXQ7CiAgICAgfQpAQCAtNTYxLDcgKzU2MSw3IEBAIGludCBsaWJ4 bF9fZG9tYWluX21ha2UobGlieGxfX2djICpnYywgbGlieGxfZG9tYWluX2NvbmZpZyAqZF9jb25m aWcsCiAgICAgICAgIHJldCA9IHhjX2RvbWFpbl9jcmVhdGUoY3R4LT54Y2gsIGluZm8tPnNzaWRy ZWYsIGhhbmRsZSwgZmxhZ3MsIGRvbWlkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHhjX2NvbmZpZyk7CiAgICAgICAgIGlmIChyZXQgPCAwKSB7Ci0gICAgICAgICAgICBMT0dFKEVS Uk9SLCAiZG9tYWluIGNyZWF0aW9uIGZhaWwiKTsKKyAgICAgICAgICAgIExPR0VEKEVSUk9SLCAq ZG9taWQsICJkb21haW4gY3JlYXRpb24gZmFpbCIpOwogICAgICAgICAgICAgcmMgPSBFUlJPUl9G QUlMOwogICAgICAgICAgICAgZ290byBvdXQ7CiAgICAgICAgIH0KQEAgLTU3Myw3ICs1NzMsNyBA QCBpbnQgbGlieGxfX2RvbWFpbl9tYWtlKGxpYnhsX19nYyAqZ2MsIGxpYnhsX2RvbWFpbl9jb25m aWcgKmRfY29uZmlnLAogCiAgICAgcmV0ID0geGNfY3B1cG9vbF9tb3ZlZG9tYWluKGN0eC0+eGNo LCBpbmZvLT5wb29saWQsICpkb21pZCk7CiAgICAgaWYgKHJldCA8IDApIHsKLSAgICAgICAgTE9H RShFUlJPUiwgImRvbWFpbiBtb3ZlIGZhaWwiKTsKKyAgICAgICAgTE9HRUQoRVJST1IsICpkb21p ZCwgImRvbWFpbiBtb3ZlIGZhaWwiKTsKICAgICAgICAgcmMgPSBFUlJPUl9GQUlMOwogICAgICAg ICBnb3RvIG91dDsKICAgICB9CkBAIC01ODYsNyArNTg2LDcgQEAgaW50IGxpYnhsX19kb21haW5f bWFrZShsaWJ4bF9fZ2MgKmdjLCBsaWJ4bF9kb21haW5fY29uZmlnICpkX2NvbmZpZywKIAogICAg IHZtX3BhdGggPSBHQ1NQUklOVEYoIi92bS8lcyIsIHV1aWRfc3RyaW5nKTsKICAgICBpZiAoIXZt X3BhdGgpIHsKLSAgICAgICAgTE9HKEVSUk9SLCAiY2Fubm90IGFsbG9jYXRlIGNyZWF0ZSBwYXRo cyIpOworICAgICAgICBMT0dEKEVSUk9SLCAqZG9taWQsICJjYW5ub3QgYWxsb2NhdGUgY3JlYXRl IHBhdGhzIik7CiAgICAgICAgIHJjID0gRVJST1JfRkFJTDsKICAgICAgICAgZ290byBvdXQ7CiAg ICAgfQpAQCAtNjk3LDcgKzY5Nyw3IEBAIHJldHJ5X3RyYW5zYWN0aW9uOgogCiAgICAgdm1fbGlz dCA9IGxpYnhsX2xpc3Rfdm0oY3R4LCAmbmJfdm0pOwogICAgIGlmICghdm1fbGlzdCkgewotICAg ICAgICBMT0coRVJST1IsICJjYW5ub3QgZ2V0IG51bWJlciBvZiBydW5uaW5nIGd1ZXN0cyIpOwor ICAgICAgICBMT0dEKEVSUk9SLCAqZG9taWQsICJjYW5ub3QgZ2V0IG51bWJlciBvZiBydW5uaW5n IGd1ZXN0cyIpOwogICAgICAgICByYyA9IEVSUk9SX0ZBSUw7CiAgICAgICAgIGdvdG8gb3V0Owog ICAgIH0KQEAgLTcxNiw3ICs3MTYsNyBAQCByZXRyeV90cmFuc2FjdGlvbjoKICAgICAgICAgICAg IHQgPSAwOwogICAgICAgICAgICAgZ290byByZXRyeV90cmFuc2FjdGlvbjsKICAgICAgICAgfQot ICAgICAgICBMT0dFKEVSUk9SLCAiZG9tYWluIGNyZWF0aW9uICIieGVuc3RvcmUgdHJhbnNhY3Rp b24gY29tbWl0IGZhaWxlZCIpOworICAgICAgICBMT0dFRChFUlJPUiwgKmRvbWlkLCAiZG9tYWlu IGNyZWF0aW9uICIieGVuc3RvcmUgdHJhbnNhY3Rpb24gY29tbWl0IGZhaWxlZCIpOwogICAgICAg ICByYyA9IEVSUk9SX0ZBSUw7CiAgICAgICAgIGdvdG8gb3V0OwogICAgIH0KQEAgLTgwNiwxMCAr ODA2LDEwIEBAIHN0YXRpYyB2b2lkIGluaXRpYXRlX2RvbWFpbl9jcmVhdGUobGlieGxfX2VnYyAq ZWdjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZF9jb25maWct PmNfaW5mby5zc2lkcmVmKTsKICAgICAgICAgaWYgKHJldCkgewogICAgICAgICAgICAgaWYgKGVy cm5vID09IEVOT1NZUykgewotICAgICAgICAgICAgICAgIExPRyhXQVJOLCAiWFNNIERpc2FibGVk OiBpbml0X3NlY2xhYmVsIG5vdCBzdXBwb3J0ZWQiKTsKKyAgICAgICAgICAgICAgICBMT0dEKFdB Uk4sIGRvbWlkLCAiWFNNIERpc2FibGVkOiBpbml0X3NlY2xhYmVsIG5vdCBzdXBwb3J0ZWQiKTsK ICAgICAgICAgICAgICAgICByZXQgPSAwOwogICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAg ICAgICAgICBMT0coRVJST1IsICJJbnZhbGlkIGluaXRfc2VjbGFiZWw6ICVzIiwgcyk7CisgICAg ICAgICAgICAgICAgTE9HRChFUlJPUiwgZG9taWQsICJJbnZhbGlkIGluaXRfc2VjbGFiZWw6ICVz Iiwgcyk7CiAgICAgICAgICAgICAgICAgZ290byBlcnJvcl9vdXQ7CiAgICAgICAgICAgICB9CiAg ICAgICAgIH0KQEAgLTgyMSwxMCArODIxLDEwIEBAIHN0YXRpYyB2b2lkIGluaXRpYXRlX2RvbWFp bl9jcmVhdGUobGlieGxfX2VnYyAqZWdjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAmZF9jb25maWctPmJfaW5mby5leGVjX3NzaWRyZWYpOwogICAgICAgICBpZiAo cmV0KSB7CiAgICAgICAgICAgICBpZiAoZXJybm8gPT0gRU5PU1lTKSB7Ci0gICAgICAgICAgICAg ICAgTE9HKFdBUk4sICJYU00gRGlzYWJsZWQ6IHNlY2xhYmVsIG5vdCBzdXBwb3J0ZWQiKTsKKyAg ICAgICAgICAgICAgICBMT0dEKFdBUk4sIGRvbWlkLCAiWFNNIERpc2FibGVkOiBzZWNsYWJlbCBu b3Qgc3VwcG9ydGVkIik7CiAgICAgICAgICAgICAgICAgcmV0ID0gMDsKICAgICAgICAgICAgIH0g ZWxzZSB7Ci0gICAgICAgICAgICAgICAgTE9HKEVSUk9SLCAiSW52YWxpZCBzZWNsYWJlbDogJXMi LCBzKTsKKyAgICAgICAgICAgICAgICBMT0dEKEVSUk9SLCBkb21pZCwgIkludmFsaWQgc2VjbGFi ZWw6ICVzIiwgcyk7CiAgICAgICAgICAgICAgICAgZ290byBlcnJvcl9vdXQ7CiAgICAgICAgICAg ICB9CiAgICAgICAgIH0KQEAgLTgzNiwxMCArODM2LDExIEBAIHN0YXRpYyB2b2lkIGluaXRpYXRl X2RvbWFpbl9jcmVhdGUobGlieGxfX2VnYyAqZWdjLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAmZF9jb25maWctPmJfaW5mby5kZXZpY2VfbW9kZWxfc3NpZHJlZik7 CiAgICAgICAgIGlmIChyZXQpIHsKICAgICAgICAgICAgIGlmIChlcnJubyA9PSBFTk9TWVMpIHsK LSAgICAgICAgICAgICAgICBMT0coV0FSTiwiWFNNIERpc2FibGVkOiBkZXZpY2VfbW9kZWxfc3R1 YmRvbWFpbl9zZWNsYWJlbCBub3Qgc3VwcG9ydGVkIik7CisgICAgICAgICAgICAgICAgTE9HRChX QVJOLCBkb21pZCwKKyAgICAgICAgICAgICAgICAgICAgICJYU00gRGlzYWJsZWQ6IGRldmljZV9t b2RlbF9zdHViZG9tYWluX3NlY2xhYmVsIG5vdCBzdXBwb3J0ZWQiKTsKICAgICAgICAgICAgICAg ICByZXQgPSAwOwogICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICBMT0coRVJS T1IsICJJbnZhbGlkIGRldmljZV9tb2RlbF9zdHViZG9tYWluX3NlY2xhYmVsOiAlcyIsIHMpOwor ICAgICAgICAgICAgICAgIExPR0QoRVJST1IsIGRvbWlkLCAiSW52YWxpZCBkZXZpY2VfbW9kZWxf c3R1YmRvbWFpbl9zZWNsYWJlbDogJXMiLCBzKTsKICAgICAgICAgICAgICAgICBnb3RvIGVycm9y X291dDsKICAgICAgICAgICAgIH0KICAgICAgICAgfQpAQCAtODUyLDcgKzg1Myw4IEBAIHN0YXRp YyB2b2lkIGluaXRpYXRlX2RvbWFpbl9jcmVhdGUobGlieGxfX2VnYyAqZWdjLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CiAgICAgfQogICAgIGlm ICghbGlieGxfY3B1cG9vbGlkX2lzX3ZhbGlkKGN0eCwgZF9jb25maWctPmNfaW5mby5wb29saWQp KSB7Ci0gICAgICAgIExPRyhFUlJPUiwgIklsbGVnYWwgcG9vbCBzcGVjaWZpZWQ6ICVzIiwgZF9j b25maWctPmNfaW5mby5wb29sX25hbWUpOworICAgICAgICBMT0dEKEVSUk9SLCBkb21pZCwgIkls bGVnYWwgcG9vbCBzcGVjaWZpZWQ6ICVzIiwKKyAgICAgICAgICAgICBkX2NvbmZpZy0+Y19pbmZv LnBvb2xfbmFtZSk7CiAgICAgICAgIHJldCA9IEVSUk9SX0lOVkFMOwogICAgICAgICBnb3RvIGVy cm9yX291dDsKICAgICB9CkBAIC04NzIsNyArODc0LDggQEAgc3RhdGljIHZvaWQgaW5pdGlhdGVf ZG9tYWluX2NyZWF0ZShsaWJ4bF9fZWdjICplZ2MsCiAgICAgaWYgKGRfY29uZmlnLT5jX2luZm8u dHlwZSA9PSBMSUJYTF9ET01BSU5fVFlQRV9IVk0gJiYKICAgICAgICAgZF9jb25maWctPm51bV9w Y2lkZXZzICYmIHBvZF9lbmFibGVkKSB7CiAgICAgICAgIHJldCA9IEVSUk9SX0lOVkFMOwotICAg ICAgICBMT0coRVJST1IsICJQQ0kgZGV2aWNlIGFzc2lnbm1lbnQgZm9yIEhWTSBndWVzdCBmYWls ZWQgZHVlIHRvIFBvRCBlbmFibGVkIik7CisgICAgICAgIExPR0QoRVJST1IsIGRvbWlkLAorICAg ICAgICAgICAgICJQQ0kgZGV2aWNlIGFzc2lnbm1lbnQgZm9yIEhWTSBndWVzdCBmYWlsZWQgZHVl IHRvIFBvRCBlbmFibGVkIik7CiAgICAgICAgIGdvdG8gZXJyb3Jfb3V0OwogICAgIH0KIApAQCAt ODgxLDcgKzg4NCw3IEBAIHN0YXRpYyB2b2lkIGluaXRpYXRlX2RvbWFpbl9jcmVhdGUobGlieGxf X2VnYyAqZWdjLAogICAgICAqLwogICAgIGlmIChwb2RfZW5hYmxlZCAmJiBkX2NvbmZpZy0+Yl9p bmZvLm51bV92bnVtYV9ub2RlcykgewogICAgICAgICByZXQgPSBFUlJPUl9JTlZBTDsKLSAgICAg ICAgTE9HKEVSUk9SLCAiQ2Fubm90IGVuYWJsZSBQb0QgYW5kIHZOVU1BIGF0IHRoZSBzYW1lIHRp bWUiKTsKKyAgICAgICAgTE9HRChFUlJPUiwgZG9taWQsICJDYW5ub3QgZW5hYmxlIFBvRCBhbmQg dk5VTUEgYXQgdGhlIHNhbWUgdGltZSIpOwogICAgICAgICBnb3RvIGVycm9yX291dDsKICAgICB9 CiAKQEAgLTg5MSwxOSArODk0LDE5IEBAIHN0YXRpYyB2b2lkIGluaXRpYXRlX2RvbWFpbl9jcmVh dGUobGlieGxfX2VnYyAqZWdjLAogICAgIGlmIChkX2NvbmZpZy0+Y19pbmZvLnR5cGUgPT0gTElC WExfRE9NQUlOX1RZUEVfUFYgJiYKICAgICAgICAgZF9jb25maWctPmJfaW5mby5udW1fdm51bWFf bm9kZXMpIHsKICAgICAgICAgcmV0ID0gRVJST1JfSU5WQUw7Ci0gICAgICAgIExPRyhFUlJPUiwg IlBWIHZOVU1BIGlzIG5vdCB5ZXQgc3VwcG9ydGVkIik7CisgICAgICAgIExPR0QoRVJST1IsIGRv bWlkLCAiUFYgdk5VTUEgaXMgbm90IHlldCBzdXBwb3J0ZWQiKTsKICAgICAgICAgZ290byBlcnJv cl9vdXQ7CiAgICAgfQogCiAgICAgcmV0ID0gbGlieGxfX2RvbWFpbl9jcmVhdGVfaW5mb19zZXRk ZWZhdWx0KGdjLCAmZF9jb25maWctPmNfaW5mbyk7CiAgICAgaWYgKHJldCkgewotICAgICAgICBM T0coRVJST1IsICJVbmFibGUgdG8gc2V0IGRvbWFpbiBjcmVhdGUgaW5mbyBkZWZhdWx0cyIpOwor ICAgICAgICBMT0dEKEVSUk9SLCBkb21pZCwgIlVuYWJsZSB0byBzZXQgZG9tYWluIGNyZWF0ZSBp bmZvIGRlZmF1bHRzIik7CiAgICAgICAgIGdvdG8gZXJyb3Jfb3V0OwogICAgIH0KIAogICAgIHJl dCA9IGxpYnhsX19kb21haW5fYnVpbGRfaW5mb19zZXRkZWZhdWx0KGdjLCAmZF9jb25maWctPmJf aW5mbyk7CiAgICAgaWYgKHJldCkgewotICAgICAgICBMT0coRVJST1IsICJVbmFibGUgdG8gc2V0 IGRvbWFpbiBidWlsZCBpbmZvIGRlZmF1bHRzIik7CisgICAgICAgIExPR0QoRVJST1IsIGRvbWlk LCAiVW5hYmxlIHRvIHNldCBkb21haW4gYnVpbGQgaW5mbyBkZWZhdWx0cyIpOwogICAgICAgICBn b3RvIGVycm9yX291dDsKICAgICB9CiAKQEAgLTkxMSw3ICs5MTQsNyBAQCBzdGF0aWMgdm9pZCBp bml0aWF0ZV9kb21haW5fY3JlYXRlKGxpYnhsX19lZ2MgKmVnYywKICAgICAgICAgKGxpYnhsX2Rl ZmJvb2xfdmFsKGRfY29uZmlnLT5iX2luZm8udS5odm0ubmVzdGVkX2h2bSkgJiYKICAgICAgICAg IGxpYnhsX2RlZmJvb2xfdmFsKGRfY29uZmlnLT5iX2luZm8udS5odm0uYWx0cDJtKSkpIHsKICAg ICAgICAgcmV0ID0gRVJST1JfSU5WQUw7Ci0gICAgICAgIExPRyhFUlJPUiwgIm5lc3RlZGh2bSBh bmQgYWx0cDJtaHZtIGNhbm5vdCBiZSB1c2VkIHRvZ2V0aGVyIik7CisgICAgICAgIExPR0QoRVJS T1IsIGRvbWlkLCAibmVzdGVkaHZtIGFuZCBhbHRwMm1odm0gY2Fubm90IGJlIHVzZWQgdG9nZXRo ZXIiKTsKICAgICAgICAgZ290byBlcnJvcl9vdXQ7CiAgICAgfQogCkBAIC05MTksMTMgKzkyMiwx MyBAQCBzdGF0aWMgdm9pZCBpbml0aWF0ZV9kb21haW5fY3JlYXRlKGxpYnhsX19lZ2MgKmVnYywK ICAgICAgICAgbGlieGxfZGVmYm9vbF92YWwoZF9jb25maWctPmJfaW5mby51Lmh2bS5hbHRwMm0p ICYmCiAgICAgICAgIHBvZF9lbmFibGVkKSB7CiAgICAgICAgIHJldCA9IEVSUk9SX0lOVkFMOwot ICAgICAgICBMT0coRVJST1IsICJDYW5ub3QgZW5hYmxlIFBvRCBhbmQgQUxUUDJNIGF0IHRoZSBz YW1lIHRpbWUiKTsKKyAgICAgICAgTE9HRChFUlJPUiwgZG9taWQsICJDYW5ub3QgZW5hYmxlIFBv RCBhbmQgQUxUUDJNIGF0IHRoZSBzYW1lIHRpbWUiKTsKICAgICAgICAgZ290byBlcnJvcl9vdXQ7 CiAgICAgfQogCiAgICAgcmV0ID0gbGlieGxfX2RvbWFpbl9tYWtlKGdjLCBkX2NvbmZpZywgJmRv bWlkLCAmc3RhdGUtPmNvbmZpZyk7CiAgICAgaWYgKHJldCkgewotICAgICAgICBMT0coRVJST1Is ICJjYW5ub3QgbWFrZSBkb21haW46ICVkIiwgcmV0KTsKKyAgICAgICAgTE9HRChFUlJPUiwgZG9t aWQsICJjYW5ub3QgbWFrZSBkb21haW46ICVkIiwgcmV0KTsKICAgICAgICAgZGNzLT5ndWVzdF9k b21pZCA9IGRvbWlkOwogICAgICAgICByZXQgPSBFUlJPUl9GQUlMOwogICAgICAgICBnb3RvIGVy cm9yX291dDsKQEAgLTk0Myw3ICs5NDYsNyBAQCBzdGF0aWMgdm9pZCBpbml0aWF0ZV9kb21haW5f Y3JlYXRlKGxpYnhsX19lZ2MgKmVnYywKICAgICBmb3IgKGkgPSAwOyBpIDwgZF9jb25maWctPm51 bV9kaXNrczsgaSsrKSB7CiAgICAgICAgIHJldCA9IGxpYnhsX19kZXZpY2VfZGlza19zZXRkZWZh dWx0KGdjLCAmZF9jb25maWctPmRpc2tzW2ldLCBkb21pZCk7CiAgICAgICAgIGlmIChyZXQpIHsK LSAgICAgICAgICAgIExPRyhFUlJPUiwgIlVuYWJsZSB0byBzZXQgZGlzayBkZWZhdWx0cyBmb3Ig ZGlzayAlZCIsIGkpOworICAgICAgICAgICAgTE9HRChFUlJPUiwgZG9taWQsICJVbmFibGUgdG8g c2V0IGRpc2sgZGVmYXVsdHMgZm9yIGRpc2sgJWQiLCBpKTsKICAgICAgICAgICAgIGdvdG8gZXJy b3Jfb3V0OwogICAgICAgICB9CiAgICAgfQpAQCAtOTY0LDEwICs5NjcsMTAgQEAgc3RhdGljIHZv aWQgaW5pdGlhdGVfZG9tYWluX2NyZWF0ZShsaWJ4bF9fZWdjICplZ2MsCiAgICAgICAgIGdvdG8g ZXJyb3Jfb3V0OwogCiAgICAgaWYgKHJlc3RvcmVfZmQgPj0gMCB8fCBkY3MtPmRvbWlkX3NvZnRf cmVzZXQgIT0gSU5WQUxJRF9ET01JRCkgewotICAgICAgICBMT0coREVCVUcsICJyZXN0b3Jpbmcs IG5vdCBydW5uaW5nIGJvb3Rsb2FkZXIiKTsKKyAgICAgICAgTE9HRChERUJVRywgZG9taWQsICJy ZXN0b3JpbmcsIG5vdCBydW5uaW5nIGJvb3Rsb2FkZXIiKTsKICAgICAgICAgZG9tY3JlYXRlX2Jv b3Rsb2FkZXJfZG9uZShlZ2MsICZkY3MtPmJsLCAwKTsKICAgICB9IGVsc2UgIHsKLSAgICAgICAg TE9HKERFQlVHLCAicnVubmluZyBib290bG9hZGVyIik7CisgICAgICAgIExPR0QoREVCVUcsIGRv bWlkLCAicnVubmluZyBib290bG9hZGVyIik7CiAgICAgICAgIGRjcy0+YmwuY2FsbGJhY2sgPSBk b21jcmVhdGVfYm9vdGxvYWRlcl9kb25lOwogICAgICAgICBkY3MtPmJsLmNvbnNvbGVfYXZhaWxh YmxlID0gZG9tY3JlYXRlX2Jvb3Rsb2FkZXJfY29uc29sZV9hdmFpbGFibGU7CiAgICAgICAgIGRj cy0+YmwuaW5mbyA9ICZkX2NvbmZpZy0+Yl9pbmZvOwpAQCAtMTAxMSw3ICsxMDE0LDcgQEAgc3Rh dGljIHZvaWQgbGlieGxfX2NvbG9fcmVzdG9yZV9zZXR1cF9kb25lKGxpYnhsX19lZ2MgKmVnYywK ICAgICBFR0NfR0M7CiAKICAgICBpZiAocmMpIHsKLSAgICAgICAgTE9HKEVSUk9SLCAiY29sbyBy ZXN0b3JlIHNldHVwIGZhaWxzOiAlZCIsIHJjKTsKKyAgICAgICAgTE9HRChFUlJPUiwgZGNzLT5n dWVzdF9kb21pZCwgImNvbG8gcmVzdG9yZSBzZXR1cCBmYWlsczogJWQiLCByYyk7CiAgICAgICAg IGRvbWNyZWF0ZV9zdHJlYW1fZG9uZShlZ2MsICZkY3MtPnNycywgcmMpOwogICAgICAgICByZXR1 cm47CiAgICAgfQpAQCAtMTA3NSw4ICsxMDc4LDcgQEAgc3RhdGljIHZvaWQgZG9tY3JlYXRlX2Jv b3Rsb2FkZXJfZG9uZShsaWJ4bF9fZWdjICplZ2MsCiAgICAgICovCiAgICAgaWYgKGluZm8tPnR5 cGUgIT0gTElCWExfRE9NQUlOX1RZUEVfSFZNICYmCiAgICAgICAgIGNoZWNrcG9pbnRlZF9zdHJl YW0gPT0gTElCWExfQ0hFQ0tQT0lOVEVEX1NUUkVBTV9DT0xPKSB7Ci0gICAgICAgIExPRyhFUlJP UiwgIkNPTE8gb25seSBzdXBwb3J0cyBIVk0sIHVuYWJsZSB0byByZXN0b3JlIGRvbWFpbiAlZCIs Ci0gICAgICAgICAgICBkb21pZCk7CisgICAgICAgIExPR0QoRVJST1IsIGRvbWlkLCAiQ09MTyBv bmx5IHN1cHBvcnRzIEhWTSwgdW5hYmxlIHRvIHJlc3RvcmUgZG9tYWluIik7CiAgICAgICAgIHJj ID0gRVJST1JfRkFJTDsKICAgICAgICAgZ290byBvdXQ7CiAgICAgfQpAQCAtMTIyMCw3ICsxMjIy LDcgQEAgc3RhdGljIHZvaWQgZG9tY3JlYXRlX3JlYnVpbGRfZG9uZShsaWJ4bF9fZWdjICplZ2Ms CiAgICAgbGlieGxfZG9tYWluX2NvbmZpZyAqY29uc3QgZF9jb25maWcgPSBkY3MtPmd1ZXN0X2Nv bmZpZzsKIAogICAgIGlmIChyZXQpIHsKLSAgICAgICAgTE9HKEVSUk9SLCAiY2Fubm90IChyZS0p YnVpbGQgZG9tYWluOiAlZCIsIHJldCk7CisgICAgICAgIExPR0QoRVJST1IsIGRvbWlkLCAiY2Fu bm90IChyZS0pYnVpbGQgZG9tYWluOiAlZCIsIHJldCk7CiAgICAgICAgIHJldCA9IEVSUk9SX0ZB SUw7CiAgICAgICAgIGdvdG8gZXJyb3Jfb3V0OwogICAgIH0KQEAgLTEyNTIsMjIgKzEyNTQsMjIg QEAgc3RhdGljIHZvaWQgZG9tY3JlYXRlX2xhdW5jaF9kbShsaWJ4bF9fZWdjICplZ2MsIGxpYnhs X19tdWx0aWRldiAqbXVsdGlkZXYsCiAgICAgbGlieGxfX2RvbWFpbl9idWlsZF9zdGF0ZSAqY29u c3Qgc3RhdGUgPSAmZGNzLT5idWlsZF9zdGF0ZTsKIAogICAgIGlmIChyZXQpIHsKLSAgICAgICAg TE9HKEVSUk9SLCAidW5hYmxlIHRvIGFkZCBkaXNrIGRldmljZXMiKTsKKyAgICAgICAgTE9HRChF UlJPUiwgZG9taWQsICJ1bmFibGUgdG8gYWRkIGRpc2sgZGV2aWNlcyIpOwogICAgICAgICBnb3Rv IGVycm9yX291dDsKICAgICB9CiAKICAgICBmb3IgKGkgPSAwOyBpIDwgZF9jb25maWctPmJfaW5m by5udW1faW9wb3J0czsgaSsrKSB7CiAgICAgICAgIGxpYnhsX2lvcG9ydF9yYW5nZSAqaW8gPSAm ZF9jb25maWctPmJfaW5mby5pb3BvcnRzW2ldOwogCi0gICAgICAgIExPRyhERUJVRywgImRvbSVk IGlvcG9ydHMgJSJQUkl4MzIiLSUiUFJJeDMyLAotICAgICAgICAgICAgZG9taWQsIGlvLT5maXJz dCwgaW8tPmZpcnN0ICsgaW8tPm51bWJlciAtIDEpOworICAgICAgICBMT0dEKERFQlVHLCBkb21p ZCwgImlvcG9ydHMgJSJQUkl4MzIiLSUiUFJJeDMyLAorICAgICAgICAgICAgIGlvLT5maXJzdCwg aW8tPmZpcnN0ICsgaW8tPm51bWJlciAtIDEpOwogCiAgICAgICAgIHJldCA9IHhjX2RvbWFpbl9p b3BvcnRfcGVybWlzc2lvbihDVFgtPnhjaCwgZG9taWQsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBpby0+Zmlyc3QsIGlvLT5udW1iZXIsIDEpOwogICAgICAgICBp ZiAocmV0IDwgMCkgewotICAgICAgICAgICAgTE9HRShFUlJPUiwKLSAgICAgICAgICAgICAgICAg ImZhaWxlZCBnaXZlIGRvbSVkIGFjY2VzcyB0byBpb3BvcnRzICUiUFJJeDMyIi0lIlBSSXgzMiwK LSAgICAgICAgICAgICAgICAgZG9taWQsIGlvLT5maXJzdCwgaW8tPmZpcnN0ICsgaW8tPm51bWJl ciAtIDEpOworICAgICAgICAgICAgTE9HRUQoRVJST1IsIGRvbWlkLAorICAgICAgICAgICAgICAg ICAgImZhaWxlZCBnaXZlIGRvbWFpbiBhY2Nlc3MgdG8gaW9wb3J0cyAlIlBSSXgzMiItJSJQUkl4 MzIsCisgICAgICAgICAgICAgICAgICBpby0+Zmlyc3QsIGlvLT5maXJzdCArIGlvLT5udW1iZXIg LSAxKTsKICAgICAgICAgICAgIHJldCA9IEVSUk9SX0ZBSUw7CiAgICAgICAgICAgICBnb3RvIGVy cm9yX291dDsKICAgICAgICAgfQpAQCAtMTI3NiwxMiArMTI3OCwxMiBAQCBzdGF0aWMgdm9pZCBk b21jcmVhdGVfbGF1bmNoX2RtKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX211bHRpZGV2ICptdWx0 aWRldiwKICAgICBmb3IgKGkgPSAwOyBpIDwgZF9jb25maWctPmJfaW5mby5udW1faXJxczsgaSsr KSB7CiAgICAgICAgIGludCBpcnEgPSBkX2NvbmZpZy0+Yl9pbmZvLmlycXNbaV07CiAKLSAgICAg ICAgTE9HKERFQlVHLCAiZG9tJWQgaXJxICVkIiwgZG9taWQsIGlycSk7CisgICAgICAgIExPR0Qo REVCVUcsIGRvbWlkLCAiaXJxICVkIiwgaXJxKTsKIAogICAgICAgICByZXQgPSBpcnEgPj0gMCA/ IGxpYnhsX19hcmNoX2RvbWFpbl9tYXBfaXJxKGdjLCBkb21pZCwgaXJxKQogICAgICAgICAgICAg ICAgICAgICAgICA6IC1FT1ZFUkZMT1c7CiAgICAgICAgIGlmIChyZXQpIHsKLSAgICAgICAgICAg IExPR0UoRVJST1IsICJmYWlsZWQgZ2l2ZSBkb20lZCBhY2Nlc3MgdG8gaXJxICVkIiwgZG9taWQs IGlycSk7CisgICAgICAgICAgICBMT0dFRChFUlJPUiwgZG9taWQsICJmYWlsZWQgZ2l2ZSBkb21h aW4gYWNjZXNzIHRvIGlycSAlZCIsIGlycSk7CiAgICAgICAgICAgICByZXQgPSBFUlJPUl9GQUlM OwogICAgICAgICAgICAgZ290byBlcnJvcl9vdXQ7CiAgICAgICAgIH0KQEAgLTEyOTAsMTUgKzEy OTIsMTUgQEAgc3RhdGljIHZvaWQgZG9tY3JlYXRlX2xhdW5jaF9kbShsaWJ4bF9fZWdjICplZ2Ms IGxpYnhsX19tdWx0aWRldiAqbXVsdGlkZXYsCiAgICAgZm9yIChpID0gMDsgaSA8IGRfY29uZmln LT5iX2luZm8ubnVtX2lvbWVtOyBpKyspIHsKICAgICAgICAgbGlieGxfaW9tZW1fcmFuZ2UgKmlv ID0gJmRfY29uZmlnLT5iX2luZm8uaW9tZW1baV07CiAKLSAgICAgICAgTE9HKERFQlVHLCAiZG9t JWQgaW9tZW0gJSJQUkl4NjQiLSUiUFJJeDY0LAotICAgICAgICAgICAgZG9taWQsIGlvLT5zdGFy dCwgaW8tPnN0YXJ0ICsgaW8tPm51bWJlciAtIDEpOworICAgICAgICBMT0dEKERFQlVHLCBkb21p ZCwgImlvbWVtICUiUFJJeDY0Ii0lIlBSSXg2NCwKKyAgICAgICAgICAgICBpby0+c3RhcnQsIGlv LT5zdGFydCArIGlvLT5udW1iZXIgLSAxKTsKIAogICAgICAgICByZXQgPSB4Y19kb21haW5faW9t ZW1fcGVybWlzc2lvbihDVFgtPnhjaCwgZG9taWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBpby0+c3RhcnQsIGlvLT5udW1iZXIsIDEpOwogICAgICAgICBpZiAo cmV0IDwgMCkgewotICAgICAgICAgICAgTE9HRShFUlJPUiwKLSAgICAgICAgICAgICAgICAgImZh aWxlZCBnaXZlIGRvbSVkIGFjY2VzcyB0byBpb21lbSByYW5nZSAlIlBSSXg2NCItJSJQUkl4NjQs Ci0gICAgICAgICAgICAgICAgIGRvbWlkLCBpby0+c3RhcnQsIGlvLT5zdGFydCArIGlvLT5udW1i ZXIgLSAxKTsKKyAgICAgICAgICAgIExPR0VEKEVSUk9SLCBkb21pZCwKKyAgICAgICAgICAgICAg ICAgICJmYWlsZWQgZ2l2ZSBkb21haW4gYWNjZXNzIHRvIGlvbWVtIHJhbmdlICUiUFJJeDY0Ii0l IlBSSXg2NCwKKyAgICAgICAgICAgICAgICAgIGlvLT5zdGFydCwgaW8tPnN0YXJ0ICsgaW8tPm51 bWJlciAtIDEpOwogICAgICAgICAgICAgcmV0ID0gRVJST1JfRkFJTDsKICAgICAgICAgICAgIGdv dG8gZXJyb3Jfb3V0OwogICAgICAgICB9CkBAIC0xMzA2LDEwICsxMzA4LDEwIEBAIHN0YXRpYyB2 b2lkIGRvbWNyZWF0ZV9sYXVuY2hfZG0obGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fbXVsdGlkZXYg Km11bHRpZGV2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW8tPmdm biwgaW8tPnN0YXJ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW8t Pm51bWJlciwgMSk7CiAgICAgICAgIGlmIChyZXQgPCAwKSB7Ci0gICAgICAgICAgICBMT0dFKEVS Uk9SLAotICAgICAgICAgICAgICAgICAiZmFpbGVkIHRvIG1hcCB0byBkb20lZCBpb21lbSByYW5n ZSAlIlBSSXg2NCItJSJQUkl4NjQKLSAgICAgICAgICAgICAgICAgIiB0byBndWVzdCBhZGRyZXNz ICUiUFJJeDY0LAotICAgICAgICAgICAgICAgICBkb21pZCwgaW8tPnN0YXJ0LCBpby0+c3RhcnQg KyBpby0+bnVtYmVyIC0gMSwgaW8tPmdmbik7CisgICAgICAgICAgICBMT0dFRChFUlJPUiwgZG9t aWQsCisgICAgICAgICAgICAgICAgICAiZmFpbGVkIHRvIG1hcCB0byBkb21haW4gaW9tZW0gcmFu Z2UgJSJQUkl4NjQiLSUiUFJJeDY0CisgICAgICAgICAgICAgICAgICAiIHRvIGd1ZXN0IGFkZHJl c3MgJSJQUkl4NjQsCisgICAgICAgICAgICAgICAgICBpby0+c3RhcnQsIGlvLT5zdGFydCArIGlv LT5udW1iZXIgLSAxLCBpby0+Z2ZuKTsKICAgICAgICAgICAgIHJldCA9IEVSUk9SX0ZBSUw7CiAg ICAgICAgICAgICBnb3RvIGVycm9yX291dDsKICAgICAgICAgfQpAQCAtMTQxOCwxMCArMTQyMCwx MCBAQCBzdGF0aWMgdm9pZCBsaWJ4bF9fYWRkX2R0ZGV2cyhsaWJ4bF9fZWdjICplZ2MsIGxpYnhs X19hbyAqYW8sIHVpbnQzMl90IGRvbWlkLAogICAgIGZvciAoaSA9IDA7IGkgPCBkX2NvbmZpZy0+ bnVtX2R0ZGV2czsgaSsrKSB7CiAgICAgICAgIGNvbnN0IGxpYnhsX2RldmljZV9kdGRldiAqZHRk ZXYgPSAmZF9jb25maWctPmR0ZGV2c1tpXTsKIAotICAgICAgICBMT0coREVCVUcsICJBc3NpZ24g ZGV2aWNlIFwiJXNcIiB0byBkb20ldSIsIGR0ZGV2LT5wYXRoLCBkb21pZCk7CisgICAgICAgIExP R0QoREVCVUcsIGRvbWlkLCAiQXNzaWduIGRldmljZSBcIiVzXCIgdG8gZG9tYWluIiwgZHRkZXYt PnBhdGgpOwogICAgICAgICByYyA9IHhjX2Fzc2lnbl9kdF9kZXZpY2UoQ1RYLT54Y2gsIGRvbWlk LCBkdGRldi0+cGF0aCk7CiAgICAgICAgIGlmIChyYyA8IDApIHsKLSAgICAgICAgICAgIExPRyhF UlJPUiwgInhjX2Fzc2lnbl9kdGRldmljZSBmYWlsZWQ6ICVkIiwgcmMpOworICAgICAgICAgICAg TE9HRChFUlJPUiwgZG9taWQsICJ4Y19hc3NpZ25fZHRkZXZpY2UgZmFpbGVkOiAlZCIsIHJjKTsK ICAgICAgICAgICAgIGdvdG8gb3V0OwogICAgICAgICB9CiAgICAgfQpAQCAtMTQ1Nyw4ICsxNDU5 LDggQEAgc3RhdGljIHZvaWQgZG9tY3JlYXRlX2F0dGFjaF9kZXZpY2VzKGxpYnhsX19lZ2MgKmVn YywKICAgICBjb25zdCBzdHJ1Y3QgbGlieGxfZGV2aWNlX3R5cGUgKmR0OwogCiAgICAgaWYgKHJl dCkgewotICAgICAgICBMT0coRVJST1IsICJ1bmFibGUgdG8gYWRkICVzIGRldmljZXMiLAotICAg ICAgICAgICAgZGV2aWNlX3R5cGVfdGJsW2Rjcy0+ZGV2aWNlX3R5cGVfaWR4XS0+dHlwZSk7Cisg ICAgICAgIExPR0QoRVJST1IsIGRvbWlkLCAidW5hYmxlIHRvIGFkZCAlcyBkZXZpY2VzIiwKKyAg ICAgICAgICAgICBkZXZpY2VfdHlwZV90YmxbZGNzLT5kZXZpY2VfdHlwZV9pZHhdLT50eXBlKTsK ICAgICAgICAgZ290byBlcnJvcl9vdXQ7CiAgICAgfQogCkBAIC0xNTAxLDcgKzE1MDMsNyBAQCBz dGF0aWMgdm9pZCBkb21jcmVhdGVfZGV2bW9kZWxfc3RhcnRlZChsaWJ4bF9fZWdjICplZ2MsCiAg ICAgbGlieGxfZG9tYWluX2NvbmZpZyAqY29uc3QgZF9jb25maWcgPSBkY3MtPmd1ZXN0X2NvbmZp ZzsKIAogICAgIGlmIChyZXQpIHsKLSAgICAgICAgTE9HKEVSUk9SLCAiZGV2aWNlIG1vZGVsIGRp ZCBub3Qgc3RhcnQ6ICVkIiwgcmV0KTsKKyAgICAgICAgTE9HRChFUlJPUiwgZG9taWQsICJkZXZp Y2UgbW9kZWwgZGlkIG5vdCBzdGFydDogJWQiLCByZXQpOwogICAgICAgICBnb3RvIGVycm9yX291 dDsKICAgICB9CiAKQEAgLTE1NzksOCArMTU4MSw3IEBAIHN0YXRpYyB2b2lkIGRvbWNyZWF0ZV9k ZXN0cnVjdGlvbl9jYihsaWJ4bF9fZWdjICplZ2MsCiAgICAgbGlieGxfX2RvbWFpbl9jcmVhdGVf c3RhdGUgKmRjcyA9IENPTlRBSU5FUl9PRihkZHMsICpkY3MsIGRkcyk7CiAKICAgICBpZiAocmMp Ci0gICAgICAgIExPRyhFUlJPUiwgInVuYWJsZSB0byBkZXN0cm95IGRvbWFpbiAldSBmb2xsb3dp bmcgZmFpbGVkIGNyZWF0aW9uIiwKLSAgICAgICAgICAgICAgICAgICBkZHMtPmRvbWlkKTsKKyAg ICAgICAgTE9HRChFUlJPUiwgZGRzLT5kb21pZCwgInVuYWJsZSB0byBkZXN0cm95IGRvbWFpbiBm b2xsb3dpbmcgZmFpbGVkIGNyZWF0aW9uIik7CiAKICAgICBkY3MtPmNhbGxiYWNrKGVnYywgZGNz LCBFUlJPUl9GQUlMLCBkY3MtPmd1ZXN0X2RvbWlkKTsKIH0KQEAgLTE2NTQsNyArMTY1NSw3IEBA IHN0YXRpYyB2b2lkIGRvbWFpbl9zb2Z0X3Jlc2V0X2NiKGxpYnhsX19lZ2MgKmVnYywKICAgICBj aGFyICpzYXZlZmlsZSwgKnJlc3RvcmVmaWxlOwogCiAgICAgaWYgKHJjKSB7Ci0gICAgICAgIExP RyhFUlJPUiwgImRlc3RydWN0aW9uIG9mIGRvbWFpbiAldSBmYWlsZWQuIiwgZGRzLT5kb21pZCk7 CisgICAgICAgIExPR0QoRVJST1IsIGRkcy0+ZG9taWQsICJkZXN0cnVjdGlvbiBvZiBkb21haW4g ZmFpbGVkLiIpOwogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KIApAQCAtMTY2Miw3ICsxNjYz LDcgQEAgc3RhdGljIHZvaWQgZG9tYWluX3NvZnRfcmVzZXRfY2IobGlieGxfX2VnYyAqZWdjLAog ICAgIHJjID0gbGlieGxfX3Jlc3RvcmVfZW11bGF0b3JfeGVuc3RvcmVfZGF0YSgmY2Rjcy0+ZGNz LCBzcnMtPnRvb2xzdGFja19idWYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHNycy0+dG9vbHN0YWNrX2xlbik7CiAgICAgaWYgKHJjKSB7Ci0gICAgICAg IExPRyhFUlJPUiwgImZhaWxlZCB0byByZXN0b3JlIHRvb2xzdGFjayByZWNvcmQuIik7CisgICAg ICAgIExPR0QoRVJST1IsIGRkcy0+ZG9taWQsICJmYWlsZWQgdG8gcmVzdG9yZSB0b29sc3RhY2sg cmVjb3JkLiIpOwogICAgICAgICBnb3RvIGVycm9yOwogICAgIH0KIApAQCAtMTY3MCw3ICsxNjcx LDcgQEAgc3RhdGljIHZvaWQgZG9tYWluX3NvZnRfcmVzZXRfY2IobGlieGxfX2VnYyAqZWdjLAog ICAgIHJlc3RvcmVmaWxlID0gR0NTUFJJTlRGKExJQlhMX0RFVklDRV9NT0RFTF9SRVNUT1JFX0ZJ TEUiLiVkIiwgZGRzLT5kb21pZCk7CiAgICAgcmMgPSByZW5hbWUoc2F2ZWZpbGUsIHJlc3RvcmVm aWxlKTsKICAgICBpZiAocmMpIHsKLSAgICAgICAgTE9HKEVSUk9SLCAiZmFpbGVkIHRvIHJlbmFt ZSBkbSBzYXZlIGZpbGUuIik7CisgICAgICAgIExPR0QoRVJST1IsIGRkcy0+ZG9taWQsICJmYWls ZWQgdG8gcmVuYW1lIGRtIHNhdmUgZmlsZS4iKTsKICAgICAgICAgZ290byBlcnJvcjsKICAgICB9 CiAKQEAgLTE3MTgsNyArMTcxOSw3IEBAIHN0YXRpYyBpbnQgZG9fZG9tYWluX3NvZnRfcmVzZXQo bGlieGxfY3R4ICpjdHgsCiAKICAgICBkb21fcGF0aCA9IGxpYnhsX194c19nZXRfZG9tcGF0aChn YywgZG9taWRfc29mdF9yZXNldCk7CiAgICAgaWYgKCFkb21fcGF0aCkgewotICAgICAgICBMT0co RVJST1IsICJmYWlsZWQgdG8gcmVhZCBkb21haW4gcGF0aCIpOworICAgICAgICBMT0dEKEVSUk9S LCBkb21pZF9zb2Z0X3Jlc2V0LCAiZmFpbGVkIHRvIHJlYWQgZG9tYWluIHBhdGgiKTsKICAgICAg ICAgcmMgPSBFUlJPUl9GQUlMOwogICAgICAgICBnb3RvIG91dDsKICAgICB9CkBAIC0xNzQzLDEz ICsxNzQ0LDEzIEBAIHN0YXRpYyBpbnQgZG9fZG9tYWluX3NvZnRfcmVzZXQobGlieGxfY3R4ICpj dHgsCiAgICAgcmMgPSBsaWJ4bF9fc2F2ZV9lbXVsYXRvcl94ZW5zdG9yZV9kYXRhKGRzcywgJnNy cy0+dG9vbHN0YWNrX2J1ZiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgJnNycy0+dG9vbHN0YWNrX2xlbik7CiAgICAgaWYgKHJjKSB7Ci0gICAgICAgIExPRyhF UlJPUiwgImZhaWxlZCB0byBzYXZlIHRvb2xzdGFjayByZWNvcmQuIik7CisgICAgICAgIExPR0Qo RVJST1IsIGRvbWlkX3NvZnRfcmVzZXQsICJmYWlsZWQgdG8gc2F2ZSB0b29sc3RhY2sgcmVjb3Jk LiIpOwogICAgICAgICBnb3RvIG91dDsKICAgICB9CiAKICAgICByYyA9IGxpYnhsX19kb21haW5f c3VzcGVuZF9kZXZpY2VfbW9kZWwoZ2MsICZkc3MtPmRzcHMpOwogICAgIGlmIChyYykgewotICAg ICAgICBMT0coRVJST1IsICJmYWlsZWQgdG8gc3VzcGVuZCBkZXZpY2UgbW9kZWwuIik7CisgICAg ICAgIExPR0QoRVJST1IsIGRvbWlkX3NvZnRfcmVzZXQsICJmYWlsZWQgdG8gc3VzcGVuZCBkZXZp Y2UgbW9kZWwuIik7CiAgICAgICAgIGdvdG8gb3V0OwogICAgIH0KIAotLSAKMi4xMC4xCgoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1h aWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcv eGVuLWRldmVsCg==