From owner-freebsd-ports-bugs@FreeBSD.ORG Mon Mar 11 09:00:01 2013 Return-Path: Delivered-To: freebsd-ports-bugs@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 8C22F3BC for ; Mon, 11 Mar 2013 09:00:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 7DF24EB5 for ; Mon, 11 Mar 2013 09:00:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.6/8.14.6) with ESMTP id r2B9012x063894 for ; Mon, 11 Mar 2013 09:00:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.6/8.14.6/Submit) id r2B901vZ063893; Mon, 11 Mar 2013 09:00:01 GMT (envelope-from gnats) Date: Mon, 11 Mar 2013 09:00:01 GMT Message-Id: <201303110900.r2B901vZ063893@freefall.freebsd.org> To: freebsd-ports-bugs@FreeBSD.org Cc: From: Luca Pizzamiglio Subject: Re: ports/176103: [MAINTAINER] devel/gdb: Adding an option to disable TUI and correctly enabling all targets X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: Luca Pizzamiglio List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 11 Mar 2013 09:00:01 -0000 The following reply was made to PR ports/176103; it has been noted by GNATS. From: Luca Pizzamiglio To: bug-followup@freebsd.org, luca.pizzamiglio@gmail.com Cc: Subject: Re: ports/176103: [MAINTAINER] devel/gdb: Adding an option to disable TUI and correctly enabling all targets Date: Mon, 11 Mar 2013 09:52:40 +0100 --485b397dd0dbd9aa4404d7a24c0f Content-Type: text/plain; charset=ISO-8859-1 This new patch provides the new features (TUI disabled and all targets enabled) and it's tested with clang. Thanks for the support Best regards, Luca --485b397dd0dbd9aa4404d7a24c0f Content-Type: text/plain; name="patch-gdb.txt" Content-Disposition: attachment; filename="patch-gdb.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_he5e5ljj0 ZGlmZiAtTnJ1IGRldmVsL2dkYi5vcmlnL01ha2VmaWxlIGRldmVsL2dkYi9NYWtlZmlsZQotLS0g ZGV2ZWwvZ2RiLm9yaWcvTWFrZWZpbGUJMjAxMi0xMi0xNiAxNzo1MDo1Mi4wMDAwMDAwMDAgKzAx MDAKKysrIGRldmVsL2dkYi9NYWtlZmlsZQkyMDEzLTAzLTA4IDE2OjAwOjI4LjAwMDAwMDAwMCAr MDEwMApAQCAtMSw1ICsxLDUgQEAKLSMgQ3JlYXRlZCBieTogU3RldmVuIEtyZXV6ZXIgPHNrcmV1 emVyQEZyZWVCU0Qub3JnPgotIyAkRnJlZUJTRDogcG9ydHMvZGV2ZWwvZ2RiL01ha2VmaWxlLHYg MS4yOCAyMDEyLzEyLzE2IDE2OjUwOjUyIHN2bmV4cCBFeHAgJAorIyBDcmVhdGVkIGJ5OglTdGV2 ZW4gS3JldXplciA8c2tyZXV6ZXJARnJlZUJTRC5vcmc+CisjICRGcmVlQlNEJAogCiBQT1JUTkFN RT0JZ2RiCiBQT1JUVkVSU0lPTj0JNy41LjEKQEAgLTIwLDggKzIwLDcgQEAKIAkJLS13aXRoLWdk Yi1kYXRhZGlyPSR7UFJFRklYfS9zaGFyZS9nZGIke1BPUlRWRVJTSU9OOlMvLi8vZ30gXAogCQkt LXdpdGgtbGliaWNvbnYtcHJlZml4PSR7TE9DQUxCQVNFfSBcCiAJCS0td2l0aG91dC1saWJ1bndp bmQtaWE2NCBcCi0JCS0tZW5hYmxlLXRhcmdldD1hbGwgXAotCQktLWVuYWJsZS10dWkKKwkJLS1l bmFibGUtdGFyZ2V0cz1hbGwKIENGTEFHUzo9CSR7Q0ZMQUdTOkMvICskLy99CSMgYmxhbmtzIGF0 IEVPTCBjcmVlcCBpbiBzb21ldGltZXMKIENGTEFHUys9CS1EUkxfTk9fQ09NUEFUCiBFWENMVURF PQlkZWphZ251IGV4cGVjdCBzaW0gdGV4aW5mbyBpbnRsCkBAIC0zMywxNCArMzIsMTUgQEAKIAog T05MWV9GT1JfQVJDSFM9CWkzODYgYW1kNjQJIyB1bnRlc3RlZCBlbHNld2hlcmUsIG1pZ2h0IHdv cmsKIAotT1BUSU9OU19ERUZJTkU9CURFQlVHIEVYUEFUIFBZVEhPTiBUSFJFQURTIEdEQl9MSU5L CitPUFRJT05TX0RFRklORT0JREVCVUcgRVhQQVQgUFlUSE9OIFRIUkVBRFMgVFVJIEdEQl9MSU5L CiBPUFRJT05TX1NJTkdMRV9SRUFETElORT0JQkFTRV9SRUFETElORSBCVU5ETEVEX1JFQURMSU5F IFBPUlRfUkVBRExJTkUKIE9QVElPTlNfU0lOR0xFPQlSRUFETElORQotQkFTRV9SRUFETElORV9E RVNDPQlmcm9tIGJhc2Ugc3lzdGVtIChFWFBFUklNRU5UQUwpCitCQVNFX1JFQURMSU5FX0RFU0M9 CWZyb20gYmFzZSBzeXN0ZW0oRVhQRVJJTUVOVEFMKQogQlVORExFRF9SRUFETElORV9ERVNDPQlm cm9tIGdkYiBkaXN0ZmlsZQogUE9SVF9SRUFETElORV9ERVNDPQlmcm9tIGRldmVsL3JlYWRsaW5l IHBvcnQKIEdEQl9MSU5LX0RFU0M9CUNyZWF0ZSB0aGUgZ2RiIGxpbmsKLU9QVElPTlNfREVGQVVM VD0JVEhSRUFEUyBHREJfTElOSyBQT1JUX1JFQURMSU5FCitUVUlfREVTQz0JVGV4dCBVc2VyIElu dGVyZmFjZSBlbmFibGVkCitPUFRJT05TX0RFRkFVTFQ9CVRIUkVBRFMgVFVJIEdEQl9MSU5LIFBP UlRfUkVBRExJTkUKIAogLmluY2x1ZGUgPGJzZC5wb3J0Lm9wdGlvbnMubWs+CiAKQEAgLTUwLDgg KzUwLDEyIEBACiBQTElTVF9TVUIrPQlHREJfTElOSz0iQGNvbW1lbnQgIgogLmVuZGlmCiAKLS5p ZiAke1BPUlRfT1BUSU9OUzpNUFlUSE9OfQotVVNFX1BZVEhPTj0JMi41LTIuNworLmlmICR7UE9S VF9PUFRJT05TOk1UVUl9CitDT05GSUdVUkVfQVJHUys9CS0tZW5hYmxlLXR1aQorUExJU1RfU1VC Kz0JVFVJX0xJTks9IiIKKy5lbHNlCitDT05GSUdVUkVfQVJHUys9CS0tZGlzYWJsZS10dWkKK1BM SVNUX1NVQis9CVRVSV9MSU5LPSJAY29tbWVudCAiCiAuZW5kaWYKIAogLmlmIGVtcHR5KFBPUlRf T1BUSU9OUzpNQlVORExFRF9SRUFETElORSkKQEAgLTY3LDYgKzcxLDE2IEBACiAuaWYgJHtQT1JU X09QVElPTlM6TVBPUlRfUkVBRExJTkV9CiBVU0VfUkVBRExJTkU9CXBvcnQKIC5lbmRpZgorCisu aWYgJHtQT1JUX09QVElPTlM6TVBZVEhPTn0KK1VTRV9QWVRIT049CTIuNS0yLjcKK0NPTkZJR1VS RV9BUkdTKz0JLS13aXRoLXB5dGhvbj0ke1BZVEhPTl9DTUR9CitQTElTVF9TVUIrPQkJUFlUSE9O PSIiCisuZWxzZQorQ09ORklHVVJFX0FSR1MrPQktLXdpdGhvdXQtcHl0aG9uCitQTElTVF9TVUIr PQkJUFlUSE9OPSJAY29tbWVudCAiCisuZW5kaWYKKwogLmluY2x1ZGUgPGJzZC5wb3J0LnByZS5t az4KIAogLmlmICR7UE9SVF9PUFRJT05TOk1USFJFQURTfQpAQCAtODQsMTQgKzk4LDYgQEAKIENP TkZJR1VSRV9BUkdTKz0JLS13aXRob3V0LWV4cGF0CiAuZW5kaWYKIAotLmlmICR7UE9SVF9PUFRJ T05TOk1QWVRIT059Ci1DT05GSUdVUkVfQVJHUys9CS0td2l0aC1weXRob249JHtQWVRIT05fQ01E fQotUExJU1RfU1VCKz0JCVBZVEhPTj0iIgotLmVsc2UKLUNPTkZJR1VSRV9BUkdTKz0JLS13aXRo b3V0LXB5dGhvbgotUExJU1RfU1VCKz0JCVBZVEhPTj0iQGNvbW1lbnQgIgotLmVuZGlmCi0KIC5p ZiAke0FSQ0h9ID09ICJhbWQ2NCIKIENPTkZJR1VSRV9UQVJHRVQ9CXg4Nl82NC1wb3J0YmxkLWZy ZWVic2Qke09TUkVMfQogLmVuZGlmCkBAIC0xMDUsOCArMTExLDEwIEBACiAKIGRvLWluc3RhbGw6 CiAJJHtJTlNUQUxMX1BST0dSQU19ICR7V1JLU1JDfS9nZGIvZ2RiICR7UFJFRklYfS9iaW4vZ2Ri JHtWRVJ9Ci0JJHtMTn0gLXNmICR7UFJFRklYfS9iaW4vZ2RiJHtWRVJ9ICR7UFJFRklYfS9iaW4v Z2RidHVpJHtWRVJ9CiAJJHtJTlNUQUxMX01BTn0gJHtXUktTUkN9L2dkYi9nZGIuMSAke01BTjFQ UkVGSVh9L21hbi9tYW4xL2dkYiR7VkVSfS4xCisuaWYgJHtQT1JUX09QVElPTlM6TVRVSX0KKwkk e0xOfSAtc2YgJHtQUkVGSVh9L2Jpbi9nZGIke1ZFUn0gJHtQUkVGSVh9L2Jpbi9nZGJ0dWkke1ZF Un0KKy5lbmRpZgogLmlmICR7UE9SVF9PUFRJT05TOk1HREJfTElOS30KIAkke0xOfSAtc2YgZ2Ri JHtWRVJ9ICR7UFJFRklYfS9iaW4vZ2RiCiAuZW5kaWYKZGlmZiAtTnJ1IGRldmVsL2dkYi5vcmln L2ZpbGVzL2V4dHJhcGF0Y2gtZ2RiLU1ha2VmaWxlLmluIGRldmVsL2dkYi9maWxlcy9leHRyYXBh dGNoLWdkYi1NYWtlZmlsZS5pbgotLS0gZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvZXh0cmFwYXRjaC1n ZGItTWFrZWZpbGUuaW4JMjAxMi0wOC0yNyAxODoxMDo1NC4wMDAwMDAwMDAgKzAyMDAKKysrIGRl dmVsL2dkYi9maWxlcy9leHRyYXBhdGNoLWdkYi1NYWtlZmlsZS5pbgkyMDEzLTAzLTA4IDE2OjAw OjE0LjAwMDAwMDAwMCArMDEwMApAQCAtMSwyMyArMSwxMyBAQAogLS0tIGdkYi9NYWtlZmlsZS5p bi5vcmlnCTIwMTItMDctMDIgMTc6Mjk6MzMuMDAwMDAwMDAwICswMjAwCiArKysgZ2RiL01ha2Vm aWxlLmluCTIwMTItMDgtMjYgMjE6MDE6NDUuNTg5MDUyOTk3ICswMjAwCi1AQCAtNTcyLDcgKzU3 Miw3IEBACi0gCXhzdG9ybXkxNi10ZGVwLm8gXAorQEAgLTU3Myw2ICs1NzMsNyBAQAogIAl4dGVu c2EtY29uZmlnLm8geHRlbnNhLXRkZXAubyB4dGVuc2EtbGludXgtdGRlcC5vIFwKICAJZ2xpYmMt dGRlcC5vIFwKLS0JYnNkLXV0aHJlYWQubyBcCisJYnNkLXV0aHJlYWQubyBcCiArCWZic2QtdGhy ZWFkcy5vIFwKICAJbmJzZC10ZGVwLm8gb2JzZC10ZGVwLm8gXAogIAlzb2wyLXRkZXAubyBcCiAg CXNvbGliLWZydi5vIHNvbGliLWlyaXgubyBzb2xpYi1zdnI0Lm8gXAotQEAgLTc3OSw3ICs3Nzks NyBAQAotIGdudWxpYi9pbXBvcnQvc3RkaW50LmluLmggcmVtb3RlLmggZ2RiLmggc3BhcmMtbmF0 LmggXAotIGdkYnRocmVhZC5oIGR3YXJmMi1mcmFtZS5oIGR3YXJmMi1mcmFtZS10YWlsY2FsbC5o IG5ic2QtbmF0LmggZGNhY2hlLmggXAotIGFtZDY0LW5hdC5oIHMzOTAtdGRlcC5oIGFybS1saW51 eC10ZGVwLmggZXhjZXB0aW9ucy5oIG1hY3Jvc2NvcGUuaCBcCi0tZ2RiYXJjaC5oIGJzZC11dGhy ZWFkLmggZ2RiX3N0YXQuaCBtZW1vcnktbWFwLmgJbWVtcmFuZ2UuaCBcCi0rZ2RiYXJjaC5oIGdk Yl9zdGF0LmggbWVtb3J5LW1hcC5oCW1lbXJhbmdlLmggXAotIG1kZWJ1Z3JlYWQuaCBtODhrLXRk ZXAuaCBzdGFic3JlYWQuaCBocHBhLWxpbnV4LW9mZnNldHMuaCBsaW51eC1mb3JrLmggXAotIHNl ci11bml4LmggaW5mLXB0cmFjZS5oIHRlcm1pbmFsLmggdWktb3V0LmggZnJhbWUtYmFzZS5oIFwK LSBmLWxhbmcuaCBkd2FyZjJsb2MuaCB2YWx1ZS5oIHNwYXJjLXRkZXAuaCBkZWZzLmggdGFyZ2V0 LWRlc2NyaXB0aW9ucy5oIFwKIEBAIC0xMTY0LDcgKzExNjQsNyBAQAogICMgUmVtb3ZpbmcgdGhl IG9sZCBnZGIgZmlyc3Qgd29ya3MgYmV0dGVyIGlmIGl0IGlzIHJ1bm5pbmcsIGF0IGxlYXN0IG9u IFN1bk9TLgogIGdkYiQoRVhFRVhUKTogZ2RiLm8gJChMSUJHREJfT0JTKSAkKEFERF9ERVBTKSAk KENERVBTKSAkKFRERVBMSUJTKQpAQCAtMzIsNyArMjIsNyBAQAogIAlhdnItdGRlcC5jIFwKICAJ YmZpbi1saW51eC10ZGVwLmMgYmZpbi10ZGVwLmMgXAogLQlic2QtdXRocmVhZC5jIGJzZC1rdm0u YyBcCi0rCWZic2QtdGhyZWFkcy5jIGJzZC1rdm0uYyBcCisrCWJzZC11dGhyZWFkLmMgZmJzZC10 aHJlYWRzLmMgYnNkLWt2bS5jIFwKICAJY29yZS1yZWdzZXQuYyBcCiAgCWRjYWNoZS5jIGRpY29z LXRkZXAuYyBkYXJ3aW4tbmF0LmMgXAogIAlleGVjLmMgXApkaWZmIC1OcnUgZGV2ZWwvZ2RiLm9y aWcvZmlsZXMvZmJzZC10aHJlYWRzLmMgZGV2ZWwvZ2RiL2ZpbGVzL2Zic2QtdGhyZWFkcy5jCi0t LSBkZXZlbC9nZGIub3JpZy9maWxlcy9mYnNkLXRocmVhZHMuYwkyMDEyLTExLTE3IDA2OjU1OjQ0 LjAwMDAwMDAwMCArMDEwMAorKysgZGV2ZWwvZ2RiL2ZpbGVzL2Zic2QtdGhyZWFkcy5jCTIwMTMt MDMtMDggMTY6MDA6MTQuMDAwMDAwMDAwICswMTAwCkBAIC0xLDQgKzEsNCBAQAotLyogJEZyZWVC U0Q6IHBvcnRzL2RldmVsL2dkYi9maWxlcy9mYnNkLXRocmVhZHMuYyx2IDEuOCAyMDEyLzExLzE3 IDA1OjU1OjQ0IHN2bmV4cCBFeHAgJCAqLworLyogJEZyZWVCU0QkICovCiAvKiBGcmVlQlNEIGxp YnRocmVhZF9kYiBhc3Npc3RlZCBkZWJ1Z2dpbmcgc3VwcG9ydC4KICAgIENvcHlyaWdodCAxOTk5 LCAyMDAwLCAyMDAxIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgogCmRpZmYgLU5ydSBk ZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1iZmQtZWxmMzItaHBwYS5jIGRldmVsL2dkYi9maWxl cy9wYXRjaC1iZmQtZWxmMzItaHBwYS5jCi0tLSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1i ZmQtZWxmMzItaHBwYS5jCTE5NzAtMDEtMDEgMDE6MDA6MDAuMDAwMDAwMDAwICswMTAwCisrKyBk ZXZlbC9nZGIvZmlsZXMvcGF0Y2gtYmZkLWVsZjMyLWhwcGEuYwkyMDEzLTAzLTA4IDE2OjAwOjE0 LjAwMDAwMDAwMCArMDEwMApAQCAtMCwwICsxLDExIEBACistLS0gYmZkL2VsZjMyLWhwcGEuYy5v cmlnCTIwMTMtMDMtMDcgMDk6NTY6NDAuMDAwMDAwMDAwICswMTAwCisrKysgYmZkL2VsZjMyLWhw cGEuYwkyMDEzLTAzLTA3IDA5OjU3OjA3LjAwMDAwMDAwMCArMDEwMAorQEAgLTIzODQsNyArMjM4 NCw3IEBACisgCSAgICAgIGJmZF9zaXplX3R5cGUgbWFzazsKKyAKKyAJICAgICAgaWYgKGdvdGFs aWduID4gcGx0YWxpZ24pCistCQliZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50IChkeW5vYmosIHNl YywgZ290YWxpZ24pOworKwkJKHZvaWQpYmZkX3NldF9zZWN0aW9uX2FsaWdubWVudCAoZHlub2Jq LCBzZWMsIGdvdGFsaWduKTsKKyAJICAgICAgbWFzayA9ICgoYmZkX3NpemVfdHlwZSkgMSA8PCBn b3RhbGlnbikgLSAxOworIAkgICAgICBzZWMtPnNpemUgPSAoc2VjLT5zaXplICsgc2l6ZW9mIChw bHRfc3R1YikgKyBtYXNrKSAmIH5tYXNrOworIAkgICAgfQpkaWZmIC1OcnUgZGV2ZWwvZ2RiLm9y aWcvZmlsZXMvcGF0Y2gtYmZkLWVsZjMyLW0zMnIuYyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtYmZk LWVsZjMyLW0zMnIuYwotLS0gZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0Y2gtYmZkLWVsZjMyLW0z MnIuYwkxOTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMAorKysgZGV2ZWwvZ2RiL2Zp bGVzL3BhdGNoLWJmZC1lbGYzMi1tMzJyLmMJMjAxMy0wMy0wOCAxNjowMDoxNC4wMDAwMDAwMDAg KzAxMDAKQEAgLTAsMCArMSwxMSBAQAorLS0tIGJmZC9lbGYzMi1tMzJyLmMub3JpZwkyMDEzLTAz LTA3IDA5OjU3OjMwLjAwMDAwMDAwMCArMDEwMAorKysrIGJmZC9lbGYzMi1tMzJyLmMJMjAxMy0w My0wNyAwOTo1Nzo1My4wMDAwMDAwMDAgKzAxMDAKK0BAIC0xMzkwLDcgKzEzOTAsNyBAQAorIAkJ CQkJCSAgZmxhZ3MpOworIAkgIGlmIChzID09IE5VTEwpCisgCSAgICByZXR1cm4gRkFMU0U7Cist CSAgYmZkX3NldF9zZWN0aW9uX2FsaWdubWVudCAoYWJmZCwgcywgMik7CisrCSAgKHZvaWQpYmZk X3NldF9zZWN0aW9uX2FsaWdubWVudCAoYWJmZCwgcywgMik7CisgCX0KKyAKKyAgICAgICBiaCA9 IGJmZF9saW5rX2hhc2hfbG9va3VwIChpbmZvLT5oYXNoLCAiX1NEQV9CQVNFXyIsCmRpZmYgLU5y dSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1iZmQtZWxmMzItbWljcm9ibGF6ZS5jIGRldmVs L2dkYi9maWxlcy9wYXRjaC1iZmQtZWxmMzItbWljcm9ibGF6ZS5jCi0tLSBkZXZlbC9nZGIub3Jp Zy9maWxlcy9wYXRjaC1iZmQtZWxmMzItbWljcm9ibGF6ZS5jCTE5NzAtMDEtMDEgMDE6MDA6MDAu MDAwMDAwMDAwICswMTAwCisrKyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtYmZkLWVsZjMyLW1pY3Jv YmxhemUuYwkyMDEzLTAzLTA4IDE2OjAwOjE0LjAwMDAwMDAwMCArMDEwMApAQCAtMCwwICsxLDEx IEBACistLS0gYmZkL2VsZjMyLW1pY3JvYmxhemUuYy5vcmlnCTIwMTMtMDMtMDcgMTA6MDE6NDcu MDAwMDAwMDAwICswMTAwCisrKysgYmZkL2VsZjMyLW1pY3JvYmxhemUuYwkyMDEzLTAzLTA3IDEw OjAyOjU0LjAwMDAwMDAwMCArMDEwMAorQEAgLTE3NDEsNyArMTc0MSw3IEBACisgICAgICAgZm9y IChpc3ltID0gaXN5bWJ1ZjsgaXN5bSA8IGlzeW1lbmQ7IGlzeW0rKykKKyAgICAgICAgIHsKKyAg ICAgICAgICAgaWYgKGlzeW0tPnN0X3NobmR4ID09IHNobmR4KQorLQkgICAgaXN5bS0+c3RfdmFs dWUgPS0gY2FsY19maXh1cCAoaXN5bS0+c3RfdmFsdWUsIHNlYyk7CisrCSAgICBpc3ltLT5zdF92 YWx1ZSA9IC1jYWxjX2ZpeHVwIChpc3ltLT5zdF92YWx1ZSwgc2VjKTsKKyAgICAgICAgIH0KKyAK KyAgICAgICAvKiBOb3cgYWRqdXN0IHRoZSBnbG9iYWwgc3ltYm9scyBkZWZpbmVkIGluIHRoaXMg c2VjdGlvbi4gICovCmRpZmYgLU5ydSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1iZmQtZWxm MzItdGljNnguYyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtYmZkLWVsZjMyLXRpYzZ4LmMKLS0tIGRl dmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC1lbGYzMi10aWM2eC5jCTE5NzAtMDEtMDEgMDE6 MDA6MDAuMDAwMDAwMDAwICswMTAwCisrKyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtYmZkLWVsZjMy LXRpYzZ4LmMJMjAxMy0wMy0wOCAxNjowMDoxNC4wMDAwMDAwMDAgKzAxMDAKQEAgLTAsMCArMSwz MCBAQAorLS0tIGJmZC9lbGYzMi10aWM2eC5jLm9yaWcJMjAxMy0wMy0wNyAxMDowMzoyOC4wMDAw MDAwMDAgKzAxMDAKKysrKyBiZmQvZWxmMzItdGljNnguYwkyMDEzLTAzLTA3IDEwOjA4OjE5LjAw MDAwMDAwMCArMDEwMAorQEAgLTMwNDMsNyArMzA0Myw3IEBACisgICAgICAgKnNlY3AgPSBiZmRf bWFrZV9zZWN0aW9uX29sZF93YXkgKGFiZmQsICIuc2NvbW1vbiIpOworICAgICAgICgqc2VjcCkt PmZsYWdzIHw9IFNFQ19JU19DT01NT047CisgICAgICAgKnZhbHAgPSBzeW0tPnN0X3NpemU7Cist ICAgICAgYmZkX3NldF9zZWN0aW9uX2FsaWdubWVudCAoYWJmZCwgKnNlY3AsIGJmZF9sb2cyIChz eW0tPnN0X3ZhbHVlKSk7CisrICAgICAgKHZvaWQpYmZkX3NldF9zZWN0aW9uX2FsaWdubWVudCAo YWJmZCwgKnNlY3AsIGJmZF9sb2cyIChzeW0tPnN0X3ZhbHVlKSk7CisgICAgICAgYnJlYWs7Cisg ICAgIH0KKyAKK0BAIC0zMzE5LDggKzMzMTksNiBAQAorICAgICB7CisgICAgICAgYmZkX3NpZ25l ZF92bWEgKmxvY2FsX2dvdDsKKyAgICAgICBiZmRfc2lnbmVkX3ZtYSAqZW5kX2xvY2FsX2dvdDsK Ky0gICAgICBjaGFyICpsb2NhbF90bHNfdHlwZTsKKy0gICAgICBiZmRfdm1hICpsb2NhbF90bHNk ZXNjX2dvdGVudDsKKyAgICAgICBiZmRfc2l6ZV90eXBlIGxvY3N5bWNvdW50OworICAgICAgIEVs Zl9JbnRlcm5hbF9TaGRyICpzeW10YWJfaGRyOworICAgICAgIGFzZWN0aW9uICpzcmVsOworQEAg LTMzNjEsOCArMzM1OSw3IEBACisgICAgICAgZW5kX2xvY2FsX2dvdCA9IGxvY2FsX2dvdCArIGxv Y3N5bWNvdW50OworICAgICAgIHMgPSBodGFiLT5lbGYuc2dvdDsKKyAgICAgICBzcmVsID0gaHRh Yi0+ZWxmLnNyZWxnb3Q7CistICAgICAgZm9yICg7IGxvY2FsX2dvdCA8IGVuZF9sb2NhbF9nb3Q7 CistCSAgICsrbG9jYWxfZ290LCArK2xvY2FsX3Rsc190eXBlLCArK2xvY2FsX3Rsc2Rlc2NfZ290 ZW50KQorKyAgICAgIGZvciAoOyBsb2NhbF9nb3QgPCBlbmRfbG9jYWxfZ290OyArK2xvY2FsX2dv dCkKKyAJeworIAkgIGlmICgqbG9jYWxfZ290ID4gMCkKKyAJICAgIHsKZGlmZiAtTnJ1IGRldmVs L2dkYi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC1lbGYzMi14dGVuc2EuYyBkZXZlbC9nZGIvZmlsZXMv cGF0Y2gtYmZkLWVsZjMyLXh0ZW5zYS5jCi0tLSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1i ZmQtZWxmMzIteHRlbnNhLmMJMTk3MC0wMS0wMSAwMTowMDowMC4wMDAwMDAwMDAgKzAxMDAKKysr IGRldmVsL2dkYi9maWxlcy9wYXRjaC1iZmQtZWxmMzIteHRlbnNhLmMJMjAxMy0wMy0wOCAxNjow MDoxNC4wMDAwMDAwMDAgKzAxMDAKQEAgLTAsMCArMSwyMCBAQAorLS0tIGJmZC9lbGYzMi14dGVu c2EuYy5vcmlnCTIwMTMtMDMtMDcgMTA6MDg6NTguMDAwMDAwMDAwICswMTAwCisrKysgYmZkL2Vs ZjMyLXh0ZW5zYS5jCTIwMTMtMDMtMDcgMTA6MTE6NDAuMDAwMDAwMDAwICswMTAwCitAQCAtNjA3 NSw3ICs2MDc1LDcgQEAKKyAgICAgICByZWxlYXNlX2ludGVybmFsX3JlbG9jcyAoc2VjX2NhY2hl LT5zZWMsIHNlY19jYWNoZS0+cmVsb2NzKTsKKyAgICAgICBpZiAoc2VjX2NhY2hlLT5wdGJsKQor IAlmcmVlIChzZWNfY2FjaGUtPnB0YmwpOworLSAgICAgIG1lbXNldCAoc2VjX2NhY2hlLCAwLCBz aXplb2YgKHNlY19jYWNoZSkpOworKyAgICAgIG1lbXNldCAoc2VjX2NhY2hlLCAwLCBzaXplb2Yg KCpzZWNfY2FjaGUpKTsKKyAgICAgfQorIH0KKyAKK0BAIC02MTE3LDcgKzYxMTcsNyBAQAorIAor ICAgLyogRmlsbCBpbiB0aGUgbmV3IHNlY3Rpb24gY2FjaGUuICAqLworICAgY2xlYXJfc2VjdGlv bl9jYWNoZSAoc2VjX2NhY2hlKTsKKy0gIG1lbXNldCAoc2VjX2NhY2hlLCAwLCBzaXplb2YgKHNl Y19jYWNoZSkpOworKyAgbWVtc2V0IChzZWNfY2FjaGUsIDAsIHNpemVvZiAoKnNlY19jYWNoZSkp OworIAorICAgc2VjX2NhY2hlLT5zZWMgPSBzZWM7CisgICBzZWNfY2FjaGUtPmNvbnRlbnRzID0g Y29udGVudHM7CmRpZmYgLU5ydSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1iZmQtZWxmeHgt bWlwcy5jIGRldmVsL2dkYi9maWxlcy9wYXRjaC1iZmQtZWxmeHgtbWlwcy5jCi0tLSBkZXZlbC9n ZGIub3JpZy9maWxlcy9wYXRjaC1iZmQtZWxmeHgtbWlwcy5jCTE5NzAtMDEtMDEgMDE6MDA6MDAu MDAwMDAwMDAwICswMTAwCisrKyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtYmZkLWVsZnh4LW1pcHMu YwkyMDEzLTAzLTA4IDE2OjAwOjE0LjAwMDAwMDAwMCArMDEwMApAQCAtMCwwICsxLDI4IEBACist LS0gYmZkL2VsZnh4LW1pcHMuYy5vcmlnCTIwMTMtMDMtMDcgMTA6MTI6MDYuMDAwMDAwMDAwICsw MTAwCisrKysgYmZkL2VsZnh4LW1pcHMuYwkyMDEzLTAzLTA3IDEwOjEzOjMwLjAwMDAwMDAwMCAr MDEwMAorQEAgLTcyOTIsMjAgKzcyOTIsMjAgQEAKKyAgICAgICAvKiBDaGFuZ2UgYWxpZ25tZW50 cyBvZiBzb21lIHNlY3Rpb25zLiAgKi8KKyAgICAgICBzID0gYmZkX2dldF9saW5rZXJfc2VjdGlv biAoYWJmZCwgIi5oYXNoIik7CisgICAgICAgaWYgKHMgIT0gTlVMTCkKKy0JYmZkX3NldF9zZWN0 aW9uX2FsaWdubWVudCAoYWJmZCwgcywgTUlQU19FTEZfTE9HX0ZJTEVfQUxJR04gKGFiZmQpKTsK KysJKHZvaWQpYmZkX3NldF9zZWN0aW9uX2FsaWdubWVudCAoYWJmZCwgcywgTUlQU19FTEZfTE9H X0ZJTEVfQUxJR04gKGFiZmQpKTsKKyAgICAgICBzID0gYmZkX2dldF9saW5rZXJfc2VjdGlvbiAo YWJmZCwgIi5keW5zeW0iKTsKKyAgICAgICBpZiAocyAhPSBOVUxMKQorLQliZmRfc2V0X3NlY3Rp b25fYWxpZ25tZW50IChhYmZkLCBzLCBNSVBTX0VMRl9MT0dfRklMRV9BTElHTiAoYWJmZCkpOwor Kwkodm9pZCliZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50IChhYmZkLCBzLCBNSVBTX0VMRl9MT0df RklMRV9BTElHTiAoYWJmZCkpOworICAgICAgIHMgPSBiZmRfZ2V0X2xpbmtlcl9zZWN0aW9uIChh YmZkLCAiLmR5bnN0ciIpOworICAgICAgIGlmIChzICE9IE5VTEwpCistCWJmZF9zZXRfc2VjdGlv bl9hbGlnbm1lbnQgKGFiZmQsIHMsIE1JUFNfRUxGX0xPR19GSUxFX0FMSUdOIChhYmZkKSk7Cisr CSh2b2lkKWJmZF9zZXRfc2VjdGlvbl9hbGlnbm1lbnQgKGFiZmQsIHMsIE1JUFNfRUxGX0xPR19G SUxFX0FMSUdOIChhYmZkKSk7CisgICAgICAgLyogPz8/ICovCisgICAgICAgcyA9IGJmZF9nZXRf c2VjdGlvbl9ieV9uYW1lIChhYmZkLCAiLnJlZ2luZm8iKTsKKyAgICAgICBpZiAocyAhPSBOVUxM KQorLQliZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50IChhYmZkLCBzLCBNSVBTX0VMRl9MT0dfRklM RV9BTElHTiAoYWJmZCkpOworKwkodm9pZCliZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50IChhYmZk LCBzLCBNSVBTX0VMRl9MT0dfRklMRV9BTElHTiAoYWJmZCkpOworICAgICAgIHMgPSBiZmRfZ2V0 X2xpbmtlcl9zZWN0aW9uIChhYmZkLCAiLmR5bmFtaWMiKTsKKyAgICAgICBpZiAocyAhPSBOVUxM KQorLQliZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50IChhYmZkLCBzLCBNSVBTX0VMRl9MT0dfRklM RV9BTElHTiAoYWJmZCkpOworKwkodm9pZCliZmRfc2V0X3NlY3Rpb25fYWxpZ25tZW50IChhYmZk LCBzLCBNSVBTX0VMRl9MT0dfRklMRV9BTElHTiAoYWJmZCkpOworICAgICB9CisgCisgICBpZiAo IWluZm8tPnNoYXJlZCkKZGlmZiAtTnJ1IGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC1l bGZ4eC10aWxlZ3guYyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtYmZkLWVsZnh4LXRpbGVneC5jCi0t LSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1iZmQtZWxmeHgtdGlsZWd4LmMJMTk3MC0wMS0w MSAwMTowMDowMC4wMDAwMDAwMDAgKzAxMDAKKysrIGRldmVsL2dkYi9maWxlcy9wYXRjaC1iZmQt ZWxmeHgtdGlsZWd4LmMJMjAxMy0wMy0wOCAxNjowMDoxNC4wMDAwMDAwMDAgKzAxMDAKQEAgLTAs MCArMSwyMCBAQAorLS0tIGJmZC9lbGZ4eC10aWxlZ3guYy5vcmlnCTIwMTMtMDMtMDcgMTA6MTQ6 MzQuMDAwMDAwMDAwICswMTAwCisrKysgYmZkL2VsZnh4LXRpbGVneC5jCTIwMTMtMDMtMDcgMTA6 MTU6MzEuMDAwMDAwMDAwICswMTAwCitAQCAtMTIwNSw3ICsxMjA1LDcgQEAKKyB9OworIAorIC8q IFJldXNlIGFuIGV4aXN0aW5nIGluZm8gMTAgYnVuZGxlLiAgKi8KKy1zdGF0aWMgY29uc3QgYmZk X2J5dGUgY29uc3QgKnRpbGVneDY0X3BsdF90YWlsX2VudHJ5ID0KKytzdGF0aWMgY29uc3QgYmZk X2J5dGUgKnRpbGVneDY0X3BsdF90YWlsX2VudHJ5ID0KKyAgICZ0aWxlZ3g2NF9zaG9ydF9wbHRf ZW50cnlbNCAqIFRJTEVHWF9CVU5ETEVfU0laRV9JTl9CWVRFU107CisgCisgc3RhdGljIGNvbnN0 IGJmZF9ieXRlCitAQCAtMTI1MCw3ICsxMjUwLDcgQEAKKyB9OworIAorIC8qIFJldXNlIGFuIGV4 aXN0aW5nIGluZm8gMTAgYnVuZGxlLiAgKi8KKy1zdGF0aWMgY29uc3QgYmZkX2J5dGUgY29uc3Qg KnRpbGVneDMyX3BsdF90YWlsX2VudHJ5ID0KKytzdGF0aWMgY29uc3QgYmZkX2J5dGUgKnRpbGVn eDMyX3BsdF90YWlsX2VudHJ5ID0KKyAgICZ0aWxlZ3g2NF9zaG9ydF9wbHRfZW50cnlbNCAqIFRJ TEVHWF9CVU5ETEVfU0laRV9JTl9CWVRFU107CisgCisgc3RhdGljIGludApkaWZmIC1OcnUgZGV2 ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0Y2gtYmZkLW1hY2gtby5jIGRldmVsL2dkYi9maWxlcy9wYXRj aC1iZmQtbWFjaC1vLmMKLS0tIGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC1tYWNoLW8u YwkxOTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMAorKysgZGV2ZWwvZ2RiL2ZpbGVz L3BhdGNoLWJmZC1tYWNoLW8uYwkyMDEzLTAzLTA4IDE2OjAwOjE0LjAwMDAwMDAwMCArMDEwMApA QCAtMCwwICsxLDExIEBACistLS0gYmZkL21hY2gtby5jLm9yaWcJMjAxMy0wMy0wNyAxMDoxNTo1 NS4wMDAwMDAwMDAgKzAxMDAKKysrKyBiZmQvbWFjaC1vLmMJMjAxMy0wMy0wNyAxMDoxNjowOS4w MDAwMDAwMDAgKzAxMDAKK0BAIC0yNjgzLDcgKzI2ODMsNyBAQAorIAkgIHMtPmZsYWdzID0geGxh dC0+bWFjaG9fc2VjdHlwZSB8IHhsYXQtPm1hY2hvX3NlY2F0dHI7CisgCSAgcy0+YWxpZ24gPSB4 bGF0LT5zZWN0YWxpZ24gPiBiZmRhbGlnbiA/IHhsYXQtPnNlY3RhbGlnbiAKKyAJCQkJCQk6IGJm ZGFsaWduOworLQkgIGJmZF9zZXRfc2VjdGlvbl9hbGlnbm1lbnQgKGFiZmQsIHNlYywgcy0+YWxp Z24pOworKwkgICh2b2lkKWJmZF9zZXRfc2VjdGlvbl9hbGlnbm1lbnQgKGFiZmQsIHNlYywgcy0+ YWxpZ24pOworIAkgIGJmZF9mbGFncyA9IGJmZF9nZXRfc2VjdGlvbl9mbGFncyAoYWJmZCwgc2Vj KTsKKyAJICBpZiAoYmZkX2ZsYWdzID09IFNFQ19OT19GTEFHUykKKyAJICAgIGJmZF9zZXRfc2Vj dGlvbl9mbGFncyAoYWJmZCwgc2VjLCB4bGF0LT5iZmRfZmxhZ3MpOwpkaWZmIC1OcnUgZGV2ZWwv Z2RiLm9yaWcvZmlsZXMvcGF0Y2gtYmZkLXhjb2ZmbGluay5jIGRldmVsL2dkYi9maWxlcy9wYXRj aC1iZmQteGNvZmZsaW5rLmMKLS0tIGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLWJmZC14Y29m ZmxpbmsuYwkxOTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMAorKysgZGV2ZWwvZ2Ri L2ZpbGVzL3BhdGNoLWJmZC14Y29mZmxpbmsuYwkyMDEzLTAzLTA4IDE2OjAwOjE0LjAwMDAwMDAw MCArMDEwMApAQCAtMCwwICsxLDExIEBACistLS0gYmZkL3hjb2ZmbGluay5jLm9yaWcJMjAxMy0w My0wNyAxMDoxNjo0NS4wMDAwMDAwMDAgKzAxMDAKKysrKyBiZmQveGNvZmZsaW5rLmMJMjAxMy0w My0wNyAxMDoxOTo1MC4wMDAwMDAwMDAgKzAxMDAKK0BAIC02MjczLDcgKzYyNzMsNyBAQAorICAg ICAgIGlyZWwgPSBmbGluZm8uc2VjdGlvbl9pbmZvW28tPnRhcmdldF9pbmRleF0ucmVsb2NzOwor ICAgICAgIGlyZWxlbmQgPSBpcmVsICsgby0+cmVsb2NfY291bnQ7CisgICAgICAgcmVsX2hhc2gg PSBmbGluZm8uc2VjdGlvbl9pbmZvW28tPnRhcmdldF9pbmRleF0ucmVsX2hhc2hlczsKKy0gICAg ICBmb3IgKDsgaXJlbCA8IGlyZWxlbmQ7IGlyZWwrKywgcmVsX2hhc2grKywgZXJlbCArPSByZWxz eikKKysgICAgICBmb3IgKDsgaXJlbCA8IGlyZWxlbmQ7IGlyZWwrKywgcmVsX2hhc2grKykKKyAJ eworIAkgIGlmICgqcmVsX2hhc2ggIT0gTlVMTCkKKyAJICAgIHsKZGlmZiAtTnJ1IGRldmVsL2dk Yi5vcmlnL2ZpbGVzL3BhdGNoLWluY2x1ZGUtY2dlbi1iYXNpYy1vcHMuaCBkZXZlbC9nZGIvZmls ZXMvcGF0Y2gtaW5jbHVkZS1jZ2VuLWJhc2ljLW9wcy5oCi0tLSBkZXZlbC9nZGIub3JpZy9maWxl cy9wYXRjaC1pbmNsdWRlLWNnZW4tYmFzaWMtb3BzLmgJMTk3MC0wMS0wMSAwMTowMDowMC4wMDAw MDAwMDAgKzAxMDAKKysrIGRldmVsL2dkYi9maWxlcy9wYXRjaC1pbmNsdWRlLWNnZW4tYmFzaWMt b3BzLmgJMjAxMy0wMy0wOCAxNjowMDoxNC4wMDAwMDAwMDAgKzAxMDAKQEAgLTAsMCArMSw0MyBA QAorLS0tIGluY2x1ZGUvY2dlbi9iYXNpYy1vcHMuaC5vcmlnCTIwMTMtMDMtMDcgMTc6MzE6MjEu MDAwMDAwMDAwICswMTAwCisrKysgaW5jbHVkZS9jZ2VuL2Jhc2ljLW9wcy5oCTIwMTMtMDMtMDcg MTc6MzE6MjguMDAwMDAwMDAwICswMTAwCitAQCAtMjQsMTEgKzI0LDE2IEBACisgCisgI2luY2x1 ZGUgPGFzc2VydC5oPgorIAorLSNpZiBkZWZpbmVkIChfX0dOVUNfXykgJiYgISBkZWZpbmVkIChT RU1PUFNfREVGSU5FX0lOTElORSkKKysjaWYgZGVmaW5lZCAoX19HTlVDX18pICYmICEgZGVmaW5l ZCAoU0VNT1BTX0RFRklORV9JTkxJTkUpICYmICEgZGVmaW5lZCAoX19jbGFuZ19fKQorICNkZWZp bmUgU0VNT1BTX0RFRklORV9JTkxJTkUKKyAjZGVmaW5lIFNFTU9QU19JTkxJTkUgZXh0ZXJuIGlu bGluZQorICNlbHNlCistI2RlZmluZSBTRU1PUFNfSU5MSU5FCisrIyBpZiBkZWZpbmVkIChfX2Ns YW5nX18pICYmICEgZGVmaW5lZCAoU0VNT1BTX0RFRklORV9JTkxJTkUpCisrIyAgZGVmaW5lIFNF TU9QU19ERUZJTkVfSU5MSU5FCisrIyAgZGVmaW5lIFNFTU9QU19JTkxJTkUgc3RhdGljIGlubGlu ZQorKyMgZWxzZQorKyMgIGRlZmluZSBTRU1PUFNfSU5MSU5FCisrIyBlbmRpZgorICNlbmRpZgor IAorIC8qIFRoZXNlIGRvbid0IHJlYWxseSBoYXZlIGEgbW9kZS4gICovCitAQCAtMjk1LDExICsz MDAsMTYgQEAKKyAgICBzaWduaWZpY2FudCBhbmQgd29yZCBudW1iZXIgMCBpcyB0aGUgbW9zdCBz aWduaWZpY2FudCB3b3JkLgorICAgID8/PyBNYXkgYWxzbyB3aXNoIGFuIGVuZGlhbi1kZXBlbmRl bnQgdmVyc2lvbi4gIExhdGVyLiAgKi8KKyAKKy1RSSBTVUJXT1JEU0lRSSAoU0ksIGludCk7Cist SEkgU1VCV09SRFNJSEkgKFNJLCBpbnQpOworLVFJIFNVQldPUkRESVFJIChESSwgaW50KTsKKy1I SSBTVUJXT1JERElISSAoREksIGludCk7CistU0kgU1VCV09SRERJU0kgKERJLCBpbnQpOworKyNp ZiBkZWZpbmVkIChfX2NsYW5nX18pICYmIGRlZmluZWQgKFNFTU9QU19ERUZJTkVfSU5MSU5FKQor KyNkZWZpbmUgU0VNT1BTX1NUQVRJQyBzdGF0aWMKKysjZWxzZQorKyNkZWZpbmUgU0VNT1BTX1NU QVRJQworKyNlbmRpZgorK1NFTU9QU19TVEFUSUMgUUkgU1VCV09SRFNJUUkgKFNJLCBpbnQpOwor K1NFTU9QU19TVEFUSUMgSEkgU1VCV09SRFNJSEkgKFNJLCBpbnQpOworK1NFTU9QU19TVEFUSUMg UUkgU1VCV09SRERJUUkgKERJLCBpbnQpOworK1NFTU9QU19TVEFUSUMgSEkgU1VCV09SRERJSEkg KERJLCBpbnQpOworK1NFTU9QU19TVEFUSUMgU0kgU1VCV09SRERJU0kgKERJLCBpbnQpOworIAor ICNpZmRlZiBTRU1PUFNfREVGSU5FX0lOTElORQorIApkaWZmIC1OcnUgZGV2ZWwvZ2RiLm9yaWcv ZmlsZXMvcGF0Y2gtb3Bjb2Rlcy1jcjE2LW9wYy5jIGRldmVsL2dkYi9maWxlcy9wYXRjaC1vcGNv ZGVzLWNyMTYtb3BjLmMKLS0tIGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLW9wY29kZXMtY3Ix Ni1vcGMuYwkxOTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMAorKysgZGV2ZWwvZ2Ri L2ZpbGVzL3BhdGNoLW9wY29kZXMtY3IxNi1vcGMuYwkyMDEzLTAzLTA4IDE2OjAwOjE0LjAwMDAw MDAwMCArMDEwMApAQCAtMCwwICsxLDY1IEBACistLS0gb3Bjb2Rlcy9jcjE2LW9wYy5jLm9yaWcJ MjAxMy0wMy0wNyAxMDozNDo0OC4wMDAwMDAwMDAgKzAxMDAKKysrKyBvcGNvZGVzL2NyMTYtb3Bj LmMJMjAxMy0wMy0wNyAxMDozMzo0OS4wMDAwMDAwMDAgKzAxMDAKK0BAIC01MDIsMzYgKzUwMiwz NiBAQAorIGNvbnN0IHJlZ19lbnRyeSBjcjE2X3ByZWd0YWJbXSA9CisgeworIC8qIEJ1aWxkIGEg cHJvY2Vzc29yIHJlZ2lzdGVyLiAgKi8KKy0gIFJFRyhkYnMsICAgMHgwLCBDUjE2X1BfUkVHVFlQ RSksCistICBSRUcoZHNyLCAgIDB4MSwgQ1IxNl9QX1JFR1RZUEUpLAorLSAgUkVHKGRjcmwsICAw eDIsIENSMTZfUF9SRUdUWVBFKSwKKy0gIFJFRyhkY3JoLCAgMHgzLCBDUjE2X1BfUkVHVFlQRSks CistICBSRUcoY2FyMGwsIDB4NCwgQ1IxNl9QX1JFR1RZUEUpLAorLSAgUkVHKGNhcjBoLCAweDUs IENSMTZfUF9SRUdUWVBFKSwKKy0gIFJFRyhjYXIxbCwgMHg2LCBDUjE2X1BfUkVHVFlQRSksCist ICBSRUcoY2FyMWgsIDB4NywgQ1IxNl9QX1JFR1RZUEUpLAorLSAgUkVHKGNmZywgICAweDgsIENS MTZfUF9SRUdUWVBFKSwKKy0gIFJFRyhwc3IsICAgMHg5LCBDUjE2X1BfUkVHVFlQRSksCistICBS RUcoaW50YmFzZWwsIDB4YSwgQ1IxNl9QX1JFR1RZUEUpLAorLSAgUkVHKGludGJhc2VoLCAweGIs IENSMTZfUF9SRUdUWVBFKSwKKy0gIFJFRyhpc3BsLCAgMHhjLCBDUjE2X1BfUkVHVFlQRSksCist ICBSRUcoaXNwaCwgIDB4ZCwgQ1IxNl9QX1JFR1RZUEUpLAorLSAgUkVHKHVzcGwsICAweGUsIENS MTZfUF9SRUdUWVBFKSwKKy0gIFJFRyh1c3BoLCAgMHhmLCBDUjE2X1BfUkVHVFlQRSksCisrICBS RUcoKHJlZylkYnMsICAgMHgwLCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJlZylkc3IsICAg MHgxLCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJlZylkY3JsLCAgMHgyLCBDUjE2X1BfUkVH VFlQRSksCisrICBSRUcoKHJlZylkY3JoLCAgMHgzLCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUco KHJlZyljYXIwbCwgMHg0LCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJlZyljYXIwaCwgMHg1 LCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJlZyljYXIxbCwgMHg2LCBDUjE2X1BfUkVHVFlQ RSksCisrICBSRUcoKHJlZyljYXIxaCwgMHg3LCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJl ZyljZmcsICAgMHg4LCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJlZylwc3IsICAgMHg5LCBD UjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJlZylpbnRiYXNlbCwgMHhhLCBDUjE2X1BfUkVHVFlQ RSksCisrICBSRUcoKHJlZylpbnRiYXNlaCwgMHhiLCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUco KHJlZylpc3BsLCAgMHhjLCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJlZylpc3BoLCAgMHhk LCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJlZyl1c3BsLCAgMHhlLCBDUjE2X1BfUkVHVFlQ RSksCisrICBSRUcoKHJlZyl1c3BoLCAgMHhmLCBDUjE2X1BfUkVHVFlQRSksCisgfTsKKyAKKyBj b25zdCByZWdfZW50cnkgY3IxNl9wcmVncHRhYltdID0KKyB7CistICBSRUcoZGJzLCAgIDAsIENS MTZfUF9SRUdUWVBFKSwKKy0gIFJFRyhkc3IsICAgMSwgQ1IxNl9QX1JFR1RZUEUpLAorLSAgUkVH KGRjciwgICAyLCBDUjE2X1BfUkVHVFlQRSksCistICBSRUcoY2FyMCwgIDQsIENSMTZfUF9SRUdU WVBFKSwKKy0gIFJFRyhjYXIxLCAgNiwgQ1IxNl9QX1JFR1RZUEUpLAorLSAgUkVHKGNmZywgICA4 LCBDUjE2X1BfUkVHVFlQRSksCistICBSRUcocHNyLCAgIDksIENSMTZfUF9SRUdUWVBFKSwKKy0g IFJFRyhpbnRiYXNlLCAxMCwgQ1IxNl9QX1JFR1RZUEUpLAorLSAgUkVHKGlzcCwgICAxMiwgQ1Ix Nl9QX1JFR1RZUEUpLAorLSAgUkVHKHVzcCwgICAxNCwgQ1IxNl9QX1JFR1RZUEUpLAorKyAgUkVH KChyZWcpZGJzLCAgIDAsIENSMTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKWRzciwgICAxLCBD UjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJlZylkY3IsICAgMiwgQ1IxNl9QX1JFR1RZUEUpLAor KyAgUkVHKChyZWcpY2FyMCwgIDQsIENSMTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKWNhcjEs ICA2LCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJlZyljZmcsICAgOCwgQ1IxNl9QX1JFR1RZ UEUpLAorKyAgUkVHKChyZWcpcHNyLCAgIDksIENSMTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVn KWludGJhc2UsIDEwLCBDUjE2X1BfUkVHVFlQRSksCisrICBSRUcoKHJlZylpc3AsICAgMTIsIENS MTZfUF9SRUdUWVBFKSwKKysgIFJFRygocmVnKXVzcCwgICAxNCwgQ1IxNl9QX1JFR1RZUEUpLAor IH07CisgCisgY29uc3QgdW5zaWduZWQgaW50IGNyMTZfbnVtX3ByZWdzID0gIEFSUkFZX1NJWkUg KGNyMTZfcHJlZ3RhYik7CmRpZmYgLU5ydSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1vcGNv ZGVzLWNyeC1vcGMuYyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtb3Bjb2Rlcy1jcngtb3BjLmMKLS0t IGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLW9wY29kZXMtY3J4LW9wYy5jCTE5NzAtMDEtMDEg MDE6MDA6MDAuMDAwMDAwMDAwICswMTAwCisrKyBkZXZlbC9nZGIvZmlsZXMvcGF0Y2gtb3Bjb2Rl cy1jcngtb3BjLmMJMjAxMy0wMy0wOCAxNjowMDoxNC4wMDAwMDAwMDAgKzAxMDAKQEAgLTAsMCAr MSwyMCBAQAorLS0tIG9wY29kZXMvY3J4LW9wYy5jLm9yaWcJMjAxMy0wMy0wNyAxMDozNTowNi4w MDAwMDAwMDAgKzAxMDAKKysrKyBvcGNvZGVzL2NyeC1vcGMuYwkyMDEzLTAzLTA3IDEwOjQwOjMx LjAwMDAwMDAwMCArMDEwMAorQEAgLTYzMiw3ICs2MzIsNyBAQAorIGNvbnN0IHJlZ19lbnRyeSBj cnhfY29wcmVndGFiW10gPQorIHsKKyAvKiBCdWlsZCBhIENvcHJvY2Vzc29yIHJlZ2lzdGVyIGM8 Tj4uICAqLworLSNkZWZpbmUgUkVHX0MoTikgICAgUkVHKENPTkNBVDIoYyxOKSwgTiwgQ1JYX0Nf UkVHVFlQRSkKKysjZGVmaW5lIFJFR19DKE4pICAgIFJFRygocmVnKUNPTkNBVDIoYyxOKSwgTiwg Q1JYX0NfUkVHVFlQRSkKKyAKKyAgIFJFR19DKDApLCAgUkVHX0MoMSksCVJFR19DKDIpLCAgUkVH X0MoMyksCisgICBSRUdfQyg0KSwgIFJFR19DKDUpLAlSRUdfQyg2KSwgIFJFR19DKDcpLAorQEAg LTY0MCw3ICs2NDAsNyBAQAorICAgUkVHX0MoMTIpLCBSRUdfQygxMyksIFJFR19DKDE0KSwgUkVH X0MoMTUpLAorIAorIC8qIEJ1aWxkIGEgQ29wcm9jZXNzb3IgU3BlY2lhbCByZWdpc3RlciBjczxO Pi4gICovCistI2RlZmluZSBSRUdfQ1MoTikgICAgUkVHKENPTkNBVDIoY3MsTiksIE4sIENSWF9D U19SRUdUWVBFKQorKyNkZWZpbmUgUkVHX0NTKE4pICAgIFJFRygocmVnKUNPTkNBVDIoY3MsTiks IE4sIENSWF9DU19SRUdUWVBFKQorIAorICAgUkVHX0NTKDApLCAgUkVHX0NTKDEpLCAgUkVHX0NT KDIpLCAgUkVHX0NTKDMpLAorICAgUkVHX0NTKDQpLCAgUkVHX0NTKDUpLCAgUkVHX0NTKDYpLCAg UkVHX0NTKDcpLApkaWZmIC1OcnUgZGV2ZWwvZ2RiLm9yaWcvZmlsZXMvcGF0Y2gtb3Bjb2Rlcy1p Mzg2LWRpcy5jIGRldmVsL2dkYi9maWxlcy9wYXRjaC1vcGNvZGVzLWkzODYtZGlzLmMKLS0tIGRl dmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLW9wY29kZXMtaTM4Ni1kaXMuYwkyMDEyLTEyLTI0IDIz OjQxOjE5LjAwMDAwMDAwMCArMDEwMAorKysgZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLW9wY29kZXMt aTM4Ni1kaXMuYwkyMDEzLTAzLTA4IDE2OjAwOjE0LjAwMDAwMDAwMCArMDEwMApAQCAtNTYsMyAr NTYsNCBAQAogKyAgb2FwcGVuZCAoJiIlZXM6Ilsoc2hvcnQpaW50ZWxfc3ludGF4XSk7CiAgICBw dHJfcmVnIChjb2RlLCBzaXplZmxhZyk7CiAgfQorIApkaWZmIC1OcnUgZGV2ZWwvZ2RiLm9yaWcv ZmlsZXMvcGF0Y2gtb3Bjb2Rlcy1pYTY0LWFzbXRhYi5jIGRldmVsL2dkYi9maWxlcy9wYXRjaC1v cGNvZGVzLWlhNjQtYXNtdGFiLmMKLS0tIGRldmVsL2dkYi5vcmlnL2ZpbGVzL3BhdGNoLW9wY29k ZXMtaWE2NC1hc210YWIuYwkxOTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMAorKysg ZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLW9wY29kZXMtaWE2NC1hc210YWIuYwkyMDEzLTAzLTA4IDE2 OjAwOjE0LjAwMDAwMDAwMCArMDEwMApAQCAtMCwwICsxLDM3IEBACistLS0gb3Bjb2Rlcy9pYTY0 LWFzbXRhYi5jLm9yaWcJMjAxMy0wMy0wNyAxMDo0MTo0OS4wMDAwMDAwMDAgKzAxMDAKKysrKyBv cGNvZGVzL2lhNjQtYXNtdGFiLmMJMjAxMy0wMy0wNyAxMDo0NTo0OS4wMDAwMDAwMDAgKzAxMDAK K0BAIC0xMDEsNyArMTAxLDcgQEAKKyAgIHsgIkNQVUlEIyIsIDcsIDAsIDUsIC0xLCBOVUxMLCB9 LAorICAgeyAiQ1JbQ01DVl0iLCAyOCwgMCwgMywgNzQsIE5VTEwsIH0sCisgICB7ICJDUltEQ1Jd IiwgMjgsIDAsIDMsIDAsIE5VTEwsIH0sCistICB7ICJDUltFT0ldIiwgMjgsIDAsIDcsIDY3LCAi U0MgU2VjdGlvbiA1LjguMy40LCBcIkVuZCBvZiBFeHRlcm5hbCBJbnRlcnJ1cHQgUmVnaXN0ZXIg KEVPSSDQIENSNjcpXCIgb24gcGFnZSAyOjExOSIsIH0sCisrICB7ICJDUltFT0ldIiwgMjgsIDAs IDcsIDY3LCAiU0MgU2VjdGlvbiA1LjguMy40LCBcIkVuZCBvZiBFeHRlcm5hbCBJbnRlcnJ1cHQg UmVnaXN0ZXIgKEVPSSBDUjY3KVwiIG9uIHBhZ2UgMjoxMTkiLCB9LAorICAgeyAiQ1JbR1BUQV0i LCAyOCwgMCwgMywgOSwgTlVMTCwgfSwKKyAgIHsgIkNSW0lGQV0iLCAyOCwgMCwgMSwgMjAsIE5V TEwsIH0sCisgICB7ICJDUltJRkFdIiwgMjgsIDAsIDMsIDIwLCBOVUxMLCB9LAorQEAgLTEyMywx MyArMTIzLDEzIEBACisgICB7ICJDUltJVE1dIiwgMjgsIDAsIDMsIDEsIE5VTEwsIH0sCisgICB7 ICJDUltJVFZdIiwgMjgsIDAsIDMsIDcyLCBOVUxMLCB9LAorICAgeyAiQ1JbSVZBXSIsIDI4LCAw LCA0LCAyLCBOVUxMLCB9LAorLSAgeyAiQ1JbSVZSXSIsIDI4LCAwLCA3LCA2NSwgIlNDIFNlY3Rp b24gNS44LjMuMiwgXCJFeHRlcm5hbCBJbnRlcnJ1cHQgVmVjdG9yIFJlZ2lzdGVyIChJVlIg0CBD UjY1KVwiIG9uIHBhZ2UgMjoxMTgiLCB9LAorLSAgeyAiQ1JbTElEXSIsIDI4LCAwLCA3LCA2NCwg IlNDIFNlY3Rpb24gNS44LjMuMSwgXCJMb2NhbCBJRCAoTElEINAgQ1I2NClcIiBvbiBwYWdlIDI6 MTE3IiwgfSwKKysgIHsgIkNSW0lWUl0iLCAyOCwgMCwgNywgNjUsICJTQyBTZWN0aW9uIDUuOC4z LjIsIFwiRXh0ZXJuYWwgSW50ZXJydXB0IFZlY3RvciBSZWdpc3RlciAoSVZSICBDUjY1KVwiIG9u IHBhZ2UgMjoxMTgiLCB9LAorKyAgeyAiQ1JbTElEXSIsIDI4LCAwLCA3LCA2NCwgIlNDIFNlY3Rp b24gNS44LjMuMSwgXCJMb2NhbCBJRCAoTElEICBDUjY0KVwiIG9uIHBhZ2UgMjoxMTciLCB9LAor ICAgeyAiQ1JbTFJSJV0sICUgaW4gMCAtIDEiLCAxMCwgMCwgMywgLTEsIE5VTEwsIH0sCisgICB7 ICJDUltQTVZdIiwgMjgsIDAsIDMsIDczLCBOVUxMLCB9LAorICAgeyAiQ1JbUFRBXSIsIDI4LCAw LCAzLCA4LCBOVUxMLCB9LAorICAgeyAiQ1JbVFBSXSIsIDI4LCAwLCAzLCA2NiwgTlVMTCwgfSwK Ky0gIHsgIkNSW1RQUl0iLCAyOCwgMCwgNywgNjYsICJTQyBTZWN0aW9uIDUuOC4zLjMsIFwiVGFz ayBQcmlvcml0eSBSZWdpc3RlciAoVFBSINAgQ1I2NilcIiBvbiBwYWdlIDI6MTE5IiwgfSwKKysg IHsgIkNSW1RQUl0iLCAyOCwgMCwgNywgNjYsICJTQyBTZWN0aW9uIDUuOC4zLjMsIFwiVGFzayBQ cmlvcml0eSBSZWdpc3RlciAoVFBSICBDUjY2KVwiIG9uIHBhZ2UgMjoxMTkiLCB9LAorICAgeyAi Q1JbVFBSXSIsIDI4LCAwLCAxLCA2NiwgTlVMTCwgfSwKKyAgIHsgIkNSJSwgJSBpbiAzLTcsIDEw LTE1LCAxOCwgMjgtNjMsIDc1LTc5LCA4Mi0xMjciLCAxMSwgMCwgMCwgLTEsIE5VTEwsIH0sCisg ICB7ICJEQlIjIiwgMTIsIDAsIDIsIC0xLCBOVUxMLCB9LAorQEAgLTMwMyw3ICszMDMsNyBAQAor ICAgeyAiQ1BVSUQjIiwgNywgMSwgMCwgLTEsIE5VTEwsIH0sCisgICB7ICJDUltDTUNWXSIsIDI4 LCAxLCAyLCA3NCwgTlVMTCwgfSwKKyAgIHsgIkNSW0RDUl0iLCAyOCwgMSwgMiwgMCwgTlVMTCwg fSwKKy0gIHsgIkNSW0VPSV0iLCAyOCwgMSwgNywgNjcsICJTQyBTZWN0aW9uIDUuOC4zLjQsIFwi RW5kIG9mIEV4dGVybmFsIEludGVycnVwdCBSZWdpc3RlciAoRU9JINAgQ1I2NylcIiBvbiBwYWdl IDI6MTE5IiwgfSwKKysgIHsgIkNSW0VPSV0iLCAyOCwgMSwgNywgNjcsICJTQyBTZWN0aW9uIDUu OC4zLjQsIFwiRW5kIG9mIEV4dGVybmFsIEludGVycnVwdCBSZWdpc3RlciAoRU9JICBDUjY3KVwi IG9uIHBhZ2UgMjoxMTkiLCB9LAorICAgeyAiQ1JbR1BUQV0iLCAyOCwgMSwgMiwgOSwgTlVMTCwg fSwKKyAgIHsgIkNSW0lGQV0iLCAyOCwgMSwgMiwgMjAsIE5VTEwsIH0sCisgICB7ICJDUltJRlNd IiwgMjgsIDEsIDIsIDIzLCBOVUxMLCB9LApkaWZmIC1OcnUgZGV2ZWwvZ2RiLm9yaWcvZmlsZXMv cGF0Y2gtb3Bjb2Rlcy10aWM1NHgtZGlzLmMgZGV2ZWwvZ2RiL2ZpbGVzL3BhdGNoLW9wY29kZXMt dGljNTR4LWRpcy5jCi0tLSBkZXZlbC9nZGIub3JpZy9maWxlcy9wYXRjaC1vcGNvZGVzLXRpYzU0 eC1kaXMuYwkxOTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMAorKysgZGV2ZWwvZ2Ri L2ZpbGVzL3BhdGNoLW9wY29kZXMtdGljNTR4LWRpcy5jCTIwMTMtMDMtMDggMTY6MDA6MTQuMDAw MDAwMDAwICswMTAwCkBAIC0wLDAgKzEsMTA1IEBACistLS0gb3Bjb2Rlcy90aWM1NHgtZGlzLmMu b3JpZwkyMDEzLTAzLTA3IDEwOjQ2OjUyLjAwMDAwMDAwMCArMDEwMAorKysrIG9wY29kZXMvdGlj NTR4LWRpcy5jCTIwMTMtMDMtMDcgMTI6MDU6MTkuMDAwMDAwMDAwICswMTAwCitAQCAtMTY4LDE0 ICsxNjgsOSBAQAorIH0KKyAKKyBpbnQKKy1wcmludF9pbnN0cnVjdGlvbiAoaW5mbywgbWVtYWRk ciwgb3Bjb2RlLCB0bV9uYW1lLCB0bV9vcGVyYW5kcywgc2l6ZSwgZXh0KQorLSAgZGlzYXNzZW1i bGVfaW5mbyAqaW5mbzsKKy0gIGJmZF92bWEgbWVtYWRkcjsKKy0gIHVuc2lnbmVkIHNob3J0IG9w Y29kZTsKKy0gIGNvbnN0IGNoYXIgKnRtX25hbWU7CistICBjb25zdCBlbnVtIG9wdHlwZSB0bV9v cGVyYW5kc1tdOworLSAgaW50IHNpemU7CistICBpbnQgZXh0OworK3ByaW50X2luc3RydWN0aW9u IChkaXNhc3NlbWJsZV9pbmZvICogaW5mbywgYmZkX3ZtYSBtZW1hZGRyLAorKyAgdW5zaWduZWQg c2hvcnQgb3Bjb2RlLCBjb25zdCBjaGFyICp0bV9uYW1lLAorKyAgY29uc3QgZW51bSBvcHR5cGUg dG1fb3BlcmFuZHNbXSwgaW50IHNpemUsIGludCBleHQpCisgeworICAgc3RhdGljIGludCBuOwor ICAgLyogc3RyaW5nIHN0b3JhZ2UgZm9yIG11bHRpcGxlIG9wZXJhbmRzICovCitAQCAtNDY4LDYg KzQ2Myw3IEBACisgICByZXR1cm4gMTsKKyB9CisgCisrLyoKKyBzdGF0aWMgaW50CisgcHJpbnRf cGFyYWxsZWxfaW5zdHJ1Y3Rpb24gKGluZm8sIG1lbWFkZHIsIG9wY29kZSwgcHRtLCBzaXplKQor ICAgZGlzYXNzZW1ibGVfaW5mbyAqaW5mbzsKK0BAIC00NzUsNiArNDcxLDExIEBACisgICB1bnNp Z25lZCBzaG9ydCBvcGNvZGU7CisgICBjb25zdCBpbnNuX3RlbXBsYXRlICpwdG07CisgICBpbnQg c2l6ZTsKKysqLworK3N0YXRpYyBpbnQKKytwcmludF9wYXJhbGxlbF9pbnN0cnVjdGlvbiAoZGlz YXNzZW1ibGVfaW5mbyAqaW5mbywKKysgIGJmZF92bWEgbWVtYWRkciwgdW5zaWduZWQgc2hvcnQg b3Bjb2RlLCAKKysgIGNvbnN0IGluc25fdGVtcGxhdGUgKiBwdG0sIGludCBzaXplKQorIHsKKyAg IHByaW50X2luc3RydWN0aW9uIChpbmZvLCBtZW1hZGRyLCBvcGNvZGUsCisgICAgICAgICAgICAg ICAgICAgICAgcHRtLT5uYW1lLCBwdG0tPm9wZXJhbmRfdHlwZXMsIHNpemUsIDApOworQEAgLTQ4 NCwxMCArNDg1LDggQEAKKyB9CisgCisgc3RhdGljIGludAorLXNwcmludF9kdWFsX2FkZHJlc3Mg KGluZm8sIGJ1ZiwgY29kZSkKKy0gIGRpc2Fzc2VtYmxlX2luZm8gKmluZm8gQVRUUklCVVRFX1VO VVNFRDsKKy0gIGNoYXIgYnVmW107CistICB1bnNpZ25lZCBzaG9ydCBjb2RlOworK3NwcmludF9k dWFsX2FkZHJlc3MgKCBkaXNhc3NlbWJsZV9pbmZvICppbmZvIEFUVFJJQlVURV9VTlVTRUQsCisr ICBjaGFyIGJ1ZltdLCB1bnNpZ25lZCBzaG9ydCBjb2RlKQorIHsKKyAgIGNvbnN0IGNoYXIgKmZv cm1hdHNbXSA9IHsKKyAgICAgIiphciVkIiwKK0BAIC00OTksMTAgKzQ5OCw4IEBACisgfQorIAor IHN0YXRpYyBpbnQKKy1zcHJpbnRfaW5kaXJlY3RfYWRkcmVzcyAoaW5mbywgYnVmLCBvcGNvZGUp CistICBkaXNhc3NlbWJsZV9pbmZvICppbmZvIEFUVFJJQlVURV9VTlVTRUQ7CistICBjaGFyIGJ1 ZltdOworLSAgdW5zaWduZWQgc2hvcnQgb3Bjb2RlOworK3NwcmludF9pbmRpcmVjdF9hZGRyZXNz IChkaXNhc3NlbWJsZV9pbmZvICogaW5mbyBBVFRSSUJVVEVfVU5VU0VELAorKyAgY2hhciBidWZb XSwgdW5zaWduZWQgc2hvcnQgb3Bjb2RlKQorIHsKKyAgIGNvbnN0IGNoYXIgKmZvcm1hdHNbXSA9 IHsKKyAgICAgIiphciVkIiwKK0BAIC01MjIsMTAgKzUxOSw4IEBACisgfQorIAorIHN0YXRpYyBp bnQKKy1zcHJpbnRfZGlyZWN0X2FkZHJlc3MgKGluZm8sIGJ1Ziwgb3Bjb2RlKQorLSAgZGlzYXNz ZW1ibGVfaW5mbyAqaW5mbyBBVFRSSUJVVEVfVU5VU0VEOworLSAgY2hhciBidWZbXTsKKy0gIHVu c2lnbmVkIHNob3J0IG9wY29kZTsKKytzcHJpbnRfZGlyZWN0X2FkZHJlc3MgKCBkaXNhc3NlbWJs ZV9pbmZvICppbmZvIEFUVFJJQlVURV9VTlVTRUQsCisrICBjaGFyIGJ1ZltdLCB1bnNpZ25lZCBz aG9ydCBvcGNvZGUpCisgeworICAgLyogRklYTUUgLS0gbG9vayB1cCByZWxvY2F0aW9uIGlmIGF2 YWlsYWJsZSAqLworICAgcmV0dXJuIHNwcmludGYgKGJ1ZiwgIkRQKzB4JTAyeCIsIChpbnQpIChv cGNvZGUgJiAweDdGKSk7CitAQCAtNTUyLDEwICs1NDcsOCBAQAorIH0KKyAKKyBzdGF0aWMgaW50 Cistc3ByaW50X2NjMiAoaW5mbywgYnVmLCBvcGNvZGUpCistICBkaXNhc3NlbWJsZV9pbmZvICpp bmZvIEFUVFJJQlVURV9VTlVTRUQ7CistICBjaGFyICpidWY7CistICB1bnNpZ25lZCBzaG9ydCBv cGNvZGU7Cisrc3ByaW50X2NjMiAoZGlzYXNzZW1ibGVfaW5mbyAqaW5mbyBBVFRSSUJVVEVfVU5V U0VELAorKyAgY2hhciAqYnVmLCB1bnNpZ25lZCBzaG9ydCBvcGNvZGUpCisgeworICAgY29uc3Qg Y2hhciAqY2MyW10gPSB7CisgICAgICI/PyIsICI/PyIsICJhZ2VxIiwgImFsdCIsICJhbmVxIiwg ImFlcSIsICJhZ3QiLCAiYWxlcSIsCitAQCAtNTY1LDEwICs1NTgsOCBAQAorIH0KKyAKKyBzdGF0 aWMgaW50Cistc3ByaW50X2NvbmRpdGlvbiAoaW5mbywgYnVmLCBvcGNvZGUpCistICBkaXNhc3Nl bWJsZV9pbmZvICppbmZvIEFUVFJJQlVURV9VTlVTRUQ7CistICBjaGFyICpidWY7CistICB1bnNp Z25lZCBzaG9ydCBvcGNvZGU7Cisrc3ByaW50X2NvbmRpdGlvbiAoZGlzYXNzZW1ibGVfaW5mbyAq aW5mbyBBVFRSSUJVVEVfVU5VU0VELAorKyAgY2hhciAqYnVmLCB1bnNpZ25lZCBzaG9ydCBvcGNv ZGUpCisgeworICAgY2hhciAqc3RhcnQgPSBidWY7CisgICBjb25zdCBjaGFyICpjbXBbXSA9IHsK ZGlmZiAtTnJ1IGRldmVsL2dkYi5vcmlnL3BrZy1wbGlzdCBkZXZlbC9nZGIvcGtnLXBsaXN0Ci0t LSBkZXZlbC9nZGIub3JpZy9wa2ctcGxpc3QJMjAxMi0wOC0yNCAwNDo1NDo1MC4wMDAwMDAwMDAg KzAyMDAKKysrIGRldmVsL2dkYi9wa2ctcGxpc3QJMjAxMy0wMy0wOCAxNjowMDo0NC4wMDAwMDAw MDAgKzAxMDAKQEAgLTEsNiArMSw2IEBACiAlJUdEQl9MSU5LJSViaW4vZ2RiCiBiaW4vZ2RiJSVW RVIlJQotYmluL2dkYnR1aSUlVkVSJSUKKyUlVFVJX0xJTkslJWJpbi9nZGJ0dWklJVZFUiUlCiAl JVBZVEhPTiUlc2hhcmUvZ2RiJSVWRVIlJS9weXRob24vZ2RiL19faW5pdF9fLnB5CiAlJVBZVEhP TiUlc2hhcmUvZ2RiJSVWRVIlJS9weXRob24vZ2RiL3R5cGVzLnB5CiAlJVBZVEhPTiUlc2hhcmUv Z2RiJSVWRVIlJS9weXRob24vZ2RiL3ByaW50aW5nLnB5Cg== --485b397dd0dbd9aa4404d7a24c0f--