From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH RFC] tools: Drop xc_cpuid_check() and bindings Date: Mon, 17 Jul 2017 13:38:03 +0100 Message-ID: <1500295083-10769-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Xen-devel Cc: Juergen Gross , Wei Liu , Andrew Cooper , Ian Jackson , =?UTF-8?q?Marek=20Marczykowski-G=C3=B3recki?= , Jim Fehlig , Christian Lindig , David Scott , Boris Ostrovsky List-Id: xen-devel@lists.xenproject.org VGhlcmUgYXJlIG5vIGN1cnJlbnQgdXNlcnMgd2hpY2ggSSBjYW4gbG9jYXRlLiAgT25lIHBpZWNl IG9mIHhlbmQgd2hpY2ggZGlkbid0Cm1vdmUgZm9yd2FyZHMgaW50byB4bC9saWJ4bCBpcyB0aGlz OgoKICAjICAgQ29uZmlndXJlIGhvc3QgQ1BVSUQgY29uc2lzdGVuY3kgY2hlY2tzLCB3aGljaCBt dXN0IGJlIHNhdGlzZmllZCBmb3IgdGhpcwogICMgICBWTSB0byBiZSBhbGxvd2VkIHRvIHJ1biBv biB0aGlzIGhvc3QncyBwcm9jZXNzb3IgdHlwZToKICAjY3B1aWRfY2hlY2s9WyAnMTplY3g9eHh4 eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHgxeHh4eHgnIF0KICAjIC0gSG9zdCBtdXN0IGhhdmUgVk1Y IGZlYXR1cmUgZmxhZyBzZXQKClRoZSBpbXBsZW1lbnRhdGlvbiBvZiB4Y19jcHVpZF9jaGVjaygp IGlzIGNvbmNlcHR1YWxseSBicm9rZW4uICBEb20wJ3MgdmlldyBvZgpDUFVJRCBpcyBub3QgdGhl IGFwcHJvcHJpdGUgdmlldyB0byBjaGVjaywgYW5kIHdpbGwgYmUgd3JvbmcgaW4gdGhlIHByZXNl bmNlCm9mIENQVUlEIG1hc2tpbmcvZmF1bHRpbmcsIGFuZCBmb3IgSFZNLWJhc2VkIHRvb2xzdGFj ayBkb21haW5zLgoKSWYgaXQgdHVybnMgb3V0IHRoYXQgdGhlIGZ1bmN0aW9uYWxpdHkgaXMgcmVx dWlyZWQsIGl0IHNob3VsZCBiZSBpbXBsZW1lbnRlZAppbiB0ZXJtcyBvZiBYRU5fU1lTQ1RMX2dl dF9jcHVpZF9wb2xpY3kgdG8gdXNlIHRoZSBwcm9wZXIgQ1BVSUQgdmlldy4KClNpZ25lZC1vZmYt Ynk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ci0tLQpDQzogSWFu IEphY2tzb24gPElhbi5KYWNrc29uQGV1LmNpdHJpeC5jb20+CkNDOiBXZWkgTGl1IDx3ZWkubGl1 MkBjaXRyaXguY29tPgpDQzogTWFyZWsgTWFyY3p5a293c2tpLUfDs3JlY2tpIDxtYXJtYXJla0Bp bnZpc2libGV0aGluZ3NsYWIuY29tPgpDQzogRGF2aWQgU2NvdHQgPGRhdmVAcmVjb2lsLm9yZz4K Q0M6IENocmlzdGlhbiBMaW5kaWcgPGNocmlzdGlhbi5saW5kaWdAY2l0cml4LmNvbT4KQ0M6IEp1 ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4KQ0M6IEppbSBGZWhsaWcgPGpmZWhsaWdAc3Vz ZS5jb20+CkNDOiBCb3JpcyBPc3Ryb3Zza3kgPGJvcmlzLm9zdHJvdnNreUBvcmFjbGUuY29tPgpD QzogS29ucmFkIFJ6ZXN6dXRlayBXaWxrIDxrb25yYWQud2lsa0BvcmFjbGUuY29tPgoKUkZDIGlu aXRpYWxseSBmb3IgZmVlZGJhY2ssIGFuZCB0byBzZWUgaWYgYW55b25lIGRvZXMgZXhwZWN0IHRv IGJlIHVzaW5nIHRoaXMKY2FsbC4gIEl0IHR1cm5zIG91dCB0aGF0IFhhcGkgaGFzIGEgbGlicmFy eSBmdW5jdGlvbiB1c2luZyBpdCwgYnV0IHRoYXQKZnVuY3Rpb24gaXMgZGVhZCBzbyBjYW4gYmUg cmVtb3ZlZC4KLS0tCiB0b29scy9saWJ4Yy9pbmNsdWRlL3hlbmN0cmwuaCAgICAgICB8ICA0IC0t LQogdG9vbHMvbGlieGMveGNfY3B1aWRfeDg2LmMgICAgICAgICAgfCA1NyAtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiB0b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmwubWwg ICAgICB8ICAyIC0tCiB0b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmwubWxpICAgICB8ICAzIC0t CiB0b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmxfc3R1YnMuYyB8IDQzIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KIHRvb2xzL3B5dGhvbi94ZW4vbG93bGV2ZWwveGMveGMuYyAgIHwgMzQg LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogNiBmaWxlcyBjaGFuZ2VkLCAxNDMgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGMvaW5jbHVkZS94ZW5jdHJsLmggYi90b29scy9saWJ4 Yy9pbmNsdWRlL3hlbmN0cmwuaAppbmRleCA5NmRmODM2Li5hY2Q3NzhjIDEwMDY0NAotLS0gYS90 b29scy9saWJ4Yy9pbmNsdWRlL3hlbmN0cmwuaAorKysgYi90b29scy9saWJ4Yy9pbmNsdWRlL3hl bmN0cmwuaApAQCAtMTc5MywxMCArMTc5Myw2IEBAIGludCB4Y19kb21haW5fZGVidWdfY29udHJv bCh4Y19pbnRlcmZhY2UgKnhjaCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJf dCB2Y3B1KTsKIAogI2lmIGRlZmluZWQoX19pMzg2X18pIHx8IGRlZmluZWQoX194ODZfNjRfXykK LWludCB4Y19jcHVpZF9jaGVjayh4Y19pbnRlcmZhY2UgKnhjaCwKLSAgICAgICAgICAgICAgICAg ICBjb25zdCB1bnNpZ25lZCBpbnQgKmlucHV0LAotICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo YXIgKipjb25maWcsCi0gICAgICAgICAgICAgICAgICAgY2hhciAqKmNvbmZpZ190cmFuc2Zvcm1l ZCk7CiBpbnQgeGNfY3B1aWRfc2V0KHhjX2ludGVyZmFjZSAqeGNoLAogICAgICAgICAgICAgICAg ICBkb21pZF90IGRvbWlkLAogICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQgKmlu cHV0LApkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGMveGNfY3B1aWRfeDg2LmMgYi90b29scy9saWJ4 Yy94Y19jcHVpZF94ODYuYwppbmRleCA2ZjgyMjc3Li5kMWQwYjUxIDEwMDY0NAotLS0gYS90b29s cy9saWJ4Yy94Y19jcHVpZF94ODYuYworKysgYi90b29scy9saWJ4Yy94Y19jcHVpZF94ODYuYwpA QCAtODU1LDYzICs4NTUsNiBAQCBpbnQgeGNfY3B1aWRfYXBwbHlfcG9saWN5KHhjX2ludGVyZmFj ZSAqeGNoLCBkb21pZF90IGRvbWlkLAogfQogCiAvKgotICogQ2hlY2sgd2hldGhlciBhIFZNIGlz IGFsbG93ZWQgdG8gbGF1bmNoIG9uIHRoaXMgaG9zdCdzIHByb2Nlc3NvciB0eXBlLgotICoKLSAq IEBjb25maWcgZm9ybWF0IGlzIHNpbWlsYXIgdG8gdGhhdCBvZiB4Y19jcHVpZF9zZXQoKToKLSAq ICAnMScgLT4gdGhlIGJpdCBtdXN0IGJlIHNldCB0byAxCi0gKiAgJzAnIC0+IG11c3QgYmUgMAot ICogICd4JyAtPiB3ZSBkb24ndCBjYXJlCi0gKiAgJ3MnIC0+IChzYW1lKSBtdXN0IGJlIHRoZSBz YW1lCi0gKi8KLWludCB4Y19jcHVpZF9jaGVjaygKLSAgICB4Y19pbnRlcmZhY2UgKnhjaCwgY29u c3QgdW5zaWduZWQgaW50ICppbnB1dCwKLSAgICBjb25zdCBjaGFyICoqY29uZmlnLAotICAgIGNo YXIgKipjb25maWdfdHJhbnNmb3JtZWQpCi17Ci0gICAgaW50IGksIGosIHJjOwotICAgIHVuc2ln bmVkIGludCByZWdzWzRdOwotCi0gICAgbWVtc2V0KGNvbmZpZ190cmFuc2Zvcm1lZCwgMCwgNCAq IHNpemVvZigqY29uZmlnX3RyYW5zZm9ybWVkKSk7Ci0KLSAgICBjcHVpZChpbnB1dCwgcmVncyk7 Ci0KLSAgICBmb3IgKCBpID0gMDsgaSA8IDQ7IGkrKyApCi0gICAgewotICAgICAgICBpZiAoIGNv bmZpZ1tpXSA9PSBOVUxMICkKLSAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBjb25maWdf dHJhbnNmb3JtZWRbaV0gPSBhbGxvY19zdHIoKTsKLSAgICAgICAgaWYgKCBjb25maWdfdHJhbnNm b3JtZWRbaV0gPT0gTlVMTCApCi0gICAgICAgIHsKLSAgICAgICAgICAgIHJjID0gLUVOT01FTTsK LSAgICAgICAgICAgIGdvdG8gZmFpbF9yYzsKLSAgICAgICAgfQotICAgICAgICBmb3IgKCBqID0g MDsgaiA8IDMyOyBqKysgKQotICAgICAgICB7Ci0gICAgICAgICAgICB1bnNpZ25lZCBjaGFyIHZh bCA9ICEhKChyZWdzW2ldICYgKDFVIDw8ICgzMSAtIGopKSkpOwotICAgICAgICAgICAgaWYgKCAh c3RyY2hyKCIxMHhzIiwgY29uZmlnW2ldW2pdKSB8fAotICAgICAgICAgICAgICAgICAoKGNvbmZp Z1tpXVtqXSA9PSAnMScpICYmICF2YWwpIHx8Ci0gICAgICAgICAgICAgICAgICgoY29uZmlnW2ld W2pdID09ICcwJykgJiYgdmFsKSApCi0gICAgICAgICAgICAgICAgZ290byBmYWlsOwotICAgICAg ICAgICAgY29uZmlnX3RyYW5zZm9ybWVkW2ldW2pdID0gY29uZmlnW2ldW2pdOwotICAgICAgICAg ICAgaWYgKCBjb25maWdbaV1bal0gPT0gJ3MnICkKLSAgICAgICAgICAgICAgICBjb25maWdfdHJh bnNmb3JtZWRbaV1bal0gPSAnMCcgKyB2YWw7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICByZXR1 cm4gMDsKLQotIGZhaWw6Ci0gICAgcmMgPSAtRVBFUk07Ci0gZmFpbF9yYzoKLSAgICBmb3IgKCBp ID0gMDsgaSA8IDQ7IGkrKyApCi0gICAgewotICAgICAgICBmcmVlKGNvbmZpZ190cmFuc2Zvcm1l ZFtpXSk7Ci0gICAgICAgIGNvbmZpZ190cmFuc2Zvcm1lZFtpXSA9IE5VTEw7Ci0gICAgfQotICAg IHJldHVybiByYzsKLX0KLQotLyoKICAqIENvbmZpZ3VyZSBhIHNpbmdsZSBpbnB1dCB3aXRoIHRo ZSBpbmZvcm1hdGlvbSBmcm9tIGNvbmZpZy4KICAqCiAgKiBDb25maWcgaXMgYW4gYXJyYXkgb2Yg c3RyaW5nczoKZGlmZiAtLWdpdCBhL3Rvb2xzL29jYW1sL2xpYnMveGMveGVuY3RybC5tbCBiL3Rv b2xzL29jYW1sL2xpYnMveGMveGVuY3RybC5tbAppbmRleCA3NTAwNmU3Li43MGEzMjViIDEwMDY0 NAotLS0gYS90b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmwubWwKKysrIGIvdG9vbHMvb2NhbWwv bGlicy94Yy94ZW5jdHJsLm1sCkBAIC0yMTgsOCArMjE4LDYgQEAgZXh0ZXJuYWwgZG9tYWluX2Nw dWlkX3NldDogaGFuZGxlIC0+IGRvbWlkIC0+IChpbnQ2NCAqIChpbnQ2NCBvcHRpb24pKQogICAg ICAgID0gInN0dWJfeGNfZG9tYWluX2NwdWlkX3NldCIKIGV4dGVybmFsIGRvbWFpbl9jcHVpZF9h cHBseV9wb2xpY3k6IGhhbmRsZSAtPiBkb21pZCAtPiB1bml0CiAgICAgICAgPSAic3R1Yl94Y19k b21haW5fY3B1aWRfYXBwbHlfcG9saWN5IgotZXh0ZXJuYWwgY3B1aWRfY2hlY2s6IGhhbmRsZSAt PiAoaW50NjQgKiAoaW50NjQgb3B0aW9uKSkgLT4gc3RyaW5nIG9wdGlvbiBhcnJheSAtPiAoYm9v bCAqIHN0cmluZyBvcHRpb24gYXJyYXkpCi0gICAgICAgPSAic3R1Yl94Y19jcHVpZF9jaGVjayIK IAogZXh0ZXJuYWwgbWFwX2ZvcmVpZ25fcmFuZ2U6IGhhbmRsZSAtPiBkb21pZCAtPiBpbnQKICAg ICAgICAgICAgICAgICAgICAgICAgICAtPiBuYXRpdmVpbnQgLT4gWGVubW1hcC5tbWFwX2ludGVy ZmFjZQpkaWZmIC0tZ2l0IGEvdG9vbHMvb2NhbWwvbGlicy94Yy94ZW5jdHJsLm1saSBiL3Rvb2xz L29jYW1sL2xpYnMveGMveGVuY3RybC5tbGkKaW5kZXggNzIwZTRiMi4uNzAyZDhhNyAxMDA2NDQK LS0tIGEvdG9vbHMvb2NhbWwvbGlicy94Yy94ZW5jdHJsLm1saQorKysgYi90b29scy9vY2FtbC9s aWJzL3hjL3hlbmN0cmwubWxpCkBAIC0xNzksNiArMTc5LDMgQEAgZXh0ZXJuYWwgZG9tYWluX2Nw dWlkX3NldDogaGFuZGxlIC0+IGRvbWlkIC0+IChpbnQ2NCAqIChpbnQ2NCBvcHRpb24pKQogICAg ICAgID0gInN0dWJfeGNfZG9tYWluX2NwdWlkX3NldCIKIGV4dGVybmFsIGRvbWFpbl9jcHVpZF9h cHBseV9wb2xpY3k6IGhhbmRsZSAtPiBkb21pZCAtPiB1bml0CiAgICAgICAgPSAic3R1Yl94Y19k b21haW5fY3B1aWRfYXBwbHlfcG9saWN5IgotZXh0ZXJuYWwgY3B1aWRfY2hlY2s6IGhhbmRsZSAt PiAoaW50NjQgKiAoaW50NjQgb3B0aW9uKSkgLT4gc3RyaW5nIG9wdGlvbiBhcnJheSAtPiAoYm9v bCAqIHN0cmluZyBvcHRpb24gYXJyYXkpCi0gICAgICAgPSAic3R1Yl94Y19jcHVpZF9jaGVjayIK LQpkaWZmIC0tZ2l0IGEvdG9vbHMvb2NhbWwvbGlicy94Yy94ZW5jdHJsX3N0dWJzLmMgYi90b29s cy9vY2FtbC9saWJzL3hjL3hlbmN0cmxfc3R1YnMuYwppbmRleCBmMWIyOGRiLi5jNjY3MzJmIDEw MDY0NAotLS0gYS90b29scy9vY2FtbC9saWJzL3hjL3hlbmN0cmxfc3R1YnMuYworKysgYi90b29s cy9vY2FtbC9saWJzL3hjL3hlbmN0cmxfc3R1YnMuYwpAQCAtODA1LDQ5ICs4MDUsNiBAQCBDQU1M cHJpbSB2YWx1ZSBzdHViX3hjX2RvbWFpbl9jcHVpZF9hcHBseV9wb2xpY3kodmFsdWUgeGNoLCB2 YWx1ZSBkb21pZCkKIAlDQU1McmV0dXJuKFZhbF91bml0KTsKIH0KIAotQ0FNTHByaW0gdmFsdWUg c3R1Yl94Y19jcHVpZF9jaGVjayh2YWx1ZSB4Y2gsIHZhbHVlIGlucHV0LCB2YWx1ZSBjb25maWcp Ci17Ci0JQ0FNTHBhcmFtMyh4Y2gsIGlucHV0LCBjb25maWcpOwotCUNBTUxsb2NhbDMocmV0LCBh cnJheSwgdG1wKTsKLSNpZiBkZWZpbmVkKF9faTM4Nl9fKSB8fCBkZWZpbmVkKF9feDg2XzY0X18p Ci0JaW50IHI7Ci0JdW5zaWduZWQgaW50IGNfaW5wdXRbMl07Ci0JY2hhciAqY19jb25maWdbNF0s ICpvdXRfY29uZmlnWzRdOwotCi0JY19jb25maWdbMF0gPSBzdHJpbmdfb2Zfb3B0aW9uX2FycmF5 KGNvbmZpZywgMCk7Ci0JY19jb25maWdbMV0gPSBzdHJpbmdfb2Zfb3B0aW9uX2FycmF5KGNvbmZp ZywgMSk7Ci0JY19jb25maWdbMl0gPSBzdHJpbmdfb2Zfb3B0aW9uX2FycmF5KGNvbmZpZywgMik7 Ci0JY19jb25maWdbM10gPSBzdHJpbmdfb2Zfb3B0aW9uX2FycmF5KGNvbmZpZywgMyk7Ci0KLQlj cHVpZF9pbnB1dF9vZl92YWwoY19pbnB1dFswXSwgY19pbnB1dFsxXSwgaW5wdXQpOwotCi0JYXJy YXkgPSBjYW1sX2FsbG9jKDQsIDApOwotCWZvciAociA9IDA7IHIgPCA0OyByKyspIHsKLQkJdG1w ID0gVmFsX25vbmU7Ci0JCWlmIChjX2NvbmZpZ1tyXSkgewotCQkJdG1wID0gY2FtbF9hbGxvY19z bWFsbCgxLCAwKTsKLQkJCUZpZWxkKHRtcCwgMCkgPSBjYW1sX2FsbG9jX3N0cmluZygzMik7Ci0J CX0KLQkJU3RvcmVfZmllbGQoYXJyYXksIHIsIHRtcCk7Ci0JfQotCi0JZm9yIChyID0gMDsgciA8 IDQ7IHIrKykKLQkJb3V0X2NvbmZpZ1tyXSA9IChjX2NvbmZpZ1tyXSkgPyBTdHJpbmdfdmFsKEZp ZWxkKEZpZWxkKGFycmF5LCByKSwgMCkpIDogTlVMTDsKLQotCXIgPSB4Y19jcHVpZF9jaGVjayhf SCh4Y2gpLCBjX2lucHV0LCAoY29uc3QgY2hhciAqKiljX2NvbmZpZywgb3V0X2NvbmZpZyk7Ci0J aWYgKHIgPCAwKQotCQlmYWlsd2l0aF94YyhfSCh4Y2gpKTsKLQotCXJldCA9IGNhbWxfYWxsb2Nf dHVwbGUoMik7Ci0JU3RvcmVfZmllbGQocmV0LCAwLCBWYWxfYm9vbChyKSk7Ci0JU3RvcmVfZmll bGQocmV0LCAxLCBhcnJheSk7Ci0KLSNlbHNlCi0JY2FtbF9mYWlsd2l0aCgieGNfZG9tYWluX2Nw dWlkX2NoZWNrOiBub3QgaW1wbGVtZW50ZWQiKTsKLSNlbmRpZgotCUNBTUxyZXR1cm4ocmV0KTsK LX0KLQogQ0FNTHByaW0gdmFsdWUgc3R1Yl94Y192ZXJzaW9uX3ZlcnNpb24odmFsdWUgeGNoKQog ewogCUNBTUxwYXJhbTEoeGNoKTsKZGlmZiAtLWdpdCBhL3Rvb2xzL3B5dGhvbi94ZW4vbG93bGV2 ZWwveGMveGMuYyBiL3Rvb2xzL3B5dGhvbi94ZW4vbG93bGV2ZWwveGMveGMuYwppbmRleCA1ZDEx MmFmLi5hYTlmOGU0IDEwMDY0NAotLS0gYS90b29scy9weXRob24veGVuL2xvd2xldmVsL3hjL3hj LmMKKysrIGIvdG9vbHMvcHl0aG9uL3hlbi9sb3dsZXZlbC94Yy94Yy5jCkBAIC03MTEsMjkgKzcx MSw2IEBAIHN0YXRpYyBQeU9iamVjdCAqcHl4Y19jcmVhdGVfY3B1aWRfZGljdChjaGFyICoqcmVn cykKICAgIHJldHVybiBkaWN0OwogfQogCi1zdGF0aWMgUHlPYmplY3QgKnB5eGNfZG9tX2NoZWNr X2NwdWlkKFhjT2JqZWN0ICpzZWxmLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBQeU9iamVjdCAqYXJncykKLXsKLSAgICBQeU9iamVjdCAqc3ViX2lucHV0LCAqY29uZmln OwotICAgIHVuc2lnbmVkIGludCBpbnB1dFsyXTsKLSAgICBjaGFyICpyZWdzWzRdLCAqcmVnc190 cmFuc2Zvcm1bNF07Ci0KLSAgICBpZiAoICFQeUFyZ19QYXJzZVR1cGxlKGFyZ3MsICJpT08iLCAm aW5wdXRbMF0sICZzdWJfaW5wdXQsICZjb25maWcpICkKLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0K LSAgICBweXhjX2RvbV9leHRyYWN0X2NwdWlkKGNvbmZpZywgcmVncyk7Ci0KLSAgICBpbnB1dFsx XSA9IFhFTl9DUFVJRF9JTlBVVF9VTlVTRUQ7Ci0gICAgaWYgKCBQeUxvbmdfQ2hlY2soc3ViX2lu cHV0KSApCi0gICAgICAgIGlucHV0WzFdID0gUHlMb25nX0FzVW5zaWduZWRMb25nKHN1Yl9pbnB1 dCk7Ci0KLSAgICBpZiAoIHhjX2NwdWlkX2NoZWNrKHNlbGYtPnhjX2hhbmRsZSwgaW5wdXQsCi0g ICAgICAgICAgICAgICAgICAgICAgICAoY29uc3QgY2hhciAqKilyZWdzLCByZWdzX3RyYW5zZm9y bSkgKQotICAgICAgICByZXR1cm4gcHl4Y19lcnJvcl90b19leGNlcHRpb24oc2VsZi0+eGNfaGFu ZGxlKTsKLQotICAgIHJldHVybiBweXhjX2NyZWF0ZV9jcHVpZF9kaWN0KHJlZ3NfdHJhbnNmb3Jt KTsKLX0KLQogc3RhdGljIFB5T2JqZWN0ICpweXhjX2RvbV9zZXRfcG9saWN5X2NwdWlkKFhjT2Jq ZWN0ICpzZWxmLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB5 T2JqZWN0ICphcmdzKQogewpAQCAtMjQ2NywxNyArMjQ0NCw2IEBAIHN0YXRpYyBQeU1ldGhvZERl ZiBweXhjX21ldGhvZHNbXSA9IHsKICAgICAgICIga2V5cyAgICBbc3RyXTogU3RyaW5nIG9mIGtl eXMgdG8gaW5qZWN0LlxuIiB9LAogCiAjaWYgZGVmaW5lZChfX2kzODZfXykgfHwgZGVmaW5lZChf X3g4Nl82NF9fKQotICAgIHsgImRvbWFpbl9jaGVja19jcHVpZCIsIAotICAgICAgKFB5Q0Z1bmN0 aW9uKXB5eGNfZG9tX2NoZWNrX2NwdWlkLCAKLSAgICAgIE1FVEhfVkFSQVJHUywgIlxuIgotICAg ICAgIkFwcGx5IGNoZWNrcyB0byBob3N0IENQVUlELlxuIgotICAgICAgIiBpbnB1dCBbbG9uZ106 IElucHV0IGZvciBjcHVpZCBpbnN0cnVjdGlvbiAoZWF4KVxuIgotICAgICAgIiBzdWJfaW5wdXQg W2xvbmddOiBTZWNvbmQgaW5wdXQgKG9wdGlvbmFsLCBtYXkgYmUgTm9uZSkgZm9yIGNwdWlkICIK LSAgICAgICIgICAgICAgICAgICAgICAgICAgICBpbnN0cnVjdGlvbiAoZWN4KVxuIgotICAgICAg IiBjb25maWcgW2RpY3RdOiBEaWN0aW9uYXJ5IG9mIHJlZ2lzdGVyXG4iCi0gICAgICAiIGNvbmZp ZyBbZGljdF06IERpY3Rpb25hcnkgb2YgcmVnaXN0ZXIsIHVzZSBmb3IgY2hlY2tpbmdcblxuIgot ICAgICAgIlJldHVybnM6IFtpbnRdIDAgb24gc3VjY2VzczsgZXhjZXB0aW9uIG9uIGVycm9yLlxu IiB9LAotICAgIAogICAgIHsgImRvbWFpbl9zZXRfY3B1aWQiLCAKICAgICAgIChQeUNGdW5jdGlv bilweXhjX2RvbV9zZXRfY3B1aWQsIAogICAgICAgTUVUSF9WQVJBUkdTLCAiXG4iCi0tIAoyLjEu NAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1k ZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54 ZW4ub3JnL3hlbi1kZXZlbAo=