From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ronald Rojas Subject: [PATCH RFC 48/59] libxl: Add Ctx.CheckOpen Date: Wed, 28 Dec 2016 20:14:41 -0500 Message-ID: <1482974092-15891-48-git-send-email-ronladred@gmail.com> References: <1482974092-15891-1-git-send-email-ronladred@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1482974092-15891-1-git-send-email-ronladred@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel , Ian Jackson , Wei Liu , George Dunlap , George Dunlap List-Id: xen-devel@lists.xenproject.org RnJvbTogR2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1bmxhcEBjaXRyaXguY29tPgoKVG8gc3RhbmRh cmRpemUgdGhlIGVycm9yIGluIHRoZSBjYXNlIHRoYXQgQ3R4IGlzbid0IG9wZW4uICBBZGQgY2hl Y2tzIHRvIGFsbCBmdW5jdGlvbnMKd2hpY2ggY2FsbCBsaWJ4bCBmdW5jdGlvbnMgZGlyZWN0bHku CgpTaWduZWQtb2ZmLWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNpdHJpeC5jb20+ Ci0tLQogbGlieGwuZ28gfCA0OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKystLS0KIDEgZmlsZSBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL2xpYnhsLmdvIGIvbGlieGwuZ28KaW5kZXggZTczYzA2Yi4uOGYx NmIxZCAxMDA2NDQKLS0tIGEvbGlieGwuZ28KKysrIGIvbGlieGwuZ28KQEAgLTE2NCw5ICsxNjQs MTYgQEAgZnVuYyAoQ3R4ICpDb250ZXh0KSBDbG9zZSgpIChlcnIgZXJyb3IpIHsKIAlyZXR1cm4K IH0KIAotZnVuYyAoQ3R4ICpDb250ZXh0KSBEb21haW5JbmZvKElkIERvbWlkKSAoZGkgKkRvbWlu Zm8sIGVyciBlcnJvcikgeworZnVuYyAoQ3R4ICpDb250ZXh0KSBDaGVja09wZW4oKSAoZXJyIGVy cm9yKSB7CiAJaWYgQ3R4LmN0eCA9PSBuaWwgewogCQllcnIgPSBmbXQuRXJyb3JmKCJDb250ZXh0 IG5vdCBvcGVuZWQiKQorCX0KKwlyZXR1cm4KK30KKworZnVuYyAoQ3R4ICpDb250ZXh0KSBEb21h aW5JbmZvKElkIERvbWlkKSAoZGkgKkRvbWluZm8sIGVyciBlcnJvcikgeworCWVyciA9IEN0eC5D aGVja09wZW4oKQorCWlmIGVyciAhPSBuaWwgewogCQlyZXR1cm4KIAl9CiAKQEAgLTIwOSw4ICsy MTYsOCBAQCBmdW5jIChDdHggKkNvbnRleHQpIERvbWFpbkluZm8oSWQgRG9taWQpIChkaSAqRG9t aW5mbywgZXJyIGVycm9yKSB7CiB9CiAKIGZ1bmMgKEN0eCAqQ29udGV4dCkgRG9tYWluVW5wYXVz ZShJZCBEb21pZCkgKGVyciBlcnJvcikgewotCWlmIEN0eC5jdHggPT0gbmlsIHsKLQkJZXJyID0g Zm10LkVycm9yZigiQ29udGV4dCBub3Qgb3BlbmVkIikKKwllcnIgPSBDdHguQ2hlY2tPcGVuKCkK KwlpZiBlcnIgIT0gbmlsIHsKIAkJcmV0dXJuCiAJfQogCkBAIC0zNTksNiArMzY2LDExIEBAIGZ1 bmMgU2NoZWR1bGVyRnJvbVN0cmluZyhuYW1lIHN0cmluZykgKHMgU2NoZWR1bGVyLCBlcnIgZXJy b3IpIHsKIC8vIGxpYnhsX2NwdXBvb2xpbmZvICogbGlieGxfbGlzdF9jcHVwb29sKGxpYnhsX2N0 eCosIGludCAqbmJfcG9vbF9vdXQpOwogLy8gdm9pZCBsaWJ4bF9jcHVwb29saW5mb19saXN0X2Zy ZWUobGlieGxfY3B1cG9vbGluZm8gKmxpc3QsIGludCBuYl9wb29sKTsKIGZ1bmMgKEN0eCAqQ29u dGV4dCkgTGlzdENwdXBvb2woKSAobGlzdCBbXUNwdXBvb2xJbmZvKSB7CisJZXJyIDo9IEN0eC5D aGVja09wZW4oKQorCWlmIGVyciAhPSBuaWwgeworCQlyZXR1cm4KKwl9CisKIAl2YXIgbmJQb29s IEMuaW50CiAKIAljX2NwdXBvb2xfbGlzdCA6PSBDLmxpYnhsX2xpc3RfY3B1cG9vbChDdHguY3R4 LCAmbmJQb29sKQpAQCAtMzk0LDYgKzQwNiwxMSBAQCBmdW5jIChDdHggKkNvbnRleHQpIExpc3RD cHVwb29sKCkgKGxpc3QgW11DcHVwb29sSW5mbykgewogLy8gRklYTUU6IHV1aWQKIC8vIEZJWE1F OiBTZXR0aW5nIHBvb2xpZAogZnVuYyAoQ3R4ICpDb250ZXh0KSBDcHVwb29sQ3JlYXRlKE5hbWUg c3RyaW5nLCBTY2hlZHVsZXIgU2NoZWR1bGVyLCBDcHVtYXAgQml0bWFwKSAoZXJyIGVycm9yLCBQ b29saWQgdWludDMyKSB7CisJZXJyID0gQ3R4LkNoZWNrT3BlbigpCisJaWYgZXJyICE9IG5pbCB7 CisJCXJldHVybgorCX0KKwogCXBvb2xpZCA6PSBDLnVpbnQzMl90KDApCiAJbmFtZSA6PSBDLkNT dHJpbmcoTmFtZSkKIAlkZWZlciBDLmZyZWUodW5zYWZlLlBvaW50ZXIobmFtZSkpCkBAIC00MjAs NiArNDM3LDExIEBAIGZ1bmMgKEN0eCAqQ29udGV4dCkgQ3B1cG9vbENyZWF0ZShOYW1lIHN0cmlu ZywgU2NoZWR1bGVyIFNjaGVkdWxlciwgQ3B1bWFwIEJpdG1hCiAKIC8vIGludCBsaWJ4bF9jcHVw b29sX2Rlc3Ryb3kobGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IHBvb2xpZCk7CiBmdW5jIChDdHgg KkNvbnRleHQpIENwdXBvb2xEZXN0cm95KFBvb2xpZCB1aW50MzIpIChlcnIgZXJyb3IpIHsKKwll cnIgPSBDdHguQ2hlY2tPcGVuKCkKKwlpZiBlcnIgIT0gbmlsIHsKKwkJcmV0dXJuCisJfQorCiAJ cmV0IDo9IEMubGlieGxfY3B1cG9vbF9kZXN0cm95KEN0eC5jdHgsIEMudWludDMyX3QoUG9vbGlk KSkKIAkvLyBGSVhNRTogUHJvcGVyIGVycm9yCiAJaWYgcmV0ICE9IDAgewpAQCAtNDMyLDYgKzQ1 NCwxMSBAQCBmdW5jIChDdHggKkNvbnRleHQpIENwdXBvb2xEZXN0cm95KFBvb2xpZCB1aW50MzIp IChlcnIgZXJyb3IpIHsKIAogLy8gaW50IGxpYnhsX2NwdXBvb2xfY3B1YWRkKGxpYnhsX2N0eCAq Y3R4LCB1aW50MzJfdCBwb29saWQsIGludCBjcHUpOwogZnVuYyAoQ3R4ICpDb250ZXh0KSBDcHVw b29sQ3B1YWRkKFBvb2xpZCB1aW50MzIsIENwdSBpbnQpIChlcnIgZXJyb3IpIHsKKwllcnIgPSBD dHguQ2hlY2tPcGVuKCkKKwlpZiBlcnIgIT0gbmlsIHsKKwkJcmV0dXJuCisJfQorCiAJcmV0IDo9 IEMubGlieGxfY3B1cG9vbF9jcHVhZGQoQ3R4LmN0eCwgQy51aW50MzJfdChQb29saWQpLCBDLmlu dChDcHUpKQogCS8vIEZJWE1FOiBQcm9wZXIgZXJyb3IKIAlpZiByZXQgIT0gMCB7CkBAIC00NDUs NiArNDcyLDExIEBAIGZ1bmMgKEN0eCAqQ29udGV4dCkgQ3B1cG9vbENwdWFkZChQb29saWQgdWlu dDMyLCBDcHUgaW50KSAoZXJyIGVycm9yKSB7CiAvLyBpbnQgbGlieGxfY3B1cG9vbF9jcHVhZGRf Y3B1bWFwKGxpYnhsX2N0eCAqY3R4LCB1aW50MzJfdCBwb29saWQsCiAvLyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IGxpYnhsX2JpdG1hcCAqY3B1bWFwKTsKIGZ1bmMgKEN0 eCAqQ29udGV4dCkgQ3B1cG9vbENwdWFkZENwdW1hcChQb29saWQgdWludDMyLCBDcHVtYXAgQml0 bWFwKSAoZXJyIGVycm9yKSB7CisJZXJyID0gQ3R4LkNoZWNrT3BlbigpCisJaWYgZXJyICE9IG5p bCB7CisJCXJldHVybgorCX0KKwogCWNibSA6PSBiaXRtYXBHb3RvQyhDcHVtYXApCiAJZGVmZXIg Qy5saWJ4bF9iaXRtYXBfZGlzcG9zZSgmY2JtKQogCQpAQCAtNDYwLDYgKzQ5MiwxMSBAQCBmdW5j IChDdHggKkNvbnRleHQpIENwdXBvb2xDcHVhZGRDcHVtYXAoUG9vbGlkIHVpbnQzMiwgQ3B1bWFw IEJpdG1hcCkgKGVyciBlcnJvcgogCiAvLyBpbnQgbGlieGxfY3B1cG9vbF9jcHVyZW1vdmUobGli eGxfY3R4ICpjdHgsIHVpbnQzMl90IHBvb2xpZCwgaW50IGNwdSk7CiBmdW5jIChDdHggKkNvbnRl eHQpIENwdXBvb2xDcHVyZW1vdmUoUG9vbGlkIHVpbnQzMiwgQ3B1IGludCkgKGVyciBlcnJvcikg eworCWVyciA9IEN0eC5DaGVja09wZW4oKQorCWlmIGVyciAhPSBuaWwgeworCQlyZXR1cm4KKwl9 CisKIAlyZXQgOj0gQy5saWJ4bF9jcHVwb29sX2NwdXJlbW92ZShDdHguY3R4LCBDLnVpbnQzMl90 KFBvb2xpZCksIEMuaW50KENwdSkpCiAJLy8gRklYTUU6IFByb3BlciBlcnJvcgogCWlmIHJldCAh PSAwIHsKQEAgLTQ3Myw2ICs1MTAsMTEgQEAgZnVuYyAoQ3R4ICpDb250ZXh0KSBDcHVwb29sQ3B1 cmVtb3ZlKFBvb2xpZCB1aW50MzIsIENwdSBpbnQpIChlcnIgZXJyb3IpIHsKIC8vIGludCBsaWJ4 bF9jcHVwb29sX2NwdXJlbW92ZV9jcHVtYXAobGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IHBvb2xp ZCwKIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGlieGxfYml0 bWFwICpjcHVtYXApOwogZnVuYyAoQ3R4ICpDb250ZXh0KSBDcHVwb29sQ3B1cmVtb3ZlQ3B1bWFw KFBvb2xpZCB1aW50MzIsIENwdW1hcCBCaXRtYXApIChlcnIgZXJyb3IpIHsKKwllcnIgPSBDdHgu Q2hlY2tPcGVuKCkKKwlpZiBlcnIgIT0gbmlsIHsKKwkJcmV0dXJuCisJfQorCiAJY2JtIDo9IGJp dG1hcEdvdG9DKENwdW1hcCkKIAlkZWZlciBDLmxpYnhsX2JpdG1hcF9kaXNwb3NlKCZjYm0pCiAJ Ci0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6 Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=