Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Apr 2013 19:30:01 GMT
From:      Alan Somers <asomers@freebsd.org>
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   Re: ports/177641: [new port] devel/kyua-cli Kyua (automated testing framework) - Command line interface
Message-ID:  <201304251930.r3PJU1oV074299@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/177641; it has been noted by GNATS.

From: Alan Somers <asomers@freebsd.org>
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/177641: [new port] devel/kyua-cli Kyua (automated testing
 framework) - Command line interface
Date: Thu, 25 Apr 2013 13:20:09 -0600

 --047d7b5dbdcc90c2f604db344e01
 Content-Type: text/plain; charset=ISO-8859-1
 
 Updated the port with comments from Garrett.
 * Switch Makefile headers to the new style
 * Make use of EXAMPLESDIR, DOCSDIR, PORTDOCS, PORTEXAMPLES, and
 PORTDATA where appropriate.
 * Add support for the DOCS and EXAMPLES port options
 * Rename the port from "kyua-cli" to "kyua" to reduce user confusion.
 * Minor cleanup
 
 --047d7b5dbdcc90c2f604db344e01
 Content-Type: application/x-shar; name="kyua.shar"
 Content-Disposition: attachment; filename="kyua.shar"
 Content-Transfer-Encoding: base64
 X-Attachment-Id: f_hfybfruu0
 
 IyBUaGlzIGlzIGEgc2hlbGwgYXJjaGl2ZS4gIFNhdmUgaXQgaW4gYSBmaWxlLCByZW1vdmUgYW55
 dGhpbmcgYmVmb3JlCiMgdGhpcyBsaW5lLCBhbmQgdGhlbiB1bnBhY2sgaXQgYnkgZW50ZXJpbmcg
 InNoIGZpbGUiLiAgTm90ZSwgaXQgbWF5CiMgY3JlYXRlIGRpcmVjdG9yaWVzOyBmaWxlcyBhbmQg
 ZGlyZWN0b3JpZXMgd2lsbCBiZSBvd25lZCBieSB5b3UgYW5kCiMgaGF2ZSBkZWZhdWx0IHBlcm1p
 c3Npb25zLgojCiMgVGhpcyBhcmNoaXZlIGNvbnRhaW5zOgojCiMJa3l1YQojCWt5dWEvZGlzdGlu
 Zm8KIwlreXVhL01ha2VmaWxlCiMJa3l1YS9maWxlcwojCWt5dWEvZmlsZXMvcGF0Y2gtdXRpbHMt
 Y29uZmlnLXRyZWUuaXBwCiMJa3l1YS9maWxlcy9wYXRjaC11dGlscy1jb25maWctdHJlZS5jcHAK
 IwlreXVhL2ZpbGVzL3BhdGNoLXV0aWxzLWNvbmZpZy1ub2Rlcy5jcHAKIwlreXVhL2ZpbGVzL3Bh
 dGNoLXV0aWxzLWNvbmZpZy1ub2Rlcy5pcHAKIwlreXVhL3BrZy1kZXNjcgojCmVjaG8gYyAtIGt5
 dWEKbWtkaXIgLXAga3l1YSA+IC9kZXYvbnVsbCAyPiYxCmVjaG8geCAtIGt5dWEvZGlzdGluZm8K
 c2VkICdzL15YLy8nID5reXVhL2Rpc3RpbmZvIDw8ICc5NTE1ZWNlNjllZTAwZjQ5OTMyY2Y4NjEz
 MjdkOGI0NCcKWFNIQTI1NiAoa3l1YS1jbGktMC42LnRhci5neikgPSBiNDIyZDYzYTZkYjAyZTgw
 NmQ2ZGEzNTU0ODZkY2Y2ODU3YWE1NDMzOGQ4M2EwYzhiOTBjN2RhN2RkNGYwNjQyClhTSVpFIChr
 eXVhLWNsaS0wLjYudGFyLmd6KSA9IDQ4NzI0OQo5NTE1ZWNlNjllZTAwZjQ5OTMyY2Y4NjEzMjdk
 OGI0NAplY2hvIHggLSBreXVhL01ha2VmaWxlCnNlZCAncy9eWC8vJyA+a3l1YS9NYWtlZmlsZSA8
 PCAnNGJkMGYxMzlhZjk1NWQyMzc1NWY5ZGE1OTk3NDg1MjEnClgjIENyZWF0ZWQgYnk6IEFsYW4g
 U29tZXJzIDxhc29tZXJzQGZyZWVic2Qub3JnPgpYIyAkRnJlZUJTRCQKWApYUE9SVE5BTUU9CWt5
 dWEKWFBPUlRWRVJTSU9OPQkwLjYKWENBVEVHT1JJRVM9CWRldmVsClhNQVNURVJfU0lURVM9CSR7
 TUFTVEVSX1NJVEVfR09PR0xFX0NPREV9ClhQUk9KRUNUSE9TVD0Ja3l1YQpYRElTVE5BTUU9CWt5
 dWEtY2xpLSR7RElTVFZFUlNJT05QUkVGSVh9JHtESVNUVkVSU0lPTn0ke0RJU1RWRVJTSU9OU1VG
 RklYfQpYClhNQUlOVEFJTkVSPQlhc29tZXJzQGZyZWVic2Qub3JnClhDT01NRU5UPQlLeXVhIChh
 dXRvbWF0ZWQgdGVzdGluZyBmcmFtZXdvcmspIC0gQ29tbWFuZCBsaW5lIGludGVyZmFjZQpYClhM
 SUNFTlNFPQlCU0QKWApYTElCX0RFUEVORFM9CWx1dG9rOiR7UE9SVFNESVJ9L2RldmVsL2x1dG9r
 ClhMSUJfREVQRU5EUys9CXNxbGl0ZTM6JHtQT1JUU0RJUn0vZGF0YWJhc2VzL3NxbGl0ZTMKWEJV
 SUxEX0RFUEVORFM9CSR7TE9DQUxCQVNFfS9saWJleGVjL2t5dWEtYXRmLXRlc3Rlcjoke1BPUlRT
 RElSfS9kZXZlbC9reXVhLXRlc3RlcnMKWFJVTl9ERVBFTkRTOj0JJHtCVUlMRF9ERVBFTkRTfQpY
 ClhHTlVfQ09ORklHVVJFPQl5ZXMKWFVTRV9QS0dDT05GSUc9CXllcwpYClhPUFRJT05TX0RFRklO
 RT0JRE9DUyBFWEFNUExFUwpYLmluY2x1ZGUgPGJzZC5wb3J0Lm9wdGlvbnMubWs+ClgKWENPTkZJ
 R1VSRV9BUkdTKz0JLS13aXRob3V0LWRveHlnZW4KWENPTkZJR1VSRV9BUkdTKz0JLS1kb2NkaXI9
 JHtET0NTRElSfQpYIyBUT0RPOiBpbnN0YWxsIHRoZSB0ZXN0cywgb25jZSBGcmVlQlNEIGhhcyBh
 IHN5c3RlbSBmb3IgcG9ydHMgdG8gaW5zdGFsbCB0ZXN0cwpYQ09ORklHVVJFX0FSR1MrPQktLXdp
 dGhvdXQtYXRmClhNQUtFX0ZMQUdTKz0JcGtnZGF0YWRpcj0ke0RBVEFESVJ9ClgKWC5pZiAhICR7
 UE9SVF9PUFRJT05TOk1ET0NTfQpYTUFLRV9GTEFHUys9CWRvY19EQVRBPQpYLmVsc2UKWFBPUlRE
 T0NTPQlBVVRIT1JTIENPUFlJTkcgTkVXUyBSRUFETUUKWC5lbmRpZgpYUE9SVERBVEE9CW1pc2Mg
 c3RvcmUKWC5pZiAhICR7UE9SVF9PUFRJT05TOk1FWEFNUExFU30KWE1BS0VfRkxBR1MrPQlkaXN0
 X2V4YW1wbGVzX0RBVEE9ClguZWxzZQpYUE9SVERBVEErPQlleGFtcGxlcwpYLmVuZGlmClhQTElT
 VF9GSUxFUz0JYmluL2t5dWEKWApYTUFOMT0Ja3l1YS1hYm91dC4xIGt5dWEtY29uZmlnLjEga3l1
 YS1kYi1leGVjLjEga3l1YS1kYi1taWdyYXRlLjEKWE1BTjErPQlreXVhLWRlYnVnLjEga3l1YS1o
 ZWxwLjEga3l1YS1saXN0LjEga3l1YS1yZXBvcnQtaHRtbC4xClhNQU4xKz0Ja3l1YS1yZXBvcnQu
 MSBreXVhLXRlc3QuMSBreXVhLjEKWE1BTjU9CWt5dWEuY29uZi41IGt5dWFmaWxlLjUKWE1BTjc9
 CWt5dWEtYnVpbGQtcm9vdC43IGt5dWEtdGVzdC1maWx0ZXJzLjcKWApYLmluY2x1ZGUgPGJzZC5w
 b3J0Lm1rPgo0YmQwZjEzOWFmOTU1ZDIzNzU1ZjlkYTU5OTc0ODUyMQplY2hvIGMgLSBreXVhL2Zp
 bGVzCm1rZGlyIC1wIGt5dWEvZmlsZXMgPiAvZGV2L251bGwgMj4mMQplY2hvIHggLSBreXVhL2Zp
 bGVzL3BhdGNoLXV0aWxzLWNvbmZpZy10cmVlLmlwcApzZWQgJ3MvXlgvLycgPmt5dWEvZmlsZXMv
 cGF0Y2gtdXRpbHMtY29uZmlnLXRyZWUuaXBwIDw8ICdiOWYyZWQwYWE0NzAyYzhiOGY5ZDBiMmI4
 NWJiZmJkNycKWC0tLSB1dGlscy9jb25maWcvdHJlZS5pcHAub2xkClgrKysgdXRpbHMvY29uZmln
 L3RyZWUuaXBwClhAQCAtNzksMTMgKzc5LDEzIEBAIGNvbmZpZzo6dHJlZTo6bG9va3VwKGNvbnN0
 IHN0ZDo6c3RyaW5nJiBkb3R0ZWRfa2V5KSBjb25zdApYIHsKWCAgICAgY29uc3QgZGV0YWlsOjp0
 cmVlX2tleSBrZXkgPSBkZXRhaWw6OnBhcnNlX2tleShkb3R0ZWRfa2V5KTsKWCAgICAgY29uc3Qg
 ZGV0YWlsOjpiYXNlX25vZGUqIHJhd19ub2RlID0gX3Jvb3QtPmxvb2t1cF9ybyhrZXksIDApOwpY
 LSAgICB0cnkgewpYLSAgICAgICAgY29uc3QgTGVhZlR5cGUmIGNoaWxkID0gZHluYW1pY19jYXN0
 PCBjb25zdCBMZWFmVHlwZSYgPigqcmF3X25vZGUpOwpYLSAgICAgICAgaWYgKGNoaWxkLmlzX3Nl
 dCgpKQpYLSAgICAgICAgICAgIHJldHVybiBjaGlsZC52YWx1ZSgpOwpYKyAgICBjb25zdCBMZWFm
 VHlwZSogY2hpbGQgPSBkeW5hbWljX2Nhc3Q8IGNvbnN0IExlYWZUeXBlKiA+KHJhd19ub2RlKTsK
 WCsgICAgaWYgKGNoaWxkICE9IE5VTEwpIHsKWCsgICAgICAgIGlmIChjaGlsZC0+aXNfc2V0KCkp
 ClgrICAgICAgICAgICAgcmV0dXJuIGNoaWxkLT52YWx1ZSgpOwpYICAgICAgICAgZWxzZQpYICAg
 ICAgICAgICAgIHRocm93IHVua25vd25fa2V5X2Vycm9yKGtleSk7ClgtICAgIH0gY2F0Y2ggKGNv
 bnN0IHN0ZDo6YmFkX2Nhc3QmIHVudXNlZF9lcnJvcikgewpYKyAgICB9IGVsc2UgewpYICAgICAg
 ICAgdGhyb3cgdW5rbm93bl9rZXlfZXJyb3Ioa2V5KTsKWCAgICAgfQpYIH0KWEBAIC0xMDcsMTMg
 KzEwNywxMyBAQCBjb25maWc6OnRyZWU6Omxvb2t1cF9ydyhjb25zdCBzdGQ6OnN0cmluZyYgZG90
 dGVkX2tleSkKWCAgICAgY29uc3QgZGV0YWlsOjp0cmVlX2tleSBrZXkgPSBkZXRhaWw6OnBhcnNl
 X2tleShkb3R0ZWRfa2V5KTsKWCAgICAgZGV0YWlsOjpiYXNlX25vZGUqIHJhd19ub2RlID0gX3Jv
 b3QtPmxvb2t1cF9ydygKWCAgICAgICAgIGtleSwgMCwgZGV0YWlsOjpuZXdfbm9kZTwgTGVhZlR5
 cGUgPik7ClgtICAgIHRyeSB7ClgtICAgICAgICBMZWFmVHlwZSYgY2hpbGQgPSBkeW5hbWljX2Nh
 c3Q8IExlYWZUeXBlJiA+KCpyYXdfbm9kZSk7ClgtICAgICAgICBpZiAoY2hpbGQuaXNfc2V0KCkp
 ClgtICAgICAgICAgICAgcmV0dXJuIGNoaWxkLnZhbHVlKCk7ClgrICAgIExlYWZUeXBlKiBjaGls
 ZCA9IGR5bmFtaWNfY2FzdDwgTGVhZlR5cGUqID4ocmF3X25vZGUpOwpYKyAgICBpZiAoY2hpbGQg
 IT0gTlVMTCkgewpYKyAgICAgICAgaWYgKGNoaWxkLT5pc19zZXQoKSkKWCsgICAgICAgICAgICBy
 ZXR1cm4gY2hpbGQtPnZhbHVlKCk7ClggICAgICAgICBlbHNlClggICAgICAgICAgICAgdGhyb3cg
 dW5rbm93bl9rZXlfZXJyb3Ioa2V5KTsKWC0gICAgfSBjYXRjaCAoY29uc3Qgc3RkOjpiYWRfY2Fz
 dCYgdW51c2VkX2Vycm9yKSB7ClgrICAgIH0gZWxzZSB7ClggICAgICAgICB0aHJvdyB1bmtub3du
 X2tleV9lcnJvcihrZXkpOwpYICAgICB9ClggfQpYQEAgLTEzNiwxMCArMTM2LDEwIEBAIGNvbmZp
 Zzo6dHJlZTo6c2V0KGNvbnN0IHN0ZDo6c3RyaW5nJiBkb3R0ZWRfa2V5LApYICAgICBjb25zdCBk
 ZXRhaWw6OnRyZWVfa2V5IGtleSA9IGRldGFpbDo6cGFyc2Vfa2V5KGRvdHRlZF9rZXkpOwpYICAg
 ICBsZWFmX25vZGUqIHJhd19ub2RlID0gX3Jvb3QtPmxvb2t1cF9ydyhrZXksIDAsClggICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbDo6bmV3X25vZGU8IExl
 YWZUeXBlID4pOwpYLSAgICB0cnkgewpYLSAgICAgICAgTGVhZlR5cGUmIGNoaWxkID0gZHluYW1p
 Y19jYXN0PCBMZWFmVHlwZSYgPigqcmF3X25vZGUpOwpYLSAgICAgICAgY2hpbGQuc2V0KHZhbHVl
 KTsKWC0gICAgfSBjYXRjaCAoY29uc3Qgc3RkOjpiYWRfY2FzdCYgdW51c2VkX2Vycm9yKSB7Clgr
 ICAgIExlYWZUeXBlKiBjaGlsZCA9IGR5bmFtaWNfY2FzdDwgTGVhZlR5cGUqID4ocmF3X25vZGUp
 OwpYKyAgICBpZiAoY2hpbGQgIT0gTlVMTCkgewpYKyAgICAgICAgY2hpbGQtPnNldCh2YWx1ZSk7
 ClgrICAgIH0gZWxzZSB7ClggICAgICAgICB0aHJvdyB2YWx1ZV9lcnJvcihGKCJJbnZhbGlkIHZh
 bHVlIGZvciBrZXkgJyVzJyIpICUKWCAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbDo6
 ZmxhdHRlbl9rZXkoa2V5KSk7ClggICAgIH0KYjlmMmVkMGFhNDcwMmM4YjhmOWQwYjJiODViYmZi
 ZDcKZWNobyB4IC0ga3l1YS9maWxlcy9wYXRjaC11dGlscy1jb25maWctdHJlZS5jcHAKc2VkICdz
 L15YLy8nID5reXVhL2ZpbGVzL3BhdGNoLXV0aWxzLWNvbmZpZy10cmVlLmNwcCA8PCAnZDA0NzEz
 MjQzNzhkODQ3ZmY0NWE1Yzg1YWZlZTA4NjEnClgtLS0gdXRpbHMvY29uZmlnL3RyZWUuY3BwLm9s
 ZApYKysrIHV0aWxzL2NvbmZpZy90cmVlLmNwcApYQEAgLTEwOSwxMSArMTA5LDEwIEBAIGNvbmZp
 Zzo6dHJlZTo6aXNfc2V0KGNvbnN0IHN0ZDo6c3RyaW5nJiBkb3R0ZWRfa2V5KSBjb25zdApYICAg
 ICBjb25zdCBkZXRhaWw6OnRyZWVfa2V5IGtleSA9IGRldGFpbDo6cGFyc2Vfa2V5KGRvdHRlZF9r
 ZXkpOwpYICAgICB0cnkgewpYICAgICAgICAgY29uc3QgZGV0YWlsOjpiYXNlX25vZGUqIHJhd19u
 b2RlID0gX3Jvb3QtPmxvb2t1cF9ybyhrZXksIDApOwpYLSAgICAgICAgdHJ5IHsKWC0gICAgICAg
 ICAgICBjb25zdCBsZWFmX25vZGUmIGNoaWxkID0gZHluYW1pY19jYXN0PCBjb25zdCBsZWFmX25v
 ZGUmID4oClgtICAgICAgICAgICAgICAgICpyYXdfbm9kZSk7ClgtICAgICAgICAgICAgcmV0dXJu
 IGNoaWxkLmlzX3NldCgpOwpYLSAgICAgICAgfSBjYXRjaCAoY29uc3Qgc3RkOjpiYWRfY2FzdCYg
 dW51c2VkX2Vycm9yKSB7ClgrICAgICAgICBjb25zdCBsZWFmX25vZGUqIGNoaWxkID0gZHluYW1p
 Y19jYXN0PCBjb25zdCBsZWFmX25vZGUqID4ocmF3X25vZGUpOwpYKyAgICAgICAgaWYgKGNoaWxk
 ICE9IE5VTEwpIHsKWCsgICAgICAgICAgICByZXR1cm4gY2hpbGQtPmlzX3NldCgpOwpYKyAgICAg
 ICAgfSBlbHNlIHsKWCAgICAgICAgICAgICByZXR1cm4gZmFsc2U7ClggICAgICAgICB9ClggICAg
 IH0gY2F0Y2ggKGNvbnN0IHVua25vd25fa2V5X2Vycm9yJiB1bnVzZWRfZXJyb3IpIHsKWEBAIC0x
 MzQsMTAgKzEzMywxMCBAQCBjb25maWc6OnRyZWU6OnB1c2hfbHVhKGNvbnN0IHN0ZDo6c3RyaW5n
 JiBkb3R0ZWRfa2V5LCBsdXRvazo6c3RhdGUmIHN0YXRlKSBjb25zdApYIHsKWCAgICAgY29uc3Qg
 ZGV0YWlsOjp0cmVlX2tleSBrZXkgPSBkZXRhaWw6OnBhcnNlX2tleShkb3R0ZWRfa2V5KTsKWCAg
 ICAgY29uc3QgZGV0YWlsOjpiYXNlX25vZGUqIHJhd19ub2RlID0gX3Jvb3QtPmxvb2t1cF9ybyhr
 ZXksIDApOwpYLSAgICB0cnkgewpYLSAgICAgICAgY29uc3QgbGVhZl9ub2RlJiBjaGlsZCA9IGR5
 bmFtaWNfY2FzdDwgY29uc3QgbGVhZl9ub2RlJiA+KCpyYXdfbm9kZSk7ClgtICAgICAgICBjaGls
 ZC5wdXNoX2x1YShzdGF0ZSk7ClgtICAgIH0gY2F0Y2ggKGNvbnN0IHN0ZDo6YmFkX2Nhc3QmIHVu
 dXNlZF9lcnJvcikgewpYKyAgICBjb25zdCBsZWFmX25vZGUqIGNoaWxkID0gZHluYW1pY19jYXN0
 PCBjb25zdCBsZWFmX25vZGUqID4ocmF3X25vZGUpOwpYKyAgICBpZiAoY2hpbGQgIT0gTlVMTCkg
 ewpYKyAgICAgICAgY2hpbGQtPnB1c2hfbHVhKHN0YXRlKTsKWCsgICAgfSBlbHNlIHsKWCAgICAg
 ICAgIHRocm93IHVua25vd25fa2V5X2Vycm9yKGtleSk7ClggICAgIH0KWCB9ClhAQCAtMTU5LDEw
 ICsxNTgsMTAgQEAgY29uZmlnOjp0cmVlOjpzZXRfbHVhKGNvbnN0IHN0ZDo6c3RyaW5nJiBkb3R0
 ZWRfa2V5LCBsdXRvazo6c3RhdGUmIHN0YXRlLApYICAgICBjb25zdCBkZXRhaWw6OnRyZWVfa2V5
 IGtleSA9IGRldGFpbDo6cGFyc2Vfa2V5KGRvdHRlZF9rZXkpOwpYICAgICBkZXRhaWw6OmJhc2Vf
 bm9kZSogcmF3X25vZGUgPSBfcm9vdC0+bG9va3VwX3J3KApYICAgICAgICAga2V5LCAwLCBkZXRh
 aWw6Om5ld19ub2RlPCBzdHJpbmdfbm9kZSA+KTsKWC0gICAgdHJ5IHsKWC0gICAgICAgIGxlYWZf
 bm9kZSYgY2hpbGQgPSBkeW5hbWljX2Nhc3Q8IGxlYWZfbm9kZSYgPigqcmF3X25vZGUpOwpYLSAg
 ICAgICAgY2hpbGQuc2V0X2x1YShzdGF0ZSwgdmFsdWVfaW5kZXgpOwpYLSAgICB9IGNhdGNoIChj
 b25zdCBzdGQ6OmJhZF9jYXN0JiB1bnVzZWRfZXJyb3IpIHsKWCsgICAgbGVhZl9ub2RlKiBjaGls
 ZCA9IGR5bmFtaWNfY2FzdDwgbGVhZl9ub2RlKiA+KHJhd19ub2RlKTsKWCsgICAgaWYgKGNoaWxk
 ICE9IE5VTEwpIHsKWCsgICAgICAgIGNoaWxkLT5zZXRfbHVhKHN0YXRlLCB2YWx1ZV9pbmRleCk7
 ClgrICAgIH0gZWxzZSB7ClggICAgICAgICB0aHJvdyB2YWx1ZV9lcnJvcihGKCJJbnZhbGlkIHZh
 bHVlIGZvciBrZXkgJyVzJyIpICUKWCAgICAgICAgICAgICAgICAgICAgICAgICAgIGRldGFpbDo6
 ZmxhdHRlbl9rZXkoa2V5KSk7ClggICAgIH0KWEBAIC0xODIsMTAgKzE4MSwxMCBAQCBjb25maWc6
 OnRyZWU6Omxvb2t1cF9zdHJpbmcoY29uc3Qgc3RkOjpzdHJpbmcmIGRvdHRlZF9rZXkpIGNvbnN0
 ClggewpYICAgICBjb25zdCBkZXRhaWw6OnRyZWVfa2V5IGtleSA9IGRldGFpbDo6cGFyc2Vfa2V5
 KGRvdHRlZF9rZXkpOwpYICAgICBjb25zdCBkZXRhaWw6OmJhc2Vfbm9kZSogcmF3X25vZGUgPSBf
 cm9vdC0+bG9va3VwX3JvKGtleSwgMCk7ClgtICAgIHRyeSB7ClgtICAgICAgICBjb25zdCBsZWFm
 X25vZGUmIGNoaWxkID0gZHluYW1pY19jYXN0PCBjb25zdCBsZWFmX25vZGUmID4oKnJhd19ub2Rl
 KTsKWC0gICAgICAgIHJldHVybiBjaGlsZC50b19zdHJpbmcoKTsKWC0gICAgfSBjYXRjaCAoY29u
 c3Qgc3RkOjpiYWRfY2FzdCYgdW51c2VkX2Vycm9yKSB7ClgrICAgIGNvbnN0IGxlYWZfbm9kZSog
 Y2hpbGQgPSBkeW5hbWljX2Nhc3Q8IGNvbnN0IGxlYWZfbm9kZSogPihyYXdfbm9kZSk7ClgrICAg
 IGlmIChjaGlsZCAhPSBOVUxMKSB7ClgrICAgICAgICByZXR1cm4gY2hpbGQtPnRvX3N0cmluZygp
 OwpYKyAgICB9IGVsc2UgewpYICAgICAgICAgdGhyb3cgdW5rbm93bl9rZXlfZXJyb3Ioa2V5KTsK
 WCAgICAgfQpYIH0KWEBAIC0yMTAsMTAgKzIwOSwxMCBAQCBjb25maWc6OnRyZWU6OnNldF9zdHJp
 bmcoY29uc3Qgc3RkOjpzdHJpbmcmIGRvdHRlZF9rZXksClggICAgIGNvbnN0IGRldGFpbDo6dHJl
 ZV9rZXkga2V5ID0gZGV0YWlsOjpwYXJzZV9rZXkoZG90dGVkX2tleSk7ClggICAgIGRldGFpbDo6
 YmFzZV9ub2RlKiByYXdfbm9kZSA9IF9yb290LT5sb29rdXBfcncoClggICAgICAgICBrZXksIDAs
 IGRldGFpbDo6bmV3X25vZGU8IHN0cmluZ19ub2RlID4pOwpYLSAgICB0cnkgewpYLSAgICAgICAg
 bGVhZl9ub2RlJiBjaGlsZCA9IGR5bmFtaWNfY2FzdDwgbGVhZl9ub2RlJiA+KCpyYXdfbm9kZSk7
 ClgtICAgICAgICBjaGlsZC5zZXRfc3RyaW5nKHJhd192YWx1ZSk7ClgtICAgIH0gY2F0Y2ggKGNv
 bnN0IHN0ZDo6YmFkX2Nhc3QmIHVudXNlZF9lcnJvcikgewpYKyAgICBsZWFmX25vZGUqIGNoaWxk
 ID0gZHluYW1pY19jYXN0PCBsZWFmX25vZGUqID4ocmF3X25vZGUpOwpYKyAgICBpZiAoY2hpbGQg
 IT0gTlVMTCkgewpYKyAgICAgICAgY2hpbGQtPnNldF9zdHJpbmcocmF3X3ZhbHVlKTsKWCsgICAg
 fSBlbHNlIHsKWCAgICAgICAgIHRocm93IHZhbHVlX2Vycm9yKEYoIkludmFsaWQgdmFsdWUgZm9y
 IGtleSAnJXMnIikgJQpYICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV0YWlsOjpmbGF0dGVu
 X2tleShrZXkpKTsKWCAgICAgfQpYQEAgLTI0NywxMSArMjQ2LDExIEBAIGNvbmZpZzo6dHJlZTo6
 YWxsX3Byb3BlcnRpZXMoY29uc3Qgc3RkOjpzdHJpbmcmIGRvdHRlZF9rZXksClggICAgICAgICBr
 ZXkgPSBkZXRhaWw6OnBhcnNlX2tleShkb3R0ZWRfa2V5KTsKWCAgICAgICAgIHJhd19ub2RlID0g
 X3Jvb3QtPmxvb2t1cF9ybyhrZXksIDApOwpYICAgICB9ClgtICAgIHRyeSB7ClgtICAgICAgICBj
 b25zdCBkZXRhaWw6OmlubmVyX25vZGUmIGNoaWxkID0KWC0gICAgICAgICAgICBkeW5hbWljX2Nh
 c3Q8IGNvbnN0IGRldGFpbDo6aW5uZXJfbm9kZSYgPigqcmF3X25vZGUpOwpYLSAgICAgICAgY2hp
 bGQuYWxsX3Byb3BlcnRpZXMocHJvcGVydGllcywga2V5KTsKWC0gICAgfSBjYXRjaCAoY29uc3Qg
 c3RkOjpiYWRfY2FzdCYgdW51c2VkX2Vycm9yKSB7ClgrICAgIGNvbnN0IGRldGFpbDo6aW5uZXJf
 bm9kZSogY2hpbGQgPQpYKyAgICAgICAgZHluYW1pY19jYXN0PCBjb25zdCBkZXRhaWw6OmlubmVy
 X25vZGUqID4ocmF3X25vZGUpOwpYKyAgICBpZiAoY2hpbGQgIT0gTlVMTCkgewpYKyAgICAgICAg
 Y2hpbGQtPmFsbF9wcm9wZXJ0aWVzKHByb3BlcnRpZXMsIGtleSk7ClgrICAgIH0gZWxzZSB7Clgg
 ICAgICAgICBJTlYoIWRvdHRlZF9rZXkuZW1wdHkoKSk7ClggICAgICAgICB0aHJvdyB2YWx1ZV9l
 cnJvcihGKCJDYW5ub3QgZXhwb3J0IHByb3BlcnRpZXMgZnJvbSBhIGxlYWYgbm9kZTsgIgpYICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAiJyVzJyBnaXZlbiIpICUgZG90dGVkX2tleSk7CmQw
 NDcxMzI0Mzc4ZDg0N2ZmNDVhNWM4NWFmZWUwODYxCmVjaG8geCAtIGt5dWEvZmlsZXMvcGF0Y2gt
 dXRpbHMtY29uZmlnLW5vZGVzLmNwcApzZWQgJ3MvXlgvLycgPmt5dWEvZmlsZXMvcGF0Y2gtdXRp
 bHMtY29uZmlnLW5vZGVzLmNwcCA8PCAnYzliYmQxMGRmNjM2MDY5MGIzZGU3YTYwMDdhMWIzNGMn
 ClgtLS0gdXRpbHMvY29uZmlnL25vZGVzLmNwcC5vbGQKWCsrKyB1dGlscy9jb25maWcvbm9kZXMu
 Y3BwClhAQCAtMTEyLDExICsxMTIsMTEgQEAgY29uZmlnOjpkZXRhaWw6OmlubmVyX25vZGU6Omxv
 b2t1cF9ybyhjb25zdCB0cmVlX2tleSYga2V5LApYICAgICAgICAgcmV0dXJuICgqY2hpbGRfaXRl
 cikuc2Vjb25kOwpYICAgICB9IGVsc2UgewpYICAgICAgICAgUFJFKGtleV9wb3MgPCBrZXkuc2l6
 ZSgpIC0gMSk7ClgtICAgICAgICB0cnkgewpYLSAgICAgICAgICAgIGNvbnN0IGlubmVyX25vZGUm
 IGNoaWxkID0gZHluYW1pY19jYXN0PCBjb25zdCBpbm5lcl9ub2RlJiA+KApYLSAgICAgICAgICAg
 ICAgICAqKCpjaGlsZF9pdGVyKS5zZWNvbmQpOwpYLSAgICAgICAgICAgIHJldHVybiBjaGlsZC5s
 b29rdXBfcm8oa2V5LCBrZXlfcG9zICsgMSk7ClgtICAgICAgICB9IGNhdGNoIChjb25zdCBzdGQ6
 OmJhZF9jYXN0JiBlKSB7ClgrICAgICAgICBjb25zdCBpbm5lcl9ub2RlKiBjaGlsZCA9IGR5bmFt
 aWNfY2FzdDwgY29uc3QgaW5uZXJfbm9kZSogPigKWCsgICAgICAgICAgICAgICAgKCpjaGlsZF9p
 dGVyKS5zZWNvbmQpOwpYKyAgICAgICAgaWYgKGNoaWxkICE9IE5VTEwpIHsKWCsgICAgICAgICAg
 ICByZXR1cm4gY2hpbGQtPmxvb2t1cF9ybyhrZXksIGtleV9wb3MgKyAxKTsKWCsgICAgICAgIH0g
 ZWxzZSB7ClggICAgICAgICAgICAgdGhyb3cgdW5rbm93bl9rZXlfZXJyb3IoClggICAgICAgICAg
 ICAgICAgIGtleSwgIkNhbm5vdCBhZGRyZXNzIGluY29tcGxldGUgY29uZmlndXJhdGlvbiBwcm9w
 ZXJ0eSAnJXMnIik7ClggICAgICAgICB9ClhAQCAtMTYzLDIxICsxNjMsMTkgQEAgY29uZmlnOjpk
 ZXRhaWw6OmlubmVyX25vZGU6Omxvb2t1cF9ydyhjb25zdCB0cmVlX2tleSYga2V5LApYICAgICB9
 ClggClggICAgIGlmIChrZXlfcG9zID09IGtleS5zaXplKCkgLSAxKSB7ClgtICAgICAgICB0cnkg
 ewpYLSAgICAgICAgICAgIGxlYWZfbm9kZSYgY2hpbGQgPSBkeW5hbWljX2Nhc3Q8IGxlYWZfbm9k
 ZSYgPigKWC0gICAgICAgICAgICAgICAgKigqY2hpbGRfaXRlcikuc2Vjb25kKTsKWC0gICAgICAg
 ICAgICByZXR1cm4gJmNoaWxkOwpYLSAgICAgICAgfSBjYXRjaCAoY29uc3Qgc3RkOjpiYWRfY2Fz
 dCYgdW51c2VkX2Vycm9yKSB7ClgrICAgICAgICBsZWFmX25vZGUqIGNoaWxkID0gZHluYW1pY19j
 YXN0PCBsZWFmX25vZGUqID4oKCpjaGlsZF9pdGVyKS5zZWNvbmQpOwpYKyAgICAgICAgaWYgKGNo
 aWxkICE9IE5VTEwpIHsKWCsgICAgICAgICAgICByZXR1cm4gY2hpbGQ7ClgrICAgICAgICB9IGVs
 c2UgewpYICAgICAgICAgICAgIHRocm93IHZhbHVlX2Vycm9yKEYoIkludmFsaWQgdmFsdWUgZm9y
 IGtleSAnJXMnIikgJQpYICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsYXR0ZW5fa2V5
 KGtleSkpOwpYICAgICAgICAgfQpYICAgICB9IGVsc2UgewpYICAgICAgICAgUFJFKGtleV9wb3Mg
 PCBrZXkuc2l6ZSgpIC0gMSk7ClgtICAgICAgICB0cnkgewpYLSAgICAgICAgICAgIGlubmVyX25v
 ZGUmIGNoaWxkID0gZHluYW1pY19jYXN0PCBpbm5lcl9ub2RlJiA+KApYLSAgICAgICAgICAgICAg
 ICAqKCpjaGlsZF9pdGVyKS5zZWNvbmQpOwpYLSAgICAgICAgICAgIHJldHVybiBjaGlsZC5sb29r
 dXBfcncoa2V5LCBrZXlfcG9zICsgMSwgbmV3X25vZGUpOwpYLSAgICAgICAgfSBjYXRjaCAoY29u
 c3Qgc3RkOjpiYWRfY2FzdCYgZSkgewpYKyAgICAgICAgaW5uZXJfbm9kZSogY2hpbGQgPSBkeW5h
 bWljX2Nhc3Q8IGlubmVyX25vZGUqID4oKCpjaGlsZF9pdGVyKS5zZWNvbmQpOwpYKyAgICAgICAg
 aWYgKGNoaWxkICE9IE5VTEwpIHsKWCsgICAgICAgICAgICByZXR1cm4gY2hpbGQtPmxvb2t1cF9y
 dyhrZXksIGtleV9wb3MgKyAxLCBuZXdfbm9kZSk7ClgrICAgICAgICB9IGVsc2UgewpYICAgICAg
 ICAgICAgIHRocm93IHVua25vd25fa2V5X2Vycm9yKApYICAgICAgICAgICAgICAgICBrZXksICJD
 YW5ub3QgYWRkcmVzcyBpbmNvbXBsZXRlIGNvbmZpZ3VyYXRpb24gcHJvcGVydHkgJyVzJyIpOwpY
 ICAgICAgICAgfQpYQEAgLTE5OCwxMyArMTk2LDE0IEBAIGNvbmZpZzo6ZGV0YWlsOjppbm5lcl9u
 b2RlOjphbGxfcHJvcGVydGllcyhwcm9wZXJ0aWVzX21hcCYgcHJvcGVydGllcywKWCAgICAgICAg
 ICBpdGVyICE9IF9jaGlsZHJlbi5lbmQoKTsgKytpdGVyKSB7ClggICAgICAgICB0cmVlX2tleSBj
 aGlsZF9rZXkgPSBrZXk7ClggICAgICAgICBjaGlsZF9rZXkucHVzaF9iYWNrKCgqaXRlcikuZmly
 c3QpOwpYLSAgICAgICAgdHJ5IHsKWC0gICAgICAgICAgICBsZWFmX25vZGUmIGNoaWxkID0gZHlu
 YW1pY19jYXN0PCBsZWFmX25vZGUmID4oKigqaXRlcikuc2Vjb25kKTsKWC0gICAgICAgICAgICBp
 ZiAoY2hpbGQuaXNfc2V0KCkpClgtICAgICAgICAgICAgICAgIHByb3BlcnRpZXNbZmxhdHRlbl9r
 ZXkoY2hpbGRfa2V5KV0gPSBjaGlsZC50b19zdHJpbmcoKTsKWC0gICAgICAgIH0gY2F0Y2ggKGNv
 bnN0IHN0ZDo6YmFkX2Nhc3QmIHVudXNlZF9lcnJvcikgewpYLSAgICAgICAgICAgIGlubmVyX25v
 ZGUmIGNoaWxkID0gZHluYW1pY19jYXN0PCBpbm5lcl9ub2RlJiA+KCooKml0ZXIpLnNlY29uZCk7
 ClgtICAgICAgICAgICAgY2hpbGQuYWxsX3Byb3BlcnRpZXMocHJvcGVydGllcywgY2hpbGRfa2V5
 KTsKWCsgICAgICAgIGxlYWZfbm9kZSogY2hpbGQgPSBkeW5hbWljX2Nhc3Q8IGxlYWZfbm9kZSog
 PigoKml0ZXIpLnNlY29uZCk7ClgrICAgICAgICBpZiAoY2hpbGQgIT0gTlVMTCkgewpYKyAgICAg
 ICAgICAgIGlmIChjaGlsZC0+aXNfc2V0KCkpClgrICAgICAgICAgICAgICAgIHByb3BlcnRpZXNb
 ZmxhdHRlbl9rZXkoY2hpbGRfa2V5KV0gPSBjaGlsZC0+dG9fc3RyaW5nKCk7ClgrICAgICAgICB9
 IGVsc2UgewpYKyAgICAgICAgICAgIGlubmVyX25vZGUqIGNoaWxkMiA9IGR5bmFtaWNfY2FzdDwg
 aW5uZXJfbm9kZSogPigoKml0ZXIpLnNlY29uZCk7ClgrICAgICAgICAgICAgSU5WKGNoaWxkMiAh
 PSBOVUxMKTsKWCsgICAgICAgICAgICBjaGlsZDItPmFsbF9wcm9wZXJ0aWVzKHByb3BlcnRpZXMs
 IGNoaWxkX2tleSk7ClggICAgICAgICB9ClggICAgIH0KWCB9ClhAQCAtMjYxLDExICsyNjAsMTEg
 QEAgY29uZmlnOjpkZXRhaWw6OnN0YXRpY19pbm5lcl9ub2RlOjpkZWZpbmUoY29uc3QgdHJlZV9r
 ZXkmIGtleSwKWCAgICAgICAgICAgICBfY2hpbGRyZW4uaW5zZXJ0KGNoaWxkcmVuX21hcDo6dmFs
 dWVfdHlwZShrZXlba2V5X3Bvc10sIGNoaWxkX3B0cikpOwpYICAgICAgICAgICAgIGNoaWxkX3B0
 ci0+ZGVmaW5lKGtleSwga2V5X3BvcyArIDEsIG5ld19ub2RlKTsKWCAgICAgICAgIH0gZWxzZSB7
 ClgtICAgICAgICAgICAgdHJ5IHsKWC0gICAgICAgICAgICAgICAgc3RhdGljX2lubmVyX25vZGUm
 IGNoaWxkID0gZHluYW1pY19jYXN0PCBzdGF0aWNfaW5uZXJfbm9kZSYgPigKWC0gICAgICAgICAg
 ICAgICAgICAgICooKmNoaWxkX2l0ZXIpLnNlY29uZCk7ClgtICAgICAgICAgICAgICAgIGNoaWxk
 LmRlZmluZShrZXksIGtleV9wb3MgKyAxLCBuZXdfbm9kZSk7ClgtICAgICAgICAgICAgfSBjYXRj
 aCAoY29uc3Qgc3RkOjpiYWRfY2FzdCYgZSkgewpYKyAgICAgICAgICAgIHN0YXRpY19pbm5lcl9u
 b2RlKiBjaGlsZCA9IGR5bmFtaWNfY2FzdDwgc3RhdGljX2lubmVyX25vZGUqID4oClgrICAgICAg
 ICAgICAgICAgICgqY2hpbGRfaXRlcikuc2Vjb25kKTsKWCsgICAgICAgICAgICBpZiAoY2hpbGQg
 IT0gTlVMTCkgewpYKyAgICAgICAgICAgICAgICBjaGlsZC0+ZGVmaW5lKGtleSwga2V5X3BvcyAr
 IDEsIG5ld19ub2RlKTsKWCsgICAgICAgICAgICB9IGVsc2UgewpYICAgICAgICAgICAgICAgICBV
 TlJFQUNIQUJMRTsKWCAgICAgICAgICAgICB9ClggICAgICAgICB9CmM5YmJkMTBkZjYzNjA2OTBi
 M2RlN2E2MDA3YTFiMzRjCmVjaG8geCAtIGt5dWEvZmlsZXMvcGF0Y2gtdXRpbHMtY29uZmlnLW5v
 ZGVzLmlwcApzZWQgJ3MvXlgvLycgPmt5dWEvZmlsZXMvcGF0Y2gtdXRpbHMtY29uZmlnLW5vZGVz
 LmlwcCA8PCAnN2NkZWIwYjUwZDE1ODU0YzIwMTdmM2Y5YTIwMTliNmInClgtLS0gdXRpbHMvY29u
 ZmlnL25vZGVzLmlwcC5vcmlnCTIwMTMtMDMtMjggMTI6NTY6MzUuNjk3MTI3NzA2IC0wNjAwClgr
 KysgdXRpbHMvY29uZmlnL25vZGVzLmlwcAkyMDEzLTAzLTI4IDEyOjU2OjQ5LjEzOTEyODU2MSAt
 MDYwMApYQEAgLTM5LDYgKzM5LDcgQEAKWCAjaW5jbHVkZSAidXRpbHMvZm9ybWF0L21hY3Jvcy5o
 cHAiClggI2luY2x1ZGUgInV0aWxzL29wdGlvbmFsLmlwcCIKWCAjaW5jbHVkZSAidXRpbHMvdGV4
 dC9leGNlcHRpb25zLmhwcCIKWCsjaW5jbHVkZSAidXRpbHMvdW5pdHMuaHBwIgpYICNpbmNsdWRl
 ICJ1dGlscy90ZXh0L29wZXJhdGlvbnMuaXBwIgpYICNpbmNsdWRlICJ1dGlscy9zYW5pdHkuaHBw
 IgpYIAo3Y2RlYjBiNTBkMTU4NTRjMjAxN2YzZjlhMjAxOWI2YgplY2hvIHggLSBreXVhL3BrZy1k
 ZXNjcgpzZWQgJ3MvXlgvLycgPmt5dWEvcGtnLWRlc2NyIDw8ICdhMDIxZDYyYmM0NjQ5MDU5MTg1
 NTMxN2JhM2RiYzllNicKWEt5dWEgKHByb25vdW5jZWQgUS5BLikgaXMgYSB0ZXN0aW5nIGZyYW1l
 d29yayBmb3IgYm90aCBkZXZlbG9wZXJzIGFuZApYdXNlcnMuICBLeXVhIGlzIGRpZmZlcmVudCBm
 cm9tIG1vc3Qgb3RoZXIgdGVzdGluZyBmcmFtZXdvcmtzIGluIHRoYXQgaXQKWHB1dHMgdGhlIGVu
 ZCB1c2VyIGV4cGVyaWVuY2UgYmVmb3JlIGFueXRoaW5nIGVsc2UuICBUaGVyZSBhcmUgbXVsdGlw
 bGUKWHJlYXNvbnMgZm9yIHVzZXJzIHRvIHJ1biB0aGUgdGVzdHMgdGhlbXNlbHZlcywgYW5kIEt5
 dWEgZW5zdXJlcyB0aGF0Clh0aGV5IGNhbiBkbyBzbyBpbiB0aGUgbW9zdCBjb252ZW5pZW50IHdh
 eS4KWApYQXQgdGhlIG1vbWVudCwgS3l1YSBpcyBmb2N1c2VkIG9uIGltcGxlbWVudGluZyBhIHNv
 bGlkIGZvdW5kYXRpb24gYW5kIGEKWHBvd2VyZnVsIGNvbW1hbmQtbGluZSB0b29sIHRvIHJ1biB0
 ZXN0cyBpbXBsZW1lbnRlZCB3aXRoIHRoZSBBdXRvbWF0ZWQKWFRlc3RpbmcgRnJhbWV3b3JrIChB
 VEYpLiAgTGF0ZXIgb24sIEt5dWEgd2lsbCBhbHNvIHByb3ZpZGUgYSBzZXQgb2YKWGxhbmd1YWdl
 IGJpbmRpbmdzIChDLCBDKysgYW5kIHNoZWxsLCBhdCB0aGUgbGVhc3QpIHRvIGVhc2UgdGhlClhp
 bXBsZW1lbnRhdGlvbiBvZiB0ZXN0IGNhc2VzIGluIGEgdmFyaWV0eSBvZiBwcm9ncmFtbWluZyBs
 YW5ndWFnZXMuClgKWEluIGVmZmVjdCwgS3l1YSBpcyBpbnRlbmRlZCB0byBiZSBhIHJlcGxhY2Vt
 ZW50IGZvciBBVEYuClgKWFdXVzogaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9reXVhLwphMDIx
 ZDYyYmM0NjQ5MDU5MTg1NTMxN2JhM2RiYzllNgpleGl0Cgo=
 --047d7b5dbdcc90c2f604db344e01--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201304251930.r3PJU1oV074299>