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: =?utf-8?b?UGV0ciBNZW7FocOtayA8cGVtZW5zaWtAcmVkaGF0LmNvbT4=?= To: git-commits@fedoraproject.org Subject: [rpms/bind] rawhide: Record ordering based unexpected exit with CNAME or DNAME (CVE-2026-12617) Date: Tue, 25 Aug 2026 19:32:51 GMT Message-ID: <178768637174.1.7611258424504726614.rpms-bind-f792799c7db4@fedoraproject.org> List-ID: X-Git-Repo: rpms/bind X-Git-Branch: rawhide X-Git-Rev: f792799c7db49e99b04b2bd9a8400ee8ec54a1a1 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvYmluZAogICAgICAgICAgICBCcmFuY2ggOiByYXdoaWRlCiAgICAgICAgICAg IENvbW1pdCA6IGY3OTI3OTljN2RiNDllOTliMDRiMmJkOWE4NDAwZWU4ZWM1NGExYTEKICAgICAg ICAgICAgQXV0aG9yIDogUGV0ciBNZW7FocOtayA8cGVtZW5zaWtAcmVkaGF0LmNvbT4KICAgICAg ICAgICAgRGF0ZSAgIDogMjAyNi0wOC0yNVQxMjo0MDo1NSswMjowMAogICAgICAgICAgICBTdGF0 cyAgOiArNzE5Ly0wIGluIDMgZmlsZShzKQogICAgICAgICAgICBVUkwgICAgOiBodHRwczovL3Ny Yy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL2JpbmQvYy9mNzkyNzk5YzdkYjQ5ZTk5YjA0YjJiZDlh ODQwMGVlOGVjNTRhMWExP2JyYW5jaD1yYXdoaWRlCgogICAgICAgICAgICBMb2c6CiAgICAgICAg ICAgIFJlY29yZCBvcmRlcmluZyBiYXNlZCB1bmV4cGVjdGVkIGV4aXQgd2l0aCBDTkFNRSBvciBE TkFNRSAoQ1ZFLTIwMjYtMTI2MTcpCgpbOS4xOF0gW0NWRS0yMDI2LTEyNjE3XSBzZWM6IHVzcjog RG8gbm8gYXNzZXJ0IGZvciBzb21lIHNwZWNpZmljcyBDTkFNRSBhbmQgRE5BTUUgcXVlcmllcwoK QSBidWcgaW4gdGhlIHJlc29sdmVyJ3MgaGFuZGxpbmcgb2YgY2VydGFpbiBjYWNoZWQgRE5BTUUg YW5kIENOQU1FIHJlc3BvbnNlcyBjb3VsZCBjYXVzZSBuYW1lZCB0byB0cmlnZ2VyIGFuIGFzc2Vy dGlvbiBmYWlsdXJlIGFuZCBleGl0LiBBbiBhdHRhY2tlciBjb250cm9sbGluZyBhIGRvbWFpbiBu YW1lIGFuZCB0aGUgYXV0aG9yaXRhdGl2ZSBETlMgc2VydmVyIGl0IGlzIGhvc3RlZCBvbiBjb3Vs ZCBleHBsb2l0IHRoaXMgYmVoYXZpb3IgdG8gY2F1c2UgYSBkZW5pYWwtb2Ytc2VydmljZS4gVGhp cyB2dWxuZXJhYmlsaXR5IGhhcyBiZWVuIGZpeGVkLgoKSVNDIHRoYW5rcyBRaWZhbiBaaGFuZyBv ZiBQYWxvIEFsdG8gTmV0d29ya3MgZm9yIGJyaW5naW5nIHRoaXMgaXNzdWUgdG8gb3VyIGF0dGVu dGlvbi4KCkNsb3NlczogaXNjLXByb2plY3RzL2JpbmQ5IzU5NDYKCls5LjE4XSBmaXg6IHRlc3Q6 IFN0YWJpbGl6ZSB0aGUgY25hbWVfZG5hbWVfbmVnY2FjaGUgdGVzdAoKVGhlIHRlc3QgcHJvdmVk IHVuc3RhYmxlIGR1ZSB0byB0aW1pbmctcmVsYXRlZCByYWNlIGNvbmRpdGlvbiwgd2hpY2ggY291 bGQgcHJvZHVjZSBib3RoIGZhbHNlIHBvc2l0aXZlIGFuZCBmYWxzZSBuZWdhdGl2ZSByZXN1bHRz LiBVc2UgYSBtb3JlIHJlbGlhYmxlIG1lY2hhbmlzbSB0byByZXByb2R1Y2UgdGhlIGlzc3VlLgoK SHVtYW4tZWZmb3J0LWxldmVsOiBsb3cKCi0tLQpkaWZmIC0tZ2l0IGEvYmluZC05LjE4LUNWRS0y MDI2LTEyNjE3LXRlc3QucGF0Y2ggYi9iaW5kLTkuMTgtQ1ZFLTIwMjYtMTI2MTctdGVzdC5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMmFkZDc4Ci0tLSAvZGV2L251 bGwKKysrIGIvYmluZC05LjE4LUNWRS0yMDI2LTEyNjE3LXRlc3QucGF0Y2gKQEAgLTAsMCArMSw0 MzUgQEAKK0Zyb20gYTMxMjk2YjEyMGVmYzk4NWZiMWZjM2M5MzI4ODJlOTY1MTU2NDczYiBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IENvbGluIFZpZGFsIDxjb2xpbkBpc2Mub3JnPgor RGF0ZTogTW9uLCAxNSBKdW4gMjAyNiAxMTozNDowOCArMDIwMAorU3ViamVjdDogW1BBVENIXSBS ZXByb2R1Y2VyIGZvciAjNTk0NiAoYXNzZXJ0aW9uIGluIHNvbWUgQ05BTUUvRE5BTUUgcXVlcmll cykKKworQWRkIGEgc3lzdGVtIHRlc3QgcmVwcm9kdWNpbmcgdGhlIGlzc3VlIHJlcG9ydGVkIGJ5 ICM1OTQ2LCB3aGljaAoraXMgYWxzbyBDVkUtMjAyNi0xMjYxNy4gVGhlcmUgYXJlIHR3byBzY2Vu YXJpb3M6CisKKy0gQSBjbGllbnQgc2VuZCBxdWVyaWVzIGZvciBhIEROQU1FIGFuZCBBIHJlY29y ZCB0byB0aGUgcmVzb2x2ZXIgKG5zMyksCisgIGFuZCB0aGUgYXV0aG9yaXRhdGl2ZSBzZXJ2ZXIg KGFuczIpIHJlc3BvbmRzIHBvc2l0aXZlbHkgdG8gdGhlIEEgcXVlcnkKKyAgYnV0IGRlbGF5IHRo ZSBETkFNRSByZXNwb25zZSBhbmQgcmVzcG9uZCBsYXRlciBuZWdhdGl2ZWx5OworCistIEEgY2xp ZW50IHNlbmQgcXVlcmllcyBmb3IgYSBDTkFNRSBhbmQgQSByZWNvcmQgdG8gdGhlIHJlc29sdmVy IChuczMpLAorICBhbmQgdGhlIGF1dGhvcml0YXRpdmUgc2VydmVyIChhbnMyKSByZXNwb25kcyBw b3NpdGl2ZWx5IHRvIHRoZSBBIHF1ZXJ5CisgIGJ1dCBkZWxheSB0aGUgQ05BTUUgcmVzcG9uc2Ug YW5kIHJlc3BvbmQgbGF0ZXIgd2l0aCBhIHNlbGYtcmVmZXJlbnRpYWwKKyAgQ05BTUUuCisKK1Ro ZSB0ZXN0IGRvZXMgbm90IGNoZWNrIHRoZSByZXN1bHRzIG9mIHRoZSBxdWVyaWVzLCBob3dldmVy LCBpdCBleHBlY3RzCit0aGUgcmVzb2x2ZXIgdG8gY29ycmVjdGx5IGhhbmRsZSB0aG9zZSBhbmQg ZG8gbm90IGFzc2VydC4KKworKGNoZXJyeSBwaWNrZWQgZnJvbSBjb21taXQgZTg4MjcxZjJlNTg0 MDEwMTU3YjA2OGNjOTk4ZGQ3NjQ1MTI3MzU2MikKKyhjaGVycnkgcGlja2VkIGZyb20gY29tbWl0 IGJiOTI4MzJmYjZhZTg5OWJlZTcyMDZjMmQ4OTY2MjU4NDYxYzJmNzEpCisKK1N0YWJpbGl6ZSB0 aW1pbmcgaW4gdGhlIGNuYW1lX2RuYW1lX25lZ2NhY2hlIHRlc3QKKworVGhlICM1OTQ2IHJlcHJv ZHVjZXIgcmVsaWVkIG9uIGFuczIgYW5zd2VyaW5nIHRoZSBuZWdhdGl2ZSBETkFNRS9DTkFNRQor cXVlcnkgYSBmaXhlZCBzZWNvbmQgYWZ0ZXIgcmVjZWl2aW5nIGl0LCByYWNpbmcgdGhhdCBkZWxh eSBhZ2FpbnN0IHRoZQorcmVzb2x2ZXIncyBwZXItcXVlcnkgdGltZW91dC4gIFdoZW4gdGhlIHRp bWVvdXQgZmlyZWQgZmlyc3QgLS0gd2hpY2gKK2hhcHBlbnMgdW5kZXIgbG9hZCwgbW9zdCBub3Rh Ymx5IHVuZGVyIFRocmVhZFNhbml0aXplciwgd2hlcmUgbmFtZWQgaXMKK3Nsb3dlZCBidXQgYW5z MiAod2FsbC1jbG9jaykgaXMgbm90IC0tIHRoZSByZXNvbHZlciBkcm9wcGVkIHRoZSBsYXRlCith bnN3ZXIsIG5ldmVyIHByb2Nlc3NlZCB0aGUgbmVnYXRpdmUgcmVzcG9uc2UsIGFuZCB0aGUgd2F0 Y2hlZCBTT0EgbmV2ZXIKK2FwcGVhcmVkLCBzbyB0aGUgdGVzdCB0aW1lZCBvdXQuICBUaGlzIG1h ZGUgaXQgZmxha3kgb24gdGhlCitzZWN1cml0eS1iaW5kLTkuMjAgQ0kuICBNZXJlbHkgc2hvcnRl bmluZyB0aGUgZml4ZWQgZGVsYXkgd291bGQgdHJhZGUKK3RoYXQgZm9yIHRoZSBvcHBvc2l0ZSwg d29yc2UgZmFpbHVyZTogdGhlIG5lZ2F0aXZlIGFuc3dlciBhcnJpdmluZworYmVmb3JlIHRoZSBw b3NpdGl2ZSBvbmUgaXMgY2FjaGVkLCBzaWxlbnRseSBub3QgZXhlcmNpc2luZyB0aGUgYnVnLgor CitSZWxlYXNlIHRoZSBuZWdhdGl2ZSBhbnN3ZXIgYmFzZWQgb24gdGhlIHJlc29sdmVyJ3MgcHJv Z3Jlc3MgaW5zdGVhZCBvZgorYSB3YWxsLWNsb2NrIGRlYWRsaW5lOiBob2xkIGl0IHVudGlsIGFu czIgaGFzIHNlbnQgdGhlIHBvc2l0aXZlIGFuc3dlcgorKGEgc2hhcmVkIGV2ZW50KSwgdGhlbiB3 YWl0IGEgc2hvcnQgc2V0dGxlIGZvciB0aGUgcmVzb2x2ZXIgdG8gY2FjaGUgaXQuCitCb3RoIHF1 ZXJpZXMgdHJhdmVyc2UgdGhlIHNhbWUgZGVsZWdhdGlvbiwgc28gYW55IGxhdGVuY3kgcmVhY2hp bmcgYW5zMgorc2hpZnRzIHRoZSBwb3NpdGl2ZSBzZW5kIGFuZCB0aGUgbmVnYXRpdmUgZmV0Y2gn cyBkZWFkbGluZSB0b2dldGhlciBhbmQKK2NhbmNlbHMgb3V0OyBvbmx5IHRoZSBzZXR0bGUsIGtl cHQgd2VsbCB1bmRlciBNSU5JTVVNX1FVRVJZX1RJTUVPVVQKKygzMDEgbXMpLCBoYXMgdG8gZml0 IGluc2lkZSB0aGUgcGVyLXF1ZXJ5IHRpbWVvdXQuCisKK1ZlcmlmaWVkIHRoYXQgdGhlIHN0YWJp bGl6ZWQgdGVzdCBzdGlsbCB0cmlnZ2VycyB0aGUKK0lOU0lTVChuYW1lcmVsbiA9PSBkbnNfbmFt ZXJlbG5fc3ViZG9tYWluKSBhc3NlcnRpb24gd2hlbiB0aGUgcmVzb2x2ZXIKK2ZpeCBpcyByZXZl cnRlZC4KKworQXNzaXN0ZWQtYnk6IENsYXVkZTpjbGF1ZGUtb3B1cy00LTgKKyhjaGVycnkgcGlj a2VkIGZyb20gY29tbWl0IDczODQ1NmQ5MTU2NDUyNmU2ZjE1YzM4NThiNGM4MDljZDY3NDllMWUp CisoY2hlcnJ5IHBpY2tlZCBmcm9tIGNvbW1pdCAwYzIwZWU0ZThlNjg5OTljYTYxNzQzNGNkZTY1 ZGQzODA4ZjU3ZDhjKQorCitTcGxpdCBjbmFtZV9kbmFtZV9uZWdjYWNoZSBpbnRvIHBlci1zY2Vu YXJpbyBtb2R1bGVzCisKK1RoZSBETkFNRSBhbmQgQ05BTUUgc2NlbmFyaW9zIHNoYXJlZCBhIHNp bmdsZSBtb2R1bGUsIGhlbmNlIGEgc2luZ2xlCittb2R1bGUtc2NvcGVkIG5zMyAodGhlIGZyYW1l d29yayBzZXRzIHNlcnZlcnMgdXAgcGVyIG1vZHVsZSwgbm90IHBlcgordGVzdCBmdW5jdGlvbiku ICB0ZXN0X2RuYW1lX25lZ2NhY2hlIGNhY2hlZCBmb28udGVzdC4gRE5BTUUgYmFyLnRlc3QuOwor d2hlbiB0ZXN0X2NuYW1lX25lZ2NhY2hlIHJhbiBuZXh0IGFnYWluc3QgdGhlIHNhbWUgcmVzb2x2 ZXIsCitjbmFtZS5mb28udGVzdC4gd2FzIEROQU1FLW1hcHBlZCB0byBjbmFtZS5iYXIudGVzdC4s IHNvIHRoZSByZXNvbHZlcgorbmV2ZXIgcXVlcmllZCBhbnMyIGZvciB0aGUgc2VsZi1yZWZlcmVu dGlhbCBDTkFNRSBhbmQgdGhhdCBoYWxmIG9mIHRoZQorYnVnIHdhcyBuZXZlciBleGVyY2lzZWQu ICBUaGUgaGFyZGNvZGVkLCB1bmFuY2hvcmVkICJmb28udGVzdC4iIHdhdGNoZXIKK3N0aWxsIG1h dGNoZWQgdGVzdF9kbmFtZSdzIGxlZnRvdmVyIFNPQSwgc28gdGVzdF9jbmFtZSBwYXNzZWQgd2l0 aG91dAordGVzdGluZyBhbnl0aGluZyAtLSB0aGUgQ05BTUUgYXNzZXJ0aW9uIGhhZCBubyBjb3Zl cmFnZS4KKworR2l2ZSBlYWNoIHNjZW5hcmlvIGl0cyBvd24gbW9kdWxlIHNvIGVhY2ggZ2V0cyBh IGZyZXNoIHNlcnZlciBzZXQsIGFuZAorYW5jaG9yIHRoZSB3YXRjaGVyIHRvIHRoZSBxdWVyaWVk IG5hbWUgc28gYSB0ZXN0IGNhbm5vdCBwYXNzIG9uIGFuCit1bnJlbGF0ZWQgcmVjb3JkLgorCitX aXRoIHRoZSByZXNvbHZlciBmaXggcmV2ZXJ0ZWQsIGVhY2ggbW9kdWxlIG5vdyBpbmRlcGVuZGVu dGx5IHRyaWdnZXJzCitpdHMgb3duIGFzc2VydGlvbjoKKworICAgIEROQU1FICBxdWVyeS5jIElO U0lTVChuYW1lcmVsbiA9PSBkbnNfbmFtZXJlbG5fc3ViZG9tYWluKQorICAgIENOQU1FICBxdWVy eS5jIElOU0lTVChxY3R4LT5yZGF0YXNldCA9PSBOVUxMIHx8IHFjdHgtPnF0eXBlID09IGRuYW1l KQorCitBc3Npc3RlZC1ieTogQ2xhdWRlOmNsYXVkZS1vcHVzLTQtOAorKGNoZXJyeSBwaWNrZWQg ZnJvbSBjb21taXQgM2VmMGI4ZDA0YTE2NTM0MDdjZmI5ZWU4ODc3MmFlMTg2ODliMTMxOCkKKyhj aGVycnkgcGlja2VkIGZyb20gY29tbWl0IDg4NzEyNDMxNWYwM2EwMDZjNGRjNzZlNDhhZTNkMGQ4 YWFjM2M0MDcpCistLS0KKyAuLi4vc3lzdGVtL2NuYW1lX2RuYW1lX25lZ2NhY2hlL2FuczIvYW5z LnB5ICAgfCAxNDggKysrKysrKysrKysrKysrKysrCisgLi4uL3N5c3RlbS9jbmFtZV9kbmFtZV9u ZWdjYWNoZS9jb21tb24ucHkgICAgIHwgIDQ2ICsrKysrKworIC4uLi9jbmFtZV9kbmFtZV9uZWdj YWNoZS9uczEvYmFyLnRlc3QuZGIgICAgICB8ICAgNSArCisgLi4uL2NuYW1lX2RuYW1lX25lZ2Nh Y2hlL25zMS9uYW1lZC5jb25mLmoyICAgIHwgIDI0ICsrKworIC4uLi9zeXN0ZW0vY25hbWVfZG5h bWVfbmVnY2FjaGUvbnMxL3Jvb3QuZGIgICB8ICAgNiArCisgLi4uL3N5c3RlbS9jbmFtZV9kbmFt ZV9uZWdjYWNoZS9uczEvdGVzdC5kYiAgIHwgICA4ICsKKyAuLi4vY25hbWVfZG5hbWVfbmVnY2Fj aGUvbnMzL25hbWVkLmNvbmYuajIgICAgfCAgMTEgKysKKyAuLi4vdGVzdHNfY25hbWVfbmVnY2Fj aGUucHkgICAgICAgICAgICAgICAgICAgfCAgMTYgKysKKyAuLi4vdGVzdHNfZG5hbWVfbmVnY2Fj aGUucHkgICAgICAgICAgICAgICAgICAgfCAgMTYgKysKKyA5IGZpbGVzIGNoYW5nZWQsIDI4MCBp bnNlcnRpb25zKCspCisgY3JlYXRlIG1vZGUgMTAwNjQ0IGJpbi90ZXN0cy9zeXN0ZW0vY25hbWVf ZG5hbWVfbmVnY2FjaGUvYW5zMi9hbnMucHkKKyBjcmVhdGUgbW9kZSAxMDA2NDQgYmluL3Rlc3Rz L3N5c3RlbS9jbmFtZV9kbmFtZV9uZWdjYWNoZS9jb21tb24ucHkKKyBjcmVhdGUgbW9kZSAxMDA2 NDQgYmluL3Rlc3RzL3N5c3RlbS9jbmFtZV9kbmFtZV9uZWdjYWNoZS9uczEvYmFyLnRlc3QuZGIK KyBjcmVhdGUgbW9kZSAxMDA2NDQgYmluL3Rlc3RzL3N5c3RlbS9jbmFtZV9kbmFtZV9uZWdjYWNo ZS9uczEvbmFtZWQuY29uZi5qMgorIGNyZWF0ZSBtb2RlIDEwMDY0NCBiaW4vdGVzdHMvc3lzdGVt L2NuYW1lX2RuYW1lX25lZ2NhY2hlL25zMS9yb290LmRiCisgY3JlYXRlIG1vZGUgMTAwNjQ0IGJp bi90ZXN0cy9zeXN0ZW0vY25hbWVfZG5hbWVfbmVnY2FjaGUvbnMxL3Rlc3QuZGIKKyBjcmVhdGUg bW9kZSAxMDA2NDQgYmluL3Rlc3RzL3N5c3RlbS9jbmFtZV9kbmFtZV9uZWdjYWNoZS9uczMvbmFt ZWQuY29uZi5qMgorIGNyZWF0ZSBtb2RlIDEwMDY0NCBiaW4vdGVzdHMvc3lzdGVtL2NuYW1lX2Ru YW1lX25lZ2NhY2hlL3Rlc3RzX2NuYW1lX25lZ2NhY2hlLnB5CisgY3JlYXRlIG1vZGUgMTAwNjQ0 IGJpbi90ZXN0cy9zeXN0ZW0vY25hbWVfZG5hbWVfbmVnY2FjaGUvdGVzdHNfZG5hbWVfbmVnY2Fj aGUucHkKKworZGlmZiAtLWdpdCBhL2Jpbi90ZXN0cy9zeXN0ZW0vY25hbWVfZG5hbWVfbmVnY2Fj aGUvYW5zMi9hbnMucHkgYi9iaW4vdGVzdHMvc3lzdGVtL2NuYW1lX2RuYW1lX25lZ2NhY2hlL2Fu czIvYW5zLnB5CituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAwMC4uMzkyZmUx ZTA4OAorLS0tIC9kZXYvbnVsbAorKysrIGIvYmluL3Rlc3RzL3N5c3RlbS9jbmFtZV9kbmFtZV9u ZWdjYWNoZS9hbnMyL2Fucy5weQorQEAgLTAsMCArMSwxNDggQEAKKysiIiIKKytDb3B5cmlnaHQg KEMpIEludGVybmV0IFN5c3RlbXMgQ29uc29ydGl1bSwgSW5jLiAoIklTQyIpCisrCisrU1BEWC1M aWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjAKKysKKytUaGlzIFNvdXJjZSBDb2RlIEZvcm0gaXMg c3ViamVjdCB0byB0aGUgdGVybXMgb2YgdGhlIE1vemlsbGEgUHVibGljCisrTGljZW5zZSwgdi4g Mi4wLiAgSWYgYSBjb3B5IG9mIHRoZSBNUEwgd2FzIG5vdCBkaXN0cmlidXRlZCB3aXRoIHRoaXMK KytmaWxlLCB5b3UgY2FuIG9idGFpbiBvbmUgYXQgaHR0cHM6Ly9tb3ppbGxhLm9yZy9NUEwvMi4w Ly4KKysKKytTZWUgdGhlIENPUFlSSUdIVCBmaWxlIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyB3b3Jr IGZvciBhZGRpdGlvbmFsCisraW5mb3JtYXRpb24gcmVnYXJkaW5nIGNvcHlyaWdodCBvd25lcnNo aXAuCisrIiIiCisrCisrZnJvbSBjb2xsZWN0aW9ucy5hYmMgaW1wb3J0IEFzeW5jR2VuZXJhdG9y CisrCisraW1wb3J0IGFzeW5jaW8KKysKKytmcm9tIGRucyBpbXBvcnQgbmFtZSwgcmNvZGUsIHJk YXRhY2xhc3MsIHJkYXRhdHlwZSwgcnJzZXQKKysKKytmcm9tIGlzY3Rlc3QuYXN5bmNzZXJ2ZXIg aW1wb3J0ICgKKysgICAgQXN5bmNEbnNTZXJ2ZXIsCisrICAgIERuc1Jlc3BvbnNlU2VuZCwKKysg ICAgUW5hbWVRdHlwZUhhbmRsZXIsCisrICAgIFF1ZXJ5Q29udGV4dCwKKysgICAgU3RhdGljUmVz cG9uc2VIYW5kbGVyLAorKykKKysKKysjIFRoZSBhdHRhY2sgcmVsaWVzIG9uIHRoZSByZXNvbHZl ciBjYWNoaW5nIHRoZSBwb3NpdGl2ZSBDTkFNRS9ETkFNRSBhbnN3ZXIKKysjICpiZWZvcmUqIGl0 IHByb2Nlc3NlcyB0aGUgbmVnYXRpdmUgYW5zd2VyIGZvciB0aGUgc2FtZSBuYW1lLiAgVGhlIG5l Z2F0aXZlCisrIyBhbnN3ZXIgbXVzdCB0aGVyZWZvcmUgYmUgaGVsZCBiYWNrIHVudGlsIHRoZSBw b3NpdGl2ZSBvbmUgaGFzIGJlZW4gc2VudCwgYnV0CisrIyByZWxlYXNlZCBhZ2FpbiB3aGlsZSB0 aGUgbmVnYXRpdmUgZmV0Y2ggaXMgc3RpbGwgd2FpdGluZyBmb3IgaXQuCisrIworKyMgUmVsZWFz aW5nIGl0IGF0IGEgZml4ZWQgd2FsbC1jbG9jayBkZWxheSAodGhlIG9yaWdpbmFsIGFwcHJvYWNo KSBpcyByYWN5OiB0aGUKKysjIGRlbGF5IG11c3QgYmUgbGFyZ2VyIHRoYW4gdGhlIHRpbWUgaXQg dGFrZXMgdGhlIHJlc29sdmVyIHRvIGNhY2hlIHRoZQorKyMgcG9zaXRpdmUgYW5zd2VyLCB5ZXQg c21hbGxlciB0aGFuIHRoZSByZXNvbHZlcidzIHBlci1xdWVyeSB0aW1lb3V0LiAgVW5kZXIKKysj IGxvYWQgLS0gbW9zdCBub3RhYmx5IFRocmVhZFNhbml0aXplciwgd2hpY2ggc2xvd3MgZG93biBg bmFtZWRgIGJ1dCBub3QgdGhpcworKyMgKHdhbGwtY2xvY2spIHNlcnZlciAtLSB0aG9zZSBib3Vu ZHMgY2FuIGJlIHZpb2xhdGVkIGluIGVpdGhlciBkaXJlY3Rpb24sCisrIyBtYWtpbmcgdGhlIHRl c3QgZWl0aGVyIHRpbWUgb3V0ICgjNTk0NiBDSSBmYWlsdXJlcykgb3IsIHdvcnNlLCBzaWxlbnRs eSBzdG9wCisrIyBleGVyY2lzaW5nIHRoZSBidWcuCisrIworKyMgSW5zdGVhZCwgZ2F0ZSB0aGUg bmVnYXRpdmUgYW5zd2VyIG9uIGFuIGV2ZW50IHNldCByaWdodCBhZnRlciB0aGUgcG9zaXRpdmUK KysjIGFuc3dlciBpcyBzZW50LiAgQm90aCBxdWVyaWVzIHRyYXZlcnNlIHRoZSBzYW1lIGRlbGVn YXRpb24sIHNvIGFueSBsYXRlbmN5IGluCisrIyByZWFjaGluZyB0aGlzIHNlcnZlciBzaGlmdHMg dGhlIHBvc2l0aXZlIHNlbmQgYW5kIHRoZSBuZWdhdGl2ZSBmZXRjaCdzCisrIyBkZWFkbGluZSB0 b2dldGhlciBhbmQgY2FuY2VscyBvdXQ7IG9ubHkgdGhlIHNtYWxsIHNldHRsZSBiZWxvdyBoYXMg dG8gZml0CisrIyBpbnNpZGUgdGhlIHBlci1xdWVyeSB0aW1lb3V0LgorKyMKKysjIF9TRVRUTEUg bXVzdCBiZSBsb25nZXIgdGhhbiB0aGUgZmV3IG1pbGxpc2Vjb25kcyB0aGUgcmVzb2x2ZXIgbmVl ZHMgdG8gY2FjaGUKKysjIHRoZSBwb3NpdGl2ZSBhbnN3ZXIsIGFuZCBzaG9ydGVyIHRoYW4gTUlO SU1VTV9RVUVSWV9USU1FT1VUICgzMDEgbXMgaW4KKysjIGxpYi9kbnMvcmVzb2x2ZXIuYykgc28g dGhlIGluLWZsaWdodCBuZWdhdGl2ZSBmZXRjaCBoYXMgbm90IGdpdmVuIHVwIHlldC4KKytfU0VU VExFID0gMC4xCisrCisrX2RuYW1lX3Bvc2l0aXZlX3NlbnQgPSBhc3luY2lvLkV2ZW50KCkKKytf Y25hbWVfcG9zaXRpdmVfc2VudCA9IGFzeW5jaW8uRXZlbnQoKQorKworKworK2FzeW5jIGRlZiBf aG9sZF91bnRpbF9wb3NpdGl2ZV9jYWNoZWQocG9zaXRpdmVfc2VudDogYXN5bmNpby5FdmVudCkg LT4gTm9uZToKKysgICAgYXdhaXQgcG9zaXRpdmVfc2VudC53YWl0KCkKKysgICAgYXdhaXQgYXN5 bmNpby5zbGVlcChfU0VUVExFKQorKworKworK2RlZiBidWlsZF9ycnNldCgKKysgICAgcW5hbWU6 IG5hbWUuTmFtZSB8IHN0ciwKKysgICAgcnR5cGU6IHJkYXRhdHlwZS5SZGF0YVR5cGUsCisrICAg IHJkYXRhOiBzdHIsCisrICAgIHR0bDogaW50ID0gMzAwLAorKykgLT4gcnJzZXQuUlJzZXQ6Cisr ICAgIHJldHVybiBycnNldC5mcm9tX3RleHQocW5hbWUsIHR0bCwgcmRhdGFjbGFzcy5JTiwgcnR5 cGUsIHJkYXRhKQorKworKworK2NsYXNzIEZvb1Rlc3ROc0hhbmRsZXIoUW5hbWVRdHlwZUhhbmRs ZXIsIFN0YXRpY1Jlc3BvbnNlSGFuZGxlcik6CisrICAgIHFuYW1lcyA9IFsiZm9vLnRlc3QuIl0K KysgICAgcXR5cGVzID0gW3JkYXRhdHlwZS5OU10KKysgICAgYW5zd2VyID0gW2J1aWxkX3Jyc2V0 KCJmb28udGVzdC4iLCByZGF0YXR5cGUuTlMsICJucy5mb28udGVzdC4iKV0KKysgICAgYWRkaXRp b25hbCA9IFtidWlsZF9ycnNldCgibnMuZm9vLnRlc3QuIiwgcmRhdGF0eXBlLkEsICIxMC41My4w LjIiKV0KKysKKysKKytjbGFzcyBEZWxheWVkRG5hbWVOZWdIYW5kbGVyKFFuYW1lUXR5cGVIYW5k bGVyLCBTdGF0aWNSZXNwb25zZUhhbmRsZXIpOgorKyAgICBxbmFtZXMgPSBbImZvby50ZXN0LiJd CisrICAgIHF0eXBlcyA9IFtyZGF0YXR5cGUuRE5BTUVdCisrICAgIGF1dGhvcml0eSA9IFsKKysg ICAgICAgIGJ1aWxkX3Jyc2V0KAorKyAgICAgICAgICAgICJmb28udGVzdC4iLAorKyAgICAgICAg ICAgIHJkYXRhdHlwZS5TT0EsCisrICAgICAgICAgICAgIm5zLnRlc3QuIG9wLm5zLnRlc3QuIDIw ODE1MDkxODMgODY0MDAgMzYwMCAzNjAwMDAwIDMwMCIsCisrICAgICAgICApCisrICAgIF0KKysK KysgICAgYXN5bmMgZGVmIGdldF9yZXNwb25zZXMoCisrICAgICAgICBzZWxmLCBxY3R4OiBRdWVy eUNvbnRleHQKKysgICAgKSAtPiBBc3luY0dlbmVyYXRvcltEbnNSZXNwb25zZVNlbmQsIE5vbmVd OgorKyAgICAgICAgYXdhaXQgX2hvbGRfdW50aWxfcG9zaXRpdmVfY2FjaGVkKF9kbmFtZV9wb3Np dGl2ZV9zZW50KQorKyAgICAgICAgYXN5bmMgZm9yIHJlc3BvbnNlIGluIHN1cGVyKCkuZ2V0X3Jl c3BvbnNlcyhxY3R4KToKKysgICAgICAgICAgICB5aWVsZCByZXNwb25zZQorKworKworK2NsYXNz IERuYW1lUG9zSGFuZGxlcihRbmFtZVF0eXBlSGFuZGxlciwgU3RhdGljUmVzcG9uc2VIYW5kbGVy KToKKysgICAgcW5hbWVzID0gWyJhLmZvby50ZXN0LiJdCisrICAgIHF0eXBlcyA9IFtyZGF0YXR5 cGUuQV0KKysgICAgYW5zd2VyID0gWworKyAgICAgICAgYnVpbGRfcnJzZXQoImZvby50ZXN0LiIs IHJkYXRhdHlwZS5ETkFNRSwgImJhci50ZXN0LiIpLAorKyAgICAgICAgYnVpbGRfcnJzZXQoImEu Zm9vLnRlc3QuIiwgcmRhdGF0eXBlLkNOQU1FLCAiYS5iYXIudGVzdC4iKSwKKysgICAgXQorKwor KyAgICBhc3luYyBkZWYgZ2V0X3Jlc3BvbnNlcygKKysgICAgICAgIHNlbGYsIHFjdHg6IFF1ZXJ5 Q29udGV4dAorKyAgICApIC0+IEFzeW5jR2VuZXJhdG9yW0Ruc1Jlc3BvbnNlU2VuZCwgTm9uZV06 CisrICAgICAgICBhc3luYyBmb3IgcmVzcG9uc2UgaW4gc3VwZXIoKS5nZXRfcmVzcG9uc2VzKHFj dHgpOgorKyAgICAgICAgICAgIHlpZWxkIHJlc3BvbnNlCisrICAgICAgICBfZG5hbWVfcG9zaXRp dmVfc2VudC5zZXQoKQorKworKworK2NsYXNzIENuYW1lSGFuZGxlcihRbmFtZVF0eXBlSGFuZGxl cik6CisrICAgIHFuYW1lcyA9IFsiY25hbWUuZm9vLnRlc3QuIl0KKysgICAgcXR5cGVzID0gW3Jk YXRhdHlwZS5DTkFNRSwgcmRhdGF0eXBlLkFdCisrICAgIGFuc3dlciA9IFtidWlsZF9ycnNldCgi Y25hbWUuZm9vLnRlc3QuIiwgcmRhdGF0eXBlLkNOQU1FLCAiY25hbWUuZm9vLnRlc3QuIildCisr ICAgIGF1dGhvcml0eSA9IFsKKysgICAgICAgIGJ1aWxkX3Jyc2V0KAorKyAgICAgICAgICAgICJj bmFtZS5mb28udGVzdC4iLAorKyAgICAgICAgICAgIHJkYXRhdHlwZS5TT0EsCisrICAgICAgICAg ICAgIm5zLnRlc3QuIG9wLm5zLnRlc3QuIDIwODE1MDkxODMgODY0MDAgMzYwMCAzNjAwMDAwIDMw MCIsCisrICAgICAgICApCisrICAgIF0KKysKKysgICAgYXN5bmMgZGVmIGdldF9yZXNwb25zZXMo CisrICAgICAgICBzZWxmLCBxY3R4OiBRdWVyeUNvbnRleHQKKysgICAgKSAtPiBBc3luY0dlbmVy YXRvcltEbnNSZXNwb25zZVNlbmQsIE5vbmVdOgorKyAgICAgICAgaWYgcWN0eC5xdHlwZSA9PSBy ZGF0YXR5cGUuQ05BTUU6CisrICAgICAgICAgICAgYXdhaXQgX2hvbGRfdW50aWxfcG9zaXRpdmVf Y2FjaGVkKF9jbmFtZV9wb3NpdGl2ZV9zZW50KQorKyAgICAgICAgICAgIHFjdHgucHJlcGFyZV9u ZXdfcmVzcG9uc2Uod2l0aF96b25lX2RhdGE9RmFsc2UpCisrICAgICAgICAgICAgcWN0eC5yZXNw b25zZS5hdXRob3JpdHkuZXh0ZW5kKHNlbGYuYXV0aG9yaXR5KQorKyAgICAgICAgICAgIHlpZWxk IERuc1Jlc3BvbnNlU2VuZChxY3R4LnJlc3BvbnNlLCBhdXRob3JpdGF0aXZlPVRydWUpCisrICAg ICAgICBlbHNlOgorKyAgICAgICAgICAgIHFjdHgucHJlcGFyZV9uZXdfcmVzcG9uc2Uod2l0aF96 b25lX2RhdGE9RmFsc2UpCisrICAgICAgICAgICAgcWN0eC5yZXNwb25zZS5hbnN3ZXIuZXh0ZW5k KHNlbGYuYW5zd2VyKQorKyAgICAgICAgICAgIHlpZWxkIERuc1Jlc3BvbnNlU2VuZChxY3R4LnJl c3BvbnNlLCBhdXRob3JpdGF0aXZlPVRydWUpCisrICAgICAgICAgICAgX2NuYW1lX3Bvc2l0aXZl X3NlbnQuc2V0KCkKKysKKysKKytkZWYgbWFpbigpIC0+IE5vbmU6CisrICAgIHNlcnZlciA9IEFz eW5jRG5zU2VydmVyKGRlZmF1bHRfYWE9VHJ1ZSwgZGVmYXVsdF9yY29kZT1yY29kZS5OT0VSUk9S KQorKyAgICBzZXJ2ZXIuaW5zdGFsbF9yZXNwb25zZV9oYW5kbGVycygKKysgICAgICAgIEZvb1Rl c3ROc0hhbmRsZXIoKSwgRGVsYXllZERuYW1lTmVnSGFuZGxlcigpLCBEbmFtZVBvc0hhbmRsZXIo KSwgQ25hbWVIYW5kbGVyKCkKKysgICAgKQorKyAgICBzZXJ2ZXIucnVuKCkKKysKKysKKytpZiBf X25hbWVfXyA9PSAiX19tYWluX18iOgorKyAgICBtYWluKCkKK2RpZmYgLS1naXQgYS9iaW4vdGVz dHMvc3lzdGVtL2NuYW1lX2RuYW1lX25lZ2NhY2hlL2NvbW1vbi5weSBiL2Jpbi90ZXN0cy9zeXN0 ZW0vY25hbWVfZG5hbWVfbmVnY2FjaGUvY29tbW9uLnB5CituZXcgZmlsZSBtb2RlIDEwMDY0NAor aW5kZXggMDAwMDAwMDAwMC4uMzk3Y2ZkZmEzZAorLS0tIC9kZXYvbnVsbAorKysrIGIvYmluL3Rl c3RzL3N5c3RlbS9jbmFtZV9kbmFtZV9uZWdjYWNoZS9jb21tb24ucHkKK0BAIC0wLDAgKzEsNDYg QEAKKysjIENvcHlyaWdodCAoQykgSW50ZXJuZXQgU3lzdGVtcyBDb25zb3J0aXVtLCBJbmMuICgi SVNDIikKKysjCisrIyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMAorKyMKKysjIFRo aXMgU291cmNlIENvZGUgRm9ybSBpcyBzdWJqZWN0IHRvIHRoZSB0ZXJtcyBvZiB0aGUgTW96aWxs YSBQdWJsaWMKKysjIExpY2Vuc2UsIHYuIDIuMC4gIElmIGEgY29weSBvZiB0aGUgTVBMIHdhcyBu b3QgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzCisrIyBmaWxlLCB5b3UgY2FuIG9idGFpbiBvbmUgYXQg aHR0cHM6Ly9tb3ppbGxhLm9yZy9NUEwvMi4wLy4KKysjCisrIyBTZWUgdGhlIENPUFlSSUdIVCBm aWxlIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyB3b3JrIGZvciBhZGRpdGlvbmFsCisrIyBpbmZvcm1h dGlvbiByZWdhcmRpbmcgY29weXJpZ2h0IG93bmVyc2hpcC4KKysKKytmcm9tIG9zIGltcG9ydCBl bnZpcm9uCisrZnJvbSByZSBpbXBvcnQgY29tcGlsZSBhcyBSZQorK2Zyb20gcmUgaW1wb3J0IGVz Y2FwZQorK2Zyb20gc29ja2V0IGltcG9ydCBBRl9JTkVULCBTT0NLX0RHUkFNLCBzb2NrZXQKKysK KytpbXBvcnQgaXNjdGVzdAorKworKworK2RlZiBydW5fYXR0YWNrKG5zLCBuYW1lMSwgdHlwZTEs IG5hbWUyLCB0eXBlMik6CisrICAgIG1zZzEgPSBpc2N0ZXN0LnF1ZXJ5LmNyZWF0ZShuYW1lMSwg dHlwZTEsIGNkPVRydWUpCisrICAgIG1zZzIgPSBpc2N0ZXN0LnF1ZXJ5LmNyZWF0ZShuYW1lMiwg dHlwZTIsIGNkPVRydWUpCisrICAgIHBvcnQgPSBpbnQoZW52aXJvblsiUE9SVCJdKQorKworKyAg ICB3aXRoIHNvY2tldChBRl9JTkVULCBTT0NLX0RHUkFNKSBhcyBzb2NrOgorKyAgICAgICAgIyBU aGUgb3JkZXIgdGhlIHJlcXVlc3RzIGdvIG91dCBkb2Vzbid0IG1hdHRlci4gV2hhdCBpcyBpbXBv cnRhbnQgaXMKKysgICAgICAgICMgdGhhdCB0aGUgZmlyc3QgcXVlcnkgc3RhcnRzIHJlY3Vyc2lv biBiZWZvcmUgdGhlIHNlY29uZCBxdWVyeSByZXR1cm5zCisrICAgICAgICAjIHRoZSBhbnN3ZXIs IGFuZCB0aGUgc2Vjb25kIHF1ZXJ5IHJldHVybnMgdGhlIGFuc3dlciBiZWZvcmUgdGhlIGZpcnN0 CisrICAgICAgICAjIHF1ZXJ5IHJldHVybnMgdGhlIGFuc3dlci4gKFNvLCB3aGVuIHRoZSBOT0VS Uk9SL05PREFUQSBjb21lcyBiYWNrIGZyb20KKysgICAgICAgICMgdGhlIGZpcnN0IHF1ZXJ5LCB0 aGUgY2FjaGUgaXMgcXVlcmllZCBhbmQgd2UgZ2V0IHRoZSBwb3NpdGl2ZSByZXNwb25zZQorKyAg ICAgICAgIyBjYWNoZWQgZnJvbSB0aGUgc2Vjb25kIHF1ZXJ5IGF0dGFjaGVkIHRvIHRoZSBmcmVz cCByZGF0YXNldCBvZiB0aGUKKysgICAgICAgICMgcmVzcG9uc2Ugb2YgdGhlIGZpcnN0IHF1ZXJ5 LikKKysgICAgICAgICMgVGhhdCBvcmRlcmluZyBpcyBlbmZvcmNlZCBieSBhbnMyLCB3aGljaCBo b2xkcyBiYWNrIHRoZSBuZWdhdGl2ZQorKyAgICAgICAgIyBhbnN3ZXIgdG8gdGhlIGZpcnN0IHF1 ZXJ5IHVudGlsIGl0IGhhcyBhbnN3ZXJlZCB0aGUgc2Vjb25kIG9uZSAoc2VlCisrICAgICAgICAj IGFuczIvYW5zLnB5KTsgdGhlIHJlc29sdmVyIG11c3Qgbm90IGNyYXNoIHdoaWxlIHJlY29uY2ls aW5nIHRoZW0uCisrICAgICAgICBzb2NrLnNlbmR0byhtc2cxLnRvX3dpcmUoKSwgKG5zLmlwLCBw b3J0KSkKKysgICAgICAgIHNvY2suc2VuZHRvKG1zZzIudG9fd2lyZSgpLCAobnMuaXAsIHBvcnQp KQorKworKyAgICAjIFRoZSBzZWNvbmQgcXVlcnkgY29tZXMgYmFjayBpbW1lZGlhdGVseSwgdGhl IHJlc29sdmVyIGNhY2hlcyB0aGUgRE5BTUUuCisrICAgICMgVGhlIGZpcnN0IHF1ZXJ5IGNvbWVz IGJhY2sgc2hvcnRseSBhZnRlciwgb25jZSBhbnMyIGhhcyByZWxlYXNlZCB0aGUKKysgICAgIyBu ZWdhdGl2ZSBhbnN3ZXIsIGFuZCBzaG91bGQgbm90IGNyYXNoIHRoZSBzZXJ2ZXIuICBXYWl0IGZv ciB0aGUgbmVnYXRpdmUKKysgICAgIyBTT0EgZm9yIHRoaXMgc3BlY2lmaWMgbmFtZSAobm90IGp1 c3QgYW55IGZvby50ZXN0LiBvbmUpIHNvIHRoZSB0ZXN0IGNhbm5vdAorKyAgICAjIHBhc3Mgb24g YW4gdW5yZWxhdGVkIHJlY29yZC4KKysgICAgc29hID0gUmUocmYiKD88IVtcdy5dKXtlc2NhcGUo bmFtZTEpfS4qSU5ccytTT0Fccytuc1wudGVzdFwuXHMrb3BcLm5zXC50ZXN0XC4iKQorKyAgICB3 aXRoIG5zLndhdGNoX2xvZ19mcm9tX3N0YXJ0KHRpbWVvdXQ9MTUpIGFzIHdhdGNoZXI6CisrICAg ICAgICB3YXRjaGVyLndhaXRfZm9yX3NlcXVlbmNlKFtzb2FdKQorZGlmZiAtLWdpdCBhL2Jpbi90 ZXN0cy9zeXN0ZW0vY25hbWVfZG5hbWVfbmVnY2FjaGUvbnMxL2Jhci50ZXN0LmRiIGIvYmluL3Rl c3RzL3N5c3RlbS9jbmFtZV9kbmFtZV9uZWdjYWNoZS9uczEvYmFyLnRlc3QuZGIKK25ldyBmaWxl IG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMDAwLi44NDBiOWMzYTJjCistLS0gL2Rldi9udWxs CisrKysgYi9iaW4vdGVzdHMvc3lzdGVtL2NuYW1lX2RuYW1lX25lZ2NhY2hlL25zMS9iYXIudGVz dC5kYgorQEAgLTAsMCArMSw1IEBACisrJFRUTCAzMDAKKytiYXIudGVzdC4gICAgICAgIElOIFNP QSAgbnMuYmFyLnRlc3QuIGhvc3RtYXN0ZXIuYmFyLnRlc3QuIDEgNjAwIDYwMCAxMjAwIDYwMAor K2Jhci50ZXN0LiAgICAgICAgTlMgICAgICBucy5iYXIudGVzdC4KKytucyAgICAJCSBBICAgICAg IDEwLjUzLjAuMQorK2EgICAgICAJCSBBICAgICAgIDEwLjAuMC4xCitkaWZmIC0tZ2l0IGEvYmlu L3Rlc3RzL3N5c3RlbS9jbmFtZV9kbmFtZV9uZWdjYWNoZS9uczEvbmFtZWQuY29uZi5qMiBiL2Jp bi90ZXN0cy9zeXN0ZW0vY25hbWVfZG5hbWVfbmVnY2FjaGUvbnMxL25hbWVkLmNvbmYuajIKK25l dyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMDAwLi5kNzJkZDExODFkCistLS0gL2Rl di9udWxsCisrKysgYi9iaW4vdGVzdHMvc3lzdGVtL2NuYW1lX2RuYW1lX25lZ2NhY2hlL25zMS9u YW1lZC5jb25mLmoyCitAQCAtMCwwICsxLDI0IEBACisrb3B0aW9ucyB7CisrICAgIHF1ZXJ5LXNv dXJjZSBhZGRyZXNzIEBucy5pcEA7CisrICAgIHBvcnQgQFBPUlRAOworKyAgICBwaWQtZmlsZSAi bmFtZWQucGlkIjsKKysgICAgbGlzdGVuLW9uIHsgQG5zLmlwQDsgfTsKKysgICAgbGlzdGVuLW9u LXY2IHsgbm9uZTsgfTsKKysgICAgcmVjdXJzaW9uIG5vOworKyAgICBkbnNzZWMtdmFsaWRhdGlv biBubzsKKyt9OworKworK3pvbmUgIi4iIHsKKysJdHlwZSBwcmltYXJ5OworKwlmaWxlICJyb290 LmRiIjsKKyt9OworKworK3pvbmUgInRlc3QuIiB7CisrCXR5cGUgcHJpbWFyeTsKKysJZmlsZSAi dGVzdC5kYiI7CisrfTsKKysKKyt6b25lICJiYXIudGVzdC4iIHsKKysJdHlwZSBwcmltYXJ5Owor KwlmaWxlICJiYXIudGVzdC5kYiI7CisrfTsKK2RpZmYgLS1naXQgYS9iaW4vdGVzdHMvc3lzdGVt L2NuYW1lX2RuYW1lX25lZ2NhY2hlL25zMS9yb290LmRiIGIvYmluL3Rlc3RzL3N5c3RlbS9jbmFt ZV9kbmFtZV9uZWdjYWNoZS9uczEvcm9vdC5kYgorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4 IDAwMDAwMDAwMDAuLmM0NTZjNDViOWQKKy0tLSAvZGV2L251bGwKKysrKyBiL2Jpbi90ZXN0cy9z eXN0ZW0vY25hbWVfZG5hbWVfbmVnY2FjaGUvbnMxL3Jvb3QuZGIKK0BAIC0wLDAgKzEsNiBAQAor KyRUVEwgMzAwCisrLiAgICAgICAgSU4gU09BICBucy4gaG9zdG1hc3Rlci4gMSA2MDAgNjAwIDEy MDAgNjAwCisrLgkgICAgICAgICAJTlMgICAgICBhLnJvb3Qtc2VydmVycy5uaWwuCisrYS5yb290 LXNlcnZlcnMubmlsLiAgICAJQSAgICAgICAxMC41My4wLjEKKyt0ZXN0ICAgIAkgCU5TICAgICAg bnMudGVzdAorK25zLnRlc3QJCSAJQQkgMTAuNTMuMC4xCitkaWZmIC0tZ2l0IGEvYmluL3Rlc3Rz L3N5c3RlbS9jbmFtZV9kbmFtZV9uZWdjYWNoZS9uczEvdGVzdC5kYiBiL2Jpbi90ZXN0cy9zeXN0 ZW0vY25hbWVfZG5hbWVfbmVnY2FjaGUvbnMxL3Rlc3QuZGIKK25ldyBmaWxlIG1vZGUgMTAwNjQ0 CitpbmRleCAwMDAwMDAwMDAwLi5hY2I2OGUwMGY4CistLS0gL2Rldi9udWxsCisrKysgYi9iaW4v dGVzdHMvc3lzdGVtL2NuYW1lX2RuYW1lX25lZ2NhY2hlL25zMS90ZXN0LmRiCitAQCAtMCwwICsx LDggQEAKKyskVFRMIDMwMAorK3Rlc3QuICAgICAgICBJTiBTT0EgIG5zLnRlc3QuIGhvc3RtYXN0 ZXIudGVzdC4gMSA2MDAgNjAwIDEyMDAgNjAwCisrdGVzdC4JICAgICAgICAgTlMgICAgICBucy50 ZXN0LgorK25zICAgIAkJIEEgICAgICAgMTAuNTMuMC4xCisrYmFyICAgIAkJIE5TICAgICAgbnMu YmFyCisrbnMuYmFyCQkgQQkgMTAuNTMuMC4xCisrZm9vCQkgTlMJIG5zLmZvbworK25zLmZvbwkJ IEEJIDEwLjUzLjAuMgorZGlmZiAtLWdpdCBhL2Jpbi90ZXN0cy9zeXN0ZW0vY25hbWVfZG5hbWVf bmVnY2FjaGUvbnMzL25hbWVkLmNvbmYuajIgYi9iaW4vdGVzdHMvc3lzdGVtL2NuYW1lX2RuYW1l X25lZ2NhY2hlL25zMy9uYW1lZC5jb25mLmoyCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXgg MDAwMDAwMDAwMC4uMTk3ZDcyNzU2YgorLS0tIC9kZXYvbnVsbAorKysrIGIvYmluL3Rlc3RzL3N5 c3RlbS9jbmFtZV9kbmFtZV9uZWdjYWNoZS9uczMvbmFtZWQuY29uZi5qMgorQEAgLTAsMCArMSwx MSBAQAorK29wdGlvbnMgeworKyAgICBxdWVyeS1zb3VyY2UgYWRkcmVzcyBAbnMuaXBAOworKyAg ICBwb3J0IEBQT1JUQDsKKysgICAgcGlkLWZpbGUgIm5hbWVkLnBpZCI7CisrICAgIGxpc3Rlbi1v biB7IEBucy5pcEA7IH07CisrICAgIGxpc3Rlbi1vbi12NiB7IG5vbmU7IH07CisrICAgIHJlY3Vy c2lvbiB5ZXM7CisrICAgIGRuc3NlYy12YWxpZGF0aW9uIG5vOworK307CisrCisreyUgaW5jbHVk ZSAiX2NvbW1vbi9yb290LmhpbnQuY29uZiIgJX0KK2RpZmYgLS1naXQgYS9iaW4vdGVzdHMvc3lz dGVtL2NuYW1lX2RuYW1lX25lZ2NhY2hlL3Rlc3RzX2NuYW1lX25lZ2NhY2hlLnB5IGIvYmluL3Rl c3RzL3N5c3RlbS9jbmFtZV9kbmFtZV9uZWdjYWNoZS90ZXN0c19jbmFtZV9uZWdjYWNoZS5weQor bmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwMDAuLmE1NDZkMjkxMDkKKy0tLSAv ZGV2L251bGwKKysrKyBiL2Jpbi90ZXN0cy9zeXN0ZW0vY25hbWVfZG5hbWVfbmVnY2FjaGUvdGVz dHNfY25hbWVfbmVnY2FjaGUucHkKK0BAIC0wLDAgKzEsMTYgQEAKKysjIENvcHlyaWdodCAoQykg SW50ZXJuZXQgU3lzdGVtcyBDb25zb3J0aXVtLCBJbmMuICgiSVNDIikKKysjCisrIyBTUERYLUxp Y2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMAorKyMKKysjIFRoaXMgU291cmNlIENvZGUgRm9ybSBp cyBzdWJqZWN0IHRvIHRoZSB0ZXJtcyBvZiB0aGUgTW96aWxsYSBQdWJsaWMKKysjIExpY2Vuc2Us IHYuIDIuMC4gIElmIGEgY29weSBvZiB0aGUgTVBMIHdhcyBub3QgZGlzdHJpYnV0ZWQgd2l0aCB0 aGlzCisrIyBmaWxlLCB5b3UgY2FuIG9idGFpbiBvbmUgYXQgaHR0cHM6Ly9tb3ppbGxhLm9yZy9N UEwvMi4wLy4KKysjCisrIyBTZWUgdGhlIENPUFlSSUdIVCBmaWxlIGRpc3RyaWJ1dGVkIHdpdGgg dGhpcyB3b3JrIGZvciBhZGRpdGlvbmFsCisrIyBpbmZvcm1hdGlvbiByZWdhcmRpbmcgY29weXJp Z2h0IG93bmVyc2hpcC4KKysKKytmcm9tIGNuYW1lX2RuYW1lX25lZ2NhY2hlLmNvbW1vbiBpbXBv cnQgcnVuX2F0dGFjaworKworKworK2RlZiB0ZXN0X2NuYW1lX25lZ2NhY2hlKG5zMyk6CisrICAg IHJ1bl9hdHRhY2sobnMzLCAiY25hbWUuZm9vLnRlc3QuIiwgIkNOQU1FIiwgImNuYW1lLmZvby50 ZXN0LiIsICJBIikKK2RpZmYgLS1naXQgYS9iaW4vdGVzdHMvc3lzdGVtL2NuYW1lX2RuYW1lX25l Z2NhY2hlL3Rlc3RzX2RuYW1lX25lZ2NhY2hlLnB5IGIvYmluL3Rlc3RzL3N5c3RlbS9jbmFtZV9k bmFtZV9uZWdjYWNoZS90ZXN0c19kbmFtZV9uZWdjYWNoZS5weQorbmV3IGZpbGUgbW9kZSAxMDA2 NDQKK2luZGV4IDAwMDAwMDAwMDAuLjQxYTgwYjRlMDUKKy0tLSAvZGV2L251bGwKKysrKyBiL2Jp bi90ZXN0cy9zeXN0ZW0vY25hbWVfZG5hbWVfbmVnY2FjaGUvdGVzdHNfZG5hbWVfbmVnY2FjaGUu cHkKK0BAIC0wLDAgKzEsMTYgQEAKKysjIENvcHlyaWdodCAoQykgSW50ZXJuZXQgU3lzdGVtcyBD b25zb3J0aXVtLCBJbmMuICgiSVNDIikKKysjCisrIyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjog TVBMLTIuMAorKyMKKysjIFRoaXMgU291cmNlIENvZGUgRm9ybSBpcyBzdWJqZWN0IHRvIHRoZSB0 ZXJtcyBvZiB0aGUgTW96aWxsYSBQdWJsaWMKKysjIExpY2Vuc2UsIHYuIDIuMC4gIElmIGEgY29w eSBvZiB0aGUgTVBMIHdhcyBub3QgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzCisrIyBmaWxlLCB5b3Ug Y2FuIG9idGFpbiBvbmUgYXQgaHR0cHM6Ly9tb3ppbGxhLm9yZy9NUEwvMi4wLy4KKysjCisrIyBT ZWUgdGhlIENPUFlSSUdIVCBmaWxlIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyB3b3JrIGZvciBhZGRp dGlvbmFsCisrIyBpbmZvcm1hdGlvbiByZWdhcmRpbmcgY29weXJpZ2h0IG93bmVyc2hpcC4KKysK Kytmcm9tIGNuYW1lX2RuYW1lX25lZ2NhY2hlLmNvbW1vbiBpbXBvcnQgcnVuX2F0dGFjaworKwor KworK2RlZiB0ZXN0X2RuYW1lX25lZ2NhY2hlKG5zMyk6CisrICAgIHJ1bl9hdHRhY2sobnMzLCAi Zm9vLnRlc3QuIiwgIkROQU1FIiwgImEuZm9vLnRlc3QuIiwgIkEiKQorLS0gCisyLjU1LjAKKwoK ZGlmZiAtLWdpdCBhL2JpbmQtOS4xOC1DVkUtMjAyNi0xMjYxNy5wYXRjaCBiL2JpbmQtOS4xOC1D VkUtMjAyNi0xMjYxNy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4x YzgwNzllCi0tLSAvZGV2L251bGwKKysrIGIvYmluZC05LjE4LUNWRS0yMDI2LTEyNjE3LnBhdGNo CkBAIC0wLDAgKzEsMjgwIEBACitGcm9tIDMxMzg4ODZmMzc2N2MwYTZiOTMzZmQxNDdjNTQ2NTQ3 MjIwOWJhYzYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBDb2xpbiBWaWRhbCA8Y29s aW5AaXNjLm9yZz4KK0RhdGU6IFRodSwgMTggSnVuIDIwMjYgMTg6MTc6MDUgKzAyMDAKK1N1Ympl Y3Q6IFtQQVRDSF0gRG8gbm90IGFzc2VydCBpbiBzb21lIENOQU1FL0ROQU1FIHF1ZXJpZXMKKwor Rml4IGEgYG5hbWVkYCBjcmFzaCBiZWNhdXNlIG9mIGEgZmFpbCBhc3NlcnRpb24gZm9yIGNlcnRh aW5zIHR5cGVzIG9mCitDTkFNRSBhbmQgRE5BTUUgcXVlcmllczoKKworLSBJZiBhIGNsaWVudCBx dWVyaWVzIGZvciBhIEROQU1FIGFuZCBBIHJlY29yZCB0byB0aGUgcmVzb2x2ZXIsIGFuZCB0aGUK KyAgYXV0aG9yaXRhdGl2ZSBzZXJ2ZXIgcmVzcG9uZHMgcG9zaXRpdmVseSB0byB0aGUgQSBxdWVy eSBidXQgZGVsYXkgdGhlCisgIEROQU1FIHJlc3BvbnNlIGFuZCByZXNwb25kIGxhdGVyIG5lZ2F0 aXZlbHk7CisKKy0gSWYgYSBjbGllbnQgcXVlcmllcyBmb3IgYSBDTkFNRSBhbmQgQSByZWNvcmQg dG8gdGhlIHJlc29sdmVyLCBhbmQgdGhlCisgIGF1dGhvcml0YXRpdmUgc2VydmVyIHJlc3BvbmRz IHBvc2l0aXZlbHkgdG8gdGhlIEEgcXVlcnkgYnV0IGRlbGF5IHRoZQorICBDTkFNRSByZXNwb25z ZSBhbmQgcmVzcG9uZCBsYXRlciB3aXRoIGEgc2VsZi1yZWZlcmVudGlhbCBDTkFNRS4KKworVGhl IGZpcnN0IHNjZW5hcmlvIGNvbnNpc3RzIG9mIHNlbmRpbmcgdHdvIHF1ZXJpZXM6IGBmb28udGVz dC4vRE5BTUVgCithbmQgYGEuZm9vLnRlc3QuL0FgLiBUaGUgYXV0aG9yaXRhdGl2ZSBzZXJ2ZXIg ZGVsYXlzIHRoZSBhbnN3ZXIgZm9yCitgZm9vLnRlc3QuL0ROQU1FYCBidXQgaW1tZWRpYXRlbHkg YW5zd2VycyB0aGUgRE5BTUUgcmVjb3JkIGZvciB0aGUKK3NlY29uZCBxdWVyeTogYGZvby50ZXN0 LiBETkFNRSBiYXIudGVzdC5gLiBUaGUgcmVzb2x2ZXIgY2FjaGVzIGl0LAorZm9sbG93cyB0aGUg RE5BTUUsIGFuZCByZXNvbHZlcyBgYS5iYXIudGVzdC4vQWAuIFRoZSBhdXRob3JpdGF0aXZlCitz ZXJ2ZXIgZXZlbnR1YWxseSBhbnN3ZXJzIG5lZ2F0aXZlbHkgZm9yIGBmb28udGVzdC4vRE5BTUVg CisoTk9FUlJPUi9OT0RBVEEsIHdpdGggb25seSBhbiBTT0EgaW4gdGhlIGF1dGhvcml0eSBzZWN0 aW9uKS4gVGhlCityZXNvbHZlciBwdWxscyBvdXQgdGhlIHByZXZpb3VzbHkgY2FjaGVkIHJkYXRh c2V0IChiZWNhdXNlIGl0IGhhcyBhCitoaWdoZXIgdHJ1c3QgbGV2ZWwgdGhhbiB0aGUgcmVjZWl2 ZWQgbmVnYXRpdmUgYW5zd2VyKSwgYW5kIHdyb25nbHkgKHRoaXMKK2lzIHRoZSBmaXJzdCBidWcp IHNldHMgdGhlIHJlc3VsdCB0byBgRE5TX1JfRE5BTUVgIGluc3RlYWQgb2YKK2BJU0NfUl9TVUND RVNTYC4gVGhlIGNvZGUgaW4gYG5zL3F1ZXJ5LmNgIHRoYXQgaGFuZGxlcyB0aGUgcmVzb2x2ZXIK K3Jlc3VsdCBpbnRlcnByZXRzIHRoaXMgYXMgInRoaXMgaXMgYSBub24tRE5BTUUgcXVlcnkgYW5k IHdlIGdvdCBhIEROQU1FCityZGF0YXNldCwgc28gZm9sbG93IHRoZSBjaGFpbiIuIEl0IGdvZXMg aW50byB0aGUgYHF1ZXJ5X2RuYW1lKClgCitmdW5jdGlvbiwgd2hpY2ggYXNzZXJ0cyB0aGF0IHRo ZSBxbmFtZSBpcyBhIHN1YmRvbWFpbiBvZiB0aGUgb3duZXIgbmFtZQoraW4gdGhlIHJkYXRhc2V0 LiBUaGF0IGFzc2VydGlvbiBmYWlscyBiZWNhdXNlIHRoZSBxbmFtZSAoYGZvby50ZXN0LmApIGlz CitleGFjdGx5IGVxdWFsIHRvIHRoZSBvd25lciBuYW1lIG9mIHRoZSBETkFNRSAoYGZvby50ZXN0 LmApLCByYXRoZXIgdGhhbgorYmVpbmcgYSBzdWJkb21haW4gb2YgaXQuIGBETlNfUl9ETkFNRWAg bXVzdCBvbmx5IGJlIHNldCB3aGVuIHRoZSBxdHlwZQoraXMgc29tZXRoaW5nIG90aGVyIHRoYW4g RE5BTUUgYW5kIHRoZSByZXNvbHZlciBoYXMgb2J0YWluZWQgYSBETkFNRSB0aGF0CituZWVkcyB0 byBiZSBmb2xsb3dlZC4KKworVGhlIHNlY29uZCBzY2VuYXJpbyBjb25zaXN0cyBvZiBzZW5kaW5n IHR3byBxdWVyaWVzOgorYGNuYW1lLmZvby50ZXN0Li9DTkFNRWAgYW5kIGBjbmFtZS5mb28udGVz dC4vQWAuIFRoZSBhdXRob3JpdGF0aXZlCitzZXJ2ZXIgZGVsYXlzIHRoZSBhbnN3ZXIgZm9yIGBj bmFtZS5mb28udGVzdC4vQ05BTUVgIGJ1dCBpbW1lZGlhdGVseQorYW5zd2VycyB0aGUgQ05BTUUg cmVjb3JkIGZvciB0aGUgc2Vjb25kIHF1ZXJ5OiBgY25hbWUuZm9vLnRlc3QuIENOQU1FCitjbmFt ZS5mb28udGVzdC5gLiBOb3RlIHRoYXQgdGhlIENOQU1FIGlzIHNlbGYtcmVmZXJlbnRpYWwuIFRo ZSByZXNvbHZlcgorY2FjaGVzIGl0IGFuZCBzZXRzIHRoZSByZXN1bHQgY29kZSB0byBgRE5TX1Jf Q05BTUVgLiBUaGVuIGBucy9xdWVyeS5jYAoraW50ZXJwcmV0cyB0aGlzIGFzICJ0aGlzIGlzIGEg bm9uLUNOQU1FIHF1ZXJ5IGFuZCB3ZSBnb3QgYSBDTkFNRQorcmRhdGFzZXQsIHNvIGZvbGxvdyB0 aGUgY2hhaW4iICh3aGljaCBpcyBjb3JyZWN0IGluIHRoaXMgY2FzZTsgaG93ZXZlciwKK2JlY2F1 c2UgdGhlIENOQU1FIHJkYXRhc2V0IGlzIHNlbGYtcmVmZXJlbnRpYWwsIHRoZSByZXNvbHZlciBy ZXNwb25kcword2l0aCBTRVJWRkFJTCwgd2hpY2ggaXMgZXhwZWN0ZWQpLiBUaGUgYXV0aG9yaXRh dGl2ZSBzZXJ2ZXIgZXZlbnR1YWxseQorYW5zd2VycyBuZWdhdGl2ZWx5IGZvciBgY25hbWUuZm9v LnRlc3QuL0NOQU1FYC4gVGhlIHJlc29sdmVyIHRoZW4gcHVsbHMKK291dCB0aGUgcHJldmlvdXNs eSBjYWNoZWQgQ05BTUUgcmRhdGFzZXQgKG9idGFpbmVkIGZyb20gdGhlIEEgYW5zd2VyLAorZXZl biB0aG91Z2ggaXQgd2FzIHNlbGYtcmVmZXJlbnRpYWwsIHRoZSByZXNvbHZlciBjYWNoZWQgaXQp IGFuZCB3cm9uZ2x5CitzZXRzIHRoZSByZXN1bHQgdG8gYEROU19SX0NOQU1FYCAodGhpcyBpcyB0 aGUgc2Vjb25kIGJ1ZykuIEFzIG5vdGVkCithYm92ZSwgYG5zL3F1ZXJ5LmNgIGludGVycHJldHMg dGhpcyBhcyAidGhpcyBpcyBhIG5vbi1DTkFNRSBxdWVyeSBhbmQgd2UKK2dvdCBhIENOQU1FIHJk YXRhc2V0LCBzbyBmb2xsb3cgdGhlIGNoYWluIi4gVGhlIGludGVybmFscyBoZXJlIGFyZQorc2xp Z2h0bHkgbW9yZSBzdWJ0bGU6IGl0IGZpcnN0IGdvZXMgaW50byBgcXVlcnlfY25hbWUoKWAgYW5k IHNldHMgdGhlCitDTkFNRSByZGF0YXNldCBpbiB0aGUgbWVzc2FnZSBhbnN3ZXIgc2VjdGlvbiwg dGhlbiByZXN0YXJ0cyB0aGUgcXVlcnkgdG8KK2ZvbGxvdyB0aGUgQ05BTUUuIFRoZSByZXN0YXJ0 IHJldHJpZXZlcyB0aGUgQ05BTUUgcmRhdGFzZXQgZnJvbSB0aGUKK2NhY2hlIGRpcmVjdGx5ICh3 aXRob3V0IGdvaW5nIHRvIHRoZSByZXNvbHZlciksIGFuZCB0aGlzIHRpbWUgdGhlIHF1ZXJ5Citj b250ZXh0IHJlc3VsdCBpcyBgSVNDX1JfU1VDQ0VTU2AgKHNpbmNlIGl0IHdhcyBmb3VuZCkgYW5k CitgcWN0eC0+cmRhdGFzZXRgIHBvaW50cyB0byB0aGUgc2FtZSBDTkFNRSBhZ2FpbiAoYXMgaXQg aXMKK3NlbGYtcmVmZXJlbnRpYWwpLCBzbyBpdCBnb2VzIGRpcmVjdGx5IGludG8gdGhlCitgcXVl cnlfcHJlcHJlc3BvbnNlKCkvcXVlcnlfcmVzcG9uZCgpYCBmbG93LCB3aGljaCBhdHRlbXB0cyB0 byBhZGQgdGhlCityZGF0YXNldCB0byB0aGUgbWVzc2FnZSBhbnN3ZXIgYWdhaW4uIEhvd2V2ZXIs IHRoaXMgZmFpbHMgYmVjYXVzZSB0aGUKK3JkYXRhc2V0IGlzIGFscmVhZHkgaW4gdGhlIG1lc3Nh Z2UsIGFuZCB0aGUgYXNzZXJ0aW9uIHdoaWNoIGV4cGVjdHMgdGhhdAorb3BlcmF0aW9uIHRvIHN1 Y2NlZWQgZmFpbHMgKGR1ZSB0byBgcWN0eC0+cmRhdGFzZXRgIGJlaW5nIHNldCB0byBgTlVMTGAK K3doZW4gb3duZXJzaGlwIG9mIHRoZSByZGF0YXNldCB3YXMgdHJhbnNmZXJyZWQpLiBgRE5TX1Jf Q05BTUVgIG11c3Qgb25seQorYmUgc2V0IHdoZW4gdGhlIHF0eXBlIGlzIHNvbWV0aGluZyBvdGhl ciB0aGFuIENOQU1FIGFuZCB0aGUgcmVzb2x2ZXIgaGFzCitvYnRhaW5lZCBhIENOQU1FIHRoYXQg bmVlZHMgdG8gYmUgZm9sbG93ZWQuCisKK0luIGJvdGggY2FzZXMsIHRoZSBjb3JyZWN0IGFuc3dl ciBmcm9tIHRoZSByZXNvbHZlciBzaG91bGQgaGF2ZSBiZWVuCitgSVNDX1JfU1VDQ0VTU2AgKGlu c3RlYWQgb2YgcmVzcGVjdGl2ZWx5IGBETlNfUl9ETkFNRWAgYW5kCitgRE5TX1JfQ05BTUVgKSBi ZWN1YXNlIHRoZSByZGF0YXNldCB0aGF0IGhhcyBiZWVuIGxvb2tlZCB1cCB3YXMgZm91bmQuCisK KyhjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IDc3M2Q0NmQ1OGM2OTMwNDdhNTk0NWM4ZmU0MDUx MmVkZDBhYzIxNGUpCisoY2hlcnJ5IHBpY2tlZCBmcm9tIGNvbW1pdCBjNzQwYzM3Njg5ZjIzNGUy MWE5YjBlZjc2MDQ3MWVmMmNmMTEzM2Y1KQorLS0tCisgbGliL2Rucy9yZXNvbHZlci5jIHwgMTM3 ICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZSBj aGFuZ2VkLCA2MCBpbnNlcnRpb25zKCspLCA3NyBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBh L2xpYi9kbnMvcmVzb2x2ZXIuYyBiL2xpYi9kbnMvcmVzb2x2ZXIuYworaW5kZXggZWRjOWMyMDdl MS4uMWY4YjUwNThkMSAxMDA2NDQKKy0tLSBhL2xpYi9kbnMvcmVzb2x2ZXIuYworKysrIGIvbGli L2Rucy9yZXNvbHZlci5jCitAQCAtNjkyLDEwICs2OTIsMTAgQEAgZmN0eF9kZXN0cm95KGZldGNo Y3R4X3QgKmZjdHgsIGJvb2wgZXhpdGluZyk7Cisgc3RhdGljIHZvaWQKKyBzZW5kX3NodXRkb3du X2V2ZW50cyhkbnNfcmVzb2x2ZXJfdCAqcmVzKTsKKyBzdGF0aWMgaXNjX3Jlc3VsdF90CistbmNh Y2hlX2FkZGVyZXN1bHQoZG5zX21lc3NhZ2VfdCAqbWVzc2FnZSwgZG5zX2RiX3QgKmNhY2hlLCBk bnNfZGJub2RlX3QgKm5vZGUsCistCQkgIGRuc19yZGF0YXR5cGVfdCBjb3ZlcnMsIGlzY19zdGR0 aW1lX3Qgbm93LCBkbnNfdHRsX3QgbWludHRsLAorLQkJICBkbnNfdHRsX3QgbWF4dHRsLCBib29s IG9wdG91dCwgYm9vbCBzZWN1cmUsCistCQkgIGRuc19yZGF0YXNldF90ICphcmRhdGFzZXQsIGlz Y19yZXN1bHRfdCAqZXJlc3VsdHApOworK25jYWNoZV9hZGRlcmVzdWx0KGZldGNoY3R4X3QgKmZj dHgsIGRuc19tZXNzYWdlX3QgKm1lc3NhZ2UsIGRuc19kYm5vZGVfdCAqbm9kZSwKKysJCSAgZG5z X3JkYXRhdHlwZV90IGNvdmVycywgaXNjX3N0ZHRpbWVfdCBub3csIGRuc190dGxfdCBtYXh0dGws CisrCQkgIGJvb2wgb3B0b3V0LCBib29sIHNlY3VyZSwgZG5zX3JkYXRhc2V0X3QgKmFyZGF0YXNl dCwKKysJCSAgaXNjX3Jlc3VsdF90ICplcmVzdWx0cCk7Cisgc3RhdGljIHZvaWQKKyB2YWxpZGF0 ZWQoaXNjX3Rhc2tfdCAqdGFzaywgaXNjX2V2ZW50X3QgKmV2ZW50KTsKKyBzdGF0aWMgdm9pZAor QEAgLTU1NjMsNiArNTU2Myw0NiBAQCBoYXNfMDAwX2xhYmVsKGRuc19yZGF0YXNldF90ICpuc2Vj c2V0KSB7CisgCXJldHVybiBmYWxzZTsKKyB9CisgCisrLyoKKysgKiBBZnRlciBhIChub24tZXJy b3IpIG5lZ2F0aXZlLWNhY2hlIGFkZCwgJ3JkYXRhc2V0JyBpcyBib3VuZCB0byB3aGF0ZXZlcgor KyAqIHJkYXRhc2V0IHRoZSBjYWNoZSBhdXRob3JpdGF0aXZlbHkgaG9sZHMgZm9yIHRoZSBxdWVy aWVkIG5hbWUgYW5kIHR5cGUuCisrICogTWFwIHRoYXQgdG8gdGhlIHJlc3VsdCBjb2RlIHRoZSBm ZXRjaCBzaG91bGQgcmVwb3J0OgorKyAqCisrICogICAtIEEgbmVnYXRpdmUgY2FjaGUgZW50cnkg KHRoZSBvbmUgd2UganVzdCBhZGRlZCwgb3IgYSBwcmUtZXhpc3Rpbmcgb25lKToKKysgKiAgICAg RE5TX1JfTkNBQ0hFTlhET01BSU4gb3IgRE5TX1JfTkNBQ0hFTlhSUlNFVCwgZGVwZW5kaW5nIG9u IE5YRE9NQUlOIHZzCisrICogICAgIE5PREFUQS4KKysgKgorKyAqICAgLSBBIHBvc2l0aXZlIHJk YXRhc2V0IHRoYXQgd2FzIGFscmVhZHkgY2FjaGVkIGF0IGhpZ2hlciB0cnVzdCwgd2hpY2gKKysg KiAgICAgY2F1c2VkIG91ciBuZWdhdGl2ZSBlbnRyeSB0byBiZSBkaXNjYXJkZWQgKGUuZy4gYSBD TkFNRSBvciBETkFNRSBjYWNoZWQKKysgKiAgICAgYnkgYSBjb25jdXJyZW50IHF1ZXJ5KTogSVND X1JfU1VDQ0VTUywgYmVjYXVzZSB0aGF0IGNhY2hlZCBwb3NpdGl2ZQorKyAqICAgICBhbnN3ZXIg aXMgd2hhdCBnZXRzIHJldHVybmVkLiAgTm90ZSB0aGUgc3BlY2lmaWMgY2FzZSBmb3IgQ05BTUUg YW5kCisrICogICAgIEROQU1FICppZiogdGhlIHF1ZXJ5IHR5cGUgaXMgbm90IHRoZSBzYW1lIGFz IHRoZSByZGF0YXNldCB0eXBlLiBUaGVyZQorKyAqICAgICBpcyBhIGNoYWluIHRvIGZvbGxvdyAq b25seSogaWYgdGhlIHF1ZXJ5IHR5cGUgZG9lc24ndCBhc2sgZm9yIHRoZSBDTkFNRQorKyAqICAg ICBvciB0aGUgRE5BTUUuCisrICovCisrc3RhdGljIGlzY19yZXN1bHRfdAorK2ZjdHhfc2V0cmVz dWx0KGZldGNoY3R4X3QgKmZjdHgsIGRuc19yZGF0YXNldF90ICpyZGF0YXNldCkgeworKwlpc2Nf cmVzdWx0X3QgcmVzdWx0ID0gSVNDX1JfU1VDQ0VTUzsKKysKKysJaWYgKE5FR0FUSVZFKHJkYXRh c2V0KSkgeworKwkJcmVzdWx0ID0gTlhET01BSU4ocmRhdGFzZXQpID8gRE5TX1JfTkNBQ0hFTlhE T01BSU4KKysJCQkJCSAgICA6IEROU19SX05DQUNIRU5YUlJTRVQ7CisrCX0gZWxzZSBpZiAocmVz dWx0ID09IElTQ19SX1NVQ0NFU1MgJiYgcmRhdGFzZXQtPnR5cGUgIT0gZmN0eC0+dHlwZSkgewor KwkJc3dpdGNoIChyZGF0YXNldC0+dHlwZSkgeworKwkJY2FzZSBkbnNfcmRhdGF0eXBlX2NuYW1l OgorKwkJCXJlc3VsdCA9IEROU19SX0NOQU1FOworKwkJCWJyZWFrOworKwkJY2FzZSBkbnNfcmRh dGF0eXBlX2RuYW1lOgorKwkJCXJlc3VsdCA9IEROU19SX0ROQU1FOworKwkJCWJyZWFrOworKwkJ ZGVmYXVsdDoKKysJCQlicmVhazsKKysJCX0KKysJfQorKworKwlyZXR1cm4gcmVzdWx0OworK30K KysKKyAvKgorICAqIFRoZSB2YWxpZGF0b3IgaGFzIGZpbmlzaGVkLgorICAqLworQEAgLTU4MzYs OCArNTg3Niw3IEBAIHZhbGlkYXRlZChpc2NfdGFza190ICp0YXNrLCBpc2NfZXZlbnRfdCAqZXZl bnQpIHsKKyAJCQl0dGwgPSAwOworIAkJfQorIAorLQkJcmVzdWx0ID0gbmNhY2hlX2FkZGVyZXN1 bHQobWVzc2FnZSwgZmN0eC0+Y2FjaGUsIG5vZGUsIGNvdmVycywKKy0JCQkJCSAgIG5vdywgZmN0 eC0+cmVzLT52aWV3LT5taW5uY2FjaGV0dGwsCisrCQlyZXN1bHQgPSBuY2FjaGVfYWRkZXJlc3Vs dChmY3R4LCBtZXNzYWdlLCBub2RlLCBjb3ZlcnMsIG5vdywKKyAJCQkJCSAgIHR0bCwgdmV2ZW50 LT5vcHRvdXQsIHZldmVudC0+c2VjdXJlLAorIAkJCQkJICAgYXJkYXRhc2V0LCAmZXJlc3VsdCk7 CisgCQlpZiAocmVzdWx0ICE9IElTQ19SX1NVQ0NFU1MpIHsKK0BAIC02MDgxLDIzICs2MTIwLDcg QEAgYW5zd2VyX3Jlc3BvbnNlOgorIAkJICovCisgCQlJTlNJU1QoaGV2ZW50LT5yZGF0YXNldCAh PSBOVUxMKTsKKyAJCWlmIChkbnNfcmRhdGFzZXRfaXNhc3NvY2lhdGVkKGhldmVudC0+cmRhdGFz ZXQpKSB7CistCQkJaWYgKE5FR0FUSVZFKGhldmVudC0+cmRhdGFzZXQpKSB7CistCQkJCUlOU0lT VChlcmVzdWx0ID09IEROU19SX05DQUNIRU5YRE9NQUlOIHx8CistCQkJCSAgICAgICBlcmVzdWx0 ID09IEROU19SX05DQUNIRU5YUlJTRVQpOworLQkJCX0gZWxzZSBpZiAoZXJlc3VsdCA9PSBJU0Nf Ul9TVUNDRVNTICYmCistCQkJCSAgIGhldmVudC0+cmRhdGFzZXQtPnR5cGUgIT0gZmN0eC0+dHlw ZSkKKy0JCQl7CistCQkJCXN3aXRjaCAoaGV2ZW50LT5yZGF0YXNldC0+dHlwZSkgeworLQkJCQlj YXNlIGRuc19yZGF0YXR5cGVfY25hbWU6CistCQkJCQllcmVzdWx0ID0gRE5TX1JfQ05BTUU7Cist CQkJCQlicmVhazsKKy0JCQkJY2FzZSBkbnNfcmRhdGF0eXBlX2RuYW1lOgorLQkJCQkJZXJlc3Vs dCA9IEROU19SX0ROQU1FOworLQkJCQkJYnJlYWs7CistCQkJCWRlZmF1bHQ6CistCQkJCQlicmVh azsKKy0JCQkJfQorLQkJCX0KKysJCQllcmVzdWx0ID0gZmN0eF9zZXRyZXN1bHQoZmN0eCwgaGV2 ZW50LT5yZGF0YXNldCk7CisgCQl9CisgCisgCQloZXZlbnQtPnJlc3VsdCA9IGVyZXN1bHQ7CitA QCAtNjc0NywyNCArNjc3MCw3IEBAIGNhY2hlX25hbWUoZmV0Y2hjdHhfdCAqZmN0eCwgZG5zX25h bWVfdCAqbmFtZSwgZG5zX21lc3NhZ2VfdCAqbWVzc2FnZSwKKyAJCQkgKiBldmVudC0+cmVzdWx0 LgorIAkJCSAqLworIAkJCWlmIChkbnNfcmRhdGFzZXRfaXNhc3NvY2lhdGVkKGV2ZW50LT5yZGF0 YXNldCkpIHsKKy0JCQkJaWYgKE5FR0FUSVZFKGV2ZW50LT5yZGF0YXNldCkpIHsKKy0JCQkJCUlO U0lTVChlcmVzdWx0ID09CistCQkJCQkJICAgICAgIEROU19SX05DQUNIRU5YRE9NQUlOIHx8Cist CQkJCQkgICAgICAgZXJlc3VsdCA9PSBETlNfUl9OQ0FDSEVOWFJSU0VUKTsKKy0JCQkJfSBlbHNl IGlmIChlcmVzdWx0ID09IElTQ19SX1NVQ0NFU1MgJiYKKy0JCQkJCSAgIGV2ZW50LT5yZGF0YXNl dC0+dHlwZSAhPSBmY3R4LT50eXBlKQorLQkJCQl7CistCQkJCQlzd2l0Y2ggKGV2ZW50LT5yZGF0 YXNldC0+dHlwZSkgeworLQkJCQkJY2FzZSBkbnNfcmRhdGF0eXBlX2NuYW1lOgorLQkJCQkJCWVy ZXN1bHQgPSBETlNfUl9DTkFNRTsKKy0JCQkJCQlicmVhazsKKy0JCQkJCWNhc2UgZG5zX3JkYXRh dHlwZV9kbmFtZToKKy0JCQkJCQllcmVzdWx0ID0gRE5TX1JfRE5BTUU7CistCQkJCQkJYnJlYWs7 CistCQkJCQlkZWZhdWx0OgorLQkJCQkJCWJyZWFrOworLQkJCQkJfQorLQkJCQl9CisrCQkJCWVy ZXN1bHQgPSBmY3R4X3NldHJlc3VsdChmY3R4LCBldmVudC0+cmRhdGFzZXQpOworIAkJCX0KKyAJ CQlldmVudC0+cmVzdWx0ID0gZXJlc3VsdDsKKyAJCQlpZiAoYWRicCAhPSBOVUxMICYmICphZGJw ICE9IE5VTEwpIHsKK0BAIC02ODMzLDEyICs2ODM5LDE0IEBAIGNhY2hlX21lc3NhZ2UoZmV0Y2hj dHhfdCAqZmN0eCwgZG5zX21lc3NhZ2VfdCAqbWVzc2FnZSwKKyAgKiBlcmVzdWx0LgorICAqLwor IHN0YXRpYyBpc2NfcmVzdWx0X3QKKy1uY2FjaGVfYWRkZXJlc3VsdChkbnNfbWVzc2FnZV90ICpt ZXNzYWdlLCBkbnNfZGJfdCAqY2FjaGUsIGRuc19kYm5vZGVfdCAqbm9kZSwKKy0JCSAgZG5zX3Jk YXRhdHlwZV90IGNvdmVycywgaXNjX3N0ZHRpbWVfdCBub3csIGRuc190dGxfdCBtaW50dGwsCist CQkgIGRuc190dGxfdCBtYXh0dGwsIGJvb2wgb3B0b3V0LCBib29sIHNlY3VyZSwKKy0JCSAgZG5z X3JkYXRhc2V0X3QgKmFyZGF0YXNldCwgaXNjX3Jlc3VsdF90ICplcmVzdWx0cCkgeworK25jYWNo ZV9hZGRlcmVzdWx0KGZldGNoY3R4X3QgKmZjdHgsIGRuc19tZXNzYWdlX3QgKm1lc3NhZ2UsIGRu c19kYm5vZGVfdCAqbm9kZSwKKysJCSAgZG5zX3JkYXRhdHlwZV90IGNvdmVycywgaXNjX3N0ZHRp bWVfdCBub3csIGRuc190dGxfdCBtYXh0dGwsCisrCQkgIGJvb2wgb3B0b3V0LCBib29sIHNlY3Vy ZSwgZG5zX3JkYXRhc2V0X3QgKmFyZGF0YXNldCwKKysJCSAgaXNjX3Jlc3VsdF90ICplcmVzdWx0 cCkgeworIAlpc2NfcmVzdWx0X3QgcmVzdWx0OworIAlkbnNfcmRhdGFzZXRfdCByZGF0YXNldDsK KysJZG5zX2RiX3QgKmNhY2hlID0gZmN0eC0+Y2FjaGU7CisrCWRuc190dGxfdCBtaW50dGwgPSBm Y3R4LT5yZXMtPnZpZXctPm1pbm5jYWNoZXR0bDsKKyAKKyAJaWYgKGFyZGF0YXNldCA9PSBOVUxM KSB7CisgCQlkbnNfcmRhdGFzZXRfaW5pdCgmcmRhdGFzZXQpOworQEAgLTY4NTQsMzcgKzY4NjIs MTMgQEAgbmNhY2hlX2FkZGVyZXN1bHQoZG5zX21lc3NhZ2VfdCAqbWVzc2FnZSwgZG5zX2RiX3Qg KmNhY2hlLCBkbnNfZGJub2RlX3QgKm5vZGUsCisgCX0KKyAJaWYgKHJlc3VsdCA9PSBETlNfUl9V TkNIQU5HRUQgfHwgcmVzdWx0ID09IElTQ19SX1NVQ0NFU1MpIHsKKyAJCS8qCistCQkgKiBJZiB0 aGUgY2FjaGUgbm93IGNvbnRhaW5zIGEgbmVnYXRpdmUgZW50cnkgYW5kIHdlCistCQkgKiBjYXJl IGFib3V0IHdoZXRoZXIgaXQgaXMgRE5TX1JfTkNBQ0hFTlhET01BSU4gb3IKKy0JCSAqIEROU19S X05DQUNIRU5YUlJTRVQgdGhlbiBleHRyYWN0IGl0LgorKwkJICogVGhlIGNhY2hlIHNldHRsZWQg c3VjY2Vzc2Z1bGx5IChETlNfUl9VTkNIQU5HRUQgbWVhbnMgb3VyCisrCQkgKiBuZWdhdGl2ZSBl bnRyeSB3YXMgZGlzY2FyZGVkIGluIGZhdm91ciBvZiBleGlzdGluZworKwkJICogaGlnaGVyLXRy dXN0IGRhdGEpLiAgRWl0aGVyIHdheSAnYXJkYXRhc2V0JyBpcyBub3cgYm91bmQgdG8KKysJCSAq IHRoZSByZGF0YXNldCB0aGUgY2FjaGUgaG9sZHMgZm9yIHRoaXMgbmFtZSBhbmQgdHlwZTsgZGVy aXZlCisrCQkgKiB0aGUgcmVzdWx0IGNvZGUgZnJvbSBpdC4KKyAJCSAqLworLQkJaWYgKE5FR0FU SVZFKGFyZGF0YXNldCkpIHsKKy0JCQkvKgorLQkJCSAqIFRoZSBjYWNoZSBkYXRhIGlzIGEgbmVn YXRpdmUgY2FjaGUgZW50cnkuCistCQkJICovCistCQkJaWYgKE5YRE9NQUlOKGFyZGF0YXNldCkp IHsKKy0JCQkJKmVyZXN1bHRwID0gRE5TX1JfTkNBQ0hFTlhET01BSU47CistCQkJfSBlbHNlIHsK Ky0JCQkJKmVyZXN1bHRwID0gRE5TX1JfTkNBQ0hFTlhSUlNFVDsKKy0JCQl9CistCQl9IGVsc2Ug eworLQkJCS8qCistCQkJICogVGhlIGF0dGVtcHQgdG8gYWRkIGEgbmVnYXRpdmUgY2FjaGUgZW50 cnkKKy0JCQkgKiB3YXMgcmVqZWN0ZWQuICBTZXQgKmVyZXN1bHRwIHRvIHJlZmxlY3QKKy0JCQkg KiB0aGUgdHlwZSBvZiB0aGUgZGF0YXNldCBiZWluZyByZXR1cm5lZC4KKy0JCQkgKi8KKy0JCQlz d2l0Y2ggKGFyZGF0YXNldC0+dHlwZSkgeworLQkJCWNhc2UgZG5zX3JkYXRhdHlwZV9jbmFtZToK Ky0JCQkJKmVyZXN1bHRwID0gRE5TX1JfQ05BTUU7CistCQkJCWJyZWFrOworLQkJCWNhc2UgZG5z X3JkYXRhdHlwZV9kbmFtZToKKy0JCQkJKmVyZXN1bHRwID0gRE5TX1JfRE5BTUU7CistCQkJCWJy ZWFrOworLQkJCWRlZmF1bHQ6CistCQkJCSplcmVzdWx0cCA9IElTQ19SX1NVQ0NFU1M7CistCQkJ CWJyZWFrOworLQkJCX0KKy0JCX0KKysJCSplcmVzdWx0cCA9IGZjdHhfc2V0cmVzdWx0KGZjdHgs IGFyZGF0YXNldCk7CisgCQlyZXN1bHQgPSBJU0NfUl9TVUNDRVNTOworIAl9CisgCWlmIChhcmRh dGFzZXQgPT0gJnJkYXRhc2V0ICYmIGRuc19yZGF0YXNldF9pc2Fzc29jaWF0ZWQoYXJkYXRhc2V0 KSkgeworQEAgLTcwMjksOCArNzAxMyw3IEBAIG5jYWNoZV9tZXNzYWdlKGZldGNoY3R4X3QgKmZj dHgsIGRuc19tZXNzYWdlX3QgKm1lc3NhZ2UsCisgCQl0dGwgPSAwOworIAl9CisgCistCXJlc3Vs dCA9IG5jYWNoZV9hZGRlcmVzdWx0KG1lc3NhZ2UsIGZjdHgtPmNhY2hlLCBub2RlLCBjb3ZlcnMs IG5vdywKKy0JCQkJICAgZmN0eC0+cmVzLT52aWV3LT5taW5uY2FjaGV0dGwsIHR0bCwgZmFsc2Us CisrCXJlc3VsdCA9IG5jYWNoZV9hZGRlcmVzdWx0KGZjdHgsIG1lc3NhZ2UsIG5vZGUsIGNvdmVy cywgbm93LCB0dGwsIGZhbHNlLAorIAkJCQkgICBmYWxzZSwgYXJkYXRhc2V0LCAmZXJlc3VsdCk7 CisgCWlmIChyZXN1bHQgIT0gSVNDX1JfU1VDQ0VTUykgeworIAkJZ290byB1bmxvY2s7CistLSAK KzIuNTUuMAorCgpkaWZmIC0tZ2l0IGEvYmluZC5zcGVjIGIvYmluZC5zcGVjCmluZGV4IGM4ZjJk ZGYuLmVhZjVlYjkgMTAwNjQ0Ci0tLSBhL2JpbmQuc3BlYworKysgYi9iaW5kLnNwZWMKQEAgLTE2 Nyw2ICsxNjcsMTAgQEAgUGF0Y2gzNzogYmluZC05LjE4LUNWRS0yMDI2LTExMzMxLXRlc3QucGF0 Y2gKICMgaHR0cHM6Ly9naXRsYWIuaXNjLm9yZy9pc2MtcHJvamVjdHMvYmluZDkvY29tbWl0L2M1 ZDJmYzcwNmNhMzYzNWQ5OTI4YzFjYzY4ZGI3M2JmZmIzNWQ3NzIKIFBhdGNoMzg6IGJpbmQtOS4x OC1DVkUtMjAyNi0xMDgyMi5wYXRjaAogUGF0Y2g0MDogYmluZC05LjE4LUNWRS0yMDI2LTEwODIy LXRlc3QucGF0Y2gKKyMgaHR0cHM6Ly9naXRsYWIuaXNjLm9yZy9pc2MtcHJvamVjdHMvYmluZDkv Y29tbWl0LzVhMGNlZjViZGIwNzdkZjczZmE1OTUwNGVmYjhjYTRjOGIwYTg0YzUKK1BhdGNoNDE6 IGJpbmQtOS4xOC1DVkUtMjAyNi0xMjYxNy5wYXRjaAorIyBodHRwczovL2dpdGxhYi5pc2Mub3Jn L2lzYy1wcm9qZWN0cy9iaW5kOS9jb21taXQvMjY0MzdiZTkwMGM2OGJiZTA5NzRlYzlhYjgwNGMy ODk0YzE5YzQxOQorUGF0Y2g0MjogYmluZC05LjE4LUNWRS0yMDI2LTEyNjE3LXRlc3QucGF0Y2gK IAogJXs/c3lzdGVtZF9vcmRlcmluZ30KICMgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtp L0NoYW5nZXMvUlBNU3Vwb3J0Rm9yU3lzdGVtZFN5c3VzZXJzCg==