From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Jan Kratochvil To: git-commits@fedoraproject.org Subject: [rpms/gdb] gdb-17.2-rebase-f44: Fix GDB SIGTT* Stopped when using the PID argument (BZ 1136704, Pedro Alves). Date: Sat, 27 Jun 2026 23:56:48 GMT Message-ID: <178260460855.1.18075765759794072476.rpms-gdb-448d46bddf2c@fedoraproject.org> List-ID: X-Git-Repo: rpms/gdb X-Git-Branch: gdb-17.2-rebase-f44 X-Git-Rev: 448d46bddf2c0d6669209bb2699f2f09b2034e6c QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2RiCkJyYW5jaCA6 IGdkYi0xNy4yLXJlYmFzZS1mNDQKQ29tbWl0IDogNDQ4ZDQ2YmRkZjJjMGQ2NjY5MjA5YmIyNjk5 ZjJmMDliMjAzNGU2YwpBdXRob3IgOiBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxAcmVk aGF0LmNvbT4KRGF0ZSAgIDogMjAxNC0wOS0wN1QyMToyOToyNyswMjowMApTdGF0cyAgOiArNTc3 Ly0xIGluIDMgZmlsZShzKQpVUkwgICAgOiBodHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9y cG1zL2dkYi9jLzQ0OGQ0NmJkZGYyYzBkNjY2OTIwOWJiMjY5OWYyZjA5YjIwMzRlNmM/YnJhbmNo PWdkYi0xNy4yLXJlYmFzZS1mNDQKCkxvZzoKRml4IEdEQiBTSUdUVCogU3RvcHBlZCB3aGVuIHVz aW5nIHRoZSBQSUQgYXJndW1lbnQgKEJaIDExMzY3MDQsIFBlZHJvIEFsdmVzKS4KCi0tLQpkaWZm IC0tZ2l0IGEvZ2RiLWFzeW5jLXN0b3BwZWQtb24tcGlkLWFyZy0xb2YyLnBhdGNoIGIvZ2RiLWFz eW5jLXN0b3BwZWQtb24tcGlkLWFyZy0xb2YyLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAuLjVjMzEyZTMKLS0tIC9kZXYvbnVsbAorKysgYi9nZGItYXN5bmMtc3RvcHBl ZC1vbi1waWQtYXJnLTFvZjIucGF0Y2gKQEAgLTAsMCArMSwzNTAgQEAKK2h0dHA6Ly9zb3VyY2V3 YXJlLm9yZy9tbC9nZGItcGF0Y2hlcy8yMDE0LTA5L21zZzAwMTAyLmh0bWwKK1N1YmplY3Q6IFJl OiBSZWdyZXNzaW9uOiBHREIgc3RvcHBlZCBvbiBydW4gd2l0aCBhdHRhY2hlZCBwcm9jZXNzIChQ UiAxNzM0NykgIFtSZTogW3B1c2hlZCs3LjhdIFJlOiBbUEFUQ0hdIEZpeCAiYXR0YWNoIiBjb21t YW5kIHZzIHVzZXIgaW5wdXQgcmFjZQorCitPbiAwOS8wMy8yMDE0IDA4OjU4IEFNLCBKYW4gS3Jh dG9jaHZpbCB3cm90ZToKKworPiBodHRwczovL3NvdXJjZXdhcmUub3JnL2J1Z3ppbGxhL3Nob3df YnVnLmNnaT9pZD0xNzM0NworCitUaGFua3MgSmFuLgorCitIZXJlJ3MgYSBmaXgsIHRlc3QgaW5j bHVkZWQuICBDb21tZW50cz8KKworVGhhbmtzLAorUGVkcm8gQWx2ZXMKKworLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KK1tQQVRDSF0gZ2RiLzE3MzQ3IC0gUmVncmVzc2lvbjogR0RCIHN0b3Bw ZWQgb24gcnVuIHdpdGggYXR0YWNoZWQgcHJvY2VzcworCitEb2luZzoKKworICBnZGIgLS1waWQ9 UElEIC1leCBydW4KKworUmVzdWx0cyBpbiBHREIgZ2V0dGluZyBhIFNJR1RUSU4sIGFuZCB0aHVz IGVuZGluZyBzdG9wcGVkLiAgVGhhdCdzCit1c3VhbGx5IGluZGljYXRpdmUgb2YgYSBtaXNzaW5n IHRhcmdldF90ZXJtaW5hbF9vdXJzIGNhbGwuCisKK0UuZy4sIGZyb20gdGhlIFBSOgorCisgJCBz bGVlcCAxaCAmIHA9JCE7IHNsZWVwIDAuMTsgZ2RiIC1iYXRjaCBzbGVlcCAkcCAtZXggcnVuCisg WzFdIDI4MjYzCisgWzFdICAgS2lsbGVkICAgICAgICAgICAgICAgICAgc2xlZXAgMWgKKworIFsy XSsgIFN0b3BwZWQgICAgICAgICAgICAgICAgIGdkYiAtYmF0Y2ggc2xlZXAgJHAgLWV4IHJ1bgor CitUaGUgd29ya2Fyb3VuZCBpcyBkb2luZzoKKworIGdkYiAtZXggImF0dGFjaCAkUElEIiAtZXgg InJ1biIKKworaW5zdGVhZCBvZgorCisgZ2RiIFstcF0gJFBJRCAtZXggInJ1biIKKworV2l0aCB0 aGUgZm9ybWVyLCBnZGIgd2FpdHMgZm9yIHRoZSBhdHRhY2ggY29tbWFuZCB0byBjb21wbGV0ZSBi ZWZvcmUKK21vdmluZyBvbiB0byB0aGUgInJ1biIgY29tbWFuZCwgYmVjYXVzZSB0aGUgaW50ZXJw cmV0ZXIgaXMgaW4gc3luYworbW9kZSBhdCB0aGlzIHBvaW50LCB3aXRoaW4gZXhlY3V0ZV9jb21t YW5kLiAgQnV0IGZvciB0aGUgbGF0dGVyLAorYXR0YWNoX2NvbW1hbmQgaXMgY2FsbGVkIGRpcmVj dGx5IGZyb20gY2FwdHVyZWRfbWFpbiwgYW5kIHRodXMgbWlzc2VzCit0aGF0IHdhaXRpbmcuICBJ T1csICJydW4iIGlzIHJ1bm5pbmcgYmVmb3JlIHRoZSBhdHRhY2ggY29udGludWF0aW9uCitoYXMg cnVuLCBiZWZvcmUgdGhlIHByb2dyYW0gc3RvcHMgYW5kIGF0dGFjaCBjb21wbGV0ZXMuICBUaGUg YnJva2VuCit0ZXJtaW5hbCBzZXR0aW5ncyBhcmUganVzdCBvbmUgc3ltcHRvbSBvZiB0aGF0LiAg QW55IGNvbW1hbmQgdGhhdAorcXVlcmllcyBvciByZXF1aXJlcyBpbnB1dCByZXN1bHRzIGluIHRo ZSBzYW1lLgorCitUaGUgZml4IGlzIHRvIHdhaXQgaW4gY2F0Y2hfY29tbWFuZF9lcnJvcnMgKHdo aWNoIGlzIHNwZWNpZmljIHRvCittYWluLmMgbm93YWRheXMpLCBqdXN0IGxpa2Ugd2Ugd2FpdCBp biBleGVjdXRlX2NvbW1hbmQuCisKK2dkYi9DaGFuZ2VMb2c6CisyMDE0LTA5LTAzICBQZWRybyBB bHZlcyAgPHBhbHZlc0ByZWRoYXQuY29tPgorCisJUFIgZ2RiLzE3MzQ3CisJKiBtYWluLmM6IElu Y2x1ZGUgImluZnJ1bi5oIi4KKwkoY2F0Y2hfY29tbWFuZF9lcnJvcnMsIGNhdGNoX2NvbW1hbmRf ZXJyb3JzX2NvbnN0KTogV2FpdCBmb3IgdGhlCisJZm9yZWdyb3VuZCBjb21tYW5kIHRvIGNvbXBs ZXRlLgorCSogdG9wLmMgKG1heWJlX3dhaXRfc3luY19jb21tYW5kX2RvbmUpOiBOZXcgZnVuY3Rp b24sIGZhY3RvcmVkIG91dAorCWZyb20gLi4uCisJKG1heWJlX3dhaXRfc3luY19jb21tYW5kX2Rv bmUpOiAuLi4gaGVyZS4KKwkqIHRvcC5oIChtYXliZV93YWl0X3N5bmNfY29tbWFuZF9kb25lKTog TmV3IGRlY2xhcmF0aW9uLgorCitnZGIvdGVzdHN1aXRlL0NoYW5nZUxvZzoKKzIwMTQtMDktMDMg IFBlZHJvIEFsdmVzICA8cGFsdmVzQHJlZGhhdC5jb20+CisKKwlQUiBnZGIvMTczNDcKKwkqIGdk Yi5iYXNlL2F0dGFjaC5leHAgKHNwYXduX3Rlc3RfcHJvZyk6IE5ldywgZmFjdG9yZWQgb3V0IGZy b20KKwkuLi4KKwkoZG9fYXR0YWNoX3Rlc3RzLCBkb19jYWxsX2F0dGFjaF90ZXN0cywgZG9fY29t bWFuZF9hdHRhY2hfdGVzdHMpOgorCS4uLiBoZXJlLgorCShnZGJfc3Bhd25fd2l0aF9jbWRsaW5l X29wdHMpOiBOZXcgcHJvY2VkdXJlLgorCSh0ZXN0X2NvbW1hbmRfbGluZV9hdHRhY2hfcnVuKTog TmV3IHByb2NlZHVyZS4KKwkodG9wIGxldmVsKTogQ2FsbCBpdC4KKy0tLQorIGdkYi9tYWluLmMg ICAgICAgICAgICAgICAgICAgICAgICB8ICAgOSArKysKKyBnZGIvdGVzdHN1aXRlL2dkYi5iYXNl L2F0dGFjaC5leHAgfCAxMTggKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0K KyBnZGIvdG9wLmMgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjYgKysrKystLS0tCisgZ2Ri L3RvcC5oICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA4ICsrKworIDQgZmlsZXMgY2hhbmdl ZCwgMTE0IGluc2VydGlvbnMoKyksIDQ3IGRlbGV0aW9ucygtKQorCitJbmRleDogZ2RiLTcuOC9n ZGIvbWFpbi5jCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09CistLS0gZ2RiLTcuOC5vcmlnL2dkYi9tYWluLmMJMjAxNC0w OS0wNyAxOToxMjo0NS4wNjY5ODE1ODggKzAyMDAKKysrKyBnZGItNy44L2dkYi9tYWluLmMJMjAx NC0wOS0wNyAxOToxNDoyMi42MTMwOTUyMDEgKzAyMDAKK0BAIC00Nyw2ICs0Nyw3IEBACisgI2lu Y2x1ZGUgImZpbGVuYW1lcy5oIgorICNpbmNsdWRlICJmaWxlc3R1ZmYuaCIKKyAjaW5jbHVkZSAi ZXZlbnQtdG9wLmgiCisrI2luY2x1ZGUgImluZnJ1bi5oIgorIAorIC8qIFRoZSBzZWxlY3RlZCBp bnRlcnByZXRlci4gIFRoaXMgd2lsbCBiZSB1c2VkIGFzIGEgc2V0IGNvbW1hbmQKKyAgICB2YXJp YWJsZSwgc28gaXQgc2hvdWxkIGFsd2F5cyBiZSBtYWxsb2MnZWQgLSBzaW5jZQorQEAgLTM1MCw3 ICszNTEsMTEgQEAgY2F0Y2hfY29tbWFuZF9lcnJvcnMgKGNhdGNoX2NvbW1hbmRfZXJybworIAor ICAgVFJZX0NBVENIIChlLCBtYXNrKQorICAgICB7CisrICAgICAgaW50IHdhc19zeW5jID0gc3lu Y19leGVjdXRpb247CisrCisgICAgICAgY29tbWFuZCAoYXJnLCBmcm9tX3R0eSk7CisrCisrICAg ICAgbWF5YmVfd2FpdF9zeW5jX2NvbW1hbmRfZG9uZSAod2FzX3N5bmMpOworICAgICB9CisgICBy ZXR1cm4gaGFuZGxlX2NvbW1hbmRfZXJyb3JzIChlKTsKKyB9CitAQCAtMzY5LDcgKzM3NCwxMSBA QCBjYXRjaF9jb21tYW5kX2Vycm9yc19jb25zdCAoY2F0Y2hfY29tbWFuCisgCisgICBUUllfQ0FU Q0ggKGUsIG1hc2spCisgICAgIHsKKysgICAgICBpbnQgd2FzX3N5bmMgPSBzeW5jX2V4ZWN1dGlv bjsKKysKKyAgICAgICBjb21tYW5kIChhcmcsIGZyb21fdHR5KTsKKysKKysgICAgICBtYXliZV93 YWl0X3N5bmNfY29tbWFuZF9kb25lICh3YXNfc3luYyk7CisgICAgIH0KKyAgIHJldHVybiBoYW5k bGVfY29tbWFuZF9lcnJvcnMgKGUpOworIH0KK0luZGV4OiBnZGItNy44L2dkYi90ZXN0c3VpdGUv Z2RiLmJhc2UvYXR0YWNoLmV4cAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorLS0tIGdkYi03Ljgub3JpZy9nZGIvdGVz dHN1aXRlL2dkYi5iYXNlL2F0dGFjaC5leHAJMjAxNC0wOS0wNyAxOToxMjo0NS4wNjc5ODE1ODkg KzAyMDAKKysrKyBnZGItNy44L2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2UvYXR0YWNoLmV4cAkyMDE0 LTA5LTA3IDE5OjEyOjQ4LjYwMTk4NTcwNiArMDIwMAorQEAgLTU4LDYgKzU4LDM3IEBAIGlmIFtn ZXRfY29tcGlsZXJfaW5mb10geworICAgICByZXR1cm4gLTEKKyB9CisgCisrIyBTdGFydCB0aGUg cHJvZ3JhbSBydW5uaW5nIGFuZCB0aGVuIHdhaXQgZm9yIGEgYml0LCB0byBiZSBzdXJlIHRoYXQK KysjIGl0IGNhbiBiZSBhdHRhY2hlZCB0by4gIFJldHVybiB0aGUgcHJvY2VzcydzIFBJRC4KKysK Kytwcm9jIHNwYXduX3Rlc3RfcHJvZyB7IGV4ZWN1dGFibGUgfSB7CisrICAgIHNldCB0ZXN0cGlk IFtldmFsIGV4ZWMgJGV4ZWN1dGFibGUgJl0KKysgICAgZXhlYyBzbGVlcCAyCisrICAgIGlmIHsg W2lzdGFyZ2V0ICIqLSotY3lnd2luKiJdIH0geworKwkjIHRlc3RwaWQgaXMgdGhlIEN5Z3dpbiBQ SUQsIEdEQiB1c2VzIHRoZSBXaW5kb3dzIFBJRCwgd2hpY2ggbWlnaHQgYmUKKysJIyBkaWZmZXJl bnQgZHVlIHRvIHRoZSB3YXkgZm9yay9leGVjIHdvcmtzLgorKwlzZXQgdGVzdHBpZCBbIGV4ZWMg cHMgLWUgfCBnYXdrICJ7IGlmIChcJDEgPT0gJHRlc3RwaWQpIHByaW50IFwkNDsgfSIgXQorKyAg ICB9CisrCisrICAgIHJldHVybiAkdGVzdHBpZAorK30KKysKKysjIFNwYXduIEdEQiB3aXRoIENN RExJTkVfRkxBR1MgYXBwZW5kZWQgdG8gdGhlIEdEQkZMQUdTIGdsb2JhbC4KKysKKytwcm9jIGdk Yl9zcGF3bl93aXRoX2NtZGxpbmVfb3B0cyB7IGNtZGxpbmVfZmxhZ3MgfSB7CisrICAgIGdsb2Jh bCBHREJGTEFHUworKworKyAgICBzZXQgc2F2ZWRfZ2RiZmxhZ3MgJEdEQkZMQUdTCisrCisrICAg IGFwcGVuZCBHREJGTEFHUyAkY21kbGluZV9mbGFncworKworKyAgICBzZXQgcmVzIFtnZGJfc3Bh d25dCisrCisrICAgIHNldCBHREJGTEFHUyAkc2F2ZWRfZ2RiZmxhZ3MKKysKKysgICAgcmV0dXJu ICRyZXMKKyt9CisrCisgcHJvYyBkb19hdHRhY2hfdGVzdHMge30geworICAgICBnbG9iYWwgZ2Ri X3Byb21wdAorICAgICBnbG9iYWwgYmluZmlsZQorQEAgLTcwLDEzICsxMDEsNyBAQCBwcm9jIGRv X2F0dGFjaF90ZXN0cyB7fSB7CisgICAgICMgU3RhcnQgdGhlIHByb2dyYW0gcnVubmluZyBhbmQg dGhlbiB3YWl0IGZvciBhIGJpdCwgdG8gYmUgc3VyZQorICAgICAjIHRoYXQgaXQgY2FuIGJlIGF0 dGFjaGVkIHRvLgorIAorLSAgICBzZXQgdGVzdHBpZCBbZXZhbCBleGVjICRiaW5maWxlICZdCist ICAgIGV4ZWMgc2xlZXAgMgorLSAgICBpZiB7IFtpc3RhcmdldCAiKi0qLWN5Z3dpbioiXSB9IHsK Ky0JIyB0ZXN0cGlkIGlzIHRoZSBDeWd3aW4gUElELCBHREIgdXNlcyB0aGUgV2luZG93cyBQSUQs IHdoaWNoIG1pZ2h0IGJlCistCSMgZGlmZmVyZW50IGR1ZSB0byB0aGUgd2F5IGZvcmsvZXhlYyB3 b3Jrcy4KKy0Jc2V0IHRlc3RwaWQgWyBleGVjIHBzIC1lIHwgZ2F3ayAieyBpZiAoXCQxID09ICR0 ZXN0cGlkKSBwcmludCBcJDQ7IH0iIF0KKy0gICAgfQorKyAgICBzZXQgdGVzdHBpZCBbc3Bhd25f dGVzdF9wcm9nICRiaW5maWxlXQorIAorICAgICAjIFZlcmlmeSB0aGF0IHdlIGNhbm5vdCBhdHRh Y2ggdG8gbm9uc2Vuc2UuCisgCitAQCAtMjc5LDE2ICszMDQsNyBAQCBwcm9jIGRvX2F0dGFjaF90 ZXN0cyB7fSB7CisgICAgCisgICAgIHJlbW90ZV9leGVjIGJ1aWxkICJraWxsIC05ICR7dGVzdHBp ZH0iCisgCistICAgICMgU3RhcnQgdGhlIHByb2dyYW0gcnVubmluZyBhbmQgdGhlbiB3YWl0IGZv ciBhIGJpdCwgdG8gYmUgc3VyZQorLSAgICAjIHRoYXQgaXQgY2FuIGJlIGF0dGFjaGVkIHRvLgor LSAgIAorLSAgICBzZXQgdGVzdHBpZCBbZXZhbCBleGVjICRiaW5maWxlICZdCistICAgIGV4ZWMg c2xlZXAgMgorLSAgICBpZiB7IFtpc3RhcmdldCAiKi0qLWN5Z3dpbioiXSB9IHsKKy0JIyB0ZXN0 cGlkIGlzIHRoZSBDeWd3aW4gUElELCBHREIgdXNlcyB0aGUgV2luZG93cyBQSUQsIHdoaWNoIG1p Z2h0IGJlCistCSMgZGlmZmVyZW50IGR1ZSB0byB0aGUgd2F5IGZvcmsvZXhlYyB3b3Jrcy4KKy0J c2V0IHRlc3RwaWQgWyBleGVjIHBzIC1lIHwgZ2F3ayAieyBpZiAoXCQxID09ICR0ZXN0cGlkKSBw cmludCBcJDQ7IH0iIF0KKy0gICAgfQorKyAgICBzZXQgdGVzdHBpZCBbc3Bhd25fdGVzdF9wcm9n ICRiaW5maWxlXQorIAorICAgICAjIFZlcmlmeSB0aGF0IHdlIGNhbiBhdHRhY2ggdG8gdGhlIHBy b2Nlc3MsIGFuZCBmaW5kIGl0cyBhLm91dAorICAgICAjIHdoZW4gd2UncmUgY2QnZCB0byBzb21l IGRpcmVjdG9yeSB0aGF0IGRvZXNuJ3QgY29udGFpbiB0aGUKK0BAIC0zMzUsMTYgKzM1MSw3IEBA IHByb2MgZG9fY2FsbF9hdHRhY2hfdGVzdHMge30geworICAgICBnbG9iYWwgZ2RiX3Byb21wdAor ICAgICBnbG9iYWwgYmluZmlsZTIKKyAgICAgCistICAgICMgU3RhcnQgdGhlIHByb2dyYW0gcnVu bmluZyBhbmQgdGhlbiB3YWl0IGZvciBhIGJpdCwgdG8gYmUgc3VyZQorLSAgICAjIHRoYXQgaXQg Y2FuIGJlIGF0dGFjaGVkIHRvLgorLSAgIAorLSAgICBzZXQgdGVzdHBpZCBbZXZhbCBleGVjICRi aW5maWxlMiAmXQorLSAgICBleGVjIHNsZWVwIDIKKy0gICAgaWYgeyBbaXN0YXJnZXQgIiotKi1j eWd3aW4qIl0gfSB7CistCSMgdGVzdHBpZCBpcyB0aGUgQ3lnd2luIFBJRCwgR0RCIHVzZXMgdGhl IFdpbmRvd3MgUElELCB3aGljaCBtaWdodCBiZQorLQkjIGRpZmZlcmVudCBkdWUgdG8gdGhlIHdh eSBmb3JrL2V4ZWMgd29ya3MuCistCXNldCB0ZXN0cGlkIFsgZXhlYyBwcyAtZSB8IGdhd2sgInsg aWYgKFwkMSA9PSAkdGVzdHBpZCkgcHJpbnQgXCQ0OyB9IiBdCistICAgIH0KKysgICAgc2V0IHRl c3RwaWQgW3NwYXduX3Rlc3RfcHJvZyAkYmluZmlsZTJdCisgCisgICAgICMgQXR0YWNoCisgICAg CitAQCAtMzk3LDE2ICs0MDQsNyBAQCBwcm9jIGRvX2NvbW1hbmRfYXR0YWNoX3Rlc3RzIHt9IHsK KyAJcmV0dXJuIDAKKyAgICAgfQorIAorLSAgICAjIFN0YXJ0IHRoZSBwcm9ncmFtIHJ1bm5pbmcg YW5kIHRoZW4gd2FpdCBmb3IgYSBiaXQsIHRvIGJlIHN1cmUKKy0gICAgIyB0aGF0IGl0IGNhbiBi ZSBhdHRhY2hlZCB0by4KKy0KKy0gICAgc2V0IHRlc3RwaWQgW2V2YWwgZXhlYyAkYmluZmlsZSAm XQorLSAgICBleGVjIHNsZWVwIDIKKy0gICAgaWYgeyBbaXN0YXJnZXQgIiotKi1jeWd3aW4qIl0g fSB7CistCSMgdGVzdHBpZCBpcyB0aGUgQ3lnd2luIFBJRCwgR0RCIHVzZXMgdGhlIFdpbmRvd3Mg UElELCB3aGljaCBtaWdodCBiZQorLQkjIGRpZmZlcmVudCBkdWUgdG8gdGhlIHdheSBmb3JrL2V4 ZWMgd29ya3MuCistCXNldCB0ZXN0cGlkIFsgZXhlYyBwcyAtZSB8IGdhd2sgInsgaWYgKFwkMSA9 PSAkdGVzdHBpZCkgcHJpbnQgXCQ0OyB9IiBdCistICAgIH0KKysgICAgc2V0IHRlc3RwaWQgW3Nw YXduX3Rlc3RfcHJvZyAkYmluZmlsZV0KKyAKKyAgICAgZ2RiX2V4aXQKKyAgICAgaWYgJHZlcmJv c2U+MSB0aGVuIHsKK0BAIC00MjksNiArNDI3LDUwIEBAIHByb2MgZG9fY29tbWFuZF9hdHRhY2hf dGVzdHMge30geworICAgICByZW1vdGVfZXhlYyBidWlsZCAia2lsbCAtOSAke3Rlc3RwaWR9Igor IH0KKyAKKysjIFRlc3QgJyBnZGIgLS1waWQgUElEIC1leCAicnVuIiAnLiAgR0RCIHVzZWQgdG8g aGF2ZSBhIGJ1ZyB3aGVyZQorKyMgInJ1biIgd291bGQgcnVuIGJlZm9yZSB0aGUgYXR0YWNoIGZp bmlzaGVkIC0gUFIxNzM0Ny4KKysKKytwcm9jIHRlc3RfY29tbWFuZF9saW5lX2F0dGFjaF9ydW4g e30geworKyAgICBnbG9iYWwgZ2RiX3Byb21wdAorKyAgICBnbG9iYWwgYmluZmlsZQorKyAgICBn bG9iYWwgdmVyYm9zZQorKyAgICBnbG9iYWwgR0RCCisrICAgIGdsb2JhbCBJTlRFUk5BTF9HREJG TEFHUworKworKyAgICBpZiAhW2lzbmF0aXZlXSB0aGVuIHsKKysJdW5zdXBwb3J0ZWQgImNvbW1h bmRsaW5lIGF0dGFjaCBydW4gdGVzdCIKKysJcmV0dXJuIDAKKysgICAgfQorKworKyAgICB3aXRo X3Rlc3RfcHJlZml4ICJjbWRsaW5lIGF0dGFjaCBydW4iIHsKKysJc2V0IHRlc3RwaWQgW3NwYXdu X3Rlc3RfcHJvZyAkYmluZmlsZV0KKysKKysJc2V0IHRlc3QgInJ1biB0byBwcm9tcHQiCisrCWdk Yl9leGl0CisrCXNldCByZXMgW2dkYl9zcGF3bl93aXRoX2NtZGxpbmVfb3B0cyAiLS1waWQ9JHRl c3RwaWQgLWV4IFwic3RhcnRcIiJdCisrCWlmIHsgJHJlcyAhPSAwfSB7CisrCSAgICBmYWlsICR0 ZXN0CisrCSAgICByZXR1cm4gJHJlcworKwl9CisrCWdkYl90ZXN0X211bHRpcGxlICIiICR0ZXN0 IHsKKysJICAgIC1yZSB7QXR0YWNoaW5nIHRvLipTdGFydCBpdCBmcm9tIHRoZSBiZWdpbm5pbmdc PyBcKHkgb3IgblwpIH0geworKwkJcGFzcyAkdGVzdAorKwkgICAgfQorKwl9CisrCisrCXNlbmRf Z2RiICJ5XG4iCisrCisrCXNldCB0ZXN0ICJydW4gdG8gbWFpbiIKKysJZ2RiX3Rlc3RfbXVsdGlw bGUgIiIgJHRlc3QgeworKwkgICAgLXJlICJUZW1wb3JhcnkgYnJlYWtwb2ludCAuKiBtYWluIC4q JGdkYl9wcm9tcHQgJCIgeworKwkJcGFzcyAkdGVzdAorKwkgICAgfQorKwl9CisrCisrCSMgR2V0 IHJpZCBvZiB0aGUgcHJvY2VzcworKwlyZW1vdGVfZXhlYyBidWlsZCAia2lsbCAtOSAke3Rlc3Rw aWR9IgorKyAgICB9CisrfQorIAorICMgU3RhcnQgd2l0aCBhIGZyZXNoIGdkYgorIAorQEAgLTQ1 Myw0ICs0OTUsNiBAQCBkb19jYWxsX2F0dGFjaF90ZXN0cworIAorIGRvX2NvbW1hbmRfYXR0YWNo X3Rlc3RzCisgCisrdGVzdF9jb21tYW5kX2xpbmVfYXR0YWNoX3J1bgorKworIHJldHVybiAwCitJ bmRleDogZ2RiLTcuOC9nZGIvdG9wLmMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKy0tLSBnZGItNy44Lm9yaWcvZ2Ri L3RvcC5jCTIwMTQtMDktMDcgMTk6MTI6NDUuMDY3OTgxNTg5ICswMjAwCisrKysgZ2RiLTcuOC9n ZGIvdG9wLmMJMjAxNC0wOS0wNyAxOToxMjo0OC42MDE5ODU3MDYgKzAyMDAKK0BAIC0zNzUsNiAr Mzc1LDIxIEBAIGNoZWNrX2ZyYW1lX2xhbmd1YWdlX2NoYW5nZSAodm9pZCkKKyAgICAgfQorIH0K KyAKKyt2b2lkCisrbWF5YmVfd2FpdF9zeW5jX2NvbW1hbmRfZG9uZSAoaW50IHdhc19zeW5jKQor K3sKKysgIC8qIElmIHRoZSBpbnRlcnByZXRlciBpcyBpbiBzeW5jIG1vZGUgKHdlJ3JlIHJ1bm5p bmcgYSB1c2VyCisrICAgICBjb21tYW5kJ3MgbGlzdCwgcnVubmluZyBjb21tYW5kIGhvb2tzIG9y IHNpbWlsYXJzKSwgYW5kIHdlCisrICAgICBqdXN0IHJhbiBhIHN5bmNocm9ub3VzIGNvbW1hbmQg dGhhdCBzdGFydGVkIHRoZSB0YXJnZXQsIHdhaXQKKysgICAgIGZvciB0aGF0IGNvbW1hbmQgdG8g ZW5kLiAgKi8KKysgIGlmICghaW50ZXJwcmV0ZXJfYXN5bmMgJiYgIXdhc19zeW5jICYmIHN5bmNf ZXhlY3V0aW9uKQorKyAgICB7CisrICAgICAgd2hpbGUgKGdkYl9kb19vbmVfZXZlbnQgKCkgPj0g MCkKKysJaWYgKCFzeW5jX2V4ZWN1dGlvbikKKysJICBicmVhazsKKysgICAgfQorK30KKysKKyAv KiBFeGVjdXRlIHRoZSBsaW5lIFAgYXMgYSBjb21tYW5kLCBpbiB0aGUgY3VycmVudCB1c2VyIGNv bnRleHQuCisgICAgUGFzcyBGUk9NX1RUWSBhcyBzZWNvbmQgYXJndW1lbnQgdG8gdGhlIGRlZmlu aW5nIGZ1bmN0aW9uLiAgKi8KKyAKK0BAIC00NjEsMTYgKzQ3Niw3IEBAIGV4ZWN1dGVfY29tbWFu ZCAoY2hhciAqcCwgaW50IGZyb21fdHR5KQorICAgICAgIGVsc2UKKyAJY21kX2Z1bmMgKGMsIGFy ZywgZnJvbV90dHkpOworIAorLSAgICAgIC8qIElmIHRoZSBpbnRlcnByZXRlciBpcyBpbiBzeW5j IG1vZGUgKHdlJ3JlIHJ1bm5pbmcgYSB1c2VyCistCSBjb21tYW5kJ3MgbGlzdCwgcnVubmluZyBj b21tYW5kIGhvb2tzIG9yIHNpbWlsYXJzKSwgYW5kIHdlCistCSBqdXN0IHJhbiBhIHN5bmNocm9u b3VzIGNvbW1hbmQgdGhhdCBzdGFydGVkIHRoZSB0YXJnZXQsIHdhaXQKKy0JIGZvciB0aGF0IGNv bW1hbmQgdG8gZW5kLiAgKi8KKy0gICAgICBpZiAoIWludGVycHJldGVyX2FzeW5jICYmICF3YXNf c3luYyAmJiBzeW5jX2V4ZWN1dGlvbikKKy0JeworLQkgIHdoaWxlIChnZGJfZG9fb25lX2V2ZW50 ICgpID49IDApCistCSAgICBpZiAoIXN5bmNfZXhlY3V0aW9uKQorLQkgICAgICBicmVhazsKKy0J fQorKyAgICAgIG1heWJlX3dhaXRfc3luY19jb21tYW5kX2RvbmUgKHdhc19zeW5jKTsKKyAKKyAg ICAgICAvKiBJZiB0aGlzIGNvbW1hbmQgaGFzIGJlZW4gcG9zdC1ob29rZWQsIHJ1biB0aGUgaG9v ayBsYXN0LiAgKi8KKyAgICAgICBleGVjdXRlX2NtZF9wb3N0X2hvb2sgKGMpOworSW5kZXg6IGdk Yi03LjgvZ2RiL3RvcC5oCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gZ2RiLTcuOC5vcmlnL2dkYi90b3AuaAky MDE0LTA5LTA3IDE5OjEyOjQ1LjA2ODk4MTU5MCArMDIwMAorKysrIGdkYi03LjgvZ2RiL3RvcC5o CTIwMTQtMDktMDcgMTk6MTI6NDguNjAxOTg1NzA2ICswMjAwCitAQCAtNDIsNiArNDIsMTQgQEAg ZXh0ZXJuIHZvaWQgcXVpdF9jb21tYW5kIChjaGFyICosIGludCk7CisgZXh0ZXJuIHZvaWQgcXVp dF9jb3ZlciAodm9pZCk7CisgZXh0ZXJuIHZvaWQgZXhlY3V0ZV9jb21tYW5kIChjaGFyICosIGlu dCk7CisgCisrLyogSWYgdGhlIGludGVycHJldGVyIGlzIGluIHN5bmMgbW9kZSAod2UncmUgcnVu bmluZyBhIHVzZXIgY29tbWFuZCdzCisrICAgbGlzdCwgcnVubmluZyBjb21tYW5kIGhvb2tzIG9y IHNpbWlsYXJzKSwgYW5kIHdlIGp1c3QgcmFuIGEKKysgICBzeW5jaHJvbm91cyBjb21tYW5kIHRo YXQgc3RhcnRlZCB0aGUgdGFyZ2V0LCB3YWl0IGZvciB0aGF0IGNvbW1hbmQKKysgICB0byBlbmQu ICBXQVNfU1lOQyBpbmRpY2F0ZXMgd2hldGhlciBzeW5jX2V4ZWN1dGlvbiB3YXMgc2V0IGJlZm9y ZQorKyAgIHRoZSBjb21tYW5kIHdhcyBydW4uICAqLworKworK2V4dGVybiB2b2lkIG1heWJlX3dh aXRfc3luY19jb21tYW5kX2RvbmUgKGludCB3YXNfc3luYyk7CisrCisgZXh0ZXJuIHZvaWQgY2hl Y2tfZnJhbWVfbGFuZ3VhZ2VfY2hhbmdlICh2b2lkKTsKKyAKKyAvKiBQcmVwYXJlIGZvciBleGVj dXRpb24gb2YgYSBjb21tYW5kLgoKZGlmZiAtLWdpdCBhL2dkYi1hc3luYy1zdG9wcGVkLW9uLXBp ZC1hcmctMm9mMi5wYXRjaCBiL2dkYi1hc3luYy1zdG9wcGVkLW9uLXBpZC1hcmctMm9mMi5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NjgzMzI2Ci0tLSAvZGV2L251 bGwKKysrIGIvZ2RiLWFzeW5jLXN0b3BwZWQtb24tcGlkLWFyZy0yb2YyLnBhdGNoCkBAIC0wLDAg KzEsMjE3IEBACitodHRwOi8vc291cmNld2FyZS5vcmcvbWwvZ2RiLXBhdGNoZXMvMjAxNC0wOS9t c2cwMDE3NC5odG1sCitTdWJqZWN0OiBSZTogUmVncmVzc2lvbjogR0RCIHN0b3BwZWQgb24gcnVu IHdpdGggYXR0YWNoZWQgcHJvY2VzcyAoUFIgMTczNDcpIFtSZTogW3B1c2hlZCs3LjhdIFJlOiBb UEFUQ0hdIEZpeCAiYXR0YWNoIiBjb21tYW5kIHZzIHVzZXIgaW5wdXQgcmFjZQorCisKKy0tYThX dDh1MUttd1VYM1kyQworQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PXVzLWFzY2lp CitDb250ZW50LURpc3Bvc2l0aW9uOiBpbmxpbmUKKworT24gV2VkLCAwMyBTZXAgMjAxNCAyMjox MTowMyArMDIwMCwgUGVkcm8gQWx2ZXMgd3JvdGU6Cis+IE9uIDA5LzAzLzIwMTQgMDg6NTggQU0s IEphbiBLcmF0b2NodmlsIHdyb3RlOgorPiAKKz4gPiBodHRwczovL3NvdXJjZXdhcmUub3JnL2J1 Z3ppbGxhL3Nob3dfYnVnLmNnaT9pZD0xNzM0NworPiAKKz4gVGhhbmtzIEphbi4KKz4gCis+IEhl cmUncyBhIGZpeCwgdGVzdCBpbmNsdWRlZC4gIENvbW1lbnRzPworCitJbiB0aGUgdGVzdHN1aXRl IHJ1biBmcm9tIHRoZSBGZWRvcmEgcnBtIHBhY2thZ2luZyBJIGdldDoKKworR05VIGdkYiAoR0RC KSBGZWRvcmEgNy44LTIxLmZjMjFeTQorQ29weXJpZ2h0IChDKSAyMDE0IEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbiwgSW5jLl5NCitMaWNlbnNlIEdQTHYzKzogR05VIEdQTCB2ZXJzaW9uIDMgb3Ig bGF0ZXIgPGh0dHA6Ly9nbnUub3JnL2xpY2Vuc2VzL2dwbC5odG1sPl5NCitUaGlzIGlzIGZyZWUg c29mdHdhcmU6IHlvdSBhcmUgZnJlZSB0byBjaGFuZ2UgYW5kIHJlZGlzdHJpYnV0ZSBpdC5eTQor VGhlcmUgaXMgTk8gV0FSUkFOVFksIHRvIHRoZSBleHRlbnQgcGVybWl0dGVkIGJ5IGxhdy4gIFR5 cGUgInNob3cgY29weWluZyJeTQorYW5kICJzaG93IHdhcnJhbnR5IiBmb3IgZGV0YWlscy5eTQor VGhpcyBHREIgd2FzIGNvbmZpZ3VyZWQgYXMgImk2ODYtcmVkaGF0LWxpbnV4LWdudSIuXk0KK1R5 cGUgInNob3cgY29uZmlndXJhdGlvbiIgZm9yIGNvbmZpZ3VyYXRpb24gZGV0YWlscy5eTQorRm9y IGJ1ZyByZXBvcnRpbmcgaW5zdHJ1Y3Rpb25zLCBwbGVhc2Ugc2VlOl5NCis8aHR0cDovL3d3dy5n bnUub3JnL3NvZnR3YXJlL2dkYi9idWdzLz4uXk0KK0ZpbmQgdGhlIEdEQiBtYW51YWwgYW5kIG90 aGVyIGRvY3VtZW50YXRpb24gcmVzb3VyY2VzIG9ubGluZSBhdDpeTQorPGh0dHA6Ly93d3cuZ251 Lm9yZy9zb2Z0d2FyZS9nZGIvZG9jdW1lbnRhdGlvbi8+Ll5NCitGb3IgaGVscCwgdHlwZSAiaGVs cCIuXk0KK1R5cGUgImFwcm9wb3Mgd29yZCIgdG8gc2VhcmNoIGZvciBjb21tYW5kcyByZWxhdGVk IHRvICJ3b3JkIi5eTQorQXR0YWNoaW5nIHRvIHByb2Nlc3MgMjcwMjheTQorUmVhZGluZyBzeW1i b2xzIGZyb20gL3Vuc2FmZWJ1aWxkLWk2ODYtcmVkaGF0LWxpbnV4LWdudS9nZGIvdGVzdHN1aXRl LnVuaXguLW0zMi9vdXRwdXRzL2dkYi5iYXNlL2F0dGFjaC9hdHRhY2guLi5kb25lLl5NCitSZWFk aW5nIHN5bWJvbHMgZnJvbSAvbGliL2xpYm0uc28uNi4uLlJlYWRpbmcgc3ltYm9scyBmcm9tIC91 c3IvbGliL2RlYnVnL3Vzci9saWIvbGlibS0yLjE5LjkwLnNvLmRlYnVnLi4uZG9uZS5eTQorZG9u ZS5eTQorTG9hZGVkIHN5bWJvbHMgZm9yIC9saWIvbGlibS5zby42Xk0KK1JlYWRpbmcgc3ltYm9s cyBmcm9tIC9saWIvbGliYy5zby42Li4uUmVhZGluZyBzeW1ib2xzIGZyb20gL3Vzci9saWIvZGVi dWcvdXNyL2xpYi9saWJjLTIuMTkuOTAuc28uZGVidWcuLi5kb25lLl5NCitkb25lLl5NCitMb2Fk ZWQgc3ltYm9scyBmb3IgL2xpYi9saWJjLnNvLjZeTQorUmVhZGluZyBzeW1ib2xzIGZyb20gL2xp Yi9sZC1saW51eC5zby4yLi4uUmVhZGluZyBzeW1ib2xzIGZyb20gL3Vzci9saWIvZGVidWcvdXNy L2xpYi9sZC0yLjE5LjkwLnNvLmRlYnVnLi4uZG9uZS5eTQorZG9uZS5eTQorTG9hZGVkIHN5bWJv bHMgZm9yIC9saWIvbGQtbGludXguc28uMl5NCittYWluICgpXk0KKyAgICBhdCBnZGIvdGVzdHN1 aXRlL2dkYi5iYXNlL2F0dGFjaC5jOjE1Xk0KKzE1ICAgICAgIHdoaWxlICghIHNob3VsZF9leGl0 KV5NCitUaGUgcHJvZ3JhbSBiZWluZyBkZWJ1Z2dlZCBoYXMgYmVlbiBzdGFydGVkIGFscmVhZHku Xk0KK1N0YXJ0IGl0IGZyb20gdGhlIGJlZ2lubmluZz8gKHkgb3IgbikgUEFTUzogZ2RiLmJhc2Uv YXR0YWNoLmV4cDogY21kbGluZSBhdHRhY2ggcnVuOiBydW4gdG8gcHJvbXB0Cit5Xk0KK15NCitU ZW1wb3JhcnkgYnJlYWtwb2ludCAxIGF0IDB4ODA0ODQ4MTogZmlsZSBnZGIvdGVzdHN1aXRlL2dk Yi5iYXNlL2F0dGFjaC5jLCBsaW5lIDEzLl5NCitTdGFydGluZyBwcm9ncmFtOiAvdW5zYWZlL2hv bWUvamtyYXRvY2gvaGFtbW9jay8yMDE0MDkwN2ZlZG9yYXJlbDIxLWYyMS9mZWRvcmEtMi0tLVR5 cGUgPHJldHVybj4gdG8gY29udGludWUsIG9yIHEgPHJldHVybj4gdG8gcXVpdC0tLUVSUk9SOiBX aW5kb3cgdG9vIHNtYWxsLgorVU5SRVNPTFZFRDogZ2RiLmJhc2UvYXR0YWNoLmV4cDogY21kbGlu ZSBhdHRhY2ggcnVuOiBydW4gdG8gbWFpbgorCisKK1doaWxlIEkgZG8gbm90IGZ1bGx5IHVuZGVy c3RhbmQgd2h5IHRoYXQgaGFwcGVucyBpbiBldmVyeSBydW4gb2YgdGhhdCBGZWRvcmEKK3Rlc3Rz dWl0ZSB3aGlsZSBpdCBuZXZlciBoYXBwZW5zIGR1cmluZyBteSByZXByb2R1Y2liaWxpdHkgYXR0 ZW1wdHMgYnkgaGFuZAorSSBmaW5kIGl0IHVuZGVyc3RhbmRhYmxlIGFuZCB0aGUgRmVkb3JhIHRl c3RzdWl0ZSBpc3N1ZXMgZG9lcyBnZXQgZml4ZWQgYnkgdGhlCithdHRhY2hlZCBwYXRjaC4KKwor Cis+IC0tLSBhL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2UvYXR0YWNoLmV4cAorPiArKysgYi9nZGIv dGVzdHN1aXRlL2dkYi5iYXNlL2F0dGFjaC5leHAKKz4gQEAgLTU4LDYgKzU4LDM3IEBAIGlmIFtn ZXRfY29tcGlsZXJfaW5mb10geworPiAgICAgIHJldHVybiAtMQorPiAgfQorPiAgCis+ICsjIFN0 YXJ0IHRoZSBwcm9ncmFtIHJ1bm5pbmcgYW5kIHRoZW4gd2FpdCBmb3IgYSBiaXQsIHRvIGJlIHN1 cmUgdGhhdAorPiArIyBpdCBjYW4gYmUgYXR0YWNoZWQgdG8uICBSZXR1cm4gdGhlIHByb2Nlc3Mn cyBQSUQuCis+ICsKKz4gK3Byb2Mgc3Bhd25fdGVzdF9wcm9nIHsgZXhlY3V0YWJsZSB9IHsKKz4g KyAgICBzZXQgdGVzdHBpZCBbZXZhbCBleGVjICRleGVjdXRhYmxlICZdCis+ICsgICAgZXhlYyBz bGVlcCAyCisKK1VucmVsYXRlZCB0byB0aGlzIHBhdGNoIC0gdGhpcyBwYXRjaCBvbmx5IG1vdmVk IHRoZSBjb2RlLiAgQWxzbyB0aGUgY29kZSBtb3ZlCitjb3VsZCBiZSBhIHNlcGFyYXRlIHBhdGNo OgorCitJIGRvIG5vdCBzZWUgd2h5IHRoZSB0ZXN0c3VpdGUgY29tbW9ubHkgdXNlcyAiZXhlYyBz bGVlcCIgd2hpbGUgaXQgYWxzbyB1c2VzCisic2xlZXAiIGl0c2VsZiB3aGljaCBhbHNvIHdvcmtz IGZpbmUuCisKKworPiArICAgIGlmIHsgW2lzdGFyZ2V0ICIqLSotY3lnd2luKiJdIH0geworPiAr CSMgdGVzdHBpZCBpcyB0aGUgQ3lnd2luIFBJRCwgR0RCIHVzZXMgdGhlIFdpbmRvd3MgUElELCB3 aGljaCBtaWdodCBiZQorPiArCSMgZGlmZmVyZW50IGR1ZSB0byB0aGUgd2F5IGZvcmsvZXhlYyB3 b3Jrcy4KKz4gKwlzZXQgdGVzdHBpZCBbIGV4ZWMgcHMgLWUgfCBnYXdrICJ7IGlmIChcJDEgPT0g JHRlc3RwaWQpIHByaW50IFwkNDsgfSIgXQorPiArICAgIH0KKz4gKworPiArICAgIHJldHVybiAk dGVzdHBpZAorPiArfQorWy4uLl0KKz4gQEAgLTQyOSw2ICs0MjcsNTAgQEAgcHJvYyBkb19jb21t YW5kX2F0dGFjaF90ZXN0cyB7fSB7Cis+ICAgICAgcmVtb3RlX2V4ZWMgYnVpbGQgImtpbGwgLTkg JHt0ZXN0cGlkfSIKKz4gIH0KKz4gIAorPiArIyBUZXN0ICcgZ2RiIC0tcGlkIFBJRCAtZXggInJ1 biIgJy4gIEdEQiB1c2VkIHRvIGhhdmUgYSBidWcgd2hlcmUKKz4gKyMgInJ1biIgd291bGQgcnVu IGJlZm9yZSB0aGUgYXR0YWNoIGZpbmlzaGVkIC0gUFIxNzM0Ny4KKz4gKworPiArcHJvYyB0ZXN0 X2NvbW1hbmRfbGluZV9hdHRhY2hfcnVuIHt9IHsKKz4gKyAgICBnbG9iYWwgZ2RiX3Byb21wdAor PiArICAgIGdsb2JhbCBiaW5maWxlCisKKz4gKyAgICBnbG9iYWwgdmVyYm9zZQorPiArICAgIGds b2JhbCBHREIKKz4gKyAgICBnbG9iYWwgSU5URVJOQUxfR0RCRkxBR1MKKworVGhlc2UgMyBsaW5l cyBhcmUgdW51c2VkLgorCisKKz4gKworPiArICAgIGlmICFbaXNuYXRpdmVdIHRoZW4geworPiAr CXVuc3VwcG9ydGVkICJjb21tYW5kbGluZSBhdHRhY2ggcnVuIHRlc3QiCis+ICsJcmV0dXJuIDAK Kz4gKyAgICB9Cis+ICsKKz4gKyAgICB3aXRoX3Rlc3RfcHJlZml4ICJjbWRsaW5lIGF0dGFjaCBy dW4iIHsKKz4gKwlzZXQgdGVzdHBpZCBbc3Bhd25fdGVzdF9wcm9nICRiaW5maWxlXQorPiArCis+ ICsJc2V0IHRlc3QgInJ1biB0byBwcm9tcHQiCis+ICsJZ2RiX2V4aXQKKz4gKwlzZXQgcmVzIFtn ZGJfc3Bhd25fd2l0aF9jbWRsaW5lX29wdHMgIi0tcGlkPSR0ZXN0cGlkIC1leCBcInN0YXJ0XCIi XQorCitIZXJlIHNlZSB0aGUgYXR0YWNobWVudC4KKworCis+ICsJaWYgeyAkcmVzICE9IDB9IHsK Kz4gKwkgICAgZmFpbCAkdGVzdAorPiArCSAgICByZXR1cm4gJHJlcworPiArCX0KKz4gKwlnZGJf dGVzdF9tdWx0aXBsZSAiIiAkdGVzdCB7Cis+ICsJICAgIC1yZSB7QXR0YWNoaW5nIHRvLipTdGFy dCBpdCBmcm9tIHRoZSBiZWdpbm5pbmdcPyBcKHkgb3IgblwpIH0geworPiArCQlwYXNzICR0ZXN0 Cis+ICsJICAgIH0KKz4gKwl9Cis+ICsKKz4gKwlzZW5kX2dkYiAieVxuIgorPiArCis+ICsJc2V0 IHRlc3QgInJ1biB0byBtYWluIgorPiArCWdkYl90ZXN0X211bHRpcGxlICIiICR0ZXN0IHsKKz4g KwkgICAgLXJlICJUZW1wb3JhcnkgYnJlYWtwb2ludCAuKiBtYWluIC4qJGdkYl9wcm9tcHQgJCIg eworPiArCQlwYXNzICR0ZXN0Cis+ICsJICAgIH0KKz4gKwl9Cis+ICsKKz4gKwkjIEdldCByaWQg b2YgdGhlIHByb2Nlc3MKKz4gKwlyZW1vdGVfZXhlYyBidWlsZCAia2lsbCAtOSAke3Rlc3RwaWR9 IgorPiArICAgIH0KKz4gK30KKz4gIAorPiAgIyBTdGFydCB3aXRoIGEgZnJlc2ggZ2RiCis+ICAK Kz4gQEAgLTQ1Myw0ICs0OTUsNiBAQCBkb19jYWxsX2F0dGFjaF90ZXN0cworPiAgCis+ICBkb19j b21tYW5kX2F0dGFjaF90ZXN0cworPiAgCis+ICt0ZXN0X2NvbW1hbmRfbGluZV9hdHRhY2hfcnVu Cis+ICsKKz4gIHJldHVybiAwCis+IGRpZmYgLS1naXQgYS9nZGIvdG9wLmMgYi9nZGIvdG9wLmMK Kz4gaW5kZXggZmMyYjg0ZC4uYmE3MWY4ZiAxMDA2NDQKKz4gLS0tIGEvZ2RiL3RvcC5jCis+ICsr KyBiL2dkYi90b3AuYworPiBAQCAtMzczLDYgKzM3MywyMSBAQCBjaGVja19mcmFtZV9sYW5ndWFn ZV9jaGFuZ2UgKHZvaWQpCis+ICAgICAgfQorPiAgfQorPiAgCisKK01pc3Npbmc6CisvKiBTZWUg dG9wLmguICAqLworCitVbmxlc3MgdGhhdCBydWxlIGZyb20gbWUgaGFzIGJlZW4gYWJhbmRvbmVk LgorCisKKz4gK3ZvaWQKKz4gK21heWJlX3dhaXRfc3luY19jb21tYW5kX2RvbmUgKGludCB3YXNf c3luYykKKz4gK3sKKz4gKyAgLyogSWYgdGhlIGludGVycHJldGVyIGlzIGluIHN5bmMgbW9kZSAo d2UncmUgcnVubmluZyBhIHVzZXIKKz4gKyAgICAgY29tbWFuZCdzIGxpc3QsIHJ1bm5pbmcgY29t bWFuZCBob29rcyBvciBzaW1pbGFycyksIGFuZCB3ZQorPiArICAgICBqdXN0IHJhbiBhIHN5bmNo cm9ub3VzIGNvbW1hbmQgdGhhdCBzdGFydGVkIHRoZSB0YXJnZXQsIHdhaXQKKz4gKyAgICAgZm9y IHRoYXQgY29tbWFuZCB0byBlbmQuICAqLworPiArICBpZiAoIWludGVycHJldGVyX2FzeW5jICYm ICF3YXNfc3luYyAmJiBzeW5jX2V4ZWN1dGlvbikKKz4gKyAgICB7Cis+ICsgICAgICB3aGlsZSAo Z2RiX2RvX29uZV9ldmVudCAoKSA+PSAwKQorPiArCWlmICghc3luY19leGVjdXRpb24pCis+ICsJ ICBicmVhazsKKz4gKyAgICB9Cis+ICt9Cis+ICsKKz4gIC8qIEV4ZWN1dGUgdGhlIGxpbmUgUCBh cyBhIGNvbW1hbmQsIGluIHRoZSBjdXJyZW50IHVzZXIgY29udGV4dC4KKz4gICAgIFBhc3MgRlJP TV9UVFkgYXMgc2Vjb25kIGFyZ3VtZW50IHRvIHRoZSBkZWZpbmluZyBmdW5jdGlvbi4gICovCis+ ICAKKworCitUaGFua3MsCitKYW4KKworLS1hOFd0OHUxS213VVgzWTJDCitDb250ZW50LVR5cGU6 IHRleHQvcGxhaW47IGNoYXJzZXQ9dXMtYXNjaWkKK0NvbnRlbnQtRGlzcG9zaXRpb246IGlubGlu ZTsgZmlsZW5hbWU9MQorCitkaWZmIC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9hdHRh Y2guZXhwIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9hdHRhY2guZXhwCitpbmRleCBjOTRjMTI3 Li42ZTU2NmEzIDEwMDY0NAorLS0tIGEvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9hdHRhY2guZXhw CisrKysgYi9nZGIvdGVzdHN1aXRlL2dkYi5iYXNlL2F0dGFjaC5leHAKK0BAIC00NDcsNyArNDQ0 LDggQEAgcHJvYyB0ZXN0X2NvbW1hbmRfbGluZV9hdHRhY2hfcnVuIHt9IHsKKyAKKyAJc2V0IHRl c3QgInJ1biB0byBwcm9tcHQiCisgCWdkYl9leGl0CistCXNldCByZXMgW2dkYl9zcGF3bl93aXRo X2NtZGxpbmVfb3B0cyAiLS1waWQ9JHRlc3RwaWQgLWV4IFwic3RhcnRcIiJdCisrCXNldCByZXMg W2dkYl9zcGF3bl93aXRoX2NtZGxpbmVfb3B0cyBcCisrCQkgIi1pZXggc2V0XFwgaGVpZ2h0XFwg MCAtaWV4IHNldFxcIHdpZHRoXFwgMCAtLXBpZD0kdGVzdHBpZCAtZXggXCJzdGFydFwiIl0KKyAJ aWYgeyAkcmVzICE9IDB9IHsKKyAJICAgIGZhaWwgJHRlc3QKKyAJICAgIHJldHVybiAkcmVzCisK Ky0tYThXdDh1MUttd1VYM1kyQy0tCisKCmRpZmYgLS1naXQgYS9nZGIuc3BlYyBiL2dkYi5zcGVj CmluZGV4IGViYWIxNjkuLjg1MDM5OGQgMTAwNjQ0Ci0tLSBhL2dkYi5zcGVjCisrKyBiL2dkYi5z cGVjCkBAIC0yNiw3ICsyNiw3IEBAIFZlcnNpb246IDcuOAogCiAjIFRoZSByZWxlYXNlIGFsd2F5 cyBjb250YWlucyBhIGxlYWRpbmcgcmVzZXJ2ZWQgbnVtYmVyLCBzdGFydCBpdCBhdCAxLgogIyBg dXBzdHJlYW0nIGlzIG5vdCBhIHBhcnQgb2YgYG5hbWUnIHRvIHN0YXkgZnVsbHkgcnBtIGRlcGVu ZGVuY2llcyBjb21wYXRpYmxlIGZvciB0aGUgdGVzdGluZy4KLVJlbGVhc2U6IDIwJXs/ZGlzdH0K K1JlbGVhc2U6IDIxJXs/ZGlzdH0KIAogTGljZW5zZTogR1BMdjMrIGFuZCBHUEx2Mysgd2l0aCBl eGNlcHRpb25zIGFuZCBHUEx2MisgYW5kIEdQTHYyKyB3aXRoIGV4Y2VwdGlvbnMgYW5kIEdQTCsg YW5kIExHUEx2MisgYW5kIEJTRCBhbmQgUHVibGljIERvbWFpbiBhbmQgR0ZETAogR3JvdXA6IERl dmVsb3BtZW50L0RlYnVnZ2VycwpAQCAtNTM1LDYgKzUzNSwxMCBAQCBQYXRjaDkyNzogZ2RiLXB5 dGhvbi1naWwucGF0Y2gKICMgRml4IGNyYXNoIG9uIFB5dGhvbiBmcmFtZSBmaWx0ZXJzIHdpdGgg dW5yZWFkYWJsZSBhcmcgKEJaIDExMjYxNzcpLgogUGF0Y2g5Mjk6IHB5dGhvbi1mcmFtZWZpbHRl ci1pbnZhbGlkYXJnLnBhdGNoCiAKKyMgRml4IEdEQiBTSUdUVCogU3RvcHBlZCB3aGVuIHVzaW5n IHRoZSBQSUQgYXJndW1lbnQgKEJaIDExMzY3MDQsIFBlZHJvIEFsdmVzKS4KK1BhdGNoOTMwOiBn ZGItYXN5bmMtc3RvcHBlZC1vbi1waWQtYXJnLTFvZjIucGF0Y2gKK1BhdGNoOTMxOiBnZGItYXN5 bmMtc3RvcHBlZC1vbi1waWQtYXJnLTJvZjIucGF0Y2gKKwogJWlmIDAleyE/cmhlbDoxfSB8fCAw JXs/cmhlbH0gPiA2CiAjIFJMX1NUQVRFX0ZFRE9SQV9HREIgd291bGQgbm90IGJlIGZvdW5kIGZv cjoKICMgUGF0Y2g2NDI6IGdkYi1yZWFkbGluZTYyLWFzay1tb3JlLXJoLnBhdGNoCkBAIC04MjIs NiArODI2LDggQEAgZmluZCAtbmFtZSAiKi5pbmZvKiJ8eGFyZ3Mgcm0gLWYKICVwYXRjaDkyOCAt cDEKICVwYXRjaDkyNyAtcDEKICVwYXRjaDkyOSAtcDEKKyVwYXRjaDkzMCAtcDEKKyVwYXRjaDkz MSAtcDEKIAogJXBhdGNoODQ4IC1wMQogJWlmIDAleyE/ZWw2OjF9CkBAIC0xMzE3LDYgKzEzMjMs OSBAQCB0aGVuCiBmaQogCiAlY2hhbmdlbG9nCisqIFN1biBTZXAgIDcgMjAxNCBKYW4gS3JhdG9j aHZpbCA8amFuLmtyYXRvY2h2aWxAcmVkaGF0LmNvbT4gLSA3LjgtMjEuZmMyMQorLSBGaXggR0RC IFNJR1RUKiBTdG9wcGVkIHdoZW4gdXNpbmcgdGhlIFBJRCBhcmd1bWVudCAoQlogMTEzNjcwNCwg UGVkcm8gQWx2ZXMpLgorCiAqIFdlZCBBdWcgMjAgMjAxNCBKYW4gS3JhdG9jaHZpbCA8amFuLmty YXRvY2h2aWxAcmVkaGF0LmNvbT4gLSA3LjgtMjAuZmMyMQogLSBGaXggYmFiZWx0cmFjZSBlcnJv cnMgKFlhbyBRaSkuCiAtIEZpeCBjcmFzaCBvbiBQeXRob24gZnJhbWUgZmlsdGVycyB3aXRoIHVu cmVhZGFibGUgYXJnIChCWiAxMTI2MTc3KS4K