From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony PERARD Subject: [PATCH v5 07/15] libxl_qmp: Handle write to QMP socket Date: Fri, 7 Sep 2018 16:10:56 +0100 Message-ID: <20180907151104.32306-8-anthony.perard@citrix.com> References: <20180907151104.32306-1-anthony.perard@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1fyIPe-0003Ig-56 for xen-devel@lists.xenproject.org; Fri, 07 Sep 2018 15:11:10 +0000 In-Reply-To: <20180907151104.32306-1-anthony.perard@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Anthony PERARD , Ian Jackson , Wei Liu List-Id: xen-devel@lists.xenproject.org VGhlIGxpYnhsX19ldl9xbXBfKiB3aWxsIG5vdyBzZW5kIHRoZSBjb21tYW5kIHRvIFFFTVUgd2hl biB0aGUgc29ja2V0IGlzCnJlYWR5IGZvciB3cml0ZXMuCgpTaWduZWQtb2ZmLWJ5OiBBbnRob255 IFBFUkFSRCA8YW50aG9ueS5wZXJhcmRAY2l0cml4LmNvbT4KUmV2aWV3ZWQtYnk6IFJvZ2VyIFBh dSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgotLS0KCk5vdGVzOgogICAgdjU6CiAgICAg ICAgcmVuYW1lIGJ1Zl9mZCB0byBzZW5kX2ZkCgogdG9vbHMvbGlieGwvbGlieGxfcW1wLmMgfCA0 NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMSBmaWxlIGNoYW5n ZWQsIDQ0IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9xbXAu YyBiL3Rvb2xzL2xpYnhsL2xpYnhsX3FtcC5jCmluZGV4IGI1Y2MwYWY1MTMuLjM1MWZiMWEyOTIg MTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX3FtcC5jCisrKyBiL3Rvb2xzL2xpYnhsL2xp YnhsX3FtcC5jCkBAIC0xMzI2LDYgKzEzMjYsOCBAQCBzdGF0aWMgaW50IHFtcF9ldl9wcmVwYXJl X2NtZChsaWJ4bF9fZ2MgKmdjLAogICAgIGV2LT50eF9idWYgPSBidWY7CiAgICAgZXYtPnR4X2J1 Zl9sZW4gPSBsZW47CiAKKyAgICBsaWJ4bF9fZXZfZmRfbW9kaWZ5KGdjLCAmZXYtPnFtcF9lZmQs IGV2LT5xbXBfZWZkLmV2ZW50cyB8IFBPTExPVVQpOworCiAgICAgcmV0dXJuIDA7CiB9CiAKQEAg LTE0MjksNiArMTQzMSw0MyBAQCBzdGF0aWMgaW50IHFtcF9ldl9jYWxsYmFja19yZWFkYWJsZShs aWJ4bF9fZWdjICplZ2MsIGxpYnhsX19ldl9xbXAgKmV2LCBpbnQgZmQpCiAgICAgcmV0dXJuIDA7 CiB9CiAKK3N0YXRpYyBpbnQgcW1wX2V2X2NhbGxiYWNrX3dyaXRhYmxlKGxpYnhsX19nYyAqZ2Ms IGxpYnhsX19ldl9xbXAgKmV2LCBpbnQgZmQpCit7CisgICAgaW50IHJjOworICAgIGNoYXIgKmJ1 ZjsKKyAgICBzaXplX3QgbGVuOworICAgIGludCBzZW5kX2ZkID0gLTE7CisKKyAgICAvKiBObyBu ZWVkIHRvIGNhbGwgcW1wX2V2X2NhbGxiYWNrX3dyaXRhYmxlIGFnYWluLCBldmVyeXRoaW5nIHRo YXQgbmVlZHMgdG8KKyAgICAgKiBiZSBzZW5kIGZvciBub3cgd2lsbCBiZSBpbiB0aGlzIGNhbGwu ICovCisgICAgbGlieGxfX2V2X2ZkX21vZGlmeShnYywgJmV2LT5xbXBfZWZkLCBldi0+cW1wX2Vm ZC5ldmVudHMgJiB+UE9MTE9VVCk7CisKKyAgICBpZiAoZXYtPnFtcF9zdGF0ZSA9PSBxbXBfc3Rh dGVfY29ubmVjdGVkKSB7CisgICAgICAgIGlmICghZXYtPnR4X2J1ZikKKyAgICAgICAgICAgIHJl dHVybiAwOworCisgICAgICAgIGJ1ZiA9IGV2LT50eF9idWY7CisgICAgICAgIGxlbiA9IGV2LT50 eF9idWZfbGVuOworICAgICAgICBzZW5kX2ZkID0gbGlieGxfX2NhcmVmZF9mZChldi0+Y2ZkKTsK KworICAgICAgICBldi0+dHhfYnVmID0gTlVMTDsKKyAgICB9IGVsc2UgeworICAgICAgICByZXR1 cm4gMDsKKyAgICB9CisKKyAgICBMT0dfUU1QKCJzZW5kaW5nOiAnJS4qcyciLCAoaW50KWxlbiwg YnVmKTsKKworICAgIGlmIChzZW5kX2ZkID49IDApIHsKKyAgICAgICAgcmMgPSBsaWJ4bF9fc2Vu ZG1zZ19mZHMoZ2MsIGZkLCBidWYsIGxlbiwgMSwgJnNlbmRfZmQsICJRTVAgc29ja2V0Iik7Cisg ICAgfSBlbHNlIHsKKyAgICAgICAgcmMgPSBsaWJ4bF93cml0ZV9leGFjdGx5KENUWCwgZmQsIGJ1 ZiwgbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlFNUCBjb21tYW5kIiwg IlFNUCBzb2NrZXQiKTsKKyAgICB9CisKKyAgICBmcmVlKGJ1Zik7CisgICAgcmV0dXJuIHJjOwor fQorCiBzdGF0aWMgdm9pZCBxbXBfZXZfY2FsbGJhY2tfZXJyb3IobGlieGxfX2VnYyAqZWdjLCBs aWJ4bF9fZXZfcW1wICpldikKIHsKICAgICBFR0NfR0M7CkBAIC0xNDY0LDYgKzE1MDMsMTEgQEAg c3RhdGljIHZvaWQgcW1wX2V2X2ZkX2NhbGxiYWNrKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX2V2 X2ZkICpldl9mZCwKICAgICAgICAgZ290byBvdXQ7CiAgICAgfQogCisgICAgaWYgKHJldmVudHMg JiBQT0xMT1VUKSB7CisgICAgICAgIHJjID0gcW1wX2V2X2NhbGxiYWNrX3dyaXRhYmxlKGdjLCBl diwgZmQpOworICAgICAgICBpZiAocmMpCisgICAgICAgICAgICBnb3RvIG91dDsKKyAgICB9CiAg ICAgaWYgKHJldmVudHMgJiBQT0xMSU4pIHsKICAgICAgICAgcmMgPSBxbXBfZXZfY2FsbGJhY2tf cmVhZGFibGUoZWdjLCBldiwgZmQpOwogICAgICAgICBpZiAocmMpCi0tIApBbnRob255IFBFUkFS RAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1k ZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8v bGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=