From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roger Pau Monne Subject: [PATCH v4 06/16] osstest: add a FreeBSD host install recipe Date: Thu, 6 Jul 2017 15:42:17 +0100 Message-ID: <20170706144227.36580-7-roger.pau@citrix.com> References: <20170706144227.36580-1-roger.pau@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 1dT7zN-00087x-Pq for xen-devel@lists.xenproject.org; Thu, 06 Jul 2017 14:42:41 +0000 In-Reply-To: <20170706144227.36580-1-roger.pau@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: Ian.Jackson@eu.citrix.com, Roger Pau Monne List-Id: xen-devel@lists.xenproject.org VGhlIGluc3RhbGxhdGlvbiBpcyBwZXJmb3JtZWQgdXNpbmcgdGhlIGJzZGluc3RhbGwgdG9vbCwg d2hpY2ggaXMgcGFydApvZiB0aGUgRnJlZUJTRCBiYXNlIHN5c3RlbS4gVGhlIGluc3RhbGxlciBp bWFnZSBpcyBzZXR1cCB3aXRoIHRoZQpvc3N0ZXN0IHNzaCBrZXlzIGFuZCBzc2hkIGVuYWJsZWQg YnkgZGVmYXVsdCwgd2hpY2ggYWxsb3dzIHRoZSB0ZXN0Cmhhcm5lc3MgdG8ganVzdCBzc2ggaW50 byB0aGUgYm94LCBjcmVhdGUgdGhlIGluc3RhbGwgY29uZmlnIGZpbGUgYW5kCmxhdW5jaCB0aGUg c2NyaXB0ZWQgaW5zdGFsbC4KCkN1cnJlbnRseSB0aGUgaW5zdGFsbGF0aW9uIGlzIGRvbmUgd2l0 aCBaRlMgb25seSwgaW4gc3RyaXBlIG1vZGUsIGFuZAphIHNpbmdsZSBkaXNrLgoKSW4gb3JkZXIg dG8gc3VwcG9ydCB0aGUgRnJlZUJTRCBpbnN0YWxsZXIgdGhlIHNldHVwX25ldGJvb3RfbWVtZGlz awpoZWxwZXIgaXMgdXNlZCwgdGhhdCBhbGxvd3Mgc2V0dGluZyB0aGUgcHhlIGJvb3Qgb2YgYSBo b3N0IHVzaW5nIGEKbWVtZGlzay4KClRoZSBpbnN0YWxsIHNjcmlwdCBlaXRoZXIgcGlja3MgdGhl IGJpbmFyeSBpbWFnZXMgZnJvbSB0aGUgb3V0cHV0IG9mIGEKcHJldmlvdXMgRnJlZUJTRCBidWls ZGpvYiAoeWV0IHRvIGJlIGludHJvZHVjZWQpLCBvciBmcm9tIHRoZSBmb2xkZXIKcG9pbnRlZCBi eSBmcmVlYnNkX2Rpc3RwYXRoLiBUaGlzIGZvbGRlciBzaG91bGQgY29udGFpbiB0aGUgaW5zdGFs bGVyCmltYWdlIChpbnN0YWxsLmltZykgYW5kIHRoZSBjb21wcmVzc2VkIGluc3RhbGwgc2V0cyAo a2VybmVsLnR4eiwKYmFzZS50eHopIHRvZ2V0aGVyIHdpdGggdGhlIE1BTklGRVNUIGZpbGUgdGhh dCBjb250YWlucyB0aGUgY2hlY2tzdW1zLgoKU2lnbmVkLW9mZi1ieTogUm9nZXIgUGF1IE1vbm7D qSA8cm9nZXIucGF1QGNpdHJpeC5jb20+Ci0tLQpDaGFuZ2VzIHNpbmNlIHYzOgogLSBVc2Ugc2hh MjU2ZmlsZSBpbnN0ZWFkIG9mIHRoZSBzaGEyNTZzdW0gY2x1LgogLSBTaGlmdCBwYXJhbWV0ZXJz IHBhc3NlZCB0byB0aGUgbG9jayBhbmQgY29weSBzY3JpcHQsIHNvIHRoYXQKICAgcGFyYW1ldGVy IDAgaXMgaWdub3JlZC4KIC0gQ29weSB0byAudG1wIGFuZCB0aGVuIG1vdmUgdGhlIEZyZWVCU0Qg aW1hZ2UuCiAtIFVzZSBhIHNpbmdsZS1saW5lIGZpbmQgcnVuZSB0byBjbGVhbnVwIG9sZCBpbWFn ZXMuCiAtIEFkZCBzb21lIG1pc3NpbmcgInNldCAtZSIuCiAtIERvbid0IGNoZWNrIHRoZSBvdXRw dXQgb2YgdGFyZ2V0X2NtZF9vdXRwdXRfcm9vdCBhZ2FpbnN0IHVuZGVmaW5lZCwKICAgdGhhdCdz IG5ldmVyIGdvaW5nIHRvIGJlIHRydWUuCiAtIFNwbGl0IHRoZSBzZXR1cF9uZXRib290X21lbWRp c2sgaGVscGVyIGNvZGUgaW50byBhIHByZS1wYXRjaC4KCkNoYW5nZXMgc2luY2UgdjI6CiAtIFVz ZSBzeXNyYyBpbnN0ZWFkIG9mIGVjaG8gdG8gbW9kaWZ5IHJjLmNvbmYuCgpDaGFuZ2VzIHNpbmNl IHYxOgogLSBVc2UgcGtnIGJvb3RzdHJhcCBpbnN0ZWFkIG9mIHBrZyB1cGRhdGUuCiAtIFVzZSBm cmVlYnNkYnVpbGRqb2IgaW5zdGVhZCBvZiBmcmVlYnNkX2J1aWxkam9iLgogLSBhZGQgImFwcGVu ZCByYXciIHRvIHRoZSBtZW1kaXNrIGNvbW1hbmQgbGluZS4KIC0gVXNlIHdpdGgtbG9jay1leCBp bnN0ZWFkIG9mIGZsb2NrLgogLSBVc2Ugc3lzdGVtX2NoZWNrZWQgYW5kIGFuIGFycmF5IHRvIGhv bGQgdGhlIGxvY2tlZCBjb21tYW5kIHRvCiAgIGV4ZWN1dGUuCiAtIFVzZSBhbiBhcnJheSB0byBz dG9yZSB0aGUgbGlzdCBvZiBwb3NzaWJsZSBkaXNrIGRldmljZXMuCiAtIFVzZSB0YXJnZXRfcHV0 ZmlsZWNvbnRlbnRzX3Jvb3Rfc3Rhc2ggaW4gb3JkZXIgdG8gdXBsb2FkIHRoZQogICBpbnN0YWxs IHNjcmlwdCB0byB0aGUgdGFyZ2V0LgogLSBSZW1vdmUgdGhlIHVzYWdlIG9mIFRmdHBGcmVlQlNE QmFzZS4KIC0gVXNlIHRhcmdldF90ZnRwX3ByZWZpeCBpbiBvcmRlciB0byBnZXQgdGhlIHByZWZp eCBmb3IgdGhlIHRmdHAKICAgdGFyZ2V0IGltYWdlIHBhdGguCiAtIEFkZCBhIG1pc3NpbmcgbGlu ZXdyYXAuCiAtIFJlcGxhY2UgdGhlIHNwbGl0IHVzZWQgdG8gZ2V0IHRoZSBydW52YXIgcGF0aHMg d2l0aCBhIHJlZ2V4cC4KIC0gUGxhY2UgdGhlIGluc3RhbGwgc2V0cyBhdCAvcm9vdC9vc3N0ZXN0 X3NldHMgaW5zdGVhZCBvZgogICAvdG1wL29zc3Rlc3Rfc2V0cy4KIC0gUGljayB0aGUgc2V0cy9p bnN0YWxsZXIgaW1hZ2UgZnJvbSB0aGUgZnJlZWJzZGJ1aWxkam9iCiAgIHBhdGhfZnJlZWJzZGlz dCBvciBmcm9tIHRoZSBydW52YXIgdmFyaWFibGUgZnJlZWJzZF9kaXN0cGF0aC4KIC0gQWRkIGEg Y29tbWVudCBhYm91dCB3aGljaCBGcmVlQlNEIHNwZWNpZmljIGlucHV0cyB0aGUgc2NyaXB0CiAg IGNvbnN1bWVzLgotLS0KIHRzLWZyZWVic2QtaG9zdC1pbnN0YWxsIHwgMjY2ICsrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDI2 NiBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA3NTUgdHMtZnJlZWJzZC1ob3N0LWluc3Rh bGwKCmRpZmYgLS1naXQgYS90cy1mcmVlYnNkLWhvc3QtaW5zdGFsbCBiL3RzLWZyZWVic2QtaG9z dC1pbnN0YWxsCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwLi5mY2MxODVjOAot LS0gL2Rldi9udWxsCisrKyBiL3RzLWZyZWVic2QtaG9zdC1pbnN0YWxsCkBAIC0wLDAgKzEsMjY2 IEBACisjIS91c3IvYmluL3BlcmwgLXcKKyMgVGhpcyBpcyBwYXJ0IG9mICJvc3N0ZXN0IiwgYW4g YXV0b21hdGVkIHRlc3RpbmcgZnJhbWV3b3JrIGZvciBYZW4uCisjIENvcHlyaWdodCAoQykgMjAx NyBDaXRyaXggSW5jLgorIyAKKyMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBj YW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9m IHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Cisj IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExp Y2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjIAorIyBU aGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVz ZWZ1bCwKKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxp ZWQgd2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElD VUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vu c2UgZm9yIG1vcmUgZGV0YWlscy4KKyMgCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNv cHkgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRo IHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMv Pi4KKworIyBUaGUgRnJlZUJTRCBpbnN0YWxsZXIgc2NyaXB0IGNvbnN1bWVzIGVpdGhlciBvbmUg b2YgdGhlIGZvbGxvd2luZworIyBydW52YXJzOgorIworIyBmcmVlYnNkX2Rpc3RwYXRoOiBwb2lu dHMgdG8gYSBmb2xkZXIgYWNjZXNzaWJsZSBieSB0aGUgY29udHJvbGxlciB0aGF0CisjIHNob3Vs ZCBjb250YWluIHRoZSBpbnN0YWxsZXIgaW1hZ2UgYW5kIHRoZSBjb21wcmVzc2VkIGluc3RhbGwg c2V0cywKKyMgdG9nZXRoZXIgd2l0aCB0aGUgTUFOSUZFU1QgZmlsZS4KKyMKKyMgZnJlZWJzZGJ1 aWxkam9iOiBwb2ludHMgdG8gYSBwcmV2aW91cyBGcmVlQlNEIGJ1aWxkIGpvYiwgdGhhdCBoYXMK KyMgcHJvZHVjZWQgYW4gaW5zdGFsbGVyIGltYWdlIGFuZCBjb21wcmVzc2VkIHNldHMuIFRoZSBv bmx5IHJ1bnZhciB1c2VkCisjIGZvcm0gdGhlIGpvYiBwb2ludGVkIHRvIGJ5IGZyZWVic2RidWls ZGpvYiBpcyB0aGUgcGF0aF9mcmVlYnNkZGlzdCBvbmUsCisjIHRoYXQgcG9pbnRzIHRvIHRoZSBm b2xkZXIgY29udGFpbmluZyB0aGUgZmlsZXMgZGVzY3JpYmVkIGFib3ZlLgorIworIyBUaGUgaW5z dGFsbGVyIGltYWdlIG11c3QgYmUgbmFtZWQgJ2luc3RhbGwuaW1nJywgYW5kIHRoZSBzZXRzCisj ICdrZXJuZWwudHh6JywgJ2Jhc2UudHh6JyBhbmQgZmluYWxseSB0aGUgJ01BTklGRVNUJyBmaWxl IHRoYXQgY29udGFpbnMKKyMgdGhlIGNoZWNrc3Vtcy4KKwordXNlIHN0cmljdCBxdyh2YXJzKTsK K3VzZSBEQkk7Cit1c2UgUE9TSVg7CisKK3Vuc2hpZnQgQElOQywgcXcoLik7Cit1c2UgT3NzdGVz dDsKK3VzZSBPc3N0ZXN0OjpUZXN0U3VwcG9ydDsKKwordHNyZWFkY29uZmlnKCk7CisKK291ciAl eG9wdHM7CisKK291ciAoJHdoaG9zdCkgPSBAQVJHVjsKKyR3aGhvc3QgfHw9ICdob3N0JzsKK291 ciAkaG89IHNlbGVjdGhvc3QoJHdoaG9zdCk7CitleGl0IDAgaWYgJGhvLT57RmxhZ3N9eyduby1y ZWluc3RhbGwnfTsKK2V4aXQgMCBpZiAkaG8tPntTaGFyZWRSZWFkeX07CisKK291ciAkdGltZW91 dCA9IDEwMDA7CisKK291ciBAc2V0cyA9IHF3KGJhc2UudHh6IGtlcm5lbC50eHopOworCitvdXIg JHBhdGhfcHJlZml4ID0gJHJ7ImZyZWVic2RfZGlzdHBhdGgifSB8fAorICAgICAgICAgICAgICAg ICAgIGdldF9zdGFzaGVkKCJwYXRoX2ZyZWVic2RkaXN0IiwgJHJ7ImZyZWVic2RidWlsZGpvYiJ9 KTsKKworc3ViIGdldF9zZXRzX3BhdGggKCkgeworICAgIG15IEBwYXRoczsKKworICAgIGZvcmVh Y2ggbXkgJHNldCAoQHNldHMsICJNQU5JRkVTVCIpIHsKKyAgICAgICAgcHVzaCBAcGF0aHMsIHsg bmFtZSA9PiAiJHNldCIsIHBhdGggPT4gIiRwYXRoX3ByZWZpeC8kc2V0IiB9OworICAgIH0KKwor ICAgIHJldHVybiBAcGF0aHM7Cit9CisKK3N1YiBjcmVhdGVfc3NoX292ZXJsYXkgKCkgeworICAg IG15ICR1cmwgPSBjcmVhdGVfd2ViZmlsZSgkaG8sICJzc2gudGFyIiwgc3ViIHsKKyAgICAgICAg bXkgKCRmaCkgPSBAXzsKKyAgICAgICAgY29udGVudHNfbWFrZV9jcGlvKCRmaCwgJ3VzdGFyJywg ICIkY3tPdmVybGF5TG9jYWx9L2V0Yy9zc2gvIik7CisgICAgfSk7CisKKyAgICByZXR1cm4gJHVy bDsKK30KKworc3ViIHNldHVwX25ldGJvb3RfaW5zdGFsbGVyICgpIHsKKyAgICBteSAkaW1hZ2Ug PSAiJHBhdGhfcHJlZml4L2luc3RhbGwuaW1nIjsKKyAgICBteSAkcHhlaW1nID0gdGFyZ2V0X3Rm dHBfcHJlZml4KCRobykgLiAiLS1mcmVlYnNkLmltZyI7CisgICAgbXkgJGhhc2ggPSBzaGEyNTZm aWxlKCRpbWFnZSwgMTYpOworICAgIG15ICR0ZnRwX2ZyZWVic2QgPSAiJGhvLT57VGZ0cH17UGF0 aH0vJGhvLT57VGZ0cH17VG1wRGlyfS9mcmVlYnNkLWltYWdlcy8iOworICAgIG15ICRzY3JpcHQg PSA8PCdFTkQnOworYmFzZWRpcj0kMQoraW1hZ2VwYXRoPSQyCitzaGFyZWRwYXRoPSQzCit0YXJn ZXRwYXRoPSQ0CitjZCAkYmFzZWRpcgorbWtkaXIgLXAgYGRpcm5hbWUgJHNoYXJlZHBhdGhgCitp ZiBbICEgLWYgJHNoYXJlZHBhdGggXTsgdGhlbgorICAgIGNwICRpbWFnZXBhdGggJHNoYXJlZHBh dGgudG1wCisgICAgbXYgJHNoYXJlZHBhdGgudG1wICRzaGFyZWRwYXRoCitmaQorcm0gLWYgJHRh cmdldHBhdGgKK2xuICRzaGFyZWRwYXRoICR0YXJnZXRwYXRoCisjIFBydW5lIG9sZCBpbWFnZXMg bm90IHVzZWQgYW55bW9yZQorZmluZCBgZGlybmFtZSAkc2hhcmVkcGF0aGAgLWxpbmtzIDEgLWN0 aW1lICs3IC1kZWxldGUKK0VORAorICAgIG15IEBjbWQgPSAoICJ3aXRoLWxvY2stZXgiLCAiLXci LCAiJHRmdHBfZnJlZWJzZC9sb2NrIiwKKyAgICAgICAgICAgICAgICAiYmFzaCIsICItZXhjIiwg IiRzY3JpcHQiLCAieCIsCisgICAgICAgICAgICAgICAgIiR0ZnRwX2ZyZWVic2QiLCAiJGltYWdl IiwgImJ5LWhhc2gvJGhhc2guaW1nIiwKKyAgICAgICAgICAgICAgICAiJGhvLT57VGZ0cH17UGF0 aH0vJHB4ZWltZyIgKTsKKworICAgIGVuc3VyZWRpcigkdGZ0cF9mcmVlYnNkKTsKKyAgICBzeXN0 ZW1fY2hlY2tlZChAY21kKTsKKworICAgICMgU2V0dXAgdGhlIHB4ZWxpbnV4IGNvbmZpZyBmaWxl CisgICAgbG9nbSgiQm9vdGluZyBmcm9tIGluc3RhbGxlciBpbWFnZSBhdCAkcHhlaW1nIik7Cisg ICAgc2V0dXBfbmV0Ym9vdF9tZW1kaXNrKCRobywgJHB4ZWltZyk7Cit9CisKK3N1YiBpbnN0YWxs ICgpIHsKKyAgICBteSAkYXV0aGtleXMgPSBhdXRob3JpemVkX2tleXMoKTsKKyAgICBteSAka25v d25ob3N0cyA9IGtub3duX2hvc3RzKCk7CisgICAgbXkgJHNzaGRfa2V5c191cmwgPSBjcmVhdGVf c3NoX292ZXJsYXkoKTsKKyAgICBteSBAZGlza19uYW1lcyA9IHF3KGFkYTAgZGEwIGFkMCk7Cisg ICAgbXkgJHRhcmdldF9zZXRzID0gIi9yb290L29zc3Rlc3Rfc2V0cyI7CisgICAgbXkgJGRpc2s7 CisgICAgbXkgJG5pYzsKKworICAgIHRhcmdldF9jbWRfcm9vdCgkaG8sICdjaHNoIC1zIC9iaW4v c2gnLCAxMCk7CisKKyAgICBsb2dtKCJUcnlpbmcgdG8gZmluZCBhIGRpc2sgdG8gaW5zdGFsbCB0 byIpOworICAgICRkaXNrID0gdGFyZ2V0X2NtZF9vdXRwdXRfcm9vdCgkaG8sIDw8RU5ELCAzMCk7 CitzZXQgLWUKK2ZvciBkaXNrIGluIEBkaXNrX25hbWVzOyBkbworICAgIGlmIFsgLWMgIi9kZXYv XCRkaXNrIiBdOyB0aGVuCisgICAgICAgIGVjaG8gXCRkaXNrCisgICAgICAgIGV4aXQgMAorICAg IGZpCitkb25lCitleGl0IDEKK0VORAorICAgIGxvZ20oIlVzaW5nICRkaXNrIGFzIGRlc3RpbmF0 aW9uIGRpc2sgZGV2aWNlIik7CisKKyAgICBsb2dtKCJUcnlpbmcgdG8gZmlndXJlIG91dCBwcmlt YXJ5IG5pYyBkZXZpY2UgbmFtZSIpOworICAgICRuaWMgPSB0YXJnZXRfY21kX291dHB1dF9yb290 KCRobywgPDxFTkQsIDMwKTsKK3NldCAtZQorbmljcz1gaWZjb25maWcgLWxgCitmb3IgbmljIGlu IFwkbmljczsgZG8KKyAgICBhZGRyPWBpZmNvbmZpZyBcJG5pYyBpbmV0fGdyZXAgaW5ldHxhd2sg eydwcmludCBcJDInfWAKKyAgICBpZiBbICJcJGFkZHIiID0gIiRoby0+e0lwfSIgXTsgdGhlbgor ICAgICAgICBlY2hvIFwkbmljCisgICAgICAgIGV4aXQgMAorICAgIGZpCitkb25lCitleGl0IDEK K0VORAorICAgIGxvZ20oIlVzaW5nICRuaWMgYXMgcHJpbWFyeSBuZXR3b3JrIGludGVyZmFjZSIp OworCisgICAgbG9nbSgiVXBsb2FkaW5nIHRoZSBpbnN0YWxsIHNldHMgdG8gdGhlIHN5c3RlbSIp OworICAgIHRhcmdldF9jbWRfcm9vdCgkaG8sIDw8RU5ELCAzMCk7CitzZXQgLWUKK21rZGlyIC1w ICR0YXJnZXRfc2V0cworbW91bnQgLW8gc2l6ZT0xRyAtdCB0bXBmcyB0bXBmcyAkdGFyZ2V0X3Nl dHMKK0VORAorCisgICAgZm9yZWFjaCAoZ2V0X3NldHNfcGF0aCgpKSB7CisgICAgICAgIHRhcmdl dF9wdXRmaWxlX3Jvb3QoJGhvLCA2MDAsICRfLT57cGF0aH0sCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIiR0YXJnZXRfc2V0cy8kXy0+e25hbWV9Iik7CisgICAgfQorCisgICAgbG9nbSgi Q3JlYXRpbmcgdGhlIGluc3RhbGxlciBzY3JpcHQiKTsKKyAgICB0YXJnZXRfcHV0ZmlsZWNvbnRl bnRzX3Jvb3Rfc3Rhc2goJGhvLCAxMCwgPDxFTkQsICd+L2luc3RhbGxzY3JpcHQnKTsKK3NldCAt YQorQlNESU5TVEFMTF9ESVNURElSPSIkdGFyZ2V0X3NldHMiCitaRlNCT09UX0RJU0tTPSIkZGlz ayIKK0RJU1RSSUJVVElPTlM9IkBzZXRzIgorbm9uSW50ZXJhY3RpdmU9MQorCisjIS9iaW4vc2gK K3NldCAtZXgKKworIyBTZXR1cCBuaWMgYW5kIHNzaGQKK3N5c3JjIGlmY29uZmlnXyRuaWM9REhD UAorc3lzcmMgc3NoZF9lbmFibGU9WUVTCisKKyMgVXNlIHN5bmNyb25pb3VzIERIQ1AgaW4gY2Fz ZSB0aGUgc2VydmVyIGlzIHNsb3cKK3N5c3JjIHN5bmNocm9ub3VzX2RoY2xpZW50PVlFUworCisj IERpc2FibGUgc2VuZG1haWwKK3N5c3JjIHNlbmRtYWlsX2VuYWJsZT1OTworc3lzcmMgc2VuZG1h aWxfc3VibWl0X2VuYWJsZT1OTworc3lzcmMgc2VuZG1haWxfb3V0Ym91bmRfZW5hYmxlPU5PCitz eXNyYyBzZW5kbWFpbF9tc3BfcXVldWVfZW5hYmxlPU5PCisKKyMgU2V0IHByb3h5IGZvciB0aGUg cGtnIG1hbmFnZXIKK21rZGlyIC1wIC91c3IvbG9jYWwvZXRjLworY2F0IDw8IEVORFBLRyA+PiAv dXNyL2xvY2FsL2V0Yy9wa2cuY29uZgorcGtnX2VudjogeyBodHRwX3Byb3h5ID0gJGN7SHR0cFBy b3h5fSB9CitkZWZhdWx0X2Fsd2F5c195ZXM6IHRydWUKK2Fzc3VtZV9hbHdheXNfeWVzOiB0cnVl CitFTkRQS0cKKworIyBCb290c3RhcCB0aGUgcGFja2FnZSBtYW5hZ2VyCitleHBvcnQgSFRUUF9Q Uk9YWT0kY3tIdHRwUHJveHl9CitleHBvcnQgQVNTVU1FX0FMV0FZU19ZRVM9eWVzCitwa2cgYm9v dHN0cmFwCisKKyMgQWxsb3cgcm9vdCB1c2VyIGxvZ2luIGFuZCBzZXR1cCBzc2gga2V5cworY2hz aCAtcyAvYmluL3NoIHJvb3QKK2VjaG8gJ1Blcm1pdFJvb3RMb2dpbiB5ZXMnID4+IC9ldGMvc3No L3NzaGRfY29uZmlnCitta2RpciAtcCAvcm9vdC8uc3NoCitjYXQgPDwgRU5ES0VZUyA+IC9yb290 Ly5zc2gvYXV0aG9yaXplZF9rZXlzCiskYXV0aGtleXMKK0VOREtFWVMKK2NhdCA8PCBFTkRIT1NU UyA+IC9yb290Ly5zc2gva25vd25faG9zdHMKKyRrbm93bmhvc3RzCitFTkRIT1NUUworCisjIEZl dGNoIGhvc3Qga2V5cworZmV0Y2ggJHNzaGRfa2V5c191cmwgLW8gLSB8IHRhciAteGYgLSAtQyAv ZXRjL3NzaC8KKyMgU2V0IGNvcnJlY3QgcGVybWlzc2lvbnMKK2Nob3duIHJvb3Q6d2hlZWwgL2V0 Yy9zc2gvc3NoX2hvc3RfKl9rZXkqCitjaG1vZCAwNjAwIC9ldGMvc3NoL3NzaF9ob3N0Xypfa2V5 CitjaG1vZCAwNjQ0IC9ldGMvc3NoL3NzaF9ob3N0Xypfa2V5LnB1YgorCisjIEFkZCBhIG9zc3Rl c3QgdXNlcgorcHcgdXNlcmFkZCBvc3N0ZXN0IC1tCitjaHNoIC1zIC9iaW4vc2ggb3NzdGVzdAor bWtkaXIgLXAgL2hvbWUvb3NzdGVzdC8uc3NoCitjYXQgPDwgRU5ES0VZUyA+IC9ob21lL29zc3Rl c3QvLnNzaC9hdXRob3JpemVkX2tleXMKKyRhdXRoa2V5cworRU5ES0VZUworY2F0IDw8IEVOREhP U1RTID4gL2hvbWUvb3NzdGVzdC8uc3NoL2tub3duX2hvc3RzCiska25vd25ob3N0cworRU5ESE9T VFMKKworIyBTZXR1cCBzZXJpYWwgY29uc29sZQorcHJpbnRmICIlcyIgIi1oIC1TJGN7QmF1ZH0i ID4+IC9ib290LmNvbmZpZworY2F0IDw8IEVOREJPT1QgPj4gL2Jvb3QvbG9hZGVyLmNvbmYKK2Jv b3Rfc2VyaWFsPSJZRVMiCitjb21jb25zb2xlX3NwZWVkPSIkY3tCYXVkfSIKK2NvbnNvbGU9ImNv bWNvbnNvbGUiCitib290X3ZlcmJvc2U9IllFUyIKK2JlYXN0aWVfZGlzYWJsZT0iWUVTIgorRU5E Qk9PVAorRU5ECisKKyAgICBsb2dtKCJMYXVuY2ggdGhlIGluc3RhbGxlciIpOworICAgIHRhcmdl dF9jbWRfcm9vdCgkaG8sICdic2RpbnN0YWxsIHNjcmlwdCBpbnN0YWxsc2NyaXB0JywgMTIwMCk7 CisKKyAgICB0YXJnZXRfcmVib290KCRobyk7CisKKyAgICBsb2dtKCJXYWl0aW5nIGZvciB0aGUg aG9zdCB0byBib290Iik7CisgICAgYXdhaXRfdGNwKGdldF90aW1lb3V0KCRobywncmVib290Jywk dGltZW91dCksIDUsICRobyk7CisKKyAgICBsb2dtKCJGcmVlQlNEIGluc3RhbGxlZCBzdWNjZXNm dWxseSIpOworfQorCisjIFN3aXRjaCBvZmYsIHNldHVwIFBYRSBhbmQgc3dpdGNoIG9uIHRvIHRo ZSBpbnN0YWxsZXIKK3Bvd2VyX3N0YXRlKCRobywgMCk7CitzZXR1cF9uZXRib290X2luc3RhbGxl cigpOworcG93ZXJfY3ljbGVfc2xlZXAoJGhvKTsKK3Bvd2VyX3N0YXRlKCRobywgMSk7CisKKyMg V2FpdCBmb3IgdGhlIGhvc3QgdG8gZmluaXNoIGJvb3RpbmcKK2xvZ20oIldhaXRpbmcgZm9yIHRo ZSBpbnN0YWxsZXIgdG8gYm9vdCIpOworYXdhaXRfdGNwKGdldF90aW1lb3V0KCRobywncmVib290 JywkdGltZW91dCksIDUsICRobyk7CisKKyMgTmV4dCBib290IHdpbGwgYmUgZnJvbSBsb2NhbCBk aXNrCitzZXR1cF9uZXRib290X2xvY2FsKCRobyk7CisKKyMgUHJvY2VlZCB3aXRoIHRoZSBpbnN0 YWxsCitpbnN0YWxsKCk7CisKLS0gCjIuMTEuMCAoQXBwbGUgR2l0LTgxKQoKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxp c3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZl bAo=