From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony PERARD Subject: [OSSTEST PATCH v14 19/24] TestSupport: Implement target_subunit_cmd a subunit stream parser into substeps Date: Fri, 28 Jul 2017 14:56:20 +0100 Message-ID: <20170728135625.30263-20-anthony.perard@citrix.com> References: <20170728135625.30263-1-anthony.perard@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1db64E-0003su-Sz for xen-devel@lists.xenproject.org; Fri, 28 Jul 2017 14:16:38 +0000 In-Reply-To: <20170728135625.30263-1-anthony.perard@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Anthony PERARD , Ian Jackson List-Id: xen-devel@lists.xenproject.org dGFyZ2V0X3N1YnVuaXRfY21kIGNhbiBiZSB1c2VkIGxpa2UgdGFyZ2V0X2NtZCwgYnV0IHRoZSBj b21tYW5kIHdvdWxkCm5lZWRzIHRvIG91dHB1dCBhIHN1YnVuaXQgdjEgc3RyZWFtLCB3aGljaCB3 aWxsIGJlIHBhcnNlZCBhbmQgdHVybmVkCmludG8gb3NzdGVzdCBzdWJzdGVwcy4gVGhlIGNvbW1h bmQgY2FuIGJlIGB8IHN1YnVuaXQtMnRvMWAgaW4gb3JkZXIgdG8KdHVybiBhIHN1YnVuaXQgdjIg c3RyZWFtIGludG8gdjEuCgpDdXJyZW50bHksIHRpbWUgaXMgbm90IHRha2VuIGludG8gYWNjb3Vu dCwgYW5kIGFsbCBzdWJzdGVwcyB3aWxsIGhhdmUKYm9ndXMgdGltZXN0YW1wIGFzIHRoZSBvdXRw dXQgb2YgdGhlIGNvbW1hbmQgaXMgcGFyc2VkIGFmdGVyIGl0IGhhcwpydW5uZWQuCgpUaGlzIGlz IGEgZGVzY3JpcHRpb24gb2YgdGhlIHN1YnVuaXQgdjEgcHJvdG9jb2wsIHRha2VuIGZyb20KcHl0 aG9uLXN1YnVuaXQgUkVBRE1FLCBvciBodHRwczovL3B5cGkucHl0aG9uLm9yZy9weXBpL3B5dGhv bi1zdWJ1bml0Cgp0ZXN0fHRlc3Rpbmd8dGVzdDp8dGVzdGluZzogdGVzdCBMQUJFTApzdWNjZXNz fHN1Y2Nlc3M6fHN1Y2Nlc3NmdWx8c3VjY2Vzc2Z1bDogdGVzdCBMQUJFTApzdWNjZXNzfHN1Y2Nl c3M6fHN1Y2Nlc3NmdWx8c3VjY2Vzc2Z1bDogdGVzdCBMQUJFTCBERVRBSUxTCmZhaWx1cmU6IHRl c3QgTEFCRUwKZmFpbHVyZTogdGVzdCBMQUJFTCBERVRBSUxTCmVycm9yOiB0ZXN0IExBQkVMCmVy cm9yOiB0ZXN0IExBQkVMIERFVEFJTFMKc2tpcFs6XSB0ZXN0IExBQkVMCnNraXBbOl0gdGVzdCBM QUJFTCBERVRBSUxTCnhmYWlsWzpdIHRlc3QgTEFCRUwKeGZhaWxbOl0gdGVzdCBMQUJFTCBERVRB SUxTCnV4c3VjY2Vzc1s6XSB0ZXN0IExBQkVMCnV4c3VjY2Vzc1s6XSB0ZXN0IExBQkVMIERFVEFJ TFMKcHJvZ3Jlc3M6IFsrfC1dWApwcm9ncmVzczogcHVzaApwcm9ncmVzczogcG9wCnRhZ3M6IFst XVRBRyAuLi4KdGltZTogWVlZWS1NTS1ERCBISDpNTTpTU1oKCkxBQkVMOiBVVEY4KgpOQU1FOiBV VEY4KgpERVRBSUxTIDo6PSBCUkFDS0VURUQgfCBNVUxUSVBBUlQKQlJBQ0tFVEVEIDo6PSAnWycg Q1IgVVRGOC1saW5lcyAnXScgQ1IKTVVMVElQQVJUIDo6PSAnWyBtdWx0aXBhcnQnIENSIFBBUlQq ICddJyBDUgpQQVJUIDo6PSBQQVJUX1RZUEUgQ1IgTkFNRSBDUiBQQVJUX0JZVEVTIENSClBBUlRf VFlQRSA6Oj0gQ29udGVudC1UeXBlOiB0eXBlL3N1Yi10eXBlKDtwYXJhbWV0ZXI9dmFsdWUscGFy YW1ldGVyPXZhbHVlKQpQQVJUX0JZVEVTIDo6PSAoRElHSVRTIENSIExGIEJZVEV7RElHSVRTfSkq ICcwJyBDUiBMRgoKU2lnbmVkLW9mZi1ieTogQW50aG9ueSBQRVJBUkQgPGFudGhvbnkucGVyYXJk QGNpdHJpeC5jb20+Ci0tLQoKTm90ZXM6CiAgICBDaGFuZ2VzIGluIFYxNDoKICAgIC0gcHJlcGVu ZCAnLycgdG8gc3Vic3RlcCBuYW1lcwogICAgLSBwcmVwZW5kICdzdWJ1bml0LScgdG8gdGVzdCBs b2cgZmlsZW5hbWUKICAgIC0gY2xlYW51cAogICAgLSBzaW1wbGUgbWF0Y2ggb2YgY29udGVudC10 eXBlCiAgICAtIGluIHRoZSBsb29wIHRoYXQgcGFyc2UgY2h1bmtzLCBpZiBubyBjaHVuayBzaXpl IGFyZSBmb3VuZCwgbm93IGRyb3AKICAgICAgYmFjayB0byB0aGUgbXVsdGlwYXJ0IHBhcnNlci4K ICAgIAogICAgQ2hhbmdlcyBpbiB2MTM6CiAgICAtIGFsc28gcGFyc2UgbXVsdGlwYXJ0IG91dHB1 dAogICAgLSBhZGQgZXZlcnkgcG9zc2libGUgdGVzdCByZXN1bHQKICAgIC0gdXNlIHRhcmdldF9j bWRfc3Rhc2hlZAoKIE9zc3Rlc3QvVGVzdFN1cHBvcnQucG0gfCAxMTUgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQogMSBmaWxlIGNoYW5nZWQsIDExNCBp bnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvT3NzdGVzdC9UZXN0U3Vw cG9ydC5wbSBiL09zc3Rlc3QvVGVzdFN1cHBvcnQucG0KaW5kZXggYzU3OTBkYS4uNDdhZGUwOSAx MDA2NDQKLS0tIGEvT3NzdGVzdC9UZXN0U3VwcG9ydC5wbQorKysgYi9Pc3N0ZXN0L1Rlc3RTdXBw b3J0LnBtCkBAIC01NSw3ICs1NSw3IEBAIEJFR0lOIHsKIAogICAgICAgICAgICAgICAgICAgICAg IHRhcmdldF9jbWRfcm9vdF9zdGF0dXMgdGFyZ2V0X2NtZF9vdXRwdXRfcm9vdF9zdGF0dXMKICAg ICAgICAgICAgICAgICAgICAgICB0YXJnZXRfY21kX3Jvb3QgdGFyZ2V0X2NtZCB0YXJnZXRfY21k X2J1aWxkCi0gICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0X2NtZF9zdGFzaGVkCisgICAgICAg ICAgICAgICAgICAgICAgdGFyZ2V0X2NtZF9zdGFzaGVkIHRhcmdldF9zdWJ1bml0X2NtZAogICAg ICAgICAgICAgICAgICAgICAgIHRhcmdldF9jbWRfb3V0cHV0X3Jvb3QgdGFyZ2V0X2NtZF9vdXRw dXQKICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfY21kX2lucHV0Zmhfcm9vdCBzc2h1aG8K ICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfZ2V0ZmlsZSB0YXJnZXRfZ2V0ZmlsZV9yb290 CkBAIC03NzUsNiArNzc1LDExOSBAQCBzdWIgdGFyZ2V0X2NtZF9zdGFzaGVkICgkJCQ7JCQpIHsK ICAgICByZXR1cm4gIiRzdGFzaC8kJGxlYWZyZWYiOwogfQogCitzdWIgc3VidW5pdF9yZXN1bHRf dG9fb3NzdGVzdF9yZXN1bHQgKCQpIHsKKyAgICBteSAoJHJldCkgPSBAXzsKKyAgICByZXR1cm4g InBhc3MiIGlmICRyZXQgZXEgInN1Y2Nlc3MiIG9yICRyZXQgZXEgInN1Y2Nlc3NmdWwiOworICAg IHJldHVybiAiZmFpbCIgaWYgJHJldCBlcSAiZmFpbHVyZSI7CisgICAgcmV0dXJuICJza2lwIiBp ZiAkcmV0IGVxICJza2lwIjsKKyAgICByZXR1cm4gImZhaWwiIGlmICRyZXQgZXEgImVycm9yIjsK KyAgICAjIGV4cGVjdGVkIGZhaWx1cmUKKyAgICByZXR1cm4gInBhc3MiIGlmICRyZXQgZXEgInhm YWlsIjsKKyAgICAjIHVuZXhwZWN0ZWQgc3VjY2VzcworICAgIHJldHVybiAiZmFpbCIgaWYgJHJl dCBlcSAidXhzdWNjZXNzIjsKKyAgICBkaWUgInN1YnVuaXRfcmVzdWx0X3RvX29zc3Rlc3RfcmVz dWx0IHVuZXhwZWN0ZWQgcmVzdWx0ICRyZXQiOworfQorc3ViIHN1YnVuaXRfc2FuaXRpemVfdGVz dG5hbWUgKCQpIHsKKyAgICBteSAoJHRlc3RuYW1lKSA9IEBfOworICAgICR0ZXN0bmFtZSA9fiBz J1teXy4oKVxbXF0vfjAtOWEtekEtWi1dJ18nZzsKKyAgICByZXR1cm4gJHRlc3RuYW1lOworfQor CisjIExpa2UgdGFyZ2V0X2NtZCwgYnV0IHBhcnNlIHRoZSBjb21tYW5kIG91dHB1dCBhcyBhIHN1 YnVuaXQgdjEgc3RyZWFtIGFuZCBtYWtlCisjIGEgc3Vic3RlcCBvdXQgb2YgZWFjaCBzdWJ1bml0 IHRlc3QuCitzdWIgdGFyZ2V0X3N1YnVuaXRfY21kICgkJDskJCkgeworICAgIG15ICgkdGhvLCR0 Y21kLCR0aW1lb3V0LCRleHRyYXNzaG9wdHMpID0gQF87CisgICAgbXkgJGZpbGVuYW1lID0gInN1 YnVuaXQtb3V0cHV0IjsKKyAgICBteSAkcGF0aCA9IHRhcmdldF9jbWRfc3Rhc2hlZCgkdGhvLCBc JGZpbGVuYW1lLCAkdGNtZCwgJHRpbWVvdXQsCisgICAgICAgICRleHRyYXNzaG9wdHMpOworCisg ICAgb3BlbiBteSAkc3Rkb3V0LCAiJHBhdGgiIG9yIGRpZSAiJHBhdGg6ICQhIjsKKworICAgIG15 ICRsb2dmaWxlbmFtZSA9IHVuZGVmOworICAgIG15ICRmaCA9IHVuZGVmOworCisgICAgd2hpbGUg KDwkc3Rkb3V0PikgeworICAgICAgICBpZiAoL150aW1lOiBcZCstXGQrLVxkKyBcZCs6XGQrOlxk Kyg/OlwuXGQrKT9aJC8pIHsKKyAgICAgICAgICAgICMgVGhpcyBpcyB0aGUgdGltZXN0YW1wIGZv ciB0aGUgbmV4dCBldmVudHMKKyAgICAgICAgfSBlbHNpZiAoL150ZXN0KD86aW5nKT86PyAoLisp XG4vKSB7CisgICAgICAgICAgICAjIFN0YXJ0IG9mIGEgbmV3IHRlc3QuCisgICAgICAgICAgICBt eSAkdGVzdG5hbWUgPSBzdWJ1bml0X3Nhbml0aXplX3Rlc3RuYW1lKCQxKTsKKyAgICAgICAgICAg ICRsb2dmaWxlbmFtZSA9ICdzdWJ1bml0LScgLiAkdGVzdG5hbWUgLiAnLmxvZyc7CisgICAgICAg ICAgICAkZmggPSBvcGVuX3VuaXF1ZV9zdGFzaGZpbGUoXCRsb2dmaWxlbmFtZSk7CisgICAgICAg ICAgICBzdWJzdGVwX3N0YXJ0KCcvJyAuICR0ZXN0bmFtZSwgJGxvZ2ZpbGVuYW1lKTsKKyAgICAg ICAgfSBlbHNpZiAoL14oc3VjY2Vzcyg/OmZ1bCk/fGZhaWx1cmV8c2tpcHxlcnJvcnx4ZmFpbHx1 eHN1Y2Nlc3MpOgorICAgICAgICAgICAgICAgICAgIFwgKC4rPykoXCBcWyhcIG11bHRpcGFydCk/ KT8kL3gpIHsKKyAgICAgICAgICAgICMgUmVzdWx0IG9mIGEgdGVzdCwgd2l0aCBpdHMgb3V0cHV0 LgorICAgICAgICAgICAgbXkgKCRyZXN1bHQsICR0ZXN0bmFtZSwgJGhhdmVfZGV0YWlscywgJGlz X211bHRpcGFydCkgPQorICAgICAgICAgICAgICAgICgkMSwkMiwkMywkNCk7CisKKyAgICAgICAg ICAgIGlmICgkaGF2ZV9kZXRhaWxzKSB7CisgICAgICAgICAgICAgICAgaWYgKCRpc19tdWx0aXBh cnQpIHsKKyAgICAgICAgICAgICAgICAgICAgIyBUZXN0IG91dHB1dAorICAgICAgICAgICAgICAg ICAgICB3aGlsZSAoPCRzdGRvdXQ+KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBpZiAobXte Y29udGVudC10eXBlOn1pKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnQgJGZo ICRfIG9yIGRpZSAkITsKKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgcGFydCBuYW1l CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbXkgJGxpbmUgPSA8JHN0ZG91dD47CisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnQgJGZoICRsaW5lIG9yIGRpZSAkITsKKworICAg ICAgICAgICAgICAgICAgICAgICAgICAgICMgUmVhZCBjaHVua3Mgb2YgYSBwYXJ0CisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgd2hpbGUgKDwkc3Rkb3V0PikgeworICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBpZiAoL14oWzAtOUEtRl0rKVxyJC9pKSB7CisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAjIFRoZSBjaHVuayBzaXplIGlzIGluIGhleCBldmVuIHRo b3VnaCB0aGlzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIGRvZXMgbm90 IHNlZW0gdG8gYmUgZG9jdW1lbnRlZCBpbiB0aGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICMgc3VidW5pdCBwcm90b2NvbCBkZXNjcmlwdGlvbi4KKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIG15ICRjaHVua19zaXplID0gaGV4KCQxKTsKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG15ICRjaHVuazsKKworICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgbGFzdCBpZiAkY2h1bmtfc2l6ZSA9PSAwOworICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZCAkc3Rkb3V0LCAkY2h1bmssICRjaHVua19z aXplOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnQgJGZoICRjaHVu ayBvciBkaWUgJCE7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7Cisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIFVuZXhwZWN0ZWQgb3V0cHV0LCB3 YXMgZXhwZWN0aW5nIGEgY2h1bmsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICMgc2l6ZS4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNob21wOworICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9nbSgiKioqICRfIik7CisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIERyb3AgYmFjayB0byBtdWx0aXBhcnQgInRl c3Qgb3V0cHV0IgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBwYXJzZXIs IHdoaWNoIGlzIG1vcmUgbGlrZWx5IHRvIGZpbmQKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICMgYSBsaW5lIHRoYXQgbWF0Y2guCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBsYXN0OworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNp ZiAoL15cXSQvKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFzdDsKKyAgICAgICAg ICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBV bmV4cGVjdGVkIG91dHB1dCBpbiBtdWx0aXBhcnQgcGFyc2VyCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY2hvbXA7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9nbSgiKioqICRf Iik7CisgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIH0KKyAg ICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICAjIFNpbXBsZSBub24t bXVsdGlwYXJ0IHRlc3Qgb3V0cHV0LgorICAgICAgICAgICAgICAgICAgICB3aGlsZSAoPCRzdGRv dXQ+KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBsYXN0IGlmICgvXlxdJC8pOworICAgICAg ICAgICAgICAgICAgICAgICAgcHJpbnQgJGZoICRfIG9yIGRpZSAkITsKKyAgICAgICAgICAgICAg ICAgICAgfQorICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGNs b3NlICRmaCBvciBkaWUgJCE7CisgICAgICAgICAgICBzdWJzdGVwX2ZpbmlzaCgiLyIgLnN1YnVu aXRfc2FuaXRpemVfdGVzdG5hbWUoJHRlc3RuYW1lKSwKKyAgICAgICAgICAgICAgICBzdWJ1bml0 X3Jlc3VsdF90b19vc3N0ZXN0X3Jlc3VsdCgkcmVzdWx0KSk7CisgICAgICAgIH0gZWxzaWYgKC9e dGFnczogLisvKSB7CisgICAgICAgICAgICAjIHVudXNlZAorICAgICAgICB9IGVsc2lmICgvXnBy b2dyZXNzOiAoPzpbKy1dP1xkK3xwdXNofHBvcCkkLykgeworICAgICAgICAgICAgIyB1bnVzZWQK KyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICMgVW5leHBlY3RlZCBvdXRwdXQKKyAgICAg ICAgICAgIGNob21wOworICAgICAgICAgICAgbG9nbSgiKioqICRfIik7CisgICAgICAgIH0KKyAg ICB9CisKKyAgICBjbG9zZSAkc3Rkb3V0IG9yIGRpZSAkITsKK30KKwogc3ViIHBvbGxfbG9vcCAo JCQkJikgewogICAgIG15ICgkbWF4d2FpdCwgJGludGVydmFsLCAkd2hhdCwgJGNvZGUpID0gQF87 CiAgICAgIyAkY29kZSBzaG91bGQgcmV0dXJuIHVuZGVmIHdoZW4gYWxsIGlzIHdlbGwKLS0gCkFu dGhvbnkgUEVSQVJECgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRw czovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==