From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29702 invoked by alias); 11 May 2014 11:16:49 -0000 Mailing-List: contact java-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-patches-owner@gcc.gnu.org Received: (qmail 29670 invoked by uid 89); 11 May 2014 11:16:47 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.0 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 X-Spam-User: qpsmtpd, 2 recipients X-HELO: dub0-omc3-s24.dub0.hotmail.com Received: from dub0-omc3-s24.dub0.hotmail.com (HELO dub0-omc3-s24.dub0.hotmail.com) (157.55.2.33) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sun, 11 May 2014 11:16:46 +0000 Received: from DUB118-W36 ([157.55.2.8]) by dub0-omc3-s24.dub0.hotmail.com with Microsoft SMTPSVC(6.0.3790.4675); Sun, 11 May 2014 04:16:43 -0700 X-TMN: [O4kYif19BlNnWk9S8gjW2HmrxLb9q2Xe] Message-ID: Content-Type: multipart/mixed; boundary="_316d96ea-6597-420b-89b4-d322df954342_" From: Bernd Edlinger To: "gcc-patches@gcc.gnu.org" , "java-patches@gcc.gnu.org" CC: Kai Tietz , Rainer Orth Subject: [PATCH] Enable Java on Cygwin-64 Date: Sun, 11 May 2014 11:16:00 -0000 MIME-Version: 1.0 X-SW-Source: 2014-q2/txt/msg00017.txt.bz2 --_316d96ea-6597-420b-89b4-d322df954342_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-length: 400 Hi, currently it is not possible to build GCC's libjava support on Cygwin-64. The attached patch fixes the current build-problems and the most fundamental bugs on that platform. Note you must still add --enable-threads=3Dposix to successfully build the java language support. Boot-Strapped on Cygwin-32 and Cygwin-64. OK for trunk and 4.9.1? Thanks Bernd. =20=09=09=20=09=20=20=20=09=09=20=20= --_316d96ea-6597-420b-89b4-d322df954342_ Content-Type: text/plain Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="changelog-cygwin64.txt" Content-length: 2054 Ym9laG0tZ2MvQ2hhbmdlTG9nOgoKMjAxNC0wNS0xMSAgQmVybmQgRWRsaW5n ZXIgIDxiZXJuZC5lZGxpbmdlckBob3RtYWlsLmRlPgoKCUZpeCBjdXJyZW50 IGN5Z3dpbi02NCBidWlsZCBwcm9ibGVtcy4KCSogaW5jbHVkZS9nY19jb25m aWdfbWFjcm9zLmggKEdDX1BUSFJFQURTKTogVXNlIF9fQ1lHV0lOX18gaW5z dGVhZAoJb2YgX19DWUdXSU4zMl9fIGhlcmUuCgkqIHdpbjMyX3RocmVhZHMu YyAoR0NfcHVzaF9hbGxfc3RhY2tzKTogUHVzaCBhbGwgWDg2XzY0IHJlZ2lz dGVycy4KCShHQ19nZXRfdGhyZWFkX3N0YWNrX2Jhc2UpOiBHZXQgdGhlIHN0 YWNrIGJhc2UgZm9yIFg4Nl82NC4KCmxpYmZmaS9DaGFuZ2VMb2c6CgoyMDE0 LTA1LTExICBCZXJuZCBFZGxpbmdlciAgPGJlcm5kLmVkbGluZ2VyQGhvdG1h aWwuZGU+CgoJRml4IGN1cnJlbnQgY3lnd2luLTY0IGJ1aWxkIHByb2JsZW1z LgoJKiBzcmMvamF2YV9yYXdfYXBpLmM6IFJlbW92ZSBpZiAhZGVmaW5lZChG RklfTk9fUkFXX0FQSSkuCgkqIHNyYy94ODYvZmZpLmM6IEFkZCBpZiBkZWZp bmVkKF9fQ1lHV0lOX18pLgoJKiBzcmMveDg2L3dpbjY0LlMgKGZmaV9jbG9z dXJlX3dpbjY0LCBmZmlfY2FsbF93aW42NCk6IEFkZGVkCgloYW5kbGluZyBm b3IgRkZJX1RZUEVfVUlOVDY0LCBGRklfVFlQRV9QT0lOVEVSIGFuZCBGRklf VFlQRV9JTlQuCglBZGRlZCBTRUggaW5mb3JtYXRpb24uICBGaXhlZCBmb3Jt YXR0aW5nLgoKCmxpYmdjYy9DaGFuZ2VMb2c6CgoyMDE0LTA1LTExICBCZXJu ZCBFZGxpbmdlciAgPGJlcm5kLmVkbGluZ2VyQGhvdG1haWwuZGU+CgoJKiB1 bndpbmQtc2VoLmMgKF9VbndpbmRfQmFja3RyYWNlKTogVW5jb21tZW50ZWQs IGZpbmlzaGVkCglpbXBsZW1lbnRhdGlvbi4KCmxpYmphdmEvQ2hhbmdlTG9n OgoKMjAxNC0wNS0xMSAgQmVybmQgRWRsaW5nZXIgIDxiZXJuZC5lZGxpbmdl ckBob3RtYWlsLmRlPgoKCUZpeCBjdXJyZW50IGN5Z3dpbi02NCBidWlsZCBw cm9ibGVtcy4KCSogY29uZmlndXJlLmhvc3Q6IEFkZGVkIGhhbmRsaW5nIGZv ciB4ODZfNjQtKi1jeWd3aW4vbWluZ3cuCQoJKiBib2VobS5jYyAoX0p2X0dD QXR0YWNoVGhyZWFkLCBfSnZfR0NEZXRhY2hUaHJlYWQpOiBEb24ndCBjb21w aWxlIGlmCglHQ19XSU4zMl9USFJFQURTIGlzIGRlZmluZWQuCgkqIGphdmEv bGFuZy9uYXRDbGFzcy5jYyAoX0p2X0ludGVyZmFjZUFzc2lnbmFibGVGcm9t KTogUmVuYW1lIGludGVyZmFjZQoJdG8gc291cmNlX2ludGVyZmFjZS4KCmxp YmphdmEvY2xhc3NwYXRoL0NoYW5nZUxvZzoKCjIwMTQtMDUtMTEgIEJlcm5k IEVkbGluZ2VyICA8YmVybmQuZWRsaW5nZXJAaG90bWFpbC5kZT4KCglGaXgg Y3VycmVudCBjeWd3aW4tNjQgYnVpbGQgcHJvYmxlbXMuCgkqIG5hdGl2ZS9m ZGxpYm0vbXByZWMuYyAoX1JFRU5UX0NIRUNLX01QLCBfUkVFTlRfTVBfRlJF RUxJU1QsCglfUkVFTlRfTVBfUDVTLCBfX1VMb25nLCBfX0xvbmcpOiBVbmRl ZmluZSBwcmV2aW91cyBkZWZpbml0aW9ucy4KCg== --_316d96ea-6597-420b-89b4-d322df954342_ Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="patch-cygwin64.diff" Content-length: 22497 ZGlmZiAtcHVyIGJvZWhtLWdjL2luY2x1ZGUvZ2NfY29uZmlnX21hY3Jvcy5o IGJvZWhtLWdjL2luY2x1ZGUvZ2NfY29uZmlnX21hY3Jvcy5oCi0tLSBib2Vo bS1nYy9pbmNsdWRlL2djX2NvbmZpZ19tYWNyb3MuaAkyMDEyLTExLTA0IDIz OjU2OjAyLjAwMDAwMDAwMCArMDEwMAorKysgYm9laG0tZ2MvaW5jbHVkZS9n Y19jb25maWdfbWFjcm9zLmgJMjAxNC0wNS0wNSAxNTo0ODo1MC40MzA2NjQw MDAgKzAyMDAKQEAgLTIzLDcgKzIzLDcgQEAKIAlkZWZpbmVkKEdDX0hQVVhf VEhSRUFEUykgfHwgZGVmaW5lZChHQ19PU0YxX1RIUkVBRFMpIHx8IFwKIAlk ZWZpbmVkKEdDX0RHVVgzODZfVEhSRUFEUykgfHwgZGVmaW5lZChHQ19EQVJX SU5fVEhSRUFEUykgfHwgXAogCWRlZmluZWQoR0NfQUlYX1RIUkVBRFMpIHx8 IFwKLSAgICAgICAgKGRlZmluZWQoR0NfV0lOMzJfVEhSRUFEUykgJiYgZGVm aW5lZChfX0NZR1dJTjMyX18pKQorICAgICAgICAoZGVmaW5lZChHQ19XSU4z Ml9USFJFQURTKSAmJiBkZWZpbmVkKF9fQ1lHV0lOX18pKQogIyAgIGRlZmlu ZSBHQ19QVEhSRUFEUwogIyBlbmRpZgogCmRpZmYgLXB1ciBib2VobS1nYy93 aW4zMl90aHJlYWRzLmMgYm9laG0tZ2Mvd2luMzJfdGhyZWFkcy5jCi0tLSBi b2VobS1nYy93aW4zMl90aHJlYWRzLmMJMjAwOS0wNS0xNyAyMjowNzoxOC4w MDAwMDAwMDAgKzAyMDAKKysrIGJvZWhtLWdjL3dpbjMyX3RocmVhZHMuYwky MDE0LTA1LTA1IDE1OjUxOjM0LjI5MDAzOTAwMCArMDIwMApAQCAtMzY1LDcg KzM2NSwxMSBAQCB2b2lkIEdDX3B1c2hfYWxsX3N0YWNrcygpCiAjICAgICAg IGRlZmluZSBQVVNIMShyZWcpIEdDX3B1c2hfb25lKCh3b3JkKWNvbnRleHQu cmVnKQogIyAgICAgICBkZWZpbmUgUFVTSDIocjEscjIpIFBVU0gxKHIxKSwg UFVTSDEocjIpCiAjICAgICAgIGRlZmluZSBQVVNINChyMSxyMixyMyxyNCkg UFVTSDIocjEscjIpLCBQVVNIMihyMyxyNCkKLSMgICAgICAgaWYgZGVmaW5l ZChJMzg2KQorIyAgICAgICBpZiBkZWZpbmVkKF9feDg2XzY0X18pIAorICAg ICAgICAgIFBVU0g0KFJkaSxSc2ksUmJ4LFJkeCksIFBVU0gyKFJjeCxSYXgp LCBQVVNIMShSYnApOworICAgICAgICAgIFBVU0g0KFI4LFI5LFIxMCxSMTEp LCBQVVNINChSMTIsUjEzLFIxNCxSMTUpOworICAgICAgICAgIHNwID0gKHB0 cl90KWNvbnRleHQuUnNwOworIyAgICAgICBlbGlmIGRlZmluZWQoSTM4NikK ICAgICAgICAgICBQVVNINChFZGksRXNpLEVieCxFZHgpLCBQVVNIMihFY3gs RWF4KSwgUFVTSDEoRWJwKTsKIAkgIHNwID0gKHB0cl90KWNvbnRleHQuRXNw OwogIyAgICAgICBlbGlmIGRlZmluZWQoQVJNMzIpCkBAIC03NTUsOCArNzU5 LDEyIEBAIGludCBHQ19wdGhyZWFkX2RldGFjaChwdGhyZWFkX3QgdGhyZWFk KQogCiBHQ19QVFIgR0NfZ2V0X3RocmVhZF9zdGFja19iYXNlKCkKIHsKKyNp ZmRlZiBfX3g4Nl82NF9fCisgIHJldHVybiAoKE5UX1RJQiopTnRDdXJyZW50 VGViKCkpLT5TdGFja0Jhc2U7CisjZWxzZQogICBleHRlcm4gR0NfUFRSIF90 bHNiYXNlIF9fYXNtX18gKCIlZnM6NCIpOwogICByZXR1cm4gX3Rsc2Jhc2U7 CisjZW5kaWYKIH0KIAogI2Vsc2UgLyogIUNZR1dJTjMyICovCmRpZmYgLXB1 ciBsaWJmZmkvc3JjL2phdmFfcmF3X2FwaS5jIGxpYmZmaS9zcmMvamF2YV9y YXdfYXBpLmMKLS0tIGxpYmZmaS9zcmMvamF2YV9yYXdfYXBpLmMJMjAxMi0w My0wNCAyMjoxMTowOS4wMDAwMDAwMDAgKzAxMDAKKysrIGxpYmZmaS9zcmMv amF2YV9yYXdfYXBpLmMJMjAxNC0wNS0wNSAxNTo0ODo1MC42ODA2NjQwMDAg KzAyMDAKQEAgLTM5LDcgKzM5LDcgQEAKICNpbmNsdWRlIDxmZmlfY29tbW9u Lmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CiAKLSNpZiAhZGVmaW5lZChOT19K QVZBX1JBV19BUEkpICYmICFkZWZpbmVkKEZGSV9OT19SQVdfQVBJKQorI2lm ICFkZWZpbmVkKE5PX0pBVkFfUkFXX0FQSSkKIAogc2l6ZV90CiBmZmlfamF2 YV9yYXdfc2l6ZSAoZmZpX2NpZiAqY2lmKQpAQCAtMzUzLDQgKzM1Myw0IEBA IGZmaV9wcmVwX2phdmFfcmF3X2Nsb3N1cmUgKGZmaV9qYXZhX3Jhd18KIAog I2VuZGlmIC8qIEZGSV9DTE9TVVJFUyAqLwogI2VuZGlmIC8qICFGRklfTkFU SVZFX1JBV19BUEkgKi8KLSNlbmRpZiAvKiAhRkZJX05PX1JBV19BUEkgKi8K KyNlbmRpZiAvKiAhTk9fSkFWQV9SQVdfQVBJICovCmRpZmYgLXB1ciBsaWJm Zmkvc3JjL3g4Ni9mZmkuYyBsaWJmZmkvc3JjL3g4Ni9mZmkuYwotLS0gbGli ZmZpL3NyYy94ODYvZmZpLmMJMjAxMi0xMi0yNiAxNzoyODowMi4wMDAwMDAw MDAgKzAxMDAKKysrIGxpYmZmaS9zcmMveDg2L2ZmaS5jCTIwMTQtMDUtMDUg MTU6NDg6NTAuNzExOTE0MDAwICswMjAwCkBAIC0yOCw3ICsyOCw3IEBACiAg ICBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuCiAgICAtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSAqLwogCi0jaWYgIWRlZmluZWQoX194ODZfNjRfXykg fHwgZGVmaW5lZChfV0lONjQpCisjaWYgIWRlZmluZWQoX194ODZfNjRfXykg fHwgZGVmaW5lZChfV0lONjQpIHx8IGRlZmluZWQoX19DWUdXSU5fXykKIAog I2lmZGVmIF9XSU42NAogI2luY2x1ZGUgPHdpbmRvd3MuaD4KZGlmZiAtcHVy IGxpYmZmaS9zcmMveDg2L3dpbjY0LlMgbGliZmZpL3NyYy94ODYvd2luNjQu UwotLS0gbGliZmZpL3NyYy94ODYvd2luNjQuUwkyMDEzLTAzLTIyIDEwOjM4 OjU1LjAwMDAwMDAwMCArMDEwMAorKysgbGliZmZpL3NyYy94ODYvd2luNjQu UwkyMDE0LTA1LTA5IDEyOjQ5OjE4Ljk0NjI4OTAwMCArMDIwMApAQCAtMSw4 ICsxLDggQEAKICNkZWZpbmUgTElCRkZJX0FTTQogI2luY2x1ZGUgPGZmaWNv bmZpZy5oPgogI2luY2x1ZGUgPGZmaS5oPgotCQotLyogQ29uc3RhbnRzIGZv ciBmZmlfY2FsbF93aW42NCAqLwkKKworLyogQ29uc3RhbnRzIGZvciBmZmlf Y2FsbF93aW42NCAqLwogI2RlZmluZSBTVEFDSyAwCiAjZGVmaW5lIFBSRVBf QVJHU19GTiAzMgogI2RlZmluZSBFQ0lGIDQwCkBAIC0xMiw4ICsxMiw4IEBA CiAjZGVmaW5lIEZOIDcyCiAKIC8qIGZmaV9jYWxsX3dpbjY0ICh2b2lkICgq cHJlcF9hcmdzX2ZuKShjaGFyICosIGV4dGVuZGVkX2NpZiAqKSwKLSAgICAg ICAgICAgICAgICAgICBleHRlbmRlZF9jaWYgKmVjaWYsIHVuc2lnbmVkIGJ5 dGVzLCB1bnNpZ25lZCBmbGFncywKLSAgICAgICAgICAgICAgICAgICB1bnNp Z25lZCAqcnZhbHVlLCB2b2lkICgqZm4pKCkpOworCQkgICBleHRlbmRlZF9j aWYgKmVjaWYsIHVuc2lnbmVkIGJ5dGVzLCB1bnNpZ25lZCBmbGFncywKKwkJ ICAgdW5zaWduZWQgKnJ2YWx1ZSwgdm9pZCAoKmZuKSgpKTsKICAqLwogCiAj aWZkZWYgX01TQ19WRVIKQEAgLTMxLDExICszMSwxMSBAQCBfVEVYVAlTRUdN RU5UCiA7OzsKIDs7OyBJdCBtdXN0IG1vdmUgdGhlIHBhcmFtZXRlcnMgcGFz c2VkIGluIHJlZ2lzdGVycyB0byB0aGVpciBzdGFjayBsb2NhdGlvbiwKIDs7 OyBjYWxsIGZmaV9jbG9zdXJlX3dpbjY0X2lubmVyIGZvciB0aGUgYWN0dWFs IHdvcmssIHRoZW4gcmV0dXJuIHRoZSByZXN1bHQuCi07OzsgCis7OzsKIGZm aV9jbG9zdXJlX3dpbjY0IFBST0MgRlJBTUUKIAk7OyBjb3B5IHJlZ2lzdGVy IGFyZ3VtZW50cyBvbnRvIHN0YWNrCiAJdGVzdAlyMTEsIDEKLQlqbmUJZmly c3RfaXNfZmxvYXQJCisJam5lCWZpcnN0X2lzX2Zsb2F0CiAJbW92CVFXT1JE IFBUUiBbcnNwKzhdLCByY3gKIAlqbXAJc2Vjb25kCiBmaXJzdF9pc19mbG9h dDoKQEAgLTQzLDcgKzQzLDcgQEAgZmlyc3RfaXNfZmxvYXQ6CiAKIHNlY29u ZDoKIAl0ZXN0CXIxMSwgMgotCWpuZQlzZWNvbmRfaXNfZmxvYXQJCisJam5l CXNlY29uZF9pc19mbG9hdAogCW1vdglRV09SRCBQVFIgW3JzcCsxNl0sIHJk eAogCWptcAl0aGlyZAogc2Vjb25kX2lzX2Zsb2F0OgpAQCAtNTEsNyArNTEs NyBAQCBzZWNvbmRfaXNfZmxvYXQ6CiAKIHRoaXJkOgogCXRlc3QJcjExLCA0 Ci0Jam5lCXRoaXJkX2lzX2Zsb2F0CQorCWpuZQl0aGlyZF9pc19mbG9hdAog CW1vdglRV09SRCBQVFIgW3JzcCsyNF0sIHI4CiAJam1wCWZvdXJ0aAogdGhp cmRfaXNfZmxvYXQ6CkBAIC01OSwxNiArNTksMTYgQEAgdGhpcmRfaXNfZmxv YXQ6CiAKIGZvdXJ0aDoKIAl0ZXN0CXIxMSwgOAotCWpuZQlmb3VydGhfaXNf ZmxvYXQJCisJam5lCWZvdXJ0aF9pc19mbG9hdAogCW1vdglRV09SRCBQVFIg W3JzcCszMl0sIHI5CiAJam1wCWRvbmUKIGZvdXJ0aF9pc19mbG9hdDoKIAlt b3ZscGQJUVdPUkQgUFRSIFtyc3ArMzJdLCB4bW0zCiAKIGRvbmU6Ci0gICAg ICAgIC5BTExPQ1NUQUNLIDQwCisJLkFMTE9DU1RBQ0sgNDAKIAlzdWIJcnNw LCA0MAotICAgICAgICAuRU5EUFJPTE9HCisJLkVORFBST0xPRwogCW1vdgly Y3gsIHJheAk7IGNvbnRleHQgaXMgZmlyc3QgcGFyYW1ldGVyCiAJbW92CXJk eCwgcnNwCTsgc3RhY2sgaXMgc2Vjb25kIHBhcmFtZXRlcgogCWFkZAlyZHgs IDQ4CQk7IHBvaW50IHRvIHN0YXJ0IG9mIGFyZ3VtZW50cwpAQCAtNzYsMjMg Kzc2LDIzIEBAIGRvbmU6CiAJY2FsbAlyYXgJCTsgY2FsbCB0aGUgcmVhbCBj bG9zdXJlIGZ1bmN0aW9uCiAJYWRkCXJzcCwgNDAKIAltb3ZkCXhtbTAsIHJh eAk7IElmIHRoZSBjbG9zdXJlIHJldHVybmVkIGEgZmxvYXQsCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDsgZmZpX2Nsb3N1cmVfd2luNjRf aW5uZXIgd3JvdGUgaXQgdG8gcmF4CisJCQkJOyBmZmlfY2xvc3VyZV93aW42 NF9pbm5lciB3cm90ZSBpdCB0byByYXgKIAlyZXQJMAogZmZpX2Nsb3N1cmVf d2luNjQgRU5EUAogCiBmZmlfY2FsbF93aW42NCBQUk9DIEZSQU1FCi0gICAg ICAgIDs7IGNvcHkgcmVnaXN0ZXJzIG9udG8gc3RhY2sKKwk7OyBjb3B5IHJl Z2lzdGVycyBvbnRvIHN0YWNrCiAJbW92CVFXT1JEIFBUUiBbcnNwKzMyXSwg cjkKIAltb3YJUVdPUkQgUFRSIFtyc3ArMjRdLCByOAogCW1vdglRV09SRCBQ VFIgW3JzcCsxNl0sIHJkeAogCW1vdglRV09SRCBQVFIgW3JzcCs4XSwgcmN4 Ci0gICAgICAgIC5QVVNIUkVHIHJicAorCS5QVVNIUkVHIHJicAogCXB1c2gJ cmJwCi0gICAgICAgIC5BTExPQ1NUQUNLIDQ4CisJLkFMTE9DU1RBQ0sgNDgK IAlzdWIJcnNwLCA0OAkJCQkJOyAwMDAwMDAzMEgKLSAgICAgICAgLlNFVEZS QU1FIHJicCwgMzIKKwkuU0VURlJBTUUgcmJwLCAzMgogCWxlYQlyYnAsIFFX T1JEIFBUUiBbcnNwKzMyXQotICAgICAgICAuRU5EUFJPTE9HCisJLkVORFBS T0xPRwogCiAJbW92CWVheCwgRFdPUkQgUFRSIENJRl9CWVRFU1tyYnBdCiAJ YWRkCXJheCwgMTUKQEAgLTIwOSwyMCArMjA5LDQ1IEBAIHJldF9mbG9hdCQ6 CiAKIHJldF9kb3VibGUkOgogIAljbXAJRFdPUkQgUFRSIENJRl9GTEFHU1ty YnBdLCBGRklfVFlQRV9ET1VCTEUKLSAJam5lCVNIT1JUIHJldF9zaW50NjQk CisgCWpuZQlTSE9SVCByZXRfdWludDY0JAogCiAgCW1vdglyYXgsIFFXT1JE IFBUUiBSVkFMVUVbcmJwXQogIAltb3ZscGQJUVdPUkQgUFRSIFtyYXhdLCB4 bW0wCiAgCWptcAlTSE9SVCByZXRfdm9pZCQKIAorcmV0X3VpbnQ2NCQ6Cisg IAljbXAJRFdPUkQgUFRSIENJRl9GTEFHU1tyYnBdLCBGRklfVFlQRV9VSU5U NjQKKyAgCWpuZQlTSE9SVCByZXRfc2ludDY0JAorCisgCW1vdglyY3gsIFFX T1JEIFBUUiBSVkFMVUVbcmJwXQorIAltb3YJUVdPUkQgUFRSIFtyY3hdLCBy YXgKKyAJam1wCVNIT1JUIHJldF92b2lkJAorCiByZXRfc2ludDY0JDoKICAg CWNtcAlEV09SRCBQVFIgQ0lGX0ZMQUdTW3JicF0sIEZGSV9UWVBFX1NJTlQ2 NAotICAJam5lCXJldF92b2lkJAorICAJam5lCVNIT1JUIHJldF9wb2ludGVy JAogCiAgCW1vdglyY3gsIFFXT1JEIFBUUiBSVkFMVUVbcmJwXQogIAltb3YJ UVdPUkQgUFRSIFtyY3hdLCByYXgKICAJam1wCVNIT1JUIHJldF92b2lkJAot CQorCityZXRfcG9pbnRlciQ6CisgIAljbXAJRFdPUkQgUFRSIENJRl9GTEFH U1tyYnBdLCBGRklfVFlQRV9QT0lOVEVSCisgIAlqbmUJU0hPUlQgcmV0X2lu dCQKKworIAltb3YJcmN4LCBRV09SRCBQVFIgUlZBTFVFW3JicF0KKyAJbW92 CVFXT1JEIFBUUiBbcmN4XSwgcmF4CisgCWptcAlTSE9SVCByZXRfdm9pZCQK KworcmV0X2ludCQ6CisgIAljbXAJRFdPUkQgUFRSIENJRl9GTEFHU1tyYnBd LCBGRklfVFlQRV9JTlQKKyAgCWpuZQlTSE9SVCByZXRfdm9pZCQKKworCW1v dglyY3gsIFFXT1JEIFBUUiBSVkFMVUVbcmJwXQorCWNkcWUKKwltb3YJUVdP UkQgUFRSIFtyY3hdLCByYXgKKyAJam1wCVNIT1JUIHJldF92b2lkJAorCiBy ZXRfdm9pZCQ6CiAJeG9yCXJheCwgcmF4CiAKQEAgLTI1MiwxMyArMjc3LDE0 IEBAIEVORAogIwogIyBJdCBtdXN0IG1vdmUgdGhlIHBhcmFtZXRlcnMgcGFz c2VkIGluIHJlZ2lzdGVycyB0byB0aGVpciBzdGFjayBsb2NhdGlvbiwKICMg Y2FsbCBmZmlfY2xvc3VyZV93aW42NF9pbm5lciBmb3IgdGhlIGFjdHVhbCB3 b3JrLCB0aGVuIHJldHVybiB0aGUgcmVzdWx0LgotIyAKKyMKIAkuYmFsaWdu IDE2Ci0gICAgICAgIC5nbG9ibCBTWU1CT0xfTkFNRShmZmlfY2xvc3VyZV93 aW42NCkKKwkuZ2xvYmwgU1lNQk9MX05BTUUoZmZpX2Nsb3N1cmVfd2luNjQp CisJLnNlaF9wcm9jIFNZTUJPTF9OQU1FKGZmaV9jbG9zdXJlX3dpbjY0KQog U1lNQk9MX05BTUUoZmZpX2Nsb3N1cmVfd2luNjQpOgogCSMgY29weSByZWdp c3RlciBhcmd1bWVudHMgb250byBzdGFjawogCXRlc3QJJDEsJXIxMQotCWpu ZQkuTGZpcnN0X2lzX2Zsb2F0CQorCWpuZQkuTGZpcnN0X2lzX2Zsb2F0CiAJ bW92CSVyY3gsIDgoJXJzcCkKIAlqbXAJLkxzZWNvbmQKIC5MZmlyc3RfaXNf ZmxvYXQ6CkBAIC0yNjYsNyArMjkyLDcgQEAgU1lNQk9MX05BTUUoZmZpX2Ns b3N1cmVfd2luNjQpOgogCiAuTHNlY29uZDoKIAl0ZXN0CSQyLCAlcjExCi0J am5lCS5Mc2Vjb25kX2lzX2Zsb2F0CQorCWpuZQkuTHNlY29uZF9pc19mbG9h dAogCW1vdgklcmR4LCAxNiglcnNwKQogCWptcAkuTHRoaXJkCiAuTHNlY29u ZF9pc19mbG9hdDoKQEAgLTI3NCw3ICszMDAsNyBAQCBTWU1CT0xfTkFNRShm ZmlfY2xvc3VyZV93aW42NCk6CiAKIC5MdGhpcmQ6CiAJdGVzdAkkNCwgJXIx MQotCWpuZQkuTHRoaXJkX2lzX2Zsb2F0CQorCWpuZQkuTHRoaXJkX2lzX2Zs b2F0CiAJbW92CSVyOCwyNCglcnNwKQogCWptcAkuTGZvdXJ0aAogLkx0aGly ZF9pc19mbG9hdDoKQEAgLTI4MiwxNiArMzA4LDE2IEBAIFNZTUJPTF9OQU1F KGZmaV9jbG9zdXJlX3dpbjY0KToKIAogLkxmb3VydGg6CiAJdGVzdAkkOCwg JXIxMQotCWpuZQkuTGZvdXJ0aF9pc19mbG9hdAkKKwlqbmUJLkxmb3VydGhf aXNfZmxvYXQKIAltb3YJJXI5LCAzMiglcnNwKQogCWptcAkuTGRvbmUKIC5M Zm91cnRoX2lzX2Zsb2F0OgogCW1vdmxwZAkleG1tMywgMzIoJXJzcCkKIAog Lkxkb25lOgotIy5BTExPQ1NUQUNLIDQwCisJLnNlaF9zdGFja2FsbG9jIDQw CiAJc3ViCSQ0MCwgJXJzcAotIy5FTkRQUk9MT0cKKwkuc2VoX2VuZHByb2xv Z3VlCiAJbW92CSVyYXgsICVyY3gJIyBjb250ZXh0IGlzIGZpcnN0IHBhcmFt ZXRlcgogCW1vdgklcnNwLCAlcmR4CSMgc3RhY2sgaXMgc2Vjb25kIHBhcmFt ZXRlcgogCWFkZAkkNDgsICVyZHgJIyBwb2ludCB0byBzdGFydCBvZiBhcmd1 bWVudHMKQEAgLTI5OSwyNSArMzI1LDI2IEBAIFNZTUJPTF9OQU1FKGZmaV9j bG9zdXJlX3dpbjY0KToKIAljYWxscQkqJXJheAkJIyBjYWxsIHRoZSByZWFs IGNsb3N1cmUgZnVuY3Rpb24KIAlhZGQJJDQwLCAlcnNwCiAJbW92cQklcmF4 LCAleG1tMAkjIElmIHRoZSBjbG9zdXJlIHJldHVybmVkIGEgZmxvYXQsCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgZmZpX2Nsb3N1cmVf d2luNjRfaW5uZXIgd3JvdGUgaXQgdG8gcmF4CisJCQkJIyBmZmlfY2xvc3Vy ZV93aW42NF9pbm5lciB3cm90ZSBpdCB0byByYXgKIAlyZXRxCi0uZmZpX2Ns b3N1cmVfd2luNjRfZW5kOgorCS5zZWhfZW5kcHJvYwogCiAJLmJhbGlnbiAx NgotICAgICAgICAuZ2xvYmwJU1lNQk9MX05BTUUoZmZpX2NhbGxfd2luNjQp CisJLmdsb2JsCVNZTUJPTF9OQU1FKGZmaV9jYWxsX3dpbjY0KQorCS5zZWhf cHJvYyBTWU1CT0xfTkFNRShmZmlfY2FsbF93aW42NCkKIFNZTUJPTF9OQU1F KGZmaV9jYWxsX3dpbjY0KToKLSAgICAgICAgIyBjb3B5IHJlZ2lzdGVycyBv bnRvIHN0YWNrCisJIyBjb3B5IHJlZ2lzdGVycyBvbnRvIHN0YWNrCiAJbW92 CSVyOSwzMiglcnNwKQogCW1vdgklcjgsMjQoJXJzcCkKIAltb3YJJXJkeCwx NiglcnNwKQogCW1vdgklcmN4LDgoJXJzcCkKLSAgICAgICAgIy5QVVNIUkVH IHJicAorCS5zZWhfcHVzaHJlZyByYnAKIAlwdXNoCSVyYnAKLSAgICAgICAg Iy5BTExPQ1NUQUNLIDQ4CisJLnNlaF9zdGFja2FsbG9jIDQ4CiAJc3ViCSQ0 OCwlcnNwCi0gICAgICAgICMuU0VURlJBTUUgcmJwLCAzMgorCS5zZWhfc2V0 ZnJhbWUgcmJwLCAzMgogCWxlYQkzMiglcnNwKSwlcmJwCi0gICAgICAgICMu RU5EUFJPTE9HCisJLnNlaF9lbmRwcm9sb2d1ZQogCiAJbW92CUNJRl9CWVRF UyglcmJwKSwlZWF4CiAJYWRkCSQxNSwgJXJheApAQCAtMzY2LDE1ICszOTMs MTUgQEAgTGNoX2RvbmU6CiAuTHJldF9zdHJ1Y3QyYjoKIAljbXBsCSRGRklf VFlQRV9TTUFMTF9TVFJVQ1RfMkIsIENJRl9GTEFHUyglcmJwKQogCWpuZSAu THJldF9zdHJ1Y3QxYgotCQorCiAJbW92CVJWQUxVRSglcmJwKSwgJXJjeAog CW1vdgklYXgsICglcmN4KQogCWptcCAuTHJldF92b2lkCi0JCisKIC5McmV0 X3N0cnVjdDFiOgogCWNtcGwJJEZGSV9UWVBFX1NNQUxMX1NUUlVDVF8xQiwg Q0lGX0ZMQUdTKCVyYnApCiAJam5lIC5McmV0X3VpbnQ4Ci0JCisKIAltb3YJ UlZBTFVFKCVyYnApLCAlcmN4CiAJbW92CSVhbCwgKCVyY3gpCiAJam1wIC5M cmV0X3ZvaWQKQEAgLTM4Miw0NSArNDA5LDQ1IEBAIExjaF9kb25lOgogLkxy ZXRfdWludDg6CiAJY21wbAkkRkZJX1RZUEVfVUlOVDgsIENJRl9GTEFHUygl cmJwKQogCWpuZSAuTHJldF9zaW50OAotCQotICAgICAgICBtb3YgICAgIFJW QUxVRSglcmJwKSwgJXJjeAotICAgICAgICBtb3Z6YnEgICVhbCwgJXJheAor CisJbW92ICAgICBSVkFMVUUoJXJicCksICVyY3gKKwltb3Z6YnEgICVhbCwg JXJheAogCW1vdnEgICAgJXJheCwgKCVyY3gpCiAJam1wIC5McmV0X3ZvaWQK IAogLkxyZXRfc2ludDg6CiAJY21wbAkkRkZJX1RZUEVfU0lOVDgsIENJRl9G TEFHUyglcmJwKQogCWpuZSAuTHJldF91aW50MTYKLQkKLSAgICAgICAgbW92 ICAgICBSVkFMVUUoJXJicCksICVyY3gKLSAgICAgICAgbW92c2JxICAlYWws ICVyYXgKKworCW1vdiAgICAgUlZBTFVFKCVyYnApLCAlcmN4CisJbW92c2Jx ICAlYWwsICVyYXgKIAltb3ZxICAgICVyYXgsICglcmN4KQogCWptcCAuTHJl dF92b2lkCiAKIC5McmV0X3VpbnQxNjoKIAljbXBsCSRGRklfVFlQRV9VSU5U MTYsIENJRl9GTEFHUyglcmJwKQogCWpuZSAuTHJldF9zaW50MTYKLQkKLSAg ICAgICAgbW92ICAgICBSVkFMVUUoJXJicCksICVyY3gKLSAgICAgICAgbW92 endxICAlYXgsICVyYXgKKworCW1vdiAgICAgUlZBTFVFKCVyYnApLCAlcmN4 CisJbW92endxICAlYXgsICVyYXgKIAltb3ZxICAgICVyYXgsICglcmN4KQog CWptcCAuTHJldF92b2lkCiAKIC5McmV0X3NpbnQxNjoKIAljbXBsCSRGRklf VFlQRV9TSU5UMTYsIENJRl9GTEFHUyglcmJwKQogCWpuZSAuTHJldF91aW50 MzIKLQkKLSAgICAgICAgbW92ICAgICBSVkFMVUUoJXJicCksICVyY3gKLSAg ICAgICAgbW92c3dxICAlYXgsICVyYXgKKworCW1vdiAgICAgUlZBTFVFKCVy YnApLCAlcmN4CisJbW92c3dxICAlYXgsICVyYXgKIAltb3ZxICAgICVyYXgs ICglcmN4KQogCWptcCAuTHJldF92b2lkCiAKIC5McmV0X3VpbnQzMjoKIAlj bXBsCSRGRklfVFlQRV9VSU5UMzIsIENJRl9GTEFHUyglcmJwKQogCWpuZSAu THJldF9zaW50MzIKLQkKLSAgICAgICAgbW92ICAgICBSVkFMVUUoJXJicCks ICVyY3gKLSAgICAgICAgbW92bCAgICAlZWF4LCAlZWF4CisKKwltb3YgICAg IFJWQUxVRSglcmJwKSwgJXJjeAorCW1vdmwgICAgJWVheCwgJWVheAogCW1v dnEgICAgJXJheCwgKCVyY3gpCiAJam1wIC5McmV0X3ZvaWQKIApAQCAtNDQz LDI2ICs0NzAsNTEgQEAgTGNoX2RvbmU6CiAKIC5McmV0X2RvdWJsZToKICAJ Y21wbAkkRkZJX1RZUEVfRE9VQkxFLCBDSUZfRkxBR1MoJXJicCkKLSAJam5l CS5McmV0X3NpbnQ2NAorIAlqbmUJLkxyZXRfdWludDY0CiAKICAJbW92CVJW QUxVRSglcmJwKSwgJXJheAogIAltb3ZscGQJJXhtbTAsICglcmF4KQogIAlq bXAJLkxyZXRfdm9pZAogCisuTHJldF91aW50NjQ6CisgIAljbXBsCSRGRklf VFlQRV9VSU5UNjQsIENJRl9GTEFHUyglcmJwKQorIAlqbmUJLkxyZXRfc2lu dDY0CisKKyAJbW92CVJWQUxVRSglcmJwKSwgJXJjeAorIAltb3YJJXJheCwg KCVyY3gpCisgCWptcAkuTHJldF92b2lkCisKIC5McmV0X3NpbnQ2NDoKICAg CWNtcGwJJEZGSV9UWVBFX1NJTlQ2NCwgQ0lGX0ZMQUdTKCVyYnApCi0gIAlq bmUJLkxyZXRfdm9pZAorICAJam5lCS5McmV0X3BvaW50ZXIKKworIAltb3YJ UlZBTFVFKCVyYnApLCAlcmN4CisgCW1vdgklcmF4LCAoJXJjeCkKKyAJam1w CS5McmV0X3ZvaWQKKworLkxyZXRfcG9pbnRlcjoKKyAgCWNtcGwJJEZGSV9U WVBFX1BPSU5URVIsIENJRl9GTEFHUyglcmJwKQorICAJam5lCS5McmV0X2lu dAogCiAgCW1vdglSVkFMVUUoJXJicCksICVyY3gKICAJbW92CSVyYXgsICgl cmN4KQogIAlqbXAJLkxyZXRfdm9pZAotCQorCisuTHJldF9pbnQ6CisgIAlj bXBsCSRGRklfVFlQRV9JTlQsIENJRl9GTEFHUyglcmJwKQorICAJam5lCS5M cmV0X3ZvaWQKKworCW1vdglSVkFMVUUoJXJicCksICVyY3gKKwljbHRxCisJ bW92cQklcmF4LCAoJXJjeCkKKwlqbXAJLkxyZXRfdm9pZAorCiAuTHJldF92 b2lkOgogCXhvcgklcmF4LCAlcmF4CiAKIAlsZWEJMTYoJXJicCksICVyc3AK IAlwb3AJJXJicAogCXJldHEKLS5mZmlfY2FsbF93aW42NF9lbmQ6CisJLnNl aF9lbmRwcm9jCiAjZW5kaWYgLyogIV9NU0NfVkVSICovCiAKZGlmZiAtcHVy IGxpYmdjYy91bndpbmQtc2VoLmMgbGliZ2NjL3Vud2luZC1zZWguYwotLS0g bGliZ2NjL3Vud2luZC1zZWguYwkyMDE0LTAyLTE4IDE4OjAyOjU0LjAwMDAw MDAwMCArMDEwMAorKysgbGliZ2NjL3Vud2luZC1zZWguYwkyMDE0LTA1LTA5 IDEwOjQ4OjU3LjU3MzI0MjEwMCArMDIwMApAQCAtNDMxLDQzICs0MzEsNDAg QEAgX1Vud2luZF9EZWxldGVFeGNlcHRpb24gKHN0cnVjdCBfVW53aW5kXwog LyogUGVyZm9ybSBzdGFjayBiYWNrdHJhY2UgdGhyb3VnaCB1bndpbmQgZGF0 YS4gICovCiAKIF9VbndpbmRfUmVhc29uX0NvZGUKLV9VbndpbmRfQmFja3Ry YWNlKF9VbndpbmRfVHJhY2VfRm4gdHJhY2UgQVRUUklCVVRFX1VOVVNFRCwK LQkJICB2b2lkICp0cmFjZV9hcmd1bWVudCBBVFRSSUJVVEVfVU5VU0VEKQor X1Vud2luZF9CYWNrdHJhY2UoX1Vud2luZF9UcmFjZV9GbiB0cmFjZSwKKwkJ ICB2b2lkICp0cmFjZV9hcmd1bWVudCkKIHsKLSNpZiAwCiAgIFVOV0lORF9I SVNUT1JZX1RBQkxFIG1zX2hpc3Rvcnk7CiAgIENPTlRFWFQgbXNfY29udGV4 dDsKICAgc3RydWN0IF9VbndpbmRfQ29udGV4dCBnY2NfY29udGV4dDsKKyAg RElTUEFUQ0hFUl9DT05URVhUIGRpc3BfY29udGV4dDsKIAogICBtZW1zZXQg KCZtc19oaXN0b3J5LCAwLCBzaXplb2YobXNfaGlzdG9yeSkpOwogICBtZW1z ZXQgKCZnY2NfY29udGV4dCwgMCwgc2l6ZW9mKGdjY19jb250ZXh0KSk7Cisg IG1lbXNldCAoJmRpc3BfY29udGV4dCwgMCwgc2l6ZW9mKGRpc3BfY29udGV4 dCkpOwogCiAgIG1zX2NvbnRleHQuQ29udGV4dEZsYWdzID0gQ09OVEVYVF9B TEw7CiAgIFJ0bENhcHR1cmVDb250ZXh0ICgmbXNfY29udGV4dCk7CiAKLSAg Z2NjX2NvbnRleHQuZGlzcC5Db250ZXh0UmVjb3JkID0gJm1zX2NvbnRleHQ7 Ci0gIGdjY19jb250ZXh0LmRpc3AuSGlzdG9yeVRhYmxlID0gJm1zX2hpc3Rv cnk7CisgIGdjY19jb250ZXh0LmRpc3AgPSAmZGlzcF9jb250ZXh0OworICBn Y2NfY29udGV4dC5kaXNwLT5Db250ZXh0UmVjb3JkID0gJm1zX2NvbnRleHQ7 CisgIGdjY19jb250ZXh0LmRpc3AtPkhpc3RvcnlUYWJsZSA9ICZtc19oaXN0 b3J5OwogCiAgIHdoaWxlICgxKQogICAgIHsKLSAgICAgIGdjY19jb250ZXh0 LmRpc3AuQ29udHJvbFBjID0gbXNfY29udGV4dC5SaXA7Ci0gICAgICBnY2Nf Y29udGV4dC5kaXNwLkZ1bmN0aW9uRW50cnkKLQk9IFJ0bExvb2t1cEZ1bmN0 aW9uRW50cnkgKG1zX2NvbnRleHQuUmlwLCAmZ2NjX2NvbnRleHQuZGlzcC5J bWFnZUJhc2UsCisgICAgICBnY2NfY29udGV4dC5kaXNwLT5Db250cm9sUGMg PSBtc19jb250ZXh0LlJpcDsKKyAgICAgIGdjY19jb250ZXh0LmRpc3AtPkZ1 bmN0aW9uRW50cnkKKwk9IFJ0bExvb2t1cEZ1bmN0aW9uRW50cnkgKG1zX2Nv bnRleHQuUmlwLCAmZ2NjX2NvbnRleHQuZGlzcC0+SW1hZ2VCYXNlLAogCQkJ CSAgJm1zX2hpc3RvcnkpOwogCi0gICAgICBpZiAoZ2NjX2NvbnRleHQuZGlz cC5GdW5jdGlvbkVudHJ5KQotCXsKLQkgIGdjY19jb250ZXh0LmRpc3AuTGFu Z3VhZ2VIYW5kbGVyCi0JICAgID0gUnRsVmlydHVhbFVud2luZCAoMCwgZ2Nj X2NvbnRleHQuZGlzcC5JbWFnZUJhc2UsIG1zX2NvbnRleHQuUmlwLAotCQkJ CWdjY19jb250ZXh0LmRpc3AuRnVuY3Rpb25FbnRyeSwgJm1zX2NvbnRleHQs Ci0JCQkJJmdjY19jb250ZXh0LmRpc3AuSGFuZGxlckRhdGEsCi0JCQkJJmdj Y19jb250ZXh0LmRpc3AuRXN0YWJsaXNoZXJGcmFtZSwgTlVMTCk7Ci0JfQot ICAgICAgZWxzZQotCXsKLQkgIG1zX2NvbnRleHQuUmlwID0gKihVTE9OR19Q VFIgKiltc19jb250ZXh0LlJzcDsKLQkgIG1zX2NvbnRleHQuUnNwICs9IDg7 Ci0JfQorICAgICAgaWYgKCFnY2NfY29udGV4dC5kaXNwLT5GdW5jdGlvbkVu dHJ5KQorCXJldHVybiBfVVJDX0VORF9PRl9TVEFDSzsKKworICAgICAgZ2Nj X2NvbnRleHQuZGlzcC0+TGFuZ3VhZ2VIYW5kbGVyCisJPSBSdGxWaXJ0dWFs VW53aW5kICgwLCBnY2NfY29udGV4dC5kaXNwLT5JbWFnZUJhc2UsIG1zX2Nv bnRleHQuUmlwLAorCQkJICAgIGdjY19jb250ZXh0LmRpc3AtPkZ1bmN0aW9u RW50cnksICZtc19jb250ZXh0LAorCQkJICAgICZnY2NfY29udGV4dC5kaXNw LT5IYW5kbGVyRGF0YSwKKwkJCSAgICAmZ2NjX2NvbnRleHQuZGlzcC0+RXN0 YWJsaXNoZXJGcmFtZSwgTlVMTCk7CiAKICAgICAgIC8qIENhbGwgdHJhY2Ug ZnVuY3Rpb24uICAqLwogICAgICAgaWYgKHRyYWNlICgmZ2NjX2NvbnRleHQs IHRyYWNlX2FyZ3VtZW50KSAhPSBfVVJDX05PX1JFQVNPTikKQEAgLTQ3Nyw4 ICs0NzQsNSBAQCBfVW53aW5kX0JhY2t0cmFjZShfVW53aW5kX1RyYWNlX0Zu IHRyYWNlCiAgICAgICBpZiAobXNfY29udGV4dC5SaXAgPT0gMCkKIAlyZXR1 cm4gX1VSQ19FTkRfT0ZfU1RBQ0s7CiAgICAgfQotI2Vsc2UKLSAgcmV0dXJu IF9VUkNfRU5EX09GX1NUQUNLOwotI2VuZGlmCiB9CiAjZW5kaWYgLyogX19T RUhfXyAgJiYgIWRlZmluZWQgKF9fVVNJTkdfU0pMSl9FWENFUFRJT05TX18p ICAqLwpkaWZmIC1wdXIgbGliamF2YS9ib2VobS5jYyBsaWJqYXZhL2JvZWht LmNjCi0tLSBsaWJqYXZhL2JvZWhtLmNjCTIwMDctMTAtMjIgMjM6MjQ6MzUu MDAwMDAwMDAwICswMjAwCisrKyBsaWJqYXZhL2JvZWhtLmNjCTIwMTQtMDUt MDUgMTU6NDg6NTAuNzc0NDE0MDAwICswMjAwCkBAIC03NDcsNyArNzQ3LDgg QEAgX0p2X0dDQXR0YWNoVGhyZWFkICgpCiAgIC8vIFRoZSByZWdpc3RyYXRp b24gaW50ZXJmYWNlIGlzIG9ubHkgZGVmaW5lZCBvbiBwb3NpeHkgc3lzdGVt cyBhbmQKICAgLy8gb25seSBhY3R1YWxseSB3b3JrcyBpZiBwdGhyZWFkX2dl dGF0dHJfbnAgaXMgZGVmaW5lZC4KICAgLy8gRklYTUU6IHVudGlsIGdjNyBp dCBpcyBzaW1wbGVyIHRvIGRpc2FibGUgdGhpcyBvbiBzb2xhcmlzLgotI2lm IGRlZmluZWQoSEFWRV9QVEhSRUFEX0dFVEFUVFJfTlApICYmICFkZWZpbmVk KEdDX1NPTEFSSVNfVEhSRUFEUykKKyNpZiBkZWZpbmVkKEhBVkVfUFRIUkVB RF9HRVRBVFRSX05QKSAmJiAhZGVmaW5lZChHQ19TT0xBUklTX1RIUkVBRFMp IFwKKyAgICAmJiAhZGVmaW5lZChHQ19XSU4zMl9USFJFQURTKQogICBHQ19y ZWdpc3Rlcl9teV90aHJlYWQgKCk7CiAjZW5kaWYKIH0KQEAgLTc1NSw3ICs3 NTYsOCBAQCBfSnZfR0NBdHRhY2hUaHJlYWQgKCkKIHZvaWQKIF9Kdl9HQ0Rl dGFjaFRocmVhZCAoKQogewotI2lmIGRlZmluZWQoSEFWRV9QVEhSRUFEX0dF VEFUVFJfTlApICYmICFkZWZpbmVkKEdDX1NPTEFSSVNfVEhSRUFEUykKKyNp ZiBkZWZpbmVkKEhBVkVfUFRIUkVBRF9HRVRBVFRSX05QKSAmJiAhZGVmaW5l ZChHQ19TT0xBUklTX1RIUkVBRFMpIFwKKyAgICAmJiAhZGVmaW5lZChHQ19X SU4zMl9USFJFQURTKQogICBHQ191bnJlZ2lzdGVyX215X3RocmVhZCAoKTsK ICNlbmRpZgogfQpkaWZmIC1wdXIgbGliamF2YS9jbGFzc3BhdGgvbmF0aXZl L2ZkbGlibS9tcHJlYy5jIGxpYmphdmEvY2xhc3NwYXRoL25hdGl2ZS9mZGxp Ym0vbXByZWMuYwotLS0gbGliamF2YS9jbGFzc3BhdGgvbmF0aXZlL2ZkbGli bS9tcHJlYy5jCTIwMDYtMDktMjUgMjA6Mjg6MTEuMDAwMDAwMDAwICswMjAw CisrKyBsaWJqYXZhL2NsYXNzcGF0aC9uYXRpdmUvZmRsaWJtL21wcmVjLmMJ MjAxNC0wNS0wNSAxNTo0ODo1MC44NTI1MzkwMDAgKzAyMDAKQEAgLTkzLDEy ICs5MywxNyBAQAogI2RlZmluZSBfcmVlbnQgX0p2X3JlZW50CiAjZGVmaW5l IF9CaWdpbnQgX0p2X0JpZ2ludAogCisjdW5kZWYgIF9SRUVOVF9DSEVDS19N UAogI2RlZmluZSBfUkVFTlRfQ0hFQ0tfTVAoeCkKKyN1bmRlZiAgX1JFRU5U X01QX0ZSRUVMSVNUCiAjZGVmaW5lIF9SRUVOVF9NUF9GUkVFTElTVCh4KSAo KHgpLT5fZnJlZWxpc3QpCisjdW5kZWYgIF9SRUVOVF9NUF9QNVMKICNkZWZp bmUgX1JFRU5UX01QX1A1Uyh4KSAoKHgpLT5fcDVzKQogCi10eXBlZGVmIHVu c2lnbmVkIGxvbmcgX19VTG9uZzsKLXR5cGVkZWYgbG9uZyBfX0xvbmc7Cisj dW5kZWYgIF9fVUxvbmcKKyNkZWZpbmUgX19VTG9uZyB1bnNpZ25lZCBsb25n CisjdW5kZWYgIF9fTG9uZworI2RlZmluZSBfX0xvbmcgbG9uZwogCiBzdGF0 aWMgdm9pZCAqCiBtcHJlY19jYWxsb2MgKHZvaWQgKmlnbm9yZSwgc2l6ZV90 IHgxLCBzaXplX3QgeDIpCmRpZmYgLXB1ciBsaWJqYXZhL2NvbmZpZ3VyZS5o b3N0IGxpYmphdmEvY29uZmlndXJlLmhvc3QKLS0tIGxpYmphdmEvY29uZmln dXJlLmhvc3QJMjAxMy0wNC0xNiAxMDo0OTo1MS4wMDAwMDAwMDAgKzAyMDAK KysrIGxpYmphdmEvY29uZmlndXJlLmhvc3QJMjAxNC0wNS0wOCAwODo0MTox Ni42Nzg3MTA5MDAgKzAyMDAKQEAgLTM2NSw2ICszNjUsMTMgQEAgRU9GCiBl c2FjCiAKIGNhc2UgIiR7aG9zdH0iIGluCisgIHg4Nl82NC0qLWN5Z3dpbiog fCB4ODZfNjQtKi1taW5ndyopCisJIyBXaW4zMiBETExzIGFyZSBsaW1pdGVk IHRvIDY0ayBleHBvcnRlZCBzeW1ib2xzIGVhY2guCisJZW5hYmxlX2xpYmdj al9zdWJsaWJzX2RlZmF1bHQ9eWVzCisJbGliZ2NqX3N1YmxpYl9sdGZsYWdz PSckKGx0X2hvc3RfZmxhZ3MpIFwKKwkgICAgLVdsLC11LF9aTjNvcmc0aWV0 ZjRqZ3NzMTBHU1NNYW5hZ2VyQzFFdiwtTC4uLC1sZ2NqLW5vbmNvcmUtZHVt bXknCisJbGliZ2NqX3N1YmxpYl9jb3JlX2V4dHJhX2RlcHM9bGliZ2NqLW5v bmNvcmUtZHVtbXkuZGxsLmEKKyAgOzsKICAgKi1jeWd3aW4qIHwgKi1taW5n dyopCiAJZmFsbGJhY2tfYmFja3RyYWNlX2g9c3lzZGVwL2kzODYvYmFja3Ry YWNlLmggIAogCSMgV2UgbmVlZCBhIGZyYW1lIHBvaW50ZXIgb24gV2luZG93 cywgc28gb3ZlcnJpZGUgQkFDS1RSQUNFU1BFQwpkaWZmIC1wdXIgbGliamF2 YS9qYXZhL2xhbmcvbmF0Q2xhc3MuY2MgbGliamF2YS9qYXZhL2xhbmcvbmF0 Q2xhc3MuY2MKLS0tIGxpYmphdmEvamF2YS9sYW5nL25hdENsYXNzLmNjCTIw MTEtMTItMTIgMTE6NDA6MjcuMDAwMDAwMDAwICswMTAwCisrKyBsaWJqYXZh L2phdmEvbGFuZy9uYXRDbGFzcy5jYwkyMDE0LTA1LTA1IDE1OjQ4OjUwLjkx NTAzOTAwMCArMDIwMApAQCAtMTg3MCw5ICsxODcwLDkgQEAgX0p2X0ludGVy ZmFjZUFzc2lnbmFibGVGcm9tIChqY2xhc3Mgc291cgogewogICBmb3IgKGlu dCBpID0gMDsgaSA8IHNvdXJjZS0+aW50ZXJmYWNlX2NvdW50OyBpKyspCiAg ICAgewotICAgICAgamNsYXNzIGludGVyZmFjZSA9IHNvdXJjZS0+aW50ZXJm YWNlc1tpXTsKLSAgICAgIGlmIChpZmFjZSA9PSBpbnRlcmZhY2UKLSAgICAg ICAgICB8fCBfSnZfSW50ZXJmYWNlQXNzaWduYWJsZUZyb20gKGludGVyZmFj ZSwgaWZhY2UpKQorICAgICAgamNsYXNzIHNvdXJjZV9pbnRlcmZhY2UgPSBz b3VyY2UtPmludGVyZmFjZXNbaV07CisgICAgICBpZiAoaWZhY2UgPT0gc291 cmNlX2ludGVyZmFjZQorICAgICAgICAgIHx8IF9Kdl9JbnRlcmZhY2VBc3Np Z25hYmxlRnJvbSAoc291cmNlX2ludGVyZmFjZSwgaWZhY2UpKQogICAgICAg ICByZXR1cm4gdHJ1ZTsgICAgICAKICAgICB9CiAgICAgCg== --_316d96ea-6597-420b-89b4-d322df954342_--