[SCM] GNU Inetutils branch, master, updated. v2.2-4-gfc310f0
Simon Josefsson via Commit-inetutils <[email protected]> Wed, 1 Sep 2021 16:51:59 -0400 (EDT)
| Newsgroups | gmane.comp.gnu.inetutils.cvs |
|---|---|
| Message-ID | <[email protected]> |
VGhpcyBpcyBhbiBhdXRvbWF0ZWQgZW1haWwgZnJvbSB0aGUgZ2l0IGhvb2tzL3Bvc3QtcmVjZWl2 ZSBzY3JpcHQuIEl0IHdhcwpnZW5lcmF0ZWQgYmVjYXVzZSBhIHJlZiBjaGFuZ2Ugd2FzIHB1c2hl ZCB0byB0aGUgcmVwb3NpdG9yeSBjb250YWluaW5nCnRoZSBwcm9qZWN0ICJHTlUgSW5ldHV0aWxz ICIuCgpUaGUgYnJhbmNoLCBtYXN0ZXIgaGFzIGJlZW4gdXBkYXRlZAogICAgICAgdmlhICBmYzMx MGYwNTljNTk4ODRhMjIxNzYwNmRmNjJiNDQ0ODg3Yzg2Zjg0IChjb21taXQpCiAgICAgICB2aWEg IDBjZWVlMjMyNjIzYjJlZDkzYmRmOTZiYWQ2ZTBmNGU0ODM0ZjMxYWEgKGNvbW1pdCkKICAgICAg IHZpYSAgMGU0ODMyZTczYTkzZWNkM2YzMzY1YjU0MDI0MjgzOWFjOTkzNDNkYyAoY29tbWl0KQog ICAgICBmcm9tICA4NzgwYjQ3YTdmZDAyOWM4ZmZhZGI1NDg0MTg2Mzk2NGNkZTAwZjE4IChjb21t aXQpCgpUaG9zZSByZXZpc2lvbnMgbGlzdGVkIGFib3ZlIHRoYXQgYXJlIG5ldyB0byB0aGlzIHJl cG9zaXRvcnkgaGF2ZQpub3QgYXBwZWFyZWQgb24gYW55IG90aGVyIG5vdGlmaWNhdGlvbiBlbWFp bDsgc28gd2UgbGlzdCB0aG9zZQpyZXZpc2lvbnMgaW4gZnVsbCwgYmVsb3cuCgotIExvZyAtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQpodHRwOi8vZ2l0LnNhdmFubmFoLmdudS5vcmcvY2dpdC9pbmV0dXRpbHMuZ2l0L2NvbW1p dC8/aWQ9ZmMzMTBmMDU5YzU5ODg0YTIyMTc2MDZkZjYyYjQ0NDg4N2M4NmY4NAoKCmNvbW1pdCBm YzMxMGYwNTljNTk4ODRhMjIxNzYwNmRmNjJiNDQ0ODg3Yzg2Zjg0CkF1dGhvcjogU2ltb24gSm9z ZWZzc29uIDxzaW1vbkBqb3NlZnNzb24ub3JnPgpEYXRlOiAgIFdlZCBTZXAgMSAyMjo1MToyNCAy MDIxICswMjAwCgogICAgRG9uJ3QgdXNlIG9ic29sZXRlIEFDX1RZUEVfU0lHTkFMLgogICAgCiAg ICAqIGNvbmZpZ3VyZS5hYzogUmVtb3ZlIGNhbGwgdG8gQUNfVFlQRV9TSUdOQUwuCgpkaWZmIC0t Z2l0IGEvY29uZmlndXJlLmFjIGIvY29uZmlndXJlLmFjCmluZGV4IDVlMTZjM2EuLmRkMWQ3NjIg MTAwNjQ0Ci0tLSBhL2NvbmZpZ3VyZS5hYworKysgYi9jb25maWd1cmUuYWMKQEAgLTY1MCw5ICs2 NTAsNiBAQCBmaQogCiAjIyMgQ2hlY2tzIGZvciB0eXBlcy4KIAotIyBDaGVja3MgcmV0dXJuIHR5 cGUgb2Ygc2lnbmFsIGhhbmRsZXJzCi1BQ19UWVBFX1NJR05BTAotCiBBQ19DSEVDS19UWVBFUyhz dHJ1Y3QgaWZfbmFtZWluZGV4LCAsICwKICAgW0lVX0ZMVVNITEVGVChbI2luY2x1ZGUgPHN5cy90 eXBlcy5oPgogICAgICAgICAgICAgICAgICAjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgoKaHR0cDov L2dpdC5zYXZhbm5haC5nbnUub3JnL2NnaXQvaW5ldHV0aWxzLmdpdC9jb21taXQvP2lkPTBjZWVl MjMyNjIzYjJlZDkzYmRmOTZiYWQ2ZTBmNGU0ODM0ZjMxYWEKCgpjb21taXQgMGNlZWUyMzI2MjNi MmVkOTNiZGY5NmJhZDZlMGY0ZTQ4MzRmMzFhYQpBdXRob3I6IFNpbW9uIEpvc2Vmc3NvbiA8c2lt b25Aam9zZWZzc29uLm9yZz4KRGF0ZTogICBXZWQgU2VwIDEgMjI6NDk6MTggMjAyMSArMDIwMAoK ICAgIFVzZSBnbnVsaWIgbW9kdWxlICdhdHRyaWJ1dGUnIGluc3RlYWQgb2Ygb2Jzb2xldGUgJ3Nu aXBwZXRzL3VudXNlZC1wYXJhbWV0ZXJzJy4KICAgIAogICAgKiAqLyouYzogVXNlIE1BWUJFX1VO VVNFRCBpbnN0ZWFkIG9mIF9HTF9VTlVTRURfUEFSQU1FVEVSLgogICAgKiAqLyouYzogSW5jbHVk ZSBhdHRyaWJ1dGUuaCBpbnN0ZWFkIG9mIHVudXNlZC1wYXJhbWV0ZXJzLmguCgpkaWZmIC0tZ2l0 IGEvYm9vdHN0cmFwLmNvbmYgYi9ib290c3RyYXAuY29uZgppbmRleCBlZDUxYzkzLi5mMzQ3ZDQ3 IDEwMDY0NAotLS0gYS9ib290c3RyYXAuY29uZgorKysgYi9ib290c3RyYXAuY29uZgpAQCAtNDAs NiArNDAsNyBAQCBhbGxvY2EKIGFsbG9jYS1vcHQKIGFyZ3AKIGFyZ3AtdmVyc2lvbi1ldGMKK2F0 dHJpYnV0ZQogYXV0b2J1aWxkCiBkaXJmZAogZGlybmFtZS1sZ3BsCkBAIC04NCw3ICs4NSw2IEBA IHNldGVudgogc2V0aG9zdG5hbWUKIHNpZ25hbAogc2l6ZV9tYXgKLXNuaXBwZXQvdW51c2VkLXBh cmFtZXRlcgogc25wcmludGYKIHNvY2tsZW4KIHN0ZGFyZwpkaWZmIC0tZ2l0IGEvZnRwL2NtZHMu YyBiL2Z0cC9jbWRzLmMKaW5kZXggNzgwYWJjOC4uNTU5YTEyMSAxMDA2NDQKLS0tIGEvZnRwL2Nt ZHMuYworKysgYi9mdHAvY21kcy5jCkBAIC05MSw3ICs5MSw3IEBACiAjZW5kaWYKIAogI2luY2x1 ZGUgImZ0cF92YXIuaCIKLSNpbmNsdWRlICJ1bnVzZWQtcGFyYW1ldGVyLmgiCisjaW5jbHVkZSAi YXR0cmlidXRlLmgiCiAjaW5jbHVkZSAieGFsbG9jLmgiCiAjaW5jbHVkZSAieGdldGN3ZC5oIgog CkBAIC00ODEsNyArNDgxLDcgQEAgY2hhciAqc3R5cGVbXSA9IHsKICAqIFNldCBiaW5hcnkgdHJh bnNmZXIgdHlwZS4KICAqLwogdm9pZAotc2V0YmluYXJ5IChpbnQgYXJnYyBfR0xfVU5VU0VEX1BB UkFNRVRFUiwgY2hhciAqKmFyZ3YgX0dMX1VOVVNFRF9QQVJBTUVURVIpCitzZXRiaW5hcnkgKGlu dCBhcmdjIE1BWUJFX1VOVVNFRCwgY2hhciAqKmFyZ3YgTUFZQkVfVU5VU0VEKQogewogCiAgIHN0 eXBlWzFdID0gImJpbmFyeSI7CkBAIC00OTIsNyArNDkyLDcgQEAgc2V0YmluYXJ5IChpbnQgYXJn YyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwgY2hhciAqKmFyZ3YgX0dMX1VOVVNFRF9QQVJBTUVURVIp CiAgKiBTZXQgYXNjaWkgdHJhbnNmZXIgdHlwZS4KICAqLwogdm9pZAotc2V0YXNjaWkgKGludCBh cmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJndiBfR0xfVU5VU0VEX1BBUkFNRVRF UikKK3NldGFzY2lpIChpbnQgYXJnYyBNQVlCRV9VTlVTRUQsIGNoYXIgKiphcmd2IE1BWUJFX1VO VVNFRCkKIHsKIAogICBzdHlwZVsxXSA9ICJhc2NpaSI7CkBAIC01MDMsNyArNTAzLDcgQEAgc2V0 YXNjaWkgKGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJndiBfR0xfVU5V U0VEX1BBUkFNRVRFUikKICAqIFNldCB0ZW5leCB0cmFuc2ZlciB0eXBlLgogICovCiB2b2lkCi1z ZXR0ZW5leCAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiphcmd2IF9HTF9V TlVTRURfUEFSQU1FVEVSKQorc2V0dGVuZXggKGludCBhcmdjIE1BWUJFX1VOVVNFRCwgY2hhciAq KmFyZ3YgTUFZQkVfVU5VU0VEKQogewogCiAgIHN0eXBlWzFdID0gInRlbmV4IjsKQEAgLTUxNCw3 ICs1MTQsNyBAQCBzZXR0ZW5leCAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIg Kiphcmd2IF9HTF9VTlVTRURfUEFSQU1FVEVSKQogICogU2V0IGZpbGUgdHJhbnNmZXIgbW9kZS4K ICAqLwogdm9pZAotc2V0ZnRtb2RlIChpbnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwgY2hh ciAqKmFyZ3YgX0dMX1VOVVNFRF9QQVJBTUVURVIpCitzZXRmdG1vZGUgKGludCBhcmdjIE1BWUJF X1VOVVNFRCwgY2hhciAqKmFyZ3YgTUFZQkVfVU5VU0VEKQogewogCiAgIHByaW50ZiAoIldlIG9u bHkgc3VwcG9ydCAlcyBtb2RlLCBzb3JyeS5cbiIsIG1vZGVuYW1lKTsKQEAgLTUyNSw3ICs1MjUs NyBAQCBzZXRmdG1vZGUgKGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJn diBfR0xfVU5VU0VEX1BBUkFNRVRFUikKICAqIFNldCBmaWxlIHRyYW5zZmVyIGZvcm1hdC4KICAq Lwogdm9pZAotc2V0Zm9ybSAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiph cmd2IF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc2V0Zm9ybSAoaW50IGFyZ2MgTUFZQkVfVU5VU0VE LCBjaGFyICoqYXJndiBNQVlCRV9VTlVTRUQpCiB7CiAKICAgcHJpbnRmICgiV2Ugb25seSBzdXBw b3J0ICVzIGZvcm1hdCwgc29ycnkuXG4iLCBmb3JtbmFtZSk7CkBAIC01MzYsNyArNTM2LDcgQEAg c2V0Zm9ybSAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiphcmd2IF9HTF9V TlVTRURfUEFSQU1FVEVSKQogICogU2V0IGZpbGUgdHJhbnNmZXIgc3RydWN0dXJlLgogICovCiB2 b2lkCi1zZXRzdHJ1Y3QgKGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJn diBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3NldHN0cnVjdCAoaW50IGFyZ2MgTUFZQkVfVU5VU0VE LCBjaGFyICoqYXJndiBNQVlCRV9VTlVTRUQpCiB7CiAKICAgcHJpbnRmICgiV2Ugb25seSBzdXBw b3J0ICVzIHN0cnVjdHVyZSwgc29ycnkuXG4iLCBzdHJ1Y3RuYW1lKTsKQEAgLTkxNCw3ICs5MTQs NyBAQCBnZXRpdCAoaW50IGFyZ2MsIGNoYXIgKiphcmd2LCBpbnQgcmVzdGFydGl0LCBjaGFyICpt b2RlKQogfQogCiB2b2lkCi1tYWJvcnQgKGludCBzaWdubyBfR0xfVU5VU0VEX1BBUkFNRVRFUikK K21hYm9ydCAoaW50IHNpZ25vIE1BWUJFX1VOVVNFRCkKIHsKICAgaW50IG9pbnRlcjsKIApAQCAt MTEyNyw3ICsxMTI3LDcgQEAgb25vZmYgKGludCBib29sKQogICogU2hvdyBzdGF0dXMuCiAgKi8K IHZvaWQKLXN0YXR1cyAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiphcmd2 IF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc3RhdHVzIChpbnQgYXJnYyBNQVlCRV9VTlVTRUQsIGNo YXIgKiphcmd2IE1BWUJFX1VOVVNFRCkKIHsKICAgaW50IGk7CiAKQEAgLTExOTIsNyArMTE5Miw3 IEBAIHN0YXR1cyAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiphcmd2IF9H TF9VTlVTRURfUEFSQU1FVEVSKQogICogU2V0IGJlZXAgb24gY21kIGNvbXBsZXRlZCBtb2RlLgog ICovCiB2b2lkCi1zZXRiZWxsIChpbnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwgY2hhciAq KmFyZ3YgX0dMX1VOVVNFRF9QQVJBTUVURVIpCitzZXRiZWxsIChpbnQgYXJnYyBNQVlCRV9VTlVT RUQsIGNoYXIgKiphcmd2IE1BWUJFX1VOVVNFRCkKIHsKIAogICBiZWxsID0gIWJlbGw7CkBAIC0x MjA0LDcgKzEyMDQsNyBAQCBzZXRiZWxsIChpbnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwg Y2hhciAqKmFyZ3YgX0dMX1VOVVNFRF9QQVJBTUVURVIpCiAgKiBUdXJuIG9uIHBhY2tldCB0cmFj aW5nLgogICovCiB2b2lkCi1zZXR0cmFjZSAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIs IGNoYXIgKiphcmd2IF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc2V0dHJhY2UgKGludCBhcmdjIE1B WUJFX1VOVVNFRCwgY2hhciAqKmFyZ3YgTUFZQkVfVU5VU0VEKQogewogCiAgIHRyYWNlID0gIXRy YWNlOwpAQCAtMTIyMyw3ICsxMjIzLDcgQEAgc2V0dHJhY2UgKGludCBhcmdjIF9HTF9VTlVTRURf UEFSQU1FVEVSLCBjaGFyICoqYXJndiBfR0xfVU5VU0VEX1BBUkFNRVRFUikKICAqIFRvZ2dsZSBz dGF0ZSBvbmx5IGluIGFic2VuY2Ugb2YgYW4gYXJndW1lbnQuCiAgKi8KIHZvaWQKLXNldGhhc2gg KGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJndikKK3NldGhhc2ggKGlu dCBhcmdjIE1BWUJFX1VOVVNFRCwgY2hhciAqKmFyZ3YpCiB7CiAgIGNoYXIgKnAgPSBhcmd2WzFd OwogCkBAIC0xMjczLDcgKzEyNzMsNyBAQCBzZXRoYXNoIChpbnQgYXJnYyBfR0xfVU5VU0VEX1BB UkFNRVRFUiwgY2hhciAqKmFyZ3YpCiAgKiBUdXJuIG9uIHByaW50aW5nIG9mIHNlcnZlciBlY2hv J3MuCiAgKi8KIHZvaWQKLXNldHZlcmJvc2UgKGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVS LCBjaGFyICoqYXJndiBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3NldHZlcmJvc2UgKGludCBhcmdj IE1BWUJFX1VOVVNFRCwgY2hhciAqKmFyZ3YgTUFZQkVfVU5VU0VEKQogewogCiAgIHZlcmJvc2Ug PSAhdmVyYm9zZTsKQEAgLTEyODUsNyArMTI4NSw3IEBAIHNldHZlcmJvc2UgKGludCBhcmdjIF9H TF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJndiBfR0xfVU5VU0VEX1BBUkFNRVRFUikKICAq IEFsbG93IGFueSBhZGRyZXNzIGZhbWlseS4KICAqLwogdm9pZAotc2V0aXBhbnkgKGludCBhcmdj IF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJndiBfR0xfVU5VU0VEX1BBUkFNRVRFUikK K3NldGlwYW55IChpbnQgYXJnYyBNQVlCRV9VTlVTRUQsIGNoYXIgKiphcmd2IE1BWUJFX1VOVVNF RCkKIHsKICAgdXNlZmFtaWx5ID0gQUZfVU5TUEVDOwogICBwcmludGYgKCJTZWxlY3RpbmcgYWRk cmVzc2VzOiAlcy5cbiIsICJhbnkiKTsKQEAgLTEyOTYsNyArMTI5Niw3IEBAIHNldGlwYW55IChp bnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwgY2hhciAqKmFyZ3YgX0dMX1VOVVNFRF9QQVJB TUVURVIpCiAgKiBSZXN0cmljdCB0byBJUHY0IGFkZHJlc3Nlcy4KICAqLwogdm9pZAotc2V0aXB2 NCAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiphcmd2IF9HTF9VTlVTRURf UEFSQU1FVEVSKQorc2V0aXB2NCAoaW50IGFyZ2MgTUFZQkVfVU5VU0VELCBjaGFyICoqYXJndiBN QVlCRV9VTlVTRUQpCiB7CiAgIHVzZWZhbWlseSA9IEFGX0lORVQ7CiAgIHByaW50ZiAoIlNlbGVj dGluZyBhZGRyZXNzZXM6ICVzLlxuIiwgIklQdjQiKTsKQEAgLTEzMDcsNyArMTMwNyw3IEBAIHNl dGlwdjQgKGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJndiBfR0xfVU5V U0VEX1BBUkFNRVRFUikKICAqIFJlc3RyaWN0IHRvIElQdjYgYWRkcmVzc2VzLgogICovCiB2b2lk Ci1zZXRpcHY2IChpbnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwgY2hhciAqKmFyZ3YgX0dM X1VOVVNFRF9QQVJBTUVURVIpCitzZXRpcHY2IChpbnQgYXJnYyBNQVlCRV9VTlVTRUQsIGNoYXIg Kiphcmd2IE1BWUJFX1VOVVNFRCkKIHsKICAgdXNlZmFtaWx5ID0gQUZfSU5FVDY7CiAgIHByaW50 ZiAoIlNlbGVjdGluZyBhZGRyZXNzZXM6ICVzLlxuIiwgIklQdjYiKTsKQEAgLTEzMTgsNyArMTMx OCw3IEBAIHNldGlwdjYgKGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJn diBfR0xfVU5VU0VEX1BBUkFNRVRFUikKICAqIFRvZ2dsZSB1c2Ugb2YgRVBSVC9FUFJUIGZvciBJ UHY0LgogICovCiB2b2lkCi1zZXRlcHN2NCAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIs IGNoYXIgKiphcmd2IF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc2V0ZXBzdjQgKGludCBhcmdjIE1B WUJFX1VOVVNFRCwgY2hhciAqKmFyZ3YgTUFZQkVfVU5VU0VEKQogewogCiAgIGRvZXBzdjQgPSAh ZG9lcHN2NDsKQEAgLTEzMzAsNyArMTMzMCw3IEBAIHNldGVwc3Y0IChpbnQgYXJnYyBfR0xfVU5V U0VEX1BBUkFNRVRFUiwgY2hhciAqKmFyZ3YgX0dMX1VOVVNFRF9QQVJBTUVURVIpCiAgKiBUb2dn bGUgUE9SVCBjbWQgdXNlIGJlZm9yZSBlYWNoIGRhdGEgY29ubmVjdGlvbi4KICAqLwogdm9pZAot c2V0cG9ydCAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiphcmd2IF9HTF9V TlVTRURfUEFSQU1FVEVSKQorc2V0cG9ydCAoaW50IGFyZ2MgTUFZQkVfVU5VU0VELCBjaGFyICoq YXJndiBNQVlCRV9VTlVTRUQpCiB7CiAKICAgc2VuZHBvcnQgPSAhc2VuZHBvcnQ7CkBAIC0xMzQz LDcgKzEzNDMsNyBAQCBzZXRwb3J0IChpbnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwgY2hh ciAqKmFyZ3YgX0dMX1VOVVNFRF9QQVJBTUVURVIpCiAgKiBkdXJpbmcgbWdldCwgbXB1dCwgYW5k IG1kZWxldGUuCiAgKi8KIHZvaWQKLXNldHByb21wdCAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJB TUVURVIsIGNoYXIgKiphcmd2IF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc2V0cHJvbXB0IChpbnQg YXJnYyBNQVlCRV9VTlVTRUQsIGNoYXIgKiphcmd2IE1BWUJFX1VOVVNFRCkKIHsKIAogICBpbnRl cmFjdGl2ZSA9ICFpbnRlcmFjdGl2ZTsKQEAgLTEzNTYsNyArMTM1Niw3IEBAIHNldHByb21wdCAo aW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiphcmd2IF9HTF9VTlVTRURfUEFS QU1FVEVSKQogICogb24gbG9jYWwgZmlsZSBuYW1lcy4KICAqLwogdm9pZAotc2V0Z2xvYiAoaW50 IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiphcmd2IF9HTF9VTlVTRURfUEFSQU1F VEVSKQorc2V0Z2xvYiAoaW50IGFyZ2MgTUFZQkVfVU5VU0VELCBjaGFyICoqYXJndiBNQVlCRV9V TlVTRUQpCiB7CiAKICAgZG9nbG9iID0gIWRvZ2xvYjsKQEAgLTE2NTksNyArMTY1OSw3IEBAIG1s cyAoaW50IGFyZ2MsIGNoYXIgKiphcmd2KQogICogRG8gYSBzaGVsbCBlc2NhcGUKICAqLwogdm9p ZAotc2hlbGwgKGludCBhcmdjLCBjaGFyICoqYXJndiBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3No ZWxsIChpbnQgYXJnYywgY2hhciAqKmFyZ3YgTUFZQkVfVU5VU0VEKQogewogICBwaWRfdCBwaWQ7 CiAgIHNpZ2hhbmRsZXJfdCBvbGQxLCBvbGQyOwpAQCAtMTc5MCw3ICsxNzkwLDcgQEAgdXNlciAo aW50IGFyZ2MsIGNoYXIgKiphcmd2KQogICogUHJpbnQgd29ya2luZyBkaXJlY3RvcnkuCiAgKi8K IHZvaWQKLXB3ZCAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiphcmd2IF9H TF9VTlVTRURfUEFSQU1FVEVSKQorcHdkIChpbnQgYXJnYyBNQVlCRV9VTlVTRUQsIGNoYXIgKiph cmd2IE1BWUJFX1VOVVNFRCkKIHsKICAgaW50IG9sZHZlcmJvc2UgPSB2ZXJib3NlOwogCkBAIC0x ODEwLDcgKzE4MTAsNyBAQCBwd2QgKGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFy ICoqYXJndiBfR0xfVU5VU0VEX1BBUkFNRVRFUikKICAqIFByaW50IGxvY2FsIHdvcmtpbmcgZGly ZWN0b3J5LgogICovCiB2b2lkCi1scHdkIChpbnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwg Y2hhciAqKmFyZ3YgX0dMX1VOVVNFRF9QQVJBTUVURVIpCitscHdkIChpbnQgYXJnYyBNQVlCRV9V TlVTRUQsIGNoYXIgKiphcmd2IE1BWUJFX1VOVVNFRCkKIHsKICAgY2hhciAqZGlyID0geGdldGN3 ZCAoKTsKIApAQCAtMTk4Miw3ICsxOTgyLDcgQEAgcm10aGVscCAoaW50IGFyZ2MsIGNoYXIgKiph cmd2KQogICogVGVybWluYXRlIHNlc3Npb24gYW5kIGV4aXQuCiAgKi8KIHZvaWQKLXF1aXQgKGlu dCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJndiBfR0xfVU5VU0VEX1BBUkFN RVRFUikKK3F1aXQgKGludCBhcmdjIE1BWUJFX1VOVVNFRCwgY2hhciAqKmFyZ3YgTUFZQkVfVU5V U0VEKQogewogCiAgIGlmIChjb25uZWN0ZWQpCkBAIC0xOTk5LDcgKzE5OTksNyBAQCBxdWl0IChp bnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwgY2hhciAqKmFyZ3YgX0dMX1VOVVNFRF9QQVJB TUVURVIpCiAgKiBUZXJtaW5hdGUgc2Vzc2lvbiwgYnV0IGRvbid0IGV4aXQuCiAgKi8KIHZvaWQK LWRpc2Nvbm5lY3QgKGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJndiBf R0xfVU5VU0VEX1BBUkFNRVRFUikKK2Rpc2Nvbm5lY3QgKGludCBhcmdjIE1BWUJFX1VOVVNFRCwg Y2hhciAqKmFyZ3YgTUFZQkVfVU5VU0VEKQogewogCiAgIGlmICghY29ubmVjdGVkKQpAQCAtMjEw Nyw3ICsyMTA3LDcgQEAgYWNjb3VudCAoaW50IGFyZ2MsIGNoYXIgKiphcmd2KQogam1wX2J1ZiBh Ym9ydHByb3g7CiAKIHZvaWQKLXByb3hhYm9ydCAoaW50IHNpZyBfR0xfVU5VU0VEX1BBUkFNRVRF UikKK3Byb3hhYm9ydCAoaW50IHNpZyBNQVlCRV9VTlVTRUQpCiB7CiAKICAgaWYgKCFwcm94eSkK QEAgLTIxOTAsNyArMjE5MCw3IEBAIGRvcHJveHkgKGludCBhcmdjLCBjaGFyICoqYXJndikKIH0K IAogdm9pZAotc2V0Y2FzZSAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiph cmd2IF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc2V0Y2FzZSAoaW50IGFyZ2MgTUFZQkVfVU5VU0VE LCBjaGFyICoqYXJndiBNQVlCRV9VTlVTRUQpCiB7CiAKICAgbWNhc2UgPSAhbWNhc2U7CkBAIC0y MTk5LDcgKzIxOTksNyBAQCBzZXRjYXNlIChpbnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwg Y2hhciAqKmFyZ3YgX0dMX1VOVVNFRF9QQVJBTUVURVIpCiB9CiAKIHZvaWQKLXNldGNyIChpbnQg YXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwgY2hhciAqKmFyZ3YgX0dMX1VOVVNFRF9QQVJBTUVU RVIpCitzZXRjciAoaW50IGFyZ2MgTUFZQkVfVU5VU0VELCBjaGFyICoqYXJndiBNQVlCRV9VTlVT RUQpCiB7CiAKICAgY3JmbGFnID0gIWNyZmxhZzsKQEAgLTIyNjcsNyArMjI2Nyw3IEBAIGRvdHJh bnMgKGNoYXIgKm5hbWUpCiB9CiAKIHZvaWQKLXNldHBhc3NpdmUgKGludCBhcmdjIF9HTF9VTlVT RURfUEFSQU1FVEVSLCBjaGFyICoqYXJndiBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3NldHBhc3Np dmUgKGludCBhcmdjIE1BWUJFX1VOVVNFRCwgY2hhciAqKmFyZ3YgTUFZQkVfVU5VU0VEKQogewog CiAgIHBhc3NpdmVtb2RlID0gIXBhc3NpdmVtb2RlOwpAQCAtMjUyNiw3ICsyNTI2LDcgQEAgZG9t YXAgKGNoYXIgKm5hbWUpCiB9CiAKIHZvaWQKLXNldHN1bmlxdWUgKGludCBhcmdjIF9HTF9VTlVT RURfUEFSQU1FVEVSLCBjaGFyICoqYXJndiBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3NldHN1bmlx dWUgKGludCBhcmdjIE1BWUJFX1VOVVNFRCwgY2hhciAqKmFyZ3YgTUFZQkVfVU5VU0VEKQogewog CiAgIHN1bmlxdWUgPSAhc3VuaXF1ZTsKQEAgLTI1MzUsNyArMjUzNSw3IEBAIHNldHN1bmlxdWUg KGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJndiBfR0xfVU5VU0VEX1BB UkFNRVRFUikKIH0KIAogdm9pZAotc2V0cnVuaXF1ZSAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJB TUVURVIsIGNoYXIgKiphcmd2IF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc2V0cnVuaXF1ZSAoaW50 IGFyZ2MgTUFZQkVfVU5VU0VELCBjaGFyICoqYXJndiBNQVlCRV9VTlVTRUQpCiB7CiAKICAgcnVu aXF1ZSA9ICFydW5pcXVlOwpAQCAtMjU0NSw3ICsyNTQ1LDcgQEAgc2V0cnVuaXF1ZSAoaW50IGFy Z2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiphcmd2IF9HTF9VTlVTRURfUEFSQU1FVEVS KQogCiAvKiBjaGFuZ2UgZGlyZWN0b3J5IHRvIHBhcmVudCBkaXJlY3RvcnkgKi8KIHZvaWQKLWNk dXAgKGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICoqYXJndiBfR0xfVU5VU0VE X1BBUkFNRVRFUikKK2NkdXAgKGludCBhcmdjIE1BWUJFX1VOVVNFRCwgY2hhciAqKmFyZ3YgTUFZ QkVfVU5VU0VEKQogewogCiAgIGlmIChjb21tYW5kICgiQ0RVUCIpID09IEVSUk9SICYmIGNvZGUg PT0gNTAwKQpAQCAtMjU3Myw3ICsyNTczLDcgQEAgcmVzdGFydCAoaW50IGFyZ2MsIGNoYXIgKiph cmd2KQogCiAvKiBzaG93IHJlbW90ZSBzeXN0ZW0gdHlwZSAqLwogdm9pZAotc3lzdCAoaW50IGFy Z2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKiphcmd2IF9HTF9VTlVTRURfUEFSQU1FVEVS KQorc3lzdCAoaW50IGFyZ2MgTUFZQkVfVU5VU0VELCBjaGFyICoqYXJndiBNQVlCRV9VTlVTRUQp CiB7CiAKICAgY29tbWFuZCAoIlNZU1QiKTsKZGlmZiAtLWdpdCBhL2Z0cC9mdHAuYyBiL2Z0cC9m dHAuYwppbmRleCA3NTEzNTM5Li43MzBhODU1IDEwMDY0NAotLS0gYS9mdHAvZnRwLmMKKysrIGIv ZnRwL2Z0cC5jCkBAIC05MSw3ICs5MSw3IEBACiAjZW5kaWYKIAogI2luY2x1ZGUgImZ0cF92YXIu aCIKLSNpbmNsdWRlICJ1bnVzZWQtcGFyYW1ldGVyLmgiCisjaW5jbHVkZSAiYXR0cmlidXRlLmgi CiAKICNpZiAhSEFWRV9ERUNMX0ZDTE9TRQogLyogU29tZSBzeXN0ZW1zIGRvbid0IGRlY2xhcmUg ZmNsb3NlIGluIDxzdGRpby5oPiwgc28gZG8gaXQgb3Vyc2VsdmVzLiAgKi8KQEAgLTQxMCw3ICs0 MTAsNyBAQCBsb2dpbiAoY2hhciAqaG9zdCkKIH0KIAogdm9pZAotY21kYWJvcnQgKGludCBzaWcg X0dMX1VOVVNFRF9QQVJBTUVURVIpCitjbWRhYm9ydCAoaW50IHNpZyBNQVlCRV9VTlVTRUQpCiB7 CiAKICAgcHJpbnRmICgiXG4iKTsKQEAgLTU5Nyw3ICs1OTcsNyBAQCBlbXB0eSAoZmRfc2V0ICpt YXNrLCBpbnQgc2VjKQogam1wX2J1ZiBzZW5kYWJvcnQ7CiAKIHZvaWQKLWFib3J0c2VuZCAoaW50 IHNpZyBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK2Fib3J0c2VuZCAoaW50IHNpZyBNQVlCRV9VTlVT RUQpCiB7CiAKICAgbWZsYWcgPSAwOwpAQCAtOTAyLDcgKzkwMiw3IEBAIGFib3J0Ogogam1wX2J1 ZiByZWN2YWJvcnQ7CiAKIHZvaWQKLWFib3J0cmVjdiAoaW50IHNpZyBfR0xfVU5VU0VEX1BBUkFN RVRFUikKK2Fib3J0cmVjdiAoaW50IHNpZyBNQVlCRV9VTlVTRUQpCiB7CiAKICAgbWZsYWcgPSAw OwpAQCAtMTY2OSw3ICsxNjY5LDcgQEAgdHZzdWIgKHN0cnVjdCB0aW1ldmFsICp0ZGlmZiwgc3Ry dWN0IHRpbWV2YWwgKnQxLCBzdHJ1Y3QgdGltZXZhbCAqdDApCiB9CiAKIHZvaWQKLXBzYWJvcnQg KGludCBzaWcgX0dMX1VOVVNFRF9QQVJBTUVURVIpCitwc2Fib3J0IChpbnQgc2lnIE1BWUJFX1VO VVNFRCkKIHsKIAogICBhYnJ0ZmxhZysrOwpAQCAtMTc4Miw3ICsxNzgyLDcgQEAgcHN3aXRjaCAo aW50IGZsYWcpCiB9CiAKIHZvaWQKLWFib3J0cHQgKGludCBzaWcgX0dMX1VOVVNFRF9QQVJBTUVU RVIpCithYm9ydHB0IChpbnQgc2lnIE1BWUJFX1VOVVNFRCkKIHsKIAogICBwcmludGYgKCJcbiIp OwpAQCAtMTkyNCw3ICsxOTI0LDcgQEAgYWJvcnQ6CiB9CiAKIHZvaWQKLXJlc2V0IChpbnQgYXJn YyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwgY2hhciAqKmFyZ3YgX0dMX1VOVVNFRF9QQVJBTUVURVIp CityZXNldCAoaW50IGFyZ2MgTUFZQkVfVU5VU0VELCBjaGFyICoqYXJndiBNQVlCRV9VTlVTRUQp CiB7CiAgIGZkX3NldCBtYXNrOwogICBpbnQgbmZuZCA9IDE7CmRpZmYgLS1naXQgYS9mdHAvbWFp bi5jIGIvZnRwL21haW4uYwppbmRleCBiNmI2YzI3Li42NjZjODY2IDEwMDY0NAotLS0gYS9mdHAv bWFpbi5jCisrKyBiL2Z0cC9tYWluLmMKQEAgLTgxLDcgKzgxLDcgQEAKICNpbmNsdWRlICJmdHBf dmFyLmgiCiAKICNpbmNsdWRlICJsaWJpbmV0dXRpbHMuaCIKLSNpbmNsdWRlICJ1bnVzZWQtcGFy YW1ldGVyLmgiCisjaW5jbHVkZSAiYXR0cmlidXRlLmgiCiAKICNpZmRlZiBIQVZFX1JFQURMSU5F X1JFQURMSU5FX0gKICMgaW5jbHVkZSA8cmVhZGxpbmUvcmVhZGxpbmUuaD4KQEAgLTE0Miw3ICsx NDIsNyBAQCBzdGF0aWMgc3RydWN0IGFyZ3Bfb3B0aW9uIGFyZ3Bfb3B0aW9uc1tdID0gewogfTsK IAogc3RhdGljIGVycm9yX3QKLXBhcnNlX29wdCAoaW50IGtleSwgY2hhciAqYXJnLCBzdHJ1Y3Qg YXJncF9zdGF0ZSAqc3RhdGUgX0dMX1VOVVNFRF9QQVJBTUVURVIpCitwYXJzZV9vcHQgKGludCBr ZXksIGNoYXIgKmFyZywgc3RydWN0IGFyZ3Bfc3RhdGUgKnN0YXRlIE1BWUJFX1VOVVNFRCkKIHsK ICAgc3dpdGNoIChrZXkpCiAgICAgewpAQCAtMzE2LDEzICszMTYsMTMgQEAgbWFpbiAoaW50IGFy Z2MsIGNoYXIgKmFyZ3ZbXSkKIH0KIAogdm9pZAotaW50ciAoaW50IHNpZyBfR0xfVU5VU0VEX1BB UkFNRVRFUikKK2ludHIgKGludCBzaWcgTUFZQkVfVU5VU0VEKQogewogICBsb25nam1wICh0b3Bs ZXZlbCwgMSk7CiB9CiAKIHZvaWQKLWxvc3RwZWVyIChpbnQgc2lnIF9HTF9VTlVTRURfUEFSQU1F VEVSKQorbG9zdHBlZXIgKGludCBzaWcgTUFZQkVfVU5VU0VEKQogewogICBpZiAoY29ubmVjdGVk KQogICAgIHsKZGlmZiAtLWdpdCBhL2Z0cGQvZnRwZC5jIGIvZnRwZC9mdHBkLmMKaW5kZXggNjhk NDFmZC4uZjRiMjlkNSAxMDA2NDQKLS0tIGEvZnRwZC9mdHBkLmMKKysrIGIvZnRwZC9mdHBkLmMK QEAgLTEwNCw3ICsxMDQsNyBAQAogI2luY2x1ZGUgPHByb2duYW1lLmg+CiAjaW5jbHVkZSA8bGli aW5ldHV0aWxzLmg+CiAjaW5jbHVkZSAiZXh0ZXJuLmgiCi0jaW5jbHVkZSAidW51c2VkLXBhcmFt ZXRlci5oIgorI2luY2x1ZGUgImF0dHJpYnV0ZS5oIgogCiAjaWZuZGVmIExJTkVfTUFYCiAjIGRl ZmluZSBMSU5FX01BWCAyMDQ4CkBAIC02MzQsNyArNjM0LDcgQEAgc2lncXVpdCAoaW50IHNpZ25v KQogCiAKIHN0YXRpYyB2b2lkCi1sb3N0Y29ubiAoaW50IHNpZ25vIF9HTF9VTlVTRURfUEFSQU1F VEVSKQorbG9zdGNvbm4gKGludCBzaWdubyBNQVlCRV9VTlVTRUQpCiB7CiAgIGlmIChkZWJ1ZykK ICAgICBzeXNsb2cgKExPR19ERUJVRywgImxvc3QgY29ubmVjdGlvbiIpOwpAQCAtMTkxOSw3ICsx OTE5LDcgQEAgZG9sb2dvdXQgKGludCBzdGF0dXMpCiB9CiAKIHN0YXRpYyB2b2lkCi1teW9vYiAo aW50IHNpZ25vIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorbXlvb2IgKGludCBzaWdubyBNQVlCRV9V TlVTRUQpCiB7CiAgIGNoYXIgKmNwOwogCmRpZmYgLS1naXQgYS9mdHBkL3BhbS5jIGIvZnRwZC9w YW0uYwppbmRleCBlMTA3NWQ2Li44YzdhMzYxIDEwMDY0NAotLS0gYS9mdHBkL3BhbS5jCisrKyBi L2Z0cGQvcGFtLmMKQEAgLTI1LDcgKzI1LDcgQEAKICNpbmNsdWRlIDxzdGRsaWIuaD4KICNpbmNs dWRlIDx1bmlzdGQuaD4KICNpbmNsdWRlIDxzeXNsb2cuaD4KLSNpbmNsdWRlIDx1bnVzZWQtcGFy YW1ldGVyLmg+CisjaW5jbHVkZSA8YXR0cmlidXRlLmg+CiAjaW5jbHVkZSAiZXh0ZXJuLmgiCiAK ICNpZmRlZiBIQVZFX1NFQ1VSSVRZX1BBTV9BUFBMX0gKQEAgLTMxNCw3ICszMTQsNyBAQCBwYW1f cGFzcyAoY29uc3QgY2hhciAqcGFzc3dkLCBzdHJ1Y3QgY3JlZGVudGlhbHMgKnBjcmVkKQogfQog CiB2b2lkCi1wYW1fZW5kX2xvZ2luIChzdHJ1Y3QgY3JlZGVudGlhbHMgKiBwY3JlZCBfR0xfVU5V U0VEX1BBUkFNRVRFUikKK3BhbV9lbmRfbG9naW4gKHN0cnVjdCBjcmVkZW50aWFscyAqIHBjcmVk IE1BWUJFX1VOVVNFRCkKIHsKICAgaW50IGVycm9yOwogCmRpZmYgLS1naXQgYS9mdHBkL3NlcnZl cl9tb2RlLmMgYi9mdHBkL3NlcnZlcl9tb2RlLmMKaW5kZXggZjlkZmU4Zi4uZGJjZWM1OSAxMDA2 NDQKLS0tIGEvZnRwZC9zZXJ2ZXJfbW9kZS5jCisrKyBiL2Z0cGQvc2VydmVyX21vZGUuYwpAQCAt MzksNyArMzksNyBAQAogI2VuZGlmCiAKICNpbmNsdWRlIDxsaWJpbmV0dXRpbHMuaD4KLSNpbmNs dWRlICJ1bnVzZWQtcGFyYW1ldGVyLmgiCisjaW5jbHVkZSAiYXR0cmlidXRlLmgiCiAKIGludCB1 c2VmYW1pbHkgPSBBRl9VTlNQRUM7CS8qIEFkZHJlc3MgZmFtaWx5IGZvciBkYWVtb24uICAqLwog CkBAIC05Nyw3ICs5Nyw3IEBAIGNoZWNrX2hvc3QgKHN0cnVjdCBzb2NrYWRkciAqc2EsIHNvY2ts ZW5fdCBsZW4pCiAjZW5kaWYgLyogV0lUSF9XUkFQICovCiAKIHN0YXRpYyB2b2lkCi1yZWFwY2hp bGQgKGludCBzaWdubyBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3JlYXBjaGlsZCAoaW50IHNpZ25v IE1BWUJFX1VOVVNFRCkKIHsKICAgaW50IHNhdmVfZXJybm8gPSBlcnJubzsKIApkaWZmIC0tZ2l0 IGEvaWZjb25maWcvb3B0aW9ucy5jIGIvaWZjb25maWcvb3B0aW9ucy5jCmluZGV4IDEwYmY0YmUu LmM2NzIxYmEgMTAwNjQ0Ci0tLSBhL2lmY29uZmlnL29wdGlvbnMuYworKysgYi9pZmNvbmZpZy9v cHRpb25zLmMKQEAgLTM5LDcgKzM5LDcgQEAKICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CiAjaW5j bHVkZSA8bmV0L2lmLmg+CiAKLSNpbmNsdWRlIDx1bnVzZWQtcGFyYW1ldGVyLmg+CisjaW5jbHVk ZSA8YXR0cmlidXRlLmg+CiAKICNpbmNsdWRlICJpZmNvbmZpZy5oIgogCkBAIC0zODAsNyArMzgw LDcgQEAgdm9pZCBwYXJzZV9vcHRfc2V0X2FmIChzdHJ1Y3QgaWZjb25maWcgKmlmcCwgY2hhciAq YWYpCiB9CiAKIHZvaWQKLXBhcnNlX29wdF9zZXRfZmxhZyAoc3RydWN0IGlmY29uZmlnICppZnAg X0dMX1VOVVNFRF9QQVJBTUVURVIsCitwYXJzZV9vcHRfc2V0X2ZsYWcgKHN0cnVjdCBpZmNvbmZp ZyAqaWZwIE1BWUJFX1VOVVNFRCwKIAkJICAgIGludCBmbGFnLCBpbnQgcmV2KQogewogICBpZiAo aWZwKQpAQCAtNjE0LDcgKzYxNCw3IEBAIHBhcnNlX29wdCAoaW50IGtleSwgY2hhciAqYXJnLCBz dHJ1Y3QgYXJncF9zdGF0ZSAqc3RhdGUpCiAKIHN0YXRpYyBjaGFyICoKIGRlZmF1bHRfaGVscF9m aWx0ZXIgKGludCBrZXksIGNvbnN0IGNoYXIgKnRleHQsCi0JCSAgICAgdm9pZCAqaW5wdXQgX0dM X1VOVVNFRF9QQVJBTUVURVIpCisJCSAgICAgdm9pZCAqaW5wdXQgTUFZQkVfVU5VU0VEKQogewog ICBjaGFyICpzOwogCmRpZmYgLS1naXQgYS9pZmNvbmZpZy9wcmludGlmLmMgYi9pZmNvbmZpZy9w cmludGlmLmMKaW5kZXggNjBjMjZlYS4uMTc2NjdhOCAxMDA2NDQKLS0tIGEvaWZjb25maWcvcHJp bnRpZi5jCisrKyBiL2lmY29uZmlnL3ByaW50aWYuYwpAQCAtNDgsNyArNDgsNyBAQAogI2luY2x1 ZGUgPGFycGEvaW5ldC5oPgogI2luY2x1ZGUgImlmY29uZmlnLmgiCiAjaW5jbHVkZSAieGFsbG9j LmgiCi0jaW5jbHVkZSA8dW51c2VkLXBhcmFtZXRlci5oPgorI2luY2x1ZGUgPGF0dHJpYnV0ZS5o PgogCiBGSUxFICpvc3RyZWFtOwkJCS8qIEVpdGhlciBzdGRvdXQgb3Igc3RkZXJyb3IuICAqLwog aW50IGNvbHVtbl9zdGRvdXQ7CQkvKiBUaGUgY29sdW1uIHBvc2l0aW9uIG9mIHRoZSBjdXJzb3Ig b24gc3Rkb3V0LiAgKi8KQEAgLTEyMCw3ICsxMjAsNyBAQCBzdHJ1Y3QgZm9ybWF0X2hhbmRsZSBm b3JtYXRfaGFuZGxlc1tdID0gewogLyogVmFyaW91cyBoZWxwZXIgZnVuY3Rpb25zIHRvIGdldCB0 aGUgam9iIGRvbmUuICAqLwogCiB2b2lkCi1wdXRfY2hhciAoZm9ybWF0X2RhdGFfdCBmb3JtIF9H TF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyIGMpCitwdXRfY2hhciAoZm9ybWF0X2RhdGFfdCBmb3Jt IE1BWUJFX1VOVVNFRCwgY2hhciBjKQogewogICBzd2l0Y2ggKGMpCiAgICAgewpAQCAtMTQ4LDcg KzE0OCw3IEBAIHB1dF9zdHJpbmcgKGZvcm1hdF9kYXRhX3QgZm9ybSwgY29uc3QgY2hhciAqcykK IH0KIAogdm9pZAotcHV0X2ludCAoZm9ybWF0X2RhdGFfdCBmb3JtIF9HTF9VTlVTRURfUEFSQU1F VEVSLAorcHV0X2ludCAoZm9ybWF0X2RhdGFfdCBmb3JtIE1BWUJFX1VOVVNFRCwKIAkgaW50IGFy Z2MsIGNoYXIgKmFyZ3ZbXSwgaW50IG5yKQogewogICBjaGFyICpmbXQ7CkBAIC0yMDUsNyArMjA1 LDcgQEAgcHV0X2ludCAoZm9ybWF0X2RhdGFfdCBmb3JtIF9HTF9VTlVTRURfUEFSQU1FVEVSLAog fQogCiB2b2lkCi1wdXRfdWxvbmcgKGZvcm1hdF9kYXRhX3QgZm9ybSBfR0xfVU5VU0VEX1BBUkFN RVRFUiwKK3B1dF91bG9uZyAoZm9ybWF0X2RhdGFfdCBmb3JtIE1BWUJFX1VOVVNFRCwKIAkgICBp bnQgYXJnYywgY2hhciAqYXJndltdLCB1bnNpZ25lZCBsb25nIHZhbHVlKQogewogICBjaGFyICpm bXQ7CkBAIC0zNDYsOCArMzQ2LDggQEAgcHV0X2ZsYWdzIChmb3JtYXRfZGF0YV90IGZvcm0sIGlu dCBhcmdjLCBjaGFyICphcmd2W10sIGludCBmbGFncykKIH0KIAogdm9pZAotcHV0X2ZsYWdzX3No b3J0IChmb3JtYXRfZGF0YV90IGZvcm0sIGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLAot CQkgY2hhciAqYXJndltdIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBpbnQgZmxhZ3MpCitwdXRfZmxh Z3Nfc2hvcnQgKGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MgTUFZQkVfVU5VU0VELAorCQkg Y2hhciAqYXJndltdIE1BWUJFX1VOVVNFRCwgaW50IGZsYWdzKQogewogICBjaGFyIGJ1ZltJRl9G T1JNQVRfRkxBR1NfQlVGU0laRV07CiAgIGlmX2Zvcm1hdF9mbGFncyAoZmxhZ3MsIGJ1Ziwgc2l6 ZW9mIGJ1Zik7CkBAIC0zNzgsOSArMzc4LDkgQEAgZm9ybWF0X2hhbmRsZXIgKGNvbnN0IGNoYXIg Km5hbWUsIGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKIH0KIAog dm9pZAotZmhfbm90aGluZyAoZm9ybWF0X2RhdGFfdCBmb3JtIF9HTF9VTlVTRURfUEFSQU1FVEVS LAotCSAgICBpbnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwKLQkgICAgY2hhciAqYXJndltd IF9HTF9VTlVTRURfUEFSQU1FVEVSKQorZmhfbm90aGluZyAoZm9ybWF0X2RhdGFfdCBmb3JtIE1B WUJFX1VOVVNFRCwKKwkgICAgaW50IGFyZ2MgTUFZQkVfVU5VU0VELAorCSAgICBjaGFyICphcmd2 W10gTUFZQkVfVU5VU0VEKQogewogfQogCkBAIC00MzksMTUgKzQzOSwxNSBAQCBmaF9mb3JlYWNo Zm9ybWF0IChmb3JtYXRfZGF0YV90IGZvcm0sIGludCBhcmdjLCBjaGFyICphcmd2W10pCiB9CiAK IHZvaWQKLWZoX25ld2xpbmUgKGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MgX0dMX1VOVVNF RF9QQVJBTUVURVIsCi0JICAgIGNoYXIgKmFyZ3ZbXSBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK2Zo X25ld2xpbmUgKGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MgTUFZQkVfVU5VU0VELAorCSAg ICBjaGFyICphcmd2W10gTUFZQkVfVU5VU0VEKQogewogICBwdXRfY2hhciAoZm9ybSwgJ1xuJyk7 CiB9CiAKIHZvaWQKLWZoX3RhYnVsYXRvciAoZm9ybWF0X2RhdGFfdCBmb3JtLCBpbnQgYXJnYyBf R0xfVU5VU0VEX1BBUkFNRVRFUiwKLQkgICAgICBjaGFyICphcmd2W10gX0dMX1VOVVNFRF9QQVJB TUVURVIpCitmaF90YWJ1bGF0b3IgKGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MgTUFZQkVf VU5VU0VELAorCSAgICAgIGNoYXIgKmFyZ3ZbXSBNQVlCRV9VTlVTRUQpCiB7CiAgIHB1dF9jaGFy IChmb3JtLCAnXHQnKTsKIH0KQEAgLTYxNCwxNCArNjE0LDE0IEBAIGZoX2Vycm9yIChmb3JtYXRf ZGF0YV90IGZvcm0sIGludCBhcmdjLCBjaGFyICphcmd2W10pCiB9CiAKIHZvaWQKLWZoX3Byb2du YW1lIChmb3JtYXRfZGF0YV90IGZvcm0sIGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLAot CSAgICAgY2hhciAqYXJndltdIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorZmhfcHJvZ25hbWUgKGZv cm1hdF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MgTUFZQkVfVU5VU0VELAorCSAgICAgY2hhciAqYXJn dltdIE1BWUJFX1VOVVNFRCkKIHsKICAgcHV0X3N0cmluZyAoZm9ybSwgcHJvZ3JhbV9uYW1lKTsK IH0KIAogdm9pZAotZmhfZXhpdCAoZm9ybWF0X2RhdGFfdCBmb3JtIF9HTF9VTlVTRURfUEFSQU1F VEVSLAorZmhfZXhpdCAoZm9ybWF0X2RhdGFfdCBmb3JtIE1BWUJFX1VOVVNFRCwKIAkgaW50IGFy Z2MsIGNoYXIgKmFyZ3ZbXSkKIHsKICAgaW50IGVyciA9IDA7CkBAIC02MzMsOCArNjMzLDggQEAg ZmhfZXhpdCAoZm9ybWF0X2RhdGFfdCBmb3JtIF9HTF9VTlVTRURfUEFSQU1FVEVSLAogfQogCiB2 b2lkCi1maF9uYW1lIChmb3JtYXRfZGF0YV90IGZvcm0sIGludCBhcmdjIF9HTF9VTlVTRURfUEFS QU1FVEVSLAotCSBjaGFyICphcmd2W10gX0dMX1VOVVNFRF9QQVJBTUVURVIpCitmaF9uYW1lIChm b3JtYXRfZGF0YV90IGZvcm0sIGludCBhcmdjIE1BWUJFX1VOVVNFRCwKKwkgY2hhciAqYXJndltd IE1BWUJFX1VOVVNFRCkKIHsKICAgcHV0X3N0cmluZyAoZm9ybSwgZm9ybS0+bmFtZSk7CiB9CkBA IC02NDYsOCArNjQ2LDggQEAgZmhfaW5kZXhfcXVlcnkgKGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50 IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKIH0KIAogdm9pZAotZmhfaW5kZXggKGZvcm1hdF9kYXRhX3Qg Zm9ybSwgaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsCi0JICBjaGFyICphcmd2W10gX0dM X1VOVVNFRF9QQVJBTUVURVIpCitmaF9pbmRleCAoZm9ybWF0X2RhdGFfdCBmb3JtLCBpbnQgYXJn YyBNQVlCRV9VTlVTRUQsCisJICBjaGFyICphcmd2W10gTUFZQkVfVU5VU0VEKQogewogICBpbnQg aW5keCA9IGlmX25hbWV0b2luZGV4IChmb3JtLT5uYW1lKTsKIApAQCAtOTMwLDggKzkzMCw4IEBA IGZoX21lZGlhX3F1ZXJ5IChmb3JtYXRfZGF0YV90IGZvcm0sIGludCBhcmdjLCBjaGFyICphcmd2 W10pCiB9CiAKIHZvaWQKLWZoX21lZGlhIChmb3JtYXRfZGF0YV90IGZvcm0sIGludCBhcmdjIF9H TF9VTlVTRURfUEFSQU1FVEVSLAotCSAgY2hhciAqYXJndltdIF9HTF9VTlVTRURfUEFSQU1FVEVS KQorZmhfbWVkaWEgKGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MgTUFZQkVfVU5VU0VELAor CSAgY2hhciAqYXJndltdIE1BWUJFX1VOVVNFRCkKIHsKICAgLyogTXVzdCBiZSBvdmVycmlkZGVu IGJ5IGEgc3lzdGVtIGRlcGVuZGVudCBpbXBsZW1lbnRhdGlvbi4gICovCiAgIHB1dF9zdHJpbmcg KGZvcm0sICIobm90IGtub3duKSIpOwpAQCAtOTQ3LDggKzk0Nyw4IEBAIGZoX3N0YXR1c19xdWVy eSAoZm9ybWF0X2RhdGFfdCBmb3JtLCBpbnQgYXJnYywgY2hhciAqYXJndltdKQogfQogCiB2b2lk Ci1maF9zdGF0dXMgKGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJB TUVURVIsCi0JICAgY2hhciAqYXJndltdIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorZmhfc3RhdHVz IChmb3JtYXRfZGF0YV90IGZvcm0sIGludCBhcmdjIE1BWUJFX1VOVVNFRCwKKwkgICBjaGFyICph cmd2W10gTUFZQkVfVU5VU0VEKQogewogICAvKiBNdXN0IGJlIG92ZXJyaWRkZW4gYnkgYSBzeXN0 ZW0gZGVwZW5kZW50IGltcGxlbWVudGF0aW9uLiAgKi8KICAgcHV0X3N0cmluZyAoZm9ybSwgIihu b3Qga25vd24pIik7CmRpZmYgLS1naXQgYS9pZmNvbmZpZy9zeXN0ZW0vYnNkLmMgYi9pZmNvbmZp Zy9zeXN0ZW0vYnNkLmMKaW5kZXggZDY5YTE0YS4uMjFhOTEyOSAxMDA2NDQKLS0tIGEvaWZjb25m aWcvc3lzdGVtL2JzZC5jCisrKyBiL2lmY29uZmlnL3N5c3RlbS9ic2QuYwpAQCAtMzQsNyArMzQs NyBAQAogI2luY2x1ZGUgPG5ldGluZXQvaWZfZXRoZXIuaD4KICNpbmNsdWRlIDxpZmFkZHJzLmg+ CiAKLSNpbmNsdWRlIDx1bnVzZWQtcGFyYW1ldGVyLmg+CisjaW5jbHVkZSA8YXR0cmlidXRlLmg+ CiAMCiAKIC8qIE91dHB1dCBmb3JtYXQgc3R1ZmYuICAqLwpAQCAtNTEsOSArNTEsOSBAQCBOQU1F IFtBRERSIFtEU1RBRERSXV0gW2Jyb2FkY2FzdCBCUkRBRERSXSBbbmV0bWFzayBNQVNLXSAiCiBz dHJ1Y3QgYXJncF9jaGlsZCBzeXN0ZW1fYXJncF9jaGlsZDsKIAogaW50Ci1zeXN0ZW1fcGFyc2Vf b3B0IChzdHJ1Y3QgaWZjb25maWcgKippZnAgX0dMX1VOVVNFRF9QQVJBTUVURVIsCi0JCSAgY2hh ciBvcHRpb24gX0dMX1VOVVNFRF9QQVJBTUVURVIsCi0JCSAgY2hhciAqb3B0YXJnIF9HTF9VTlVT RURfUEFSQU1FVEVSKQorc3lzdGVtX3BhcnNlX29wdCAoc3RydWN0IGlmY29uZmlnICoqaWZwIE1B WUJFX1VOVVNFRCwKKwkJICBjaGFyIG9wdGlvbiBNQVlCRV9VTlVTRUQsCisJCSAgY2hhciAqb3B0 YXJnIE1BWUJFX1VOVVNFRCkKIHsKICAgcmV0dXJuIDA7CiB9CkBAIC0xODAsOSArMTgwLDkgQEAg c3lzdGVtX3BhcnNlX29wdF9yZXN0IChzdHJ1Y3QgaWZjb25maWcgKippZnAsIGludCBhcmdjLCBj aGFyICphcmd2W10pCiB9CiAKIGludAotc3lzdGVtX2NvbmZpZ3VyZSAoaW50IHNmZCBfR0xfVU5V U0VEX1BBUkFNRVRFUiwKLQkJICBzdHJ1Y3QgaWZyZXEgKmlmciBfR0xfVU5VU0VEX1BBUkFNRVRF UiwKLQkJICBzdHJ1Y3Qgc3lzdGVtX2lmY29uZmlnICppZnMgX0dMX1VOVVNFRF9QQVJBTUVURVIp CitzeXN0ZW1fY29uZmlndXJlIChpbnQgc2ZkIE1BWUJFX1VOVVNFRCwKKwkJICBzdHJ1Y3QgaWZy ZXEgKmlmciBNQVlCRV9VTlVTRUQsCisJCSAgc3RydWN0IHN5c3RlbV9pZmNvbmZpZyAqaWZzIE1B WUJFX1VOVVNFRCkKIHsKICAgcmV0dXJuIDA7CiB9CkBAIC0zNzAsOCArMzcwLDggQEAgc3lzdGVt X2ZoX2h3YWRkcl9xdWVyeSAoZm9ybWF0X2RhdGFfdCBmb3JtLCBpbnQgYXJnYywgY2hhciAqYXJn dltdKQogfQogCiB2b2lkCi1zeXN0ZW1fZmhfaHdhZGRyIChmb3JtYXRfZGF0YV90IGZvcm0sIGlu dCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLAotCQkgIGNoYXIgKmFyZ3ZbXSBfR0xfVU5VU0VE X1BBUkFNRVRFUikKK3N5c3RlbV9maF9od2FkZHIgKGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50IGFy Z2MgTUFZQkVfVU5VU0VELAorCQkgIGNoYXIgKmFyZ3ZbXSBNQVlCRV9VTlVTRUQpCiB7CiAgIEVT VEFCTElTSF9JRkFERFJTCiAgIGlmICghaWZwKQpAQCAtNDQxLDggKzQ0MSw4IEBAIHN5c3RlbV9m aF9od3R5cGVfcXVlcnkgKGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MsIGNoYXIgKmFyZ3Zb XSkKIH0KIAogdm9pZAotc3lzdGVtX2ZoX2h3dHlwZSAoZm9ybWF0X2RhdGFfdCBmb3JtLCBpbnQg YXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwKLQkJICBjaGFyICphcmd2W10gX0dMX1VOVVNFRF9Q QVJBTUVURVIpCitzeXN0ZW1fZmhfaHd0eXBlIChmb3JtYXRfZGF0YV90IGZvcm0sIGludCBhcmdj IE1BWUJFX1VOVVNFRCwKKwkJICBjaGFyICphcmd2W10gTUFZQkVfVU5VU0VEKQogewogICBpbnQg Zm91bmQgPSAwOwogCkBAIC01MzAsOCArNTMwLDggQEAgc3lzdGVtX2ZoX21lZGlhX3F1ZXJ5IChm b3JtYXRfZGF0YV90IGZvcm0sIGludCBhcmdjLCBjaGFyICphcmd2W10pCiB9CiAKIHZvaWQKLXN5 c3RlbV9maF9tZWRpYSAoZm9ybWF0X2RhdGFfdCBmb3JtLCBpbnQgYXJnYyBfR0xfVU5VU0VEX1BB UkFNRVRFUiwKLQkJIGNoYXIgKmFyZ3ZbXSBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3N5c3RlbV9m aF9tZWRpYSAoZm9ybWF0X2RhdGFfdCBmb3JtLCBpbnQgYXJnYyBNQVlCRV9VTlVTRUQsCisJCSBj aGFyICphcmd2W10gTUFZQkVfVU5VU0VEKQogewogI2lmZGVmIFNJT0NHSUZNRURJQQogICBtZW1z ZXQgKCZpZm0sIDAsIHNpemVvZiAoaWZtKSk7CmRpZmYgLS1naXQgYS9pZmNvbmZpZy9zeXN0ZW0v Z2VuZXJpYy5jIGIvaWZjb25maWcvc3lzdGVtL2dlbmVyaWMuYwppbmRleCBkNmRiNDJhLi40N2Jk YjQzIDEwMDY0NAotLS0gYS9pZmNvbmZpZy9zeXN0ZW0vZ2VuZXJpYy5jCisrKyBiL2lmY29uZmln L3N5c3RlbS9nZW5lcmljLmMKQEAgLTI0LDcgKzI0LDcgQEAKIAogI2luY2x1ZGUgIi4uL2lmY29u ZmlnLmgiCiAKLSNpbmNsdWRlIDx1bnVzZWQtcGFyYW1ldGVyLmg+CisjaW5jbHVkZSA8YXR0cmli dXRlLmg+CiAMCiAKIC8qIE91dHB1dCBmb3JtYXQgc3R1ZmYuICAqLwpAQCAtMzksMjUgKzM5LDI1 IEBAIGNvbnN0IGNoYXIgKnN5c3RlbV9oZWxwOwogc3RydWN0IGFyZ3BfY2hpbGQgc3lzdGVtX2Fy Z3BfY2hpbGQ7CiAKIGludAotc3lzdGVtX3BhcnNlX29wdCAoc3RydWN0IGlmY29uZmlnICoqaWZw IF9HTF9VTlVTRURfUEFSQU1FVEVSLAotCQkgIGNoYXIgb3B0aW9uIF9HTF9VTlVTRURfUEFSQU1F VEVSLAotCQkgIGNoYXIgKm9wdGFyZyBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3N5c3RlbV9wYXJz ZV9vcHQgKHN0cnVjdCBpZmNvbmZpZyAqKmlmcCBNQVlCRV9VTlVTRUQsCisJCSAgY2hhciBvcHRp b24gTUFZQkVfVU5VU0VELAorCQkgIGNoYXIgKm9wdGFyZyBNQVlCRV9VTlVTRUQpCiB7CiAgIHJl dHVybiAwOwogfQogCiBpbnQKLXN5c3RlbV9wYXJzZV9vcHRfcmVzdCAoc3RydWN0IGlmY29uZmln ICoqaWZwIF9HTF9VTlVTRURfUEFSQU1FVEVSLAotCQkgICAgICAgaW50IGFyZ2MgX0dMX1VOVVNF RF9QQVJBTUVURVIsCi0JCSAgICAgICBjaGFyICphcmd2W10gX0dMX1VOVVNFRF9QQVJBTUVURVIp CitzeXN0ZW1fcGFyc2Vfb3B0X3Jlc3QgKHN0cnVjdCBpZmNvbmZpZyAqKmlmcCBNQVlCRV9VTlVT RUQsCisJCSAgICAgICBpbnQgYXJnYyBNQVlCRV9VTlVTRUQsCisJCSAgICAgICBjaGFyICphcmd2 W10gTUFZQkVfVU5VU0VEKQogewogICByZXR1cm4gMDsKIH0KIAogaW50Ci1zeXN0ZW1fY29uZmln dXJlIChpbnQgc2ZkIF9HTF9VTlVTRURfUEFSQU1FVEVSLAotCQkgIHN0cnVjdCBpZnJlcSAqaWZy IF9HTF9VTlVTRURfUEFSQU1FVEVSLAotCQkgIHN0cnVjdCBzeXN0ZW1faWZjb25maWcgKmlmcyBf R0xfVU5VU0VEX1BBUkFNRVRFUikKK3N5c3RlbV9jb25maWd1cmUgKGludCBzZmQgTUFZQkVfVU5V U0VELAorCQkgIHN0cnVjdCBpZnJlcSAqaWZyIE1BWUJFX1VOVVNFRCwKKwkJICBzdHJ1Y3Qgc3lz dGVtX2lmY29uZmlnICppZnMgTUFZQkVfVU5VU0VEKQogewogICByZXR1cm4gMDsKIH0KZGlmZiAt LWdpdCBhL2lmY29uZmlnL3N5c3RlbS9odXJkLmMgYi9pZmNvbmZpZy9zeXN0ZW0vaHVyZC5jCmlu ZGV4IDU5MGNiMTMuLmZmODVkNzIgMTAwNjQ0Ci0tLSBhL2lmY29uZmlnL3N5c3RlbS9odXJkLmMK KysrIGIvaWZjb25maWcvc3lzdGVtL2h1cmQuYwpAQCAtMjcsNyArMjcsNyBAQAogI2luY2x1ZGUg PG5ldC9pZl9hcnAuaD4KICNpbmNsdWRlICIuLi9pZmNvbmZpZy5oIgogCi0jaW5jbHVkZSA8dW51 c2VkLXBhcmFtZXRlci5oPgorI2luY2x1ZGUgPGF0dHJpYnV0ZS5oPgogDAogCiAvKiBPdXRwdXQg Zm9ybWF0IHN0dWZmLiAgKi8KQEAgLTQ0LDkgKzQ0LDkgQEAgY29uc3QgY2hhciAqc3lzdGVtX2hl bHAgPSAiTkFNRSBbQUREUl1cCiBzdHJ1Y3QgYXJncF9jaGlsZCBzeXN0ZW1fYXJncF9jaGlsZDsK IAogaW50Ci1zeXN0ZW1fcGFyc2Vfb3B0IChzdHJ1Y3QgaWZjb25maWcgKippZnAgX0dMX1VOVVNF RF9QQVJBTUVURVIsCi0JCSAgY2hhciBvcHRpb24gX0dMX1VOVVNFRF9QQVJBTUVURVIsCi0JCSAg Y2hhciAqb3B0YXJnIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc3lzdGVtX3BhcnNlX29wdCAoc3Ry dWN0IGlmY29uZmlnICoqaWZwIE1BWUJFX1VOVVNFRCwKKwkJICBjaGFyIG9wdGlvbiBNQVlCRV9V TlVTRUQsCisJCSAgY2hhciAqb3B0YXJnIE1BWUJFX1VOVVNFRCkKIHsKICAgcmV0dXJuIDA7CiB9 CkBAIC0xNTgsOSArMTU4LDkgQEAgc3lzdGVtX3BhcnNlX29wdF9yZXN0IChzdHJ1Y3QgaWZjb25m aWcgKippZnAsIGludCBhcmdjLCBjaGFyICphcmd2W10pCiB9CiAKIGludAotc3lzdGVtX2NvbmZp Z3VyZSAoaW50IHNmZCBfR0xfVU5VU0VEX1BBUkFNRVRFUiwKLQkJICBzdHJ1Y3QgaWZyZXEgKmlm ciBfR0xfVU5VU0VEX1BBUkFNRVRFUiwKLQkJICBzdHJ1Y3Qgc3lzdGVtX2lmY29uZmlnICppZnMg X0dMX1VOVVNFRF9QQVJBTUVURVIpCitzeXN0ZW1fY29uZmlndXJlIChpbnQgc2ZkIE1BWUJFX1VO VVNFRCwKKwkJICBzdHJ1Y3QgaWZyZXEgKmlmciBNQVlCRV9VTlVTRUQsCisJCSAgc3RydWN0IHN5 c3RlbV9pZmNvbmZpZyAqaWZzIE1BWUJFX1VOVVNFRCkKIHsKICAgcmV0dXJuIDA7CiB9CkBAIC0x NjgsNyArMTY4LDcgQEAgc3lzdGVtX2NvbmZpZ3VyZSAoaW50IHNmZCBfR0xfVU5VU0VEX1BBUkFN RVRFUiwKIHN0cnVjdCBpZl9uYW1laW5kZXgqICgqc3lzdGVtX2lmX25hbWVpbmRleCkgKHZvaWQp ID0gaWZfbmFtZWluZGV4OwogCiBzdGF0aWMgdm9pZAotcHJpbnRfaHdhZGRyX2V0aGVyIChmb3Jt YXRfZGF0YV90IGZvcm0gX0dMX1VOVVNFRF9QQVJBTUVURVIsCitwcmludF9od2FkZHJfZXRoZXIg KGZvcm1hdF9kYXRhX3QgZm9ybSBNQVlCRV9VTlVTRUQsCiAJCSAgICB1bnNpZ25lZCBjaGFyICpk YXRhKQogewogICAqY29sdW1uICs9IHByaW50ZiAoIiUwMlg6JTAyWDolMDJYOiUwMlg6JTAyWDol MDJYIiwKQEAgLTIzNiw4ICsyMzYsOCBAQCBzeXN0ZW1fZmhfaHdhZGRyX3F1ZXJ5IChmb3JtYXRf ZGF0YV90IGZvcm0sIGludCBhcmdjLCBjaGFyICphcmd2W10pCiB9CiAKIHZvaWQKLXN5c3RlbV9m aF9od2FkZHIgKGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVU RVIsCi0JCSAgY2hhciAqYXJndltdIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc3lzdGVtX2ZoX2h3 YWRkciAoZm9ybWF0X2RhdGFfdCBmb3JtLCBpbnQgYXJnYyBNQVlCRV9VTlVTRUQsCisJCSAgY2hh ciAqYXJndltdIE1BWUJFX1VOVVNFRCkKIHsKICNpZmRlZiBTSU9DR0lGSFdBRERSCiAgIGlmIChp b2N0bCAoZm9ybS0+c2ZkLCBTSU9DR0lGSFdBRERSLCBmb3JtLT5pZnIpIDwgMCkKQEAgLTI3Myw4 ICsyNzMsOCBAQCBzeXN0ZW1fZmhfaHd0eXBlX3F1ZXJ5IChmb3JtYXRfZGF0YV90IGZvcm0sIGlu dCBhcmdjLCBjaGFyICphcmd2W10pCiB9CiAKIHZvaWQKLXN5c3RlbV9maF9od3R5cGUgKGZvcm1h dF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsCi0JCSAgY2hhciAq YXJndltdIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc3lzdGVtX2ZoX2h3dHlwZSAoZm9ybWF0X2Rh dGFfdCBmb3JtLCBpbnQgYXJnYyBNQVlCRV9VTlVTRUQsCisJCSAgY2hhciAqYXJndltdIE1BWUJF X1VOVVNFRCkKIHsKICNpZmRlZiBTSU9DR0lGSFdBRERSCiAgIGlmIChpb2N0bCAoZm9ybS0+c2Zk LCBTSU9DR0lGSFdBRERSLCBmb3JtLT5pZnIpIDwgMCkKZGlmZiAtLWdpdCBhL2lmY29uZmlnL3N5 c3RlbS9saW51eC5jIGIvaWZjb25maWcvc3lzdGVtL2xpbnV4LmMKaW5kZXggZTQ1M2I0Ni4uZjFi YmMwNiAxMDA2NDQKLS0tIGEvaWZjb25maWcvc3lzdGVtL2xpbnV4LmMKKysrIGIvaWZjb25maWcv c3lzdGVtL2xpbnV4LmMKQEAgLTQ4LDcgKzQ4LDcgQEAKICNlbmRpZgogCiAjaW5jbHVkZSA8cmVh ZC1maWxlLmg+Ci0jaW5jbHVkZSA8dW51c2VkLXBhcmFtZXRlci5oPgorI2luY2x1ZGUgPGF0dHJp YnV0ZS5oPgogCiAjaW5jbHVkZSAiLi4vaWZjb25maWcuaCIKIAwKQEAgLTU2LDcgKzU2LDcgQEAK IC8qIEFSUEhSRCBzdHVmZi4gICovCiAKIHN0YXRpYyB2b2lkCi1wcmludF9od2FkZHJfZXRoZXIg KGZvcm1hdF9kYXRhX3QgZm9ybSBfR0xfVU5VU0VEX1BBUkFNRVRFUiwKK3ByaW50X2h3YWRkcl9l dGhlciAoZm9ybWF0X2RhdGFfdCBmb3JtIE1BWUJFX1VOVVNFRCwKIAkJICAgIHVuc2lnbmVkIGNo YXIgKmRhdGEpCiB7CiAgICpjb2x1bW4gKz0gcHJpbnRmICgiJTAyWDolMDJYOiUwMlg6JTAyWDol MDJYOiUwMlgiLApAQCAtNjUsNyArNjUsNyBAQCBwcmludF9od2FkZHJfZXRoZXIgKGZvcm1hdF9k YXRhX3QgZm9ybSBfR0xfVU5VU0VEX1BBUkFNRVRFUiwKIH0KIAogc3RhdGljIHZvaWQKLXByaW50 X2h3YWRkcl9hcmNuZXQgKGZvcm1hdF9kYXRhX3QgZm9ybSBfR0xfVU5VU0VEX1BBUkFNRVRFUiwK K3ByaW50X2h3YWRkcl9hcmNuZXQgKGZvcm1hdF9kYXRhX3QgZm9ybSBNQVlCRV9VTlVTRUQsCiAJ CSAgICAgdW5zaWduZWQgY2hhciAqZGF0YSkKIHsKICAgKmNvbHVtbiArPSBwcmludGYgKCIlMDJY IiwgZGF0YVswXSk7CkBAIC03Myw3ICs3Myw3IEBAIHByaW50X2h3YWRkcl9hcmNuZXQgKGZvcm1h dF9kYXRhX3QgZm9ybSBfR0xfVU5VU0VEX1BBUkFNRVRFUiwKIH0KIAogc3RhdGljIHZvaWQKLXBy aW50X2h3YWRkcl9kbGNpIChmb3JtYXRfZGF0YV90IGZvcm0gX0dMX1VOVVNFRF9QQVJBTUVURVIs CitwcmludF9od2FkZHJfZGxjaSAoZm9ybWF0X2RhdGFfdCBmb3JtIE1BWUJFX1VOVVNFRCwKIAkJ ICAgdW5zaWduZWQgY2hhciAqZGF0YSkKIHsKICAgKmNvbHVtbiArPSBwcmludGYgKCIlaSIsICoo KHNob3J0ICopIGRhdGEpKTsKQEAgLTk5LDcgKzk5LDcgQEAgcHJpbnRfaHdhZGRyX2F4MjUgKGZv cm1hdF9kYXRhX3QgZm9ybSwgdW5zaWduZWQgY2hhciAqZGF0YSkKIH0KIAogc3RhdGljIHZvaWQK LXByaW50X2h3YWRkcl9pcmRhIChmb3JtYXRfZGF0YV90IGZvcm0gX0dMX1VOVVNFRF9QQVJBTUVU RVIsCitwcmludF9od2FkZHJfaXJkYSAoZm9ybWF0X2RhdGFfdCBmb3JtIE1BWUJFX1VOVVNFRCwK IAkJICAgdW5zaWduZWQgY2hhciAqZGF0YSkKIHsKICAgKmNvbHVtbiArPSBwcmludGYgKCIlMDJY OiUwMlg6JTAyWDolMDJYIiwKQEAgLTEwOCw3ICsxMDgsNyBAQCBwcmludF9od2FkZHJfaXJkYSAo Zm9ybWF0X2RhdGFfdCBmb3JtIF9HTF9VTlVTRURfUEFSQU1FVEVSLAogfQogCiBzdGF0aWMgdm9p ZAotcHJpbnRfaHdhZGRyX3Jvc2UgKGZvcm1hdF9kYXRhX3QgZm9ybSBfR0xfVU5VU0VEX1BBUkFN RVRFUiwKK3ByaW50X2h3YWRkcl9yb3NlIChmb3JtYXRfZGF0YV90IGZvcm0gTUFZQkVfVU5VU0VE LAogCQkgICB1bnNpZ25lZCBjaGFyICpkYXRhKQogewogICAqY29sdW1uICs9IHByaW50ZiAoIiUw MlglMDJYJTAyWCUwMlglMDJYIiwKQEAgLTU1Miw4ICs1NTIsOCBAQCBzeXN0ZW1fZmhfaHdhZGRy X3F1ZXJ5IChmb3JtYXRfZGF0YV90IGZvcm0sIGludCBhcmdjLCBjaGFyICphcmd2W10pCiB9CiAK IHZvaWQKLXN5c3RlbV9maF9od2FkZHIgKGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MgX0dM X1VOVVNFRF9QQVJBTUVURVIsCi0JCSAgY2hhciAqYXJndltdIF9HTF9VTlVTRURfUEFSQU1FVEVS KQorc3lzdGVtX2ZoX2h3YWRkciAoZm9ybWF0X2RhdGFfdCBmb3JtLCBpbnQgYXJnYyBNQVlCRV9V TlVTRUQsCisJCSAgY2hhciAqYXJndltdIE1BWUJFX1VOVVNFRCkKIHsKICNpZmRlZiBTSU9DR0lG SFdBRERSCiAgIGlmIChpb2N0bCAoZm9ybS0+c2ZkLCBTSU9DR0lGSFdBRERSLCBmb3JtLT5pZnIp IDwgMCkKQEAgLTU4OSw4ICs1ODksOCBAQCBzeXN0ZW1fZmhfaHd0eXBlX3F1ZXJ5IChmb3JtYXRf ZGF0YV90IGZvcm0sIGludCBhcmdjLCBjaGFyICphcmd2W10pCiB9CiAKIHZvaWQKLXN5c3RlbV9m aF9od3R5cGUgKGZvcm1hdF9kYXRhX3QgZm9ybSwgaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVU RVIsCi0JCSAgY2hhciAqYXJndltdIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc3lzdGVtX2ZoX2h3 dHlwZSAoZm9ybWF0X2RhdGFfdCBmb3JtLCBpbnQgYXJnYyBNQVlCRV9VTlVTRUQsCisJCSAgY2hh ciAqYXJndltdIE1BWUJFX1VOVVNFRCkKIHsKICNpZmRlZiBTSU9DR0lGSFdBRERSCiAgIGlmIChp b2N0bCAoZm9ybS0+c2ZkLCBTSU9DR0lGSFdBRERSLCBmb3JtLT5pZnIpIDwgMCkKZGlmZiAtLWdp dCBhL2lmY29uZmlnL3N5c3RlbS9zb2xhcmlzLmMgYi9pZmNvbmZpZy9zeXN0ZW0vc29sYXJpcy5j CmluZGV4IGFkMGU5NzAuLmNjY2U0NjQgMTAwNjQ0Ci0tLSBhL2lmY29uZmlnL3N5c3RlbS9zb2xh cmlzLmMKKysrIGIvaWZjb25maWcvc3lzdGVtL3NvbGFyaXMuYwpAQCAtNDYsNyArNDYsNyBAQAog I2luY2x1ZGUgPG5ldC9pZl9hcnAuaD4KICNpbmNsdWRlIDxuZXRpbmV0L2lmX2V0aGVyLmg+CiAK LSNpbmNsdWRlIDx1bnVzZWQtcGFyYW1ldGVyLmg+CisjaW5jbHVkZSA8YXR0cmlidXRlLmg+CiAK ICNpbmNsdWRlICIuLi9pZmNvbmZpZy5oIgogDApAQCAtNjUsOSArNjUsOSBAQCBOQU1FIFtBRERS IFtEU1RBRERSXV0gW2Jyb2FkY2FzdCBCUkRBRERSXSBbbmV0bWFzayBNQVNLXSAiCiBzdHJ1Y3Qg YXJncF9jaGlsZCBzeXN0ZW1fYXJncF9jaGlsZDsKIAogaW50Ci1zeXN0ZW1fcGFyc2Vfb3B0IChz dHJ1Y3QgaWZjb25maWcgKippZnAgX0dMX1VOVVNFRF9QQVJBTUVURVIsCi0JCSAgY2hhciBvcHRp b24gX0dMX1VOVVNFRF9QQVJBTUVURVIsCi0JCSAgY2hhciAqb3B0YXJnIF9HTF9VTlVTRURfUEFS QU1FVEVSKQorc3lzdGVtX3BhcnNlX29wdCAoc3RydWN0IGlmY29uZmlnICoqaWZwIE1BWUJFX1VO VVNFRCwKKwkJICBjaGFyIG9wdGlvbiBNQVlCRV9VTlVTRUQsCisJCSAgY2hhciAqb3B0YXJnIE1B WUJFX1VOVVNFRCkKIHsKICAgcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9saWJpbmV0dXRpbHMv ZGFlbW9uLmMgYi9saWJpbmV0dXRpbHMvZGFlbW9uLmMKaW5kZXggZDhmZTc1Yi4uNGY1YTFkYSAx MDA2NDQKLS0tIGEvbGliaW5ldHV0aWxzL2RhZW1vbi5jCisrKyBiL2xpYmluZXR1dGlscy9kYWVt b24uYwpAQCAtNTUsNyArNTUsNyBAQAogI2luY2x1ZGUgPHN0ZGxpYi5oPgogI2luY2x1ZGUgPHN5 cy90eXBlcy5oPgogI2luY2x1ZGUgPHN5cy93YWl0Lmg+Ci0jaW5jbHVkZSA8dW51c2VkLXBhcmFt ZXRlci5oPgorI2luY2x1ZGUgPGF0dHJpYnV0ZS5oPgogCiAvKgogICBBY2NvcmRpbmcgdG8gVW5p eC1GQVEgbWFpbnRhaW5lZCBieSBBbmRyZXcgR2llcnRoOgpAQCAtMTA0LDcgKzEwNCw3IEBACiAj ZGVmaW5lIE1BWEZEIDY0CiAKIHZvaWQKLXdhaXRkYWVtb25fdGltZW91dCAoaW50IHNpZ25vIF9H TF9VTlVTRURfUEFSQU1FVEVSKQord2FpdGRhZW1vbl90aW1lb3V0IChpbnQgc2lnbm8gTUFZQkVf VU5VU0VEKQogewogICBpbnQgbGVmdDsKIApkaWZmIC0tZ2l0IGEvbGlidGVsbmV0L2F1dGguYyBi L2xpYnRlbG5ldC9hdXRoLmMKaW5kZXggMzEwZDMwZC4uZWI0YWUyMyAxMDA2NDQKLS0tIGEvbGli dGVsbmV0L2F1dGguYworKysgYi9saWJ0ZWxuZXQvYXV0aC5jCkBAIC03MCw3ICs3MCw3IEBACiAK ICNpbmNsdWRlIDxjb25maWcuaD4KIAotI2luY2x1ZGUgInVudXNlZC1wYXJhbWV0ZXIuaCIKKyNp bmNsdWRlICJhdHRyaWJ1dGUuaCIKIAogI2lmIGRlZmluZWQgQVVUSEVOVElDQVRJT04KICMgaW5j bHVkZSA8c3RkaW8uaD4KQEAgLTY2NSw3ICs2NjUsNyBAQCBhdXRoX2ZpbmlzaGVkIChUTl9BdXRo ZW50aWNhdG9yICogYXAsIGludCByZXN1bHQpCiB9CiAKIHN0YXRpYyB2b2lkCi1hdXRoX2ludHIg KGludCBzaWcgX0dMX1VOVVNFRF9QQVJBTUVURVIpCithdXRoX2ludHIgKGludCBzaWcgTUFZQkVf VU5VU0VEKQogewogICBhdXRoX2ZpbmlzaGVkICgwLCBBVVRIX1JFSkVDVCk7CiB9CmRpZmYgLS1n aXQgYS9saWJ0ZWxuZXQvZW5jcnlwdC5jIGIvbGlidGVsbmV0L2VuY3J5cHQuYwppbmRleCBmZGVm NDNlLi40OTczYjAwIDEwMDY0NAotLS0gYS9saWJ0ZWxuZXQvZW5jcnlwdC5jCisrKyBiL2xpYnRl bG5ldC9lbmNyeXB0LmMKQEAgLTgyLDcgKzgyLDcgQEAKICMgaW5jbHVkZSA8c3RyaW5nLmg+CiAK ICMgaW5jbHVkZSA8c3RkaW8uaD4KLSMgaW5jbHVkZSA8dW51c2VkLXBhcmFtZXRlci5oPgorIyBp bmNsdWRlIDxhdHRyaWJ1dGUuaD4KICMgaW5jbHVkZSAiZ2VuZ2V0LmgiCiAKIC8qIFN0cmluZyBy ZXByZXNlbnRhdGlvbiBvZiBvdXIgY2FwYWJpbGl0aWVzLgpAQCAtNjY5LDggKzY2OSw4IEBAIGVu Y3J5cHRfcmVwbHkgKHVuc2lnbmVkIGNoYXIgKmRhdGEsIGludCBjbnQpCiAgKiBDYWxsZWQgd2hl biBhIEVOQ1JZUFQgU1RBUlQgY29tbWFuZCBpcyByZWNlaXZlZC4KICAqLwogdm9pZAotZW5jcnlw dF9zdGFydCAodW5zaWduZWQgY2hhciAqZGF0YSBfR0xfVU5VU0VEX1BBUkFNRVRFUiwKLQkgICAg ICAgaW50IGNudCBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK2VuY3J5cHRfc3RhcnQgKHVuc2lnbmVk IGNoYXIgKmRhdGEgTUFZQkVfVU5VU0VELAorCSAgICAgICBpbnQgY250IE1BWUJFX1VOVVNFRCkK IHsKICAgRW5jcnlwdGlvbnMgKmVwOwogCkBAIC03NTIsOCArNzUyLDggQEAgZW5jcnlwdF9yZXF1 ZXN0X2VuZCAodm9pZCkKICAqIGNhbi4KICAqLwogdm9pZAotZW5jcnlwdF9yZXF1ZXN0X3N0YXJ0 ICh1bnNpZ25lZCBjaGFyICpkYXRhIF9HTF9VTlVTRURfUEFSQU1FVEVSLAotCQkgICAgICAgaW50 IGNudCBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK2VuY3J5cHRfcmVxdWVzdF9zdGFydCAodW5zaWdu ZWQgY2hhciAqZGF0YSBNQVlCRV9VTlVTRUQsCisJCSAgICAgICBpbnQgY250IE1BWUJFX1VOVVNF RCkKIHsKICAgaWYgKGVuY3J5cHRfbW9kZSA9PSAwKQogICAgIHsKZGlmZiAtLWdpdCBhL2xpYnRl bG5ldC9rZXJiZXJvczUuYyBiL2xpYnRlbG5ldC9rZXJiZXJvczUuYwppbmRleCAxOWU0ZmI1Li43 N2Q0MDIzIDEwMDY0NAotLS0gYS9saWJ0ZWxuZXQva2VyYmVyb3M1LmMKKysrIGIvbGlidGVsbmV0 L2tlcmJlcm9zNS5jCkBAIC0zNyw3ICszNyw3IEBACiAjIGluY2x1ZGUgPGN0eXBlLmg+CiAjIGlu Y2x1ZGUgPHN5c2xvZy5oPgogIyBpbmNsdWRlIDxzdHJpbmcuaD4KLSMgaW5jbHVkZSA8dW51c2Vk LXBhcmFtZXRlci5oPgorIyBpbmNsdWRlIDxhdHRyaWJ1dGUuaD4KIAogIyBpbmNsdWRlICJhdXRo LmgiCiAjIGluY2x1ZGUgIm1pc2MuaCIKQEAgLTEyMSw3ICsxMjEsNyBAQCBEYXRhIChUTl9BdXRo ZW50aWNhdG9yICogYXAsIGludCB0eXBlLCBrcmI1X3BvaW50ZXIgZCwgaW50IGMpCiAKIC8qIEZJ WE1FOiBSZXZlcnNlIHJldHVybiBjb2RlISAqLwogaW50Ci1rZXJiZXJvczVfaW5pdCAoVE5fQXV0 aGVudGljYXRvciAqIGFwIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBpbnQgc2VydmVyKQora2VyYmVy b3M1X2luaXQgKFROX0F1dGhlbnRpY2F0b3IgKiBhcCBNQVlCRV9VTlVTRUQsIGludCBzZXJ2ZXIp CiB7CiAgIHN0cl9kYXRhWzNdID0gc2VydmVyID8gVEVMUVVBTF9SRVBMWSA6IFRFTFFVQUxfSVM7 CiAgIGlmICh0ZWxuZXRfY29udGV4dCA9PSAwICYmIGtyYjVfaW5pdF9jb250ZXh0ICgmdGVsbmV0 X2NvbnRleHQpKQpAQCAtNDI4LDcgKzQyOCw3IEBAIGtlcmJlcm9zNV9yZXBseSAoVE5fQXV0aGVu dGljYXRvciAqIGFwLCB1bnNpZ25lZCBjaGFyICpkYXRhLCBpbnQgY250KQogfQogCiBpbnQKLWtl cmJlcm9zNV9zdGF0dXMgKFROX0F1dGhlbnRpY2F0b3IgKiBhcCBfR0xfVU5VU0VEX1BBUkFNRVRF UiwKK2tlcmJlcm9zNV9zdGF0dXMgKFROX0F1dGhlbnRpY2F0b3IgKiBhcCBNQVlCRV9VTlVTRUQs CiAJCSAgY2hhciAqbmFtZSwgc2l6ZV90IGxlbiwgaW50IGxldmVsKQogewogICBpZiAobGV2ZWwg PCBBVVRIX1VTRVIpCmRpZmYgLS1naXQgYS9saWJ0ZWxuZXQvc2hpc2hpLmMgYi9saWJ0ZWxuZXQv c2hpc2hpLmMKaW5kZXggZGVhY2I3ZS4uYTZiYWZiYyAxMDA2NDQKLS0tIGEvbGlidGVsbmV0L3No aXNoaS5jCisrKyBiL2xpYnRlbG5ldC9zaGlzaGkuYwpAQCAtMzMsNyArMzMsNyBAQAogIyBpbmNs dWRlIDxjdHlwZS5oPgogIyBpbmNsdWRlIDxzeXNsb2cuaD4KICMgaW5jbHVkZSA8c3RyaW5nLmg+ Ci0jIGluY2x1ZGUgPHVudXNlZC1wYXJhbWV0ZXIuaD4KKyMgaW5jbHVkZSA8YXR0cmlidXRlLmg+ CiAKICMgaW5jbHVkZSAiYXV0aC5oIgogIyBpbmNsdWRlICJtaXNjLmgiCkBAIC0xMDIsNyArMTAy LDcgQEAgU2hpc2hpICpzaGlzaGlfdGVsbmV0ID0gTlVMTDsKIAogLyogRklYTUU6IFJldmVyc2Ug cmV0dXJuIGNvZGUhICovCiBpbnQKLWtyYjVzaGlzaGlfaW5pdCAoVE5fQXV0aGVudGljYXRvciAq IGFwIF9HTF9VTlVTRURfUEFSQU1FVEVSLAora3JiNXNoaXNoaV9pbml0IChUTl9BdXRoZW50aWNh dG9yICogYXAgTUFZQkVfVU5VU0VELAogCQkgaW50IHNlcnZlcikKIHsKICAgaWYgKHNlcnZlcikK QEAgLTEzNyw3ICsxMzcsNyBAQCBkZWxheWVkX3NoaXNoaV9pbml0ICh2b2lkKQogfQogCiB2b2lk Ci1rcmI1c2hpc2hpX2NsZWFudXAgKFROX0F1dGhlbnRpY2F0b3IgKiBhcCBfR0xfVU5VU0VEX1BB UkFNRVRFUikKK2tyYjVzaGlzaGlfY2xlYW51cCAoVE5fQXV0aGVudGljYXRvciAqIGFwIE1BWUJF X1VOVVNFRCkKIHsKICAgaWYgKHNoaXNoaV9oYW5kbGUgPT0gTlVMTCkKICAgICByZXR1cm47CkBA IC0zOTYsNyArMzk2LDcgQEAga3JiNXNoaXNoaV9yZXBseSAoVE5fQXV0aGVudGljYXRvciAqIGFw LCB1bnNpZ25lZCBjaGFyICpkYXRhLCBpbnQgY250KQogfQogCiBpbnQKLWtyYjVzaGlzaGlfc3Rh dHVzIChUTl9BdXRoZW50aWNhdG9yICogYXAgX0dMX1VOVVNFRF9QQVJBTUVURVIsCitrcmI1c2hp c2hpX3N0YXR1cyAoVE5fQXV0aGVudGljYXRvciAqIGFwIE1BWUJFX1VOVVNFRCwKIAkJICAgY2hh ciAqbmFtZSwgc2l6ZV90IGxlbiwgaW50IGxldmVsKQogewogICBpbnQgc3RhdHVzOwpkaWZmIC0t Z2l0IGEvcGluZy9waW5nLmMgYi9waW5nL3BpbmcuYwppbmRleCAxNDlkZjc0Li40OWVlMmE0IDEw MDY0NAotLS0gYS9waW5nL3BpbmcuYworKysgYi9waW5nL3BpbmcuYwpAQCAtNDgsNyArNDgsNyBA QAogI2VuZGlmCiAKICNpbmNsdWRlIDxhcmdwLmg+Ci0jaW5jbHVkZSA8dW51c2VkLXBhcmFtZXRl ci5oPgorI2luY2x1ZGUgPGF0dHJpYnV0ZS5oPgogI2luY2x1ZGUgPHBpbmcuaD4KICNpbmNsdWRl ICJwaW5nX2ltcGwuaCIKICNpbmNsdWRlICJsaWJpbmV0dXRpbHMuaCIKQEAgLTM3Nyw3ICszNzcs NyBAQCBkZWNvZGVfaXBfdGltZXN0YW1wIChjaGFyICphcmcpCiBpbnQgdm9sYXRpbGUgc3RvcCA9 IDA7CiAKIHZvaWQKLXNpZ19pbnQgKGludCBzaWduYWwgX0dMX1VOVVNFRF9QQVJBTUVURVIpCitz aWdfaW50IChpbnQgc2lnbmFsIE1BWUJFX1VOVVNFRCkKIHsKICAgc3RvcCA9IDE7CiB9CmRpZmYg LS1naXQgYS9waW5nL3Bpbmc2LmMgYi9waW5nL3Bpbmc2LmMKaW5kZXggZmZhODViMy4uOGQ5NzU0 MSAxMDA2NDQKLS0tIGEvcGluZy9waW5nNi5jCisrKyBiL3BpbmcvcGluZzYuYwpAQCAtNTIsNyAr NTIsNyBAQAogIyBpbmNsdWRlIDxpZG5hLmg+CiAjZW5kaWYKIAotI2luY2x1ZGUgPHVudXNlZC1w YXJhbWV0ZXIuaD4KKyNpbmNsdWRlIDxhdHRyaWJ1dGUuaD4KICNpbmNsdWRlIDx4YWxsb2MuaD4K ICNpbmNsdWRlICJwaW5nNi5oIgogI2luY2x1ZGUgImxpYmluZXR1dGlscy5oIgpAQCAtMzEwLDcg KzMxMCw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICoqYXJndikKIHN0YXRpYyB2b2xhdGlsZSBp bnQgc3RvcCA9IDA7CiAKIHN0YXRpYyB2b2lkCi1zaWdfaW50IChpbnQgc2lnbmFsIF9HTF9VTlVT RURfUEFSQU1FVEVSKQorc2lnX2ludCAoaW50IHNpZ25hbCBNQVlCRV9VTlVTRUQpCiB7CiAgIHN0 b3AgPSAxOwogfQpAQCAtNTQ2LDcgKzU0Niw3IEBAIHBpbmdfcmVzZXQgKFBJTkcgKiBwKQogCiBz dGF0aWMgaW50CiBwcmludF9lY2hvIChpbnQgZHVwZmxhZywgaW50IGhvcHMsIHN0cnVjdCBwaW5n X3N0YXQgKnBpbmdfc3RhdCwKLQkgICAgc3RydWN0IHNvY2thZGRyX2luNiAqZGVzdCBfR0xfVU5V U0VEX1BBUkFNRVRFUiwKKwkgICAgc3RydWN0IHNvY2thZGRyX2luNiAqZGVzdCBNQVlCRV9VTlVT RUQsCiAJICAgIHN0cnVjdCBzb2NrYWRkcl9pbjYgKmZyb20sCiAJICAgIHN0cnVjdCBpY21wNl9o ZHIgKmljbXA2LCBpbnQgZGF0YWxlbikKIHsKQEAgLTgyMyw3ICs4MjMsNyBAQCBlY2hvX2Zpbmlz aCAodm9pZCkKIH0KIAogc3RhdGljIFBJTkcgKgotcGluZ19pbml0IChpbnQgdHlwZSBfR0xfVU5V U0VEX1BBUkFNRVRFUiwgaW50IGlkZW50KQorcGluZ19pbml0IChpbnQgdHlwZSBNQVlCRV9VTlVT RUQsIGludCBpZGVudCkKIHsKICAgaW50IGZkLCBlcnI7CiAgIGNvbnN0IGludCBvbiA9IDE7CmRp ZmYgLS1naXQgYS9waW5nL3BpbmdfYWRkcmVzcy5jIGIvcGluZy9waW5nX2FkZHJlc3MuYwppbmRl eCA3MTYzZGRkLi43ODE3Yzk4IDEwMDY0NAotLS0gYS9waW5nL3BpbmdfYWRkcmVzcy5jCisrKyBi L3BpbmcvcGluZ19hZGRyZXNzLmMKQEAgLTQxLDcgKzQxLDcgQEAKICNpbmNsdWRlIDxzdGRpby5o PgogI2luY2x1ZGUgPGN0eXBlLmg+CiAjaW5jbHVkZSA8ZXJybm8uaD4KLSNpbmNsdWRlIDx1bnVz ZWQtcGFyYW1ldGVyLmg+CisjaW5jbHVkZSA8YXR0cmlidXRlLmg+CiAKICNpbmNsdWRlIDxwaW5n Lmg+CiAjaW5jbHVkZSA8cGluZ19pbXBsLmg+CkBAIC05MSwxMCArOTEsMTAgQEAgcmVjdl9hZGRy ZXNzIChpbnQgY29kZSwgdm9pZCAqY2xvc3VyZSwKIH0KIAogdm9pZAotcHJpbnRfYWRkcmVzcyAo aW50IGR1cGZsYWcsIHZvaWQgKmNsb3N1cmUgX0dMX1VOVVNFRF9QQVJBTUVURVIsCi0JICAgICAg IHN0cnVjdCBzb2NrYWRkcl9pbiAqZGVzdCBfR0xfVU5VU0VEX1BBUkFNRVRFUiwKK3ByaW50X2Fk ZHJlc3MgKGludCBkdXBmbGFnLCB2b2lkICpjbG9zdXJlIE1BWUJFX1VOVVNFRCwKKwkgICAgICAg c3RydWN0IHNvY2thZGRyX2luICpkZXN0IE1BWUJFX1VOVVNFRCwKIAkgICAgICAgc3RydWN0IHNv Y2thZGRyX2luICpmcm9tLAotCSAgICAgICBzdHJ1Y3QgaXAgKmlwIF9HTF9VTlVTRURfUEFSQU1F VEVSLAorCSAgICAgICBzdHJ1Y3QgaXAgKmlwIE1BWUJFX1VOVVNFRCwKIAkgICAgICAgaWNtcGhk cl90ICogaWNtcCwgaW50IGRhdGFsZW4pCiB7CiAgIHN0cnVjdCBpbl9hZGRyIGFkZHI7CmRpZmYg LS1naXQgYS9waW5nL3BpbmdfY29tbW9uLmMgYi9waW5nL3BpbmdfY29tbW9uLmMKaW5kZXggY2Uw NzQ1MS4uMmZjYWU5MiAxMDA2NDQKLS0tIGEvcGluZy9waW5nX2NvbW1vbi5jCisrKyBiL3Bpbmcv cGluZ19jb21tb24uYwpAQCAtMzEsNyArMzEsNyBAQAogI2luY2x1ZGUgPGFycGEvaW5ldC5oPgog I2luY2x1ZGUgPG5ldGRiLmg+CiAjaW5jbHVkZSA8eGFsbG9jLmg+Ci0jaW5jbHVkZSA8dW51c2Vk LXBhcmFtZXRlci5oPgorI2luY2x1ZGUgPGF0dHJpYnV0ZS5oPgogCiAjaW5jbHVkZSAicGluZ19j b21tb24uaCIKIApkaWZmIC0tZ2l0IGEvcGluZy9waW5nX2VjaG8uYyBiL3BpbmcvcGluZ19lY2hv LmMKaW5kZXggMjk3NjgzMC4uM2FiMTE2ZiAxMDA2NDQKLS0tIGEvcGluZy9waW5nX2VjaG8uYwor KysgYi9waW5nL3BpbmdfZWNoby5jCkBAIC00MSw3ICs0MSw3IEBACiAjaW5jbHVkZSA8Y3R5cGUu aD4KICNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPGxpbWl0cy5oPgotI2luY2x1ZGUgPHVu dXNlZC1wYXJhbWV0ZXIuaD4KKyNpbmNsdWRlIDxhdHRyaWJ1dGUuaD4KIAogI2luY2x1ZGUgPHBp bmcuaD4KICNpbmNsdWRlICJwaW5nX2ltcGwuaCIKQEAgLTE3NCw3ICsxNzQsNyBAQCBoYW5kbGVy IChpbnQgY29kZSwgdm9pZCAqY2xvc3VyZSwKIAogaW50CiBwcmludF9lY2hvIChpbnQgZHVwZmxh Zywgc3RydWN0IHBpbmdfc3RhdCAqcGluZ19zdGF0LAotCSAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4g KmRlc3QgX0dMX1VOVVNFRF9QQVJBTUVURVIsCisJICAgIHN0cnVjdCBzb2NrYWRkcl9pbiAqZGVz dCBNQVlCRV9VTlVTRUQsCiAJICAgIHN0cnVjdCBzb2NrYWRkcl9pbiAqZnJvbSwKIAkgICAgc3Ry dWN0IGlwICppcCwgaWNtcGhkcl90ICogaWNtcCwgaW50IGRhdGFsZW4pCiB7CkBAIC0zMzksNyAr MzM5LDcgQEAgcHJpbnRfaXBfaGVhZGVyIChzdHJ1Y3QgaXAgKmlwKQogfQogCiB2b2lkCi1wcmlu dF9pcF9kYXRhIChpY21waGRyX3QgKiBpY21wLCB2b2lkICpkYXRhIF9HTF9VTlVTRURfUEFSQU1F VEVSKQorcHJpbnRfaXBfZGF0YSAoaWNtcGhkcl90ICogaWNtcCwgdm9pZCAqZGF0YSBNQVlCRV9V TlVTRUQpCiB7CiAgIGludCBobGVuOwogICB1bnNpZ25lZCBjaGFyICpjcDsKZGlmZiAtLWdpdCBh L3BpbmcvcGluZ19yb3V0ZXIuYyBiL3BpbmcvcGluZ19yb3V0ZXIuYwppbmRleCAwYTZkNDhkLi4x MjVkOGQzIDEwMDY0NAotLS0gYS9waW5nL3Bpbmdfcm91dGVyLmMKKysrIGIvcGluZy9waW5nX3Jv dXRlci5jCkBAIC00MCwxMyArNDAsMTMgQEAKICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1ZGUg PGN0eXBlLmg+CiAjaW5jbHVkZSA8ZXJybm8uaD4KLSNpbmNsdWRlIDx1bnVzZWQtcGFyYW1ldGVy Lmg+CisjaW5jbHVkZSA8YXR0cmlidXRlLmg+CiAKICNpbmNsdWRlIDxwaW5nLmg+CiAjaW5jbHVk ZSA8cGluZ19pbXBsLmg+CiAKIGludAotcGluZ19yb3V0ZXIgKGNoYXIgKmhvc3RuYW1lIF9HTF9V TlVTRURfUEFSQU1FVEVSKQorcGluZ19yb3V0ZXIgKGNoYXIgKmhvc3RuYW1lIE1BWUJFX1VOVVNF RCkKIHsKICAgcmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9waW5nL3BpbmdfdGltZXN0YW1wLmMg Yi9waW5nL3BpbmdfdGltZXN0YW1wLmMKaW5kZXggYjMyYzM2Zi4uMTdmNTFkMSAxMDA2NDQKLS0t IGEvcGluZy9waW5nX3RpbWVzdGFtcC5jCisrKyBiL3BpbmcvcGluZ190aW1lc3RhbXAuYwpAQCAt NDAsNyArNDAsNyBAQAogI2luY2x1ZGUgPHN0ZGlvLmg+CiAjaW5jbHVkZSA8Y3R5cGUuaD4KICNp bmNsdWRlIDxlcnJuby5oPgotI2luY2x1ZGUgPHVudXNlZC1wYXJhbWV0ZXIuaD4KKyNpbmNsdWRl IDxhdHRyaWJ1dGUuaD4KIAogI2luY2x1ZGUgPHBpbmcuaD4KICNpbmNsdWRlIDxwaW5nX2ltcGwu aD4KQEAgLTkxLDEwICs5MSwxMCBAQCByZWN2X3RpbWVzdGFtcCAoaW50IGNvZGUsIHZvaWQgKmNs b3N1cmUsCiAKIAogdm9pZAotcHJpbnRfdGltZXN0YW1wIChpbnQgZHVwZmxhZywgdm9pZCAqY2xv c3VyZSBfR0xfVU5VU0VEX1BBUkFNRVRFUiwKLQkJIHN0cnVjdCBzb2NrYWRkcl9pbiAqZGVzdCBf R0xfVU5VU0VEX1BBUkFNRVRFUiwKK3ByaW50X3RpbWVzdGFtcCAoaW50IGR1cGZsYWcsIHZvaWQg KmNsb3N1cmUgTUFZQkVfVU5VU0VELAorCQkgc3RydWN0IHNvY2thZGRyX2luICpkZXN0IE1BWUJF X1VOVVNFRCwKIAkJIHN0cnVjdCBzb2NrYWRkcl9pbiAqZnJvbSwKLQkJIHN0cnVjdCBpcCAqaXAg X0dMX1VOVVNFRF9QQVJBTUVURVIsCisJCSBzdHJ1Y3QgaXAgKmlwIE1BWUJFX1VOVVNFRCwKIAkJ IGljbXBoZHJfdCAqIGljbXAsIGludCBkYXRhbGVuKQogewogICBjaGFyIHRpbWVzdHJbMTZdOwpk aWZmIC0tZ2l0IGEvc3JjL2luZXRkLmMgYi9zcmMvaW5ldGQuYwppbmRleCBkM2Q4MjgxLi4wNGQz MzYxIDEwMDY0NAotLS0gYS9zcmMvaW5ldGQuYworKysgYi9zcmMvaW5ldGQuYwpAQCAtMTM3LDcg KzEzNyw3IEBACiAjaW5jbHVkZSAibGliaW5ldHV0aWxzLmgiCiAjaW5jbHVkZSAiYXJnY3YuaCIK ICNpbmNsdWRlICJ2ZXJzaW9uLWV0Yy5oIgotI2luY2x1ZGUgInVudXNlZC1wYXJhbWV0ZXIuaCIK KyNpbmNsdWRlICJhdHRyaWJ1dGUuaCIKIAogI2lmbmRlZiBFQUlfQUREUkZBTUlMWQogIyBkZWZp bmUgRUFJX0FERFJGQU1JTFkgMQpAQCAtMjAzLDcgKzIwMyw3IEBAIHN0YXRpYyBzdHJ1Y3QgYXJn cF9vcHRpb24gYXJncF9vcHRpb25zW10gPSB7CiAKIHN0YXRpYyBlcnJvcl90CiBwYXJzZV9vcHQg KGludCBrZXksIGNoYXIgKmFyZywKLQkgICBzdHJ1Y3QgYXJncF9zdGF0ZSAqc3RhdGUgX0dMX1VO VVNFRF9QQVJBTUVURVIpCisJICAgc3RydWN0IGFyZ3Bfc3RhdGUgKnN0YXRlIE1BWUJFX1VOVVNF RCkKIHsKICAgY2hhciAqcDsKICAgaW50IG51bWJlcjsKQEAgLTQ5MCw3ICs0OTAsNyBAQCBydW5f c2VydmljZSAoaW50IGN0cmwsIHN0cnVjdCBzZXJ2dGFiICpzZXApCiB9CiAKIHZvaWQKLXJlYXBj aGlsZCAoaW50IHNpZ25vIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorcmVhcGNoaWxkIChpbnQgc2ln bm8gTUFZQkVfVU5VU0VEKQogewogICBpbnQgc3RhdHVzOwogICBwaWRfdCBwaWQ7CkBAIC02OTIs NyArNjkyLDcgQEAgc2VydmVudF9zZXR1cCAoc3RydWN0IHNlcnZ0YWIgKnNlcCkKIH0KIAogdm9p ZAotcmV0cnkgKGludCBzaWdubyBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3JldHJ5IChpbnQgc2ln bm8gTUFZQkVfVU5VU0VEKQogewogICBzdHJ1Y3Qgc2VydnRhYiAqc2VwOwogCkBAIC0xNTI1LDcg KzE1MjUsNyBAQCBlY2hvX3N0cmVhbSAoaW50IHMsIHN0cnVjdCBzZXJ2dGFiICpzZXApCiAKIC8q IEVjaG8gc2VydmljZSAtLSBlY2hvIGRhdGEgYmFjayAqLwogdm9pZAotZWNob19kZyAoaW50IHMs IHN0cnVjdCBzZXJ2dGFiICpzZXAgX0dMX1VOVVNFRF9QQVJBTUVURVIpCitlY2hvX2RnIChpbnQg cywgc3RydWN0IHNlcnZ0YWIgKnNlcCBNQVlCRV9VTlVTRUQpCiB7CiAgIGNoYXIgYnVmZmVyW0JV RlNJWkVdOwogICBpbnQgaTsKQEAgLTE1NjMsNyArMTU2Myw3IEBAIGRpc2NhcmRfc3RyZWFtIChp bnQgcywgc3RydWN0IHNlcnZ0YWIgKnNlcCkKIAogdm9pZAogLyogRGlzY2FyZCBzZXJ2aWNlIC0t IGlnbm9yZSBkYXRhICovCi1kaXNjYXJkX2RnIChpbnQgcywgc3RydWN0IHNlcnZ0YWIgKnNlcCBf R0xfVU5VU0VEX1BBUkFNRVRFUikKK2Rpc2NhcmRfZGcgKGludCBzLCBzdHJ1Y3Qgc2VydnRhYiAq c2VwIE1BWUJFX1VOVVNFRCkKIHsKICAgY2hhciBidWZmZXJbQlVGU0laRV07CiAKQEAgLTE2MjQs NyArMTYyNCw3IEBAIGNoYXJnZW5fc3RyZWFtIChpbnQgcywgc3RydWN0IHNlcnZ0YWIgKnNlcCkK IAogLyogQ2hhcmFjdGVyIGdlbmVyYXRvciAqLwogdm9pZAotY2hhcmdlbl9kZyAoaW50IHMsIHN0 cnVjdCBzZXJ2dGFiICpzZXAgX0dMX1VOVVNFRF9QQVJBTUVURVIpCitjaGFyZ2VuX2RnIChpbnQg cywgc3RydWN0IHNlcnZ0YWIgKnNlcCBNQVlCRV9VTlVTRUQpCiB7CiAjaWZkZWYgSVBWNgogICBz dHJ1Y3Qgc29ja2FkZHJfc3RvcmFnZSBzYTsKQEAgLTE2ODYsNyArMTY4Niw3IEBAIG1hY2h0aW1l ICh2b2lkKQogfQogCiB2b2lkCi1tYWNodGltZV9zdHJlYW0gKGludCBzLCBzdHJ1Y3Qgc2VydnRh YiAqc2VwIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorbWFjaHRpbWVfc3RyZWFtIChpbnQgcywgc3Ry dWN0IHNlcnZ0YWIgKnNlcCBNQVlCRV9VTlVTRUQpCiB7CiAgIGxvbmcgcmVzdWx0OwogCkBAIC0x Njk1LDcgKzE2OTUsNyBAQCBtYWNodGltZV9zdHJlYW0gKGludCBzLCBzdHJ1Y3Qgc2VydnRhYiAq c2VwIF9HTF9VTlVTRURfUEFSQU1FVEVSKQogfQogCiB2b2lkCi1tYWNodGltZV9kZyAoaW50IHMs IHN0cnVjdCBzZXJ2dGFiICpzZXAgX0dMX1VOVVNFRF9QQVJBTUVURVIpCittYWNodGltZV9kZyAo aW50IHMsIHN0cnVjdCBzZXJ2dGFiICpzZXAgTUFZQkVfVU5VU0VEKQogewogICBsb25nIHJlc3Vs dDsKICNpZmRlZiBJUFY2CkBAIC0xNzE2LDcgKzE3MTYsNyBAQCBtYWNodGltZV9kZyAoaW50IHMs IHN0cnVjdCBzZXJ2dGFiICpzZXAgX0dMX1VOVVNFRF9QQVJBTUVURVIpCiAKIHZvaWQKIC8qIFJl dHVybiBodW1hbi1yZWFkYWJsZSB0aW1lIG9mIGRheSAqLwotZGF5dGltZV9zdHJlYW0gKGludCBz LCBzdHJ1Y3Qgc2VydnRhYiAqc2VwIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorZGF5dGltZV9zdHJl YW0gKGludCBzLCBzdHJ1Y3Qgc2VydnRhYiAqc2VwIE1BWUJFX1VOVVNFRCkKIHsKICAgY2hhciBi dWZmZXJbMjU2XTsKICAgdGltZV90IGxjbG9jazsKQEAgLTE3MjksNyArMTcyOSw3IEBAIGRheXRp bWVfc3RyZWFtIChpbnQgcywgc3RydWN0IHNlcnZ0YWIgKnNlcCBfR0xfVU5VU0VEX1BBUkFNRVRF UikKIAogLyogUmV0dXJuIGh1bWFuLXJlYWRhYmxlIHRpbWUgb2YgZGF5ICovCiB2b2lkCi1kYXl0 aW1lX2RnIChpbnQgcywgc3RydWN0IHNlcnZ0YWIgKnNlcCBfR0xfVU5VU0VEX1BBUkFNRVRFUikK K2RheXRpbWVfZGcgKGludCBzLCBzdHJ1Y3Qgc2VydnRhYiAqc2VwIE1BWUJFX1VOVVNFRCkKIHsK ICAgY2hhciBidWZmZXJbMjU2XTsKICAgdGltZV90IGxjbG9jazsKZGlmZiAtLWdpdCBhL3NyYy9s b2dnZXIuYyBiL3NyYy9sb2dnZXIuYwppbmRleCAxMjI4YTFlLi4yNWI2ZTJiIDEwMDY0NAotLS0g YS9zcmMvbG9nZ2VyLmMKKysrIGIvc3JjL2xvZ2dlci5jCkBAIC00MSw3ICs0MSw3IEBACiAjaW5j bHVkZSA8ZXJyb3IuaD4KICNpbmNsdWRlIDx4YWxsb2MuaD4KICNpbmNsdWRlIDxpbnR0b3N0ci5o PgotI2luY2x1ZGUgPHVudXNlZC1wYXJhbWV0ZXIuaD4KKyNpbmNsdWRlIDxhdHRyaWJ1dGUuaD4K IAogI2RlZmluZSBTWVNMT0dfTkFNRVMKICNpbmNsdWRlIDxzeXNsb2cuaD4KQEAgLTM3NCw3ICsz NzQsNyBAQCBzdGF0aWMgc3RydWN0IGFyZ3Bfb3B0aW9uIGFyZ3Bfb3B0aW9uc1tdID0gewogfTsK IAogc3RhdGljIGVycm9yX3QKLXBhcnNlX29wdCAoaW50IGtleSwgY2hhciAqYXJnLCBzdHJ1Y3Qg YXJncF9zdGF0ZSAqc3RhdGUgX0dMX1VOVVNFRF9QQVJBTUVURVIpCitwYXJzZV9vcHQgKGludCBr ZXksIGNoYXIgKmFyZywgc3RydWN0IGFyZ3Bfc3RhdGUgKnN0YXRlIE1BWUJFX1VOVVNFRCkKIHsK ICAgc3dpdGNoIChrZXkpCiAgICAgewpkaWZmIC0tZ2l0IGEvc3JjL3JjcC5jIGIvc3JjL3JjcC5j CmluZGV4IDQ3NmNiYWEuLjc0MzkzMGMgMTAwNjQ0Ci0tLSBhL3NyYy9yY3AuYworKysgYi9zcmMv cmNwLmMKQEAgLTg0LDcgKzg0LDcgQEAKICMgaW5jbHVkZSA8dXRpbWUuaD4JCS8qIElmIHdlIGRv bid0IGhhdmUgdXRpbWVzKCksIHVzZSB1dGltZSgpLiAqLwogI2VuZGlmCiAjaW5jbHVkZSA8cHJv Z25hbWUuaD4KLSNpbmNsdWRlIDx1bnVzZWQtcGFyYW1ldGVyLmg+CisjaW5jbHVkZSA8YXR0cmli dXRlLmg+CiAjaW5jbHVkZSA8bGliaW5ldHV0aWxzLmg+CiAjaW5jbHVkZSA8YXJncC5oPgogI2lu Y2x1ZGUgPGVycm9yLmg+CkBAIC0yMDIsNyArMjAyLDcgQEAgc3RhdGljIHN0cnVjdCBhcmdwX29w dGlvbiBvcHRpb25zW10gPSB7CiB9OwogCiBzdGF0aWMgZXJyb3JfdAotcGFyc2Vfb3B0IChpbnQg a2V5LCBjaGFyICphcmcsIHN0cnVjdCBhcmdwX3N0YXRlICpzdGF0ZSBfR0xfVU5VU0VEX1BBUkFN RVRFUikKK3BhcnNlX29wdCAoaW50IGtleSwgY2hhciAqYXJnLCBzdHJ1Y3QgYXJncF9zdGF0ZSAq c3RhdGUgTUFZQkVfVU5VU0VEKQogewogICBzd2l0Y2ggKGtleSkKICAgICB7CkBAIC0xNDg5LDcg KzE0ODksNyBAQCBhbGxvY2J1ZiAoQlVGICogYnAsIGludCBmZCwgaW50IGJsa3NpemUpCiB9CiAK IHZvaWQKLWxvc3Rjb25uIChpbnQgc2lnbm8gX0dMX1VOVVNFRF9QQVJBTUVURVIpCitsb3N0Y29u biAoaW50IHNpZ25vIE1BWUJFX1VOVVNFRCkKIHsKICAgaWYgKCFpYW1yZW1vdGUpCiAgICAgZXJy b3IgKDAsIDAsICJsb3N0IGNvbm5lY3Rpb24iKTsKZGlmZiAtLWdpdCBhL3NyYy9yZXhlY2QuYyBi L3NyYy9yZXhlY2QuYwppbmRleCBmM2M1MDkyLi40Nzc3YTZkIDEwMDY0NAotLS0gYS9zcmMvcmV4 ZWNkLmMKKysrIGIvc3JjL3JleGVjZC5jCkBAIC0xMTIsNyArMTEyLDcgQEAKICNpbmNsdWRlIDxw cm9nbmFtZS5oPgogI2luY2x1ZGUgPGFyZ3AuaD4KICNpbmNsdWRlIDxlcnJvci5oPgotI2luY2x1 ZGUgPHVudXNlZC1wYXJhbWV0ZXIuaD4KKyNpbmNsdWRlIDxhdHRyaWJ1dGUuaD4KICNpbmNsdWRl ICJsaWJpbmV0dXRpbHMuaCIKIAogdm9pZCBkaWUgKGludCBjb2RlLCBjb25zdCBjaGFyICpmbXQs IC4uLik7CkBAIC0xMzcsOCArMTM3LDggQEAgc3RhdGljIHN0cnVjdCBhcmdwX29wdGlvbiBvcHRp b25zW10gPSB7CiB9OwogCiBzdGF0aWMgZXJyb3JfdAotcGFyc2Vfb3B0IChpbnQga2V5LCBjaGFy ICphcmcgX0dMX1VOVVNFRF9QQVJBTUVURVIsCi0JICAgc3RydWN0IGFyZ3Bfc3RhdGUgKnN0YXRl IF9HTF9VTlVTRURfUEFSQU1FVEVSKQorcGFyc2Vfb3B0IChpbnQga2V5LCBjaGFyICphcmcgTUFZ QkVfVU5VU0VELAorCSAgIHN0cnVjdCBhcmdwX3N0YXRlICpzdGF0ZSBNQVlCRV9VTlVTRUQpCiB7 CiAgIHN3aXRjaCAoa2V5KQogICAgIHsKQEAgLTczMCw3ICs3MzAsNyBAQCBnZXRzdHIgKGNvbnN0 IGNoYXIgKmVycikKIHN0YXRpYyBpbnQKIHJleGVjX2NvbnYgKGludCBudW0sIGNvbnN0IHN0cnVj dCBwYW1fbWVzc2FnZSAqKnBhbV9tc2csCiAJICAgIHN0cnVjdCBwYW1fcmVzcG9uc2UgKipwYW1f cmVzcCwKLQkgICAgdm9pZCAqZGF0YSBfR0xfVU5VU0VEX1BBUkFNRVRFUikKKwkgICAgdm9pZCAq ZGF0YSBNQVlCRV9VTlVTRUQpCiB7CiAgIHN0cnVjdCBwYW1fcmVzcG9uc2UgKnJlc3A7CiAKZGlm ZiAtLWdpdCBhL3NyYy9ybG9naW4uYyBiL3NyYy9ybG9naW4uYwppbmRleCBiZGZjZmE2Li4yYWJi MmQyIDEwMDY0NAotLS0gYS9zcmMvcmxvZ2luLmMKKysrIGIvc3JjL3Jsb2dpbi5jCkBAIC0xMDMs NyArMTAzLDcgQEAKIAogI2luY2x1ZGUgPHByb2duYW1lLmg+CiAjaW5jbHVkZSAibGliaW5ldHV0 aWxzLmgiCi0jaW5jbHVkZSAidW51c2VkLXBhcmFtZXRlci5oIgorI2luY2x1ZGUgImF0dHJpYnV0 ZS5oIgogI2luY2x1ZGUgInhhbGxvYy5oIgogCiAjaWZkZWYgS0VSQkVST1MKQEAgLTkyNyw3ICs5 MjcsNyBAQCBpbnQgZG9zaWd3aW5jaDsKICAqIEZJWE1FOiBSYWNlIGNvbmRpdGlvbiBkdWUgdG8g c2VuZHdpbmRvdygpIGluIHNpZ25hbCBoYW5kbGVyPwogICovCiB2b2lkCi13cml0ZXJvb2IgKGlu dCBzaWdubyBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3dyaXRlcm9vYiAoaW50IHNpZ25vIE1BWUJF X1VOVVNFRCkKIHsKICAgaWYgKGRvc2lnd2luY2ggPT0gMCkKICAgICB7CkBAIC05NDYsNyArOTQ2 LDcgQEAgd3JpdGVyb29iIChpbnQgc2lnbm8gX0dMX1VOVVNFRF9QQVJBTUVURVIpCiAvKiBGSVhN RTogU3lzdGVtIGRlcGVuZGVudCByYWNlIGNvbmRpdGlvbiBkdWUgdG8gZG9uZSgpLgogICovCiB2 b2lkCi1jYXRjaF9jaGlsZCAoaW50IHNpZ25vIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorY2F0Y2hf Y2hpbGQgKGludCBzaWdubyBNQVlCRV9VTlVTRUQpCiB7CiAgIGludCBzdGF0dXM7CiAgIHBpZF90 IHBpZDsKQEAgLTExMTMsNyArMTExMyw3IEBAIHN0b3AgKGNoYXIgY21kYykKIH0KIAogdm9pZAot c2lnd2luY2ggKGludCBzaWdubyBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3NpZ3dpbmNoIChpbnQg c2lnbm8gTUFZQkVfVU5VU0VEKQogewogICBzdHJ1Y3Qgd2luc2l6ZSB3czsKIApAQCAtMTE3Miw3 ICsxMTcyLDcgQEAgaW50IHJjdmNudCwgcmN2c3RhdGU7CiBjaGFyIHJjdmJ1Zls4ICogMTAyNF07 CiAKIHZvaWQKLW9vYiAoaW50IHNpZ25vIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorb29iIChpbnQg c2lnbm8gTUFZQkVfVU5VU0VEKQogewogICBjaGFyIG1hcms7CiAgIHN0cnVjdCB0ZXJtaW9zIHR0 OwpkaWZmIC0tZ2l0IGEvc3JjL3Jsb2dpbmQuYyBiL3NyYy9ybG9naW5kLmMKaW5kZXggMzQ1Yjli Ni4uM2JlM2I0NSAxMDA2NDQKLS0tIGEvc3JjL3Jsb2dpbmQuYworKysgYi9zcmMvcmxvZ2luZC5j CkBAIC0xMTcsNyArMTE3LDcgQEAKICNpbmNsdWRlIDxwcm9nbmFtZS5oPgogI2luY2x1ZGUgPGFy Z3AuaD4KICNpbmNsdWRlIDxsaWJpbmV0dXRpbHMuaD4KLSNpbmNsdWRlICJ1bnVzZWQtcGFyYW1l dGVyLmgiCisjaW5jbHVkZSAiYXR0cmlidXRlLmgiCiAjaW5jbHVkZSAieGFsbG9jLmgiCiAKIC8q CkBAIC0zMDksNyArMzA5LDcgQEAgdm9pZCBwcmV2ZW50X3JvdXRpbmcgKGludCBmZCwgc3RydWN0 IGF1dGhfZGF0YSAqYXApOwogI2VuZGlmCiAKIHZvaWQKLXJsb2dpbmRfc2lnY2hsZCAoaW50IHNp Z25vIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorcmxvZ2luZF9zaWdjaGxkIChpbnQgc2lnbm8gTUFZ QkVfVU5VU0VEKQogewogICBwaWRfdCBwaWQ7CiAgIGludCBzdGF0dXM7CkBAIC00ODgsNyArNDg4 LDcgQEAgc3RhdGljIHN0cnVjdCBhcmdwX29wdGlvbiBvcHRpb25zW10gPSB7CiAKIHN0YXRpYyBl cnJvcl90CiBwYXJzZV9vcHQgKGludCBrZXksIGNoYXIgKmFyZywKLQkgICBzdHJ1Y3QgYXJncF9z dGF0ZSAqc3RhdGUgX0dMX1VOVVNFRF9QQVJBTUVURVIpCisJICAgc3RydWN0IGFyZ3Bfc3RhdGUg KnN0YXRlIE1BWUJFX1VOVVNFRCkKIHsKICAgc3dpdGNoIChrZXkpCiAgICAgewpAQCAtMjIzMCw3 ICsyMjMwLDcgQEAgZG9fcGFtX2NoZWNrIChpbnQgaW5mZCwgc3RydWN0IGF1dGhfZGF0YSAqYXAs IGNvbnN0IGNoYXIgKnNlcnZpY2UpCiBzdGF0aWMgaW50CiBybG9naW5fY29udiAoaW50IG51bSwg Y29uc3Qgc3RydWN0IHBhbV9tZXNzYWdlICoqcGFtX21zZywKIAkgICAgIHN0cnVjdCBwYW1fcmVz cG9uc2UgKipwYW1fcmVzcCwKLQkgICAgIHZvaWQgKmRhdGEgX0dMX1VOVVNFRF9QQVJBTUVURVIp CisJICAgICB2b2lkICpkYXRhIE1BWUJFX1VOVVNFRCkKIHsKICAgc3RydWN0IHBhbV9yZXNwb25z ZSAqcmVzcDsKIApkaWZmIC0tZ2l0IGEvc3JjL3JzaC5jIGIvc3JjL3JzaC5jCmluZGV4IGZhOTdl MmEuLjc5YmZiYzIgMTAwNjQ0Ci0tLSBhL3NyYy9yc2guYworKysgYi9zcmMvcnNoLmMKQEAgLTc4 LDcgKzc4LDcgQEAKICNpbmNsdWRlIDx4YWxsb2MuaD4KICNpbmNsdWRlIDxhcmdwLmg+CiAjaW5j bHVkZSA8bGliaW5ldHV0aWxzLmg+Ci0jaW5jbHVkZSA8dW51c2VkLXBhcmFtZXRlci5oPgorI2lu Y2x1ZGUgPGF0dHJpYnV0ZS5oPgogCiAjaWZkZWYgS1JCNQogIyBpZmRlZiBIQVZFX0tSQjVfSApA QCAtMTczLDcgKzE3Myw3IEBAIHN0YXRpYyBzdHJ1Y3QgYXJncF9vcHRpb24gb3B0aW9uc1tdID0g ewogCiBzdGF0aWMgZXJyb3JfdAogcGFyc2Vfb3B0IChpbnQga2V5LCBjaGFyICphcmcsCi0JICAg c3RydWN0IGFyZ3Bfc3RhdGUgKnN0YXRlIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorCSAgIHN0cnVj dCBhcmdwX3N0YXRlICpzdGF0ZSBNQVlCRV9VTlVTRUQpCiB7CiAgIHN3aXRjaCAoa2V5KQogICAg IHsKQEAgLTc4NCw3ICs3ODQsNyBAQCBzZW5kc2lnIChpbnQgc2lnKQogfQogCiB2b2lkCi1zaWdw aXBlIChpbnQgc2lnIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc2lncGlwZSAoaW50IHNpZyBNQVlC RV9VTlVTRUQpCiB7CiAgICsrZW5kX29mX3BpcGU7CiB9CmRpZmYgLS1naXQgYS9zcmMvcnNoZC5j IGIvc3JjL3JzaGQuYwppbmRleCBmZWQ2ZjM5Li5lODNmYmFiIDEwMDY0NAotLS0gYS9zcmMvcnNo ZC5jCisrKyBiL3NyYy9yc2hkLmMKQEAgLTE0Niw3ICsxNDYsNyBAQAogI2luY2x1ZGUgPGVycm9y Lmg+CiAjaW5jbHVkZSA8cHJvZ25hbWUuaD4KICNpbmNsdWRlIDxhcmdwLmg+Ci0jaW5jbHVkZSA8 dW51c2VkLXBhcmFtZXRlci5oPgorI2luY2x1ZGUgPGF0dHJpYnV0ZS5oPgogI2luY2x1ZGUgPGxp YmluZXR1dGlscy5oPgogI2luY2x1ZGUgInhhbGxvYy5oIgogCkBAIC0yNzEsNyArMjcxLDcgQEAg ZXh0ZXJuIGludCBpcnVzZXJvayAodWludDMyX3QgcmFkZHIsIGludCBzdXBlcnVzZXIsCiAjZW5k aWYgLyogV0lUSF9QQU0gKi8KIAogc3RhdGljIGVycm9yX3QKLXBhcnNlX29wdCAoaW50IGtleSwg Y2hhciAqYXJnLCBzdHJ1Y3QgYXJncF9zdGF0ZSAqc3RhdGUgX0dMX1VOVVNFRF9QQVJBTUVURVIp CitwYXJzZV9vcHQgKGludCBrZXksIGNoYXIgKmFyZywgc3RydWN0IGFyZ3Bfc3RhdGUgKnN0YXRl IE1BWUJFX1VOVVNFRCkKIHsKICAgc3dpdGNoIChrZXkpCiAgICAgewpAQCAtMjA5Myw3ICsyMDkz LDcgQEAgdG9wZG9tYWluIChjb25zdCBjaGFyICpoKQogc3RhdGljIGludAogcnNoX2NvbnYgKGlu dCBudW0sIGNvbnN0IHN0cnVjdCBwYW1fbWVzc2FnZSAqKnBhbV9tc2csCiAJICAgIHN0cnVjdCBw YW1fcmVzcG9uc2UgKipwYW1fcmVzcCwKLQkgICAgdm9pZCAqZGF0YSBfR0xfVU5VU0VEX1BBUkFN RVRFUikKKwkgICAgdm9pZCAqZGF0YSBNQVlCRV9VTlVTRUQpCiB7CiAgIHN0cnVjdCBwYW1fcmVz cG9uc2UgKnJlc3A7CiAKZGlmZiAtLWdpdCBhL3NyYy9zeXNsb2dkLmMgYi9zcmMvc3lzbG9nZC5j CmluZGV4IDQ1MjhkN2UuLmZiNzFlNGMgMTAwNjQ0Ci0tLSBhL3NyYy9zeXNsb2dkLmMKKysrIGIv c3JjL3N5c2xvZ2QuYwpAQCAtMTM3LDcgKzEzNyw3IEBACiAjaW5jbHVkZSA8cHJvZ25hbWUuaD4K ICNpbmNsdWRlIDxsaWJpbmV0dXRpbHMuaD4KICNpbmNsdWRlIDxyZWFkdXRtcC5oPgkJLyogTWF5 IGRlZmluZSBVVE1QX05BTUVfRlVOQ1RJT04uICAqLwotI2luY2x1ZGUgInVudXNlZC1wYXJhbWV0 ZXIuaCIKKyNpbmNsdWRlICJhdHRyaWJ1dGUuaCIKICNpbmNsdWRlICJ4YWxsb2MuaCIKIAogLyog QSBtYXNrIG9mIGFsbCBmYWNpbGl0aWVzIG1lbnRpb25lZCBleHBsaWNpdGx5IGluIHRoZSBjb25m aWd1cmF0aW9uIGZpbGUKQEAgLTE3NDQsNyArMTc0NCw3IEBAIGN2dGhuYW1lIChzdHJ1Y3Qgc29j a2FkZHIgKmYsIHNvY2tsZW5fdCBsZW4pCiB9CiAKIHZvaWQKLWRvbWFyayAoaW50IHNpZ25vIF9H TF9VTlVTRURfUEFSQU1FVEVSKQorZG9tYXJrIChpbnQgc2lnbm8gTUFZQkVfVU5VU0VEKQogewog ICBzdHJ1Y3QgZmlsZWQgKmY7CiAKQEAgLTE3OTMsNyArMTc5Myw3IEBAIGxvZ2Vycm9yIChjb25z dCBjaGFyICp0eXBlKQogfQogCiB2b2lkCi1kb2V4aXQgKGludCBzaWdubyBfR0xfVU5VU0VEX1BB UkFNRVRFUikKK2RvZXhpdCAoaW50IHNpZ25vIE1BWUJFX1VOVVNFRCkKIHsKICAgX2V4aXQgKEVY SVRfU1VDQ0VTUyk7CiB9CkBAIC0yMDkwLDcgKzIwOTAsNyBAQCBsb2FkX2NvbmZkaXIgKGNvbnN0 IGNoYXIgKmRpcm5hbWUsIHN0cnVjdCBmaWxlZCAqKm5leHRwKQogCiAvKiBJTklUIC0tIEluaXRp YWxpemUgc3lzbG9nZCBmcm9tIGNvbmZpZ3VyYXRpb24gdGFibGUuICAqLwogdm9pZAotaW5pdCAo aW50IHNpZ25vIF9HTF9VTlVTRURfUEFSQU1FVEVSKQoraW5pdCAoaW50IHNpZ25vIE1BWUJFX1VO VVNFRCkKIHsKICAgaW50IHJjLCByZXQ7CiAgIHN0cnVjdCBmaWxlZCAqZiwgKm5leHQsICoqbmV4 dHA7CkBAIC0yNDg3LDcgKzI0ODcsNyBAQCBkZWNvZGUgKGNvbnN0IGNoYXIgKm5hbWUsIENPREUg KiBjb2RldGFiKQogfQogCiB2b2lkCi1kYmdfdG9nZ2xlIChpbnQgc2lnbm8gX0dMX1VOVVNFRF9Q QVJBTUVURVIpCitkYmdfdG9nZ2xlIChpbnQgc2lnbm8gTUFZQkVfVU5VU0VEKQogewogICBpbnQg ZGJnX3NhdmUgPSBkYmdfb3V0cHV0OwogCkBAIC0yNTIzLDcgKzI1MjMsNyBAQCBkYmdfcHJpbnRm IChjb25zdCBjaGFyICpmbXQsIC4uLikKICAgIHNldCBhIGZsYWcgdmFyaWFibGUgd2hpY2ggd2ls bCB0ZWxsIHRoZSBtYWluIGxvb3AgdG8gZ28gdGhyb3VnaCBhCiAgICByZXN0YXJ0LiAgKi8KIHZv aWQKLXRyaWdnZXJfcmVzdGFydCAoaW50IHNpZ25vIF9HTF9VTlVTRURfUEFSQU1FVEVSKQordHJp Z2dlcl9yZXN0YXJ0IChpbnQgc2lnbm8gTUFZQkVfVU5VU0VEKQogewogICByZXN0YXJ0ID0gMTsK ICNpZm5kZWYgSEFWRV9TSUdBQ1RJT04KZGlmZiAtLWdpdCBhL3NyYy90ZnRwLmMgYi9zcmMvdGZ0 cC5jCmluZGV4IDExNDNlNzQuLjc1ZWY2NjMgMTAwNjQ0Ci0tLSBhL3NyYy90ZnRwLmMKKysrIGIv c3JjL3RmdHAuYwpAQCAtODMsNyArODMsNyBAQAogI2VuZGlmCiAKICNpbmNsdWRlIDxhcmdwLmg+ Ci0jaW5jbHVkZSA8dW51c2VkLXBhcmFtZXRlci5oPgorI2luY2x1ZGUgPGF0dHJpYnV0ZS5oPgog CiAjaW5jbHVkZSA8bGliaW5ldHV0aWxzLmg+CiAKQEAgLTUxNiwxMyArNTE2LDEzIEBAIG1vZGVj bWQgKGludCBhcmdjLCBjaGFyICphcmd2W10pCiB9CiAKIHZvaWQKLXNldGJpbmFyeSAoaW50IGFy Z2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKmFyZ3ZbXSBfR0xfVU5VU0VEX1BBUkFNRVRF UikKK3NldGJpbmFyeSAoaW50IGFyZ2MgTUFZQkVfVU5VU0VELCBjaGFyICphcmd2W10gTUFZQkVf VU5VU0VEKQogewogICBzZXR0ZnRwbW9kZSAoIm9jdGV0Iik7CiB9CiAKIHZvaWQKLXNldGFzY2lp IChpbnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwgY2hhciAqYXJndltdIF9HTF9VTlVTRURf UEFSQU1FVEVSKQorc2V0YXNjaWkgKGludCBhcmdjIE1BWUJFX1VOVVNFRCwgY2hhciAqYXJndltd IE1BWUJFX1VOVVNFRCkKIHsKICAgc2V0dGZ0cG1vZGUgKCJuZXRhc2NpaSIpOwogfQpAQCAtNzky LDcgKzc5Miw3IEBAIHNldHRpbWVvdXQgKGludCBhcmdjLCBjaGFyICphcmd2W10pCiB9CiAKIHZv aWQKLXN0YXR1cyAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNoYXIgKmFyZ3ZbXSBf R0xfVU5VU0VEX1BBUkFNRVRFUikKK3N0YXR1cyAoaW50IGFyZ2MgTUFZQkVfVU5VU0VELCBjaGFy ICphcmd2W10gTUFZQkVfVU5VU0VEKQogewogICBpZiAoY29ubmVjdGVkKQogICAgIHByaW50ZiAo IkNvbm5lY3RlZCB0byAlcy5cbiIsIGhvc3RuYW1lKTsKQEAgLTgwNSw3ICs4MDUsNyBAQCBzdGF0 dXMgKGludCBhcmdjIF9HTF9VTlVTRURfUEFSQU1FVEVSLCBjaGFyICphcmd2W10gX0dMX1VOVVNF RF9QQVJBTUVURVIpCiB9CiAKIHZvaWQKLWludHIgKGludCBzaWdubyBfR0xfVU5VU0VEX1BBUkFN RVRFUikKK2ludHIgKGludCBzaWdubyBNQVlCRV9VTlVTRUQpCiB7CiAgIHNpZ25hbCAoU0lHQUxS TSwgU0lHX0lHTik7CiAgIGFsYXJtICgwKTsKQEAgLTkyOSw3ICs5MjksNyBAQCBtYWtlYXJndiAo dm9pZCkKIH0KIAogdm9pZAotcXVpdCAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNo YXIgKmFyZ3ZbXSBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3F1aXQgKGludCBhcmdjIE1BWUJFX1VO VVNFRCwgY2hhciAqYXJndltdIE1BWUJFX1VOVVNFRCkKIHsKICAgZXhpdCAoRVhJVF9TVUNDRVNT KTsKIH0KQEAgLTk2NiwxNCArOTY2LDE0IEBAIGhlbHAgKGludCBhcmdjLCBjaGFyICphcmd2W10p CiB9CiAKIHZvaWQKLXNldHRyYWNlIChpbnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwgY2hh ciAqYXJndltdIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc2V0dHJhY2UgKGludCBhcmdjIE1BWUJF X1VOVVNFRCwgY2hhciAqYXJndltdIE1BWUJFX1VOVVNFRCkKIHsKICAgdHJhY2UgPSAhdHJhY2U7 CiAgIHByaW50ZiAoIlBhY2tldCB0cmFjaW5nICVzLlxuIiwgdHJhY2UgPyAib24iIDogIm9mZiIp OwogfQogCiB2b2lkCi1zZXR2ZXJib3NlIChpbnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFNRVRFUiwg Y2hhciAqYXJndltdIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorc2V0dmVyYm9zZSAoaW50IGFyZ2Mg TUFZQkVfVU5VU0VELCBjaGFyICphcmd2W10gTUFZQkVfVU5VU0VEKQogewogICB2ZXJib3NlID0g IXZlcmJvc2U7CiAgIHByaW50ZiAoIlZlcmJvc2UgbW9kZSAlcy5cbiIsIHZlcmJvc2UgPyAib24i IDogIm9mZiIpOwpAQCAtMTM3OCw3ICsxMzc4LDcgQEAgcHJpbnRzdGF0cyAoY29uc3QgY2hhciAq ZGlyZWN0aW9uLCB1bnNpZ25lZCBsb25nIGFtb3VudCkKIH0KIAogc3RhdGljIHZvaWQKLXRpbWVy IChpbnQgc2lnIF9HTF9VTlVTRURfUEFSQU1FVEVSKQordGltZXIgKGludCBzaWcgTUFZQkVfVU5V U0VEKQogewogICB0aW1lb3V0ICs9IHJleG10dmFsOwogICBpZiAodGltZW91dCA+PSBtYXh0aW1l b3V0KQpkaWZmIC0tZ2l0IGEvc3JjL3RmdHBkLmMgYi9zcmMvdGZ0cGQuYwppbmRleCBjYzFiNzAz Li44OTA2NTkxIDEwMDY0NAotLS0gYS9zcmMvdGZ0cGQuYworKysgYi9zcmMvdGZ0cGQuYwpAQCAt ODUsNyArODUsNyBAQAogCiAjaW5jbHVkZSAidGZ0cHN1YnMuaCIKIAotI2luY2x1ZGUgPHVudXNl ZC1wYXJhbWV0ZXIuaD4KKyNpbmNsdWRlIDxhdHRyaWJ1dGUuaD4KICNpbmNsdWRlIDx4YWxsb2Mu aD4KICNpbmNsdWRlIDxhcmdwLmg+CiAjaW5jbHVkZSA8cHJvZ25hbWUuaD4KQEAgLTE2NSw3ICsx NjUsNyBAQCBzdGF0aWMgc3RydWN0IGFyZ3Bfb3B0aW9uIG9wdGlvbnNbXSA9IHsKIAogc3RhdGlj IGVycm9yX3QKIHBhcnNlX29wdCAoaW50IGtleSwgY2hhciAqYXJnLAotCSAgIHN0cnVjdCBhcmdw X3N0YXRlICpzdGF0ZSBfR0xfVU5VU0VEX1BBUkFNRVRFUikKKwkgICBzdHJ1Y3QgYXJncF9zdGF0 ZSAqc3RhdGUgTUFZQkVfVU5VU0VEKQogewogICBzd2l0Y2ggKGtleSkKICAgICB7CkBAIC02MzYs NyArNjM2LDcgQEAgaW50IHRpbWVvdXQ7CiBzaWdqbXBfYnVmIHRpbWVvdXRidWY7CiAKIHZvaWQK LXRpbWVyIChpbnQgc2lnIF9HTF9VTlVTRURfUEFSQU1FVEVSKQordGltZXIgKGludCBzaWcgTUFZ QkVfVU5VU0VEKQogewogCiAgIHRpbWVvdXQgKz0gcmV4bXR2YWw7CkBAIC03MTYsNyArNzE2LDcg QEAgYWJvcnQ6CiB9CiAKIHZvaWQKLWp1c3RxdWl0IChpbnQgc2lnIF9HTF9VTlVTRURfUEFSQU1F VEVSKQoranVzdHF1aXQgKGludCBzaWcgTUFZQkVfVU5VU0VEKQogewogICBleGl0IChFWElUX1NV Q0NFU1MpOwogfQpkaWZmIC0tZ2l0IGEvc3JjL3RyYWNlcm91dGUuYyBiL3NyYy90cmFjZXJvdXRl LmMKaW5kZXggZGU3ZGI0Yi4uYzk2MjBkNiAxMDA2NDQKLS0tIGEvc3JjL3RyYWNlcm91dGUuYwor KysgYi9zcmMvdHJhY2Vyb3V0ZS5jCkBAIC00OSw3ICs0OSw3IEBACiAjaW5jbHVkZSA8bGltaXRz Lmg+CiAjaW5jbHVkZSA8YXNzZXJ0Lmg+CiAjaW5jbHVkZSA8YXJncC5oPgotI2luY2x1ZGUgPHVu dXNlZC1wYXJhbWV0ZXIuaD4KKyNpbmNsdWRlIDxhdHRyaWJ1dGUuaD4KICNpbmNsdWRlIDxpY21w Lmg+CiAjaWZkZWYgSEFWRV9MT0NBTEVfSAogIyBpbmNsdWRlIDxsb2NhbGUuaD4KQEAgLTM1NCw3 ICszNTQsNyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpCiAKIHZvaWQKIGRvX3RyeSAo dHJhY2VfdCAqIHRyYWNlLCBjb25zdCBpbnQgaG9wLAotCWNvbnN0IGludCBtYXhfaG9wcyBfR0xf VU5VU0VEX1BBUkFNRVRFUiwKKwljb25zdCBpbnQgbWF4X2hvcHMgTUFZQkVfVU5VU0VELAogCWNv bnN0IGludCBtYXhfdHJpZXMpCiB7CiAgIGZkX3NldCByZWFkc2V0OwpkaWZmIC0tZ2l0IGEvc3Jj L3V1Y3BkLmMgYi9zcmMvdXVjcGQuYwppbmRleCBjOGJiNDYwLi4wNzJjMjIyIDEwMDY0NAotLS0g YS9zcmMvdXVjcGQuYworKysgYi9zcmMvdXVjcGQuYwpAQCAtODgsNyArODgsNyBAQAogCiAjaW5j bHVkZSA8YXJncC5oPgogI2luY2x1ZGUgPHByb2duYW1lLmg+Ci0jaW5jbHVkZSA8dW51c2VkLXBh cmFtZXRlci5oPgorI2luY2x1ZGUgPGF0dHJpYnV0ZS5oPgogI2luY2x1ZGUgPGxpYmluZXR1dGls cy5oPgogCiB2b2lkIGRvbG9naW4gKHN0cnVjdCBwYXNzd2QgKnB3LCBzdHJ1Y3Qgc29ja2FkZHIg KnNhcCwgc29ja2xlbl90IHNhbGVuKTsKQEAgLTExOSw3ICsxMTksNyBAQCBzdGF0aWMgc3RydWN0 IGFyZ3Bfb3B0aW9uIGFyZ3Bfb3B0aW9uc1tdID0gewogCiBzdGF0aWMgZXJyb3JfdAogcGFyc2Vf b3B0IChpbnQga2V5LCBjaGFyICphcmcsCi0JICAgc3RydWN0IGFyZ3Bfc3RhdGUgKnN0YXRlIF9H TF9VTlVTRURfUEFSQU1FVEVSKQorCSAgIHN0cnVjdCBhcmdwX3N0YXRlICpzdGF0ZSBNQVlCRV9V TlVTRUQpCiB7CiAgIHN3aXRjaCAoa2V5KQogICAgIHsKZGlmZiAtLWdpdCBhL3RhbGsvaW5pdF9k aXNwLmMgYi90YWxrL2luaXRfZGlzcC5jCmluZGV4IDk5ZTZiNjAuLmQ1ZTBjMjUgMTAwNjQ0Ci0t LSBhL3RhbGsvaW5pdF9kaXNwLmMKKysrIGIvdGFsay9pbml0X2Rpc3AuYwpAQCAtNjIsMTAgKzYy LDEwIEBACiAjaW5jbHVkZSA8c2lnbmFsLmg+CiAjaW5jbHVkZSA8ZXJyb3IuaD4KICNpbmNsdWRl ICJ0YWxrLmgiCi0jaW5jbHVkZSAidW51c2VkLXBhcmFtZXRlci5oIgorI2luY2x1ZGUgImF0dHJp YnV0ZS5oIgogCiBzdGF0aWMgdm9pZAotc2lnX3NlbnQgKGludCBzaWcgX0dMX1VOVVNFRF9QQVJB TUVURVIpCitzaWdfc2VudCAoaW50IHNpZyBNQVlCRV9VTlVTRUQpCiB7CiAKICAgbWVzc2FnZSAo IkNvbm5lY3Rpb24gY2xvc2luZy4gRXhpdGluZyIpOwpkaWZmIC0tZ2l0IGEvdGFsay9pbnZpdGUu YyBiL3RhbGsvaW52aXRlLmMKaW5kZXggODRiMTk3Ni4uY2UxZDA4MyAxMDA2NDQKLS0tIGEvdGFs ay9pbnZpdGUuYworKysgYi90YWxrL2ludml0ZS5jCkBAIC02Miw3ICs2Miw3IEBACiAjaW5jbHVk ZSA8ZXJybm8uaD4KICNpbmNsdWRlIDx1bmlzdGQuaD4KICNpbmNsdWRlIDxzZXRqbXAuaD4KLSNp bmNsdWRlIDx1bnVzZWQtcGFyYW1ldGVyLmg+CisjaW5jbHVkZSA8YXR0cmlidXRlLmg+CiAjaW5j bHVkZSAidGFsa19jdGwuaCIKICNpbmNsdWRlICJ0YWxrLmgiCiAKQEAgLTExNyw3ICsxMTcsNyBA QCBhbm5vdW5jZV9pbnZpdGUgKHZvaWQpCiAgKiBSb3V0aW5lIGNhbGxlZCBvbiBpbnRlcnVwdCB0 byByZS1pbnZpdGUgdGhlIGNhbGxlZQogICovCiB2b2lkCi1yZV9pbnZpdGUgKGludCBzaWcgX0dM X1VOVVNFRF9QQVJBTUVURVIpCityZV9pbnZpdGUgKGludCBzaWcgTUFZQkVfVU5VU0VEKQogewog CiAgIG1lc3NhZ2UgKCJSaW5naW5nIHlvdXIgcGFydHkgYWdhaW4iKTsKZGlmZiAtLWdpdCBhL3Rh bGsvbXNncy5jIGIvdGFsay9tc2dzLmMKaW5kZXggZDU1NWUyMS4uOGMwMWI1NCAxMDA2NDQKLS0t IGEvdGFsay9tc2dzLmMKKysrIGIvdGFsay9tc2dzLmMKQEAgLTU5LDcgKzU5LDcgQEAKICNpbmNs dWRlIDx0aW1lLmg+CiAjaW5jbHVkZSA8c2lnbmFsLmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KLSNp bmNsdWRlIDx1bnVzZWQtcGFyYW1ldGVyLmg+CisjaW5jbHVkZSA8YXR0cmlidXRlLmg+CiAjaW5j bHVkZSAidGFsay5oIgogCiAjZGVmaW5lIE1TR19JTlRFUlZBTCA0CkBAIC02OCw3ICs2OCw3IEBA IGNoYXIgKmN1cnJlbnRfc3RhdGU7CiBpbnQgY3VycmVudF9saW5lID0gMDsKIAogc3RhdGljIHZv aWQKLWRpc3BfbXNnIChpbnQgc2lnIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorZGlzcF9tc2cgKGlu dCBzaWcgTUFZQkVfVU5VU0VEKQogewogICBtZXNzYWdlIChjdXJyZW50X3N0YXRlKTsKIH0KZGlm ZiAtLWdpdCBhL3RhbGtkL3RhYmxlLmMgYi90YWxrZC90YWJsZS5jCmluZGV4IDc2YjExMzcuLmZm ZTAzMDYgMTAwNjQ0Ci0tLSBhL3RhbGtkL3RhYmxlLmMKKysrIGIvdGFsa2QvdGFibGUuYwpAQCAt MjEsNyArMjEsNyBAQAogI2luY2x1ZGUgPGNvbmZpZy5oPgogCiAjaW5jbHVkZSA8aW50YWxrZC5o PgotI2luY2x1ZGUgInVudXNlZC1wYXJhbWV0ZXIuaCIKKyNpbmNsdWRlICJhdHRyaWJ1dGUuaCIK IAogdHlwZWRlZiBzdHJ1Y3QgcmVxdWVzdF90YWJsZSB0YWJsZV90OwogCkBAIC05Myw3ICs5Myw3 IEBAIGxvb2t1cF9yZXF1ZXN0IChDVExfTVNHICogcmVxdWVzdCwKIAogc3RhdGljIGludAogZnV6 enlfY29tcCAodGFibGVfdCAqIHB0ciwgQ1RMX01TRyAqIHJlcXVlc3QsCi0JICAgIHRpbWVfdCAq IHVudXNlZCBfR0xfVU5VU0VEX1BBUkFNRVRFUikKKwkgICAgdGltZV90ICogdW51c2VkIE1BWUJF X1VOVVNFRCkKIHsKICAgaWYgKHB0ci0+cmVxdWVzdC50eXBlID09IExFQVZFX0lOVklURQogICAg ICAgJiYgc3RyY21wIChyZXF1ZXN0LT5sX25hbWUsIHB0ci0+cmVxdWVzdC5yX25hbWUpID09IDAK ZGlmZiAtLWdpdCBhL3RhbGtkL3RhbGtkLmMgYi90YWxrZC90YWxrZC5jCmluZGV4IDQ1MmQzZjEu LjA4ZTNhNWIgMTAwNjQ0Ci0tLSBhL3RhbGtkL3RhbGtkLmMKKysrIGIvdGFsa2QvdGFsa2QuYwpA QCAtMjQsNyArMjQsNyBAQAogI2luY2x1ZGUgPHNpZ25hbC5oPgogI2luY2x1ZGUgPGxpYmluZXR1 dGlscy5oPgogI2luY2x1ZGUgPHByb2duYW1lLmg+Ci0jaW5jbHVkZSAidW51c2VkLXBhcmFtZXRl ci5oIgorI2luY2x1ZGUgImF0dHJpYnV0ZS5oIgogCiAjaWZuZGVmIExPR19GQUNJTElUWQogIyBk ZWZpbmUgTE9HX0ZBQ0lMSVRZIExPR19EQUVNT04KQEAgLTY3LDcgKzY3LDcgQEAgc3RhdGljIHN0 cnVjdCBhcmdwX29wdGlvbiBhcmdwX29wdGlvbnNbXSA9IHsKIAogc3RhdGljIGVycm9yX3QKIHBh cnNlX29wdCAoaW50IGtleSwgY2hhciAqYXJnLAotCSAgIHN0cnVjdCBhcmdwX3N0YXRlICpzdGF0 ZSBfR0xfVU5VU0VEX1BBUkFNRVRFUikKKwkgICBzdHJ1Y3QgYXJncF9zdGF0ZSAqc3RhdGUgTUFZ QkVfVU5VU0VEKQogewogICBzd2l0Y2ggKGtleSkKICAgICB7CkBAIC0xMzgsNyArMTM4LDcgQEAg dGFsa2RfaW5pdCAodm9pZCkKIHRpbWVfdCBsYXN0X21zZ190aW1lOwogCiBzdGF0aWMgdm9pZAot YWxhcm1faGFuZGxlciAoaW50IGVyciBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK2FsYXJtX2hhbmRs ZXIgKGludCBlcnIgTUFZQkVfVU5VU0VEKQogewogICBpbnQgb2Vycm5vID0gZXJybm87CiAKZGlm ZiAtLWdpdCBhL3RlbG5ldC9jb21tYW5kcy5jIGIvdGVsbmV0L2NvbW1hbmRzLmMKaW5kZXggNWNj OWI0ZC4uMjZjZWRiYSAxMDA2NDQKLS0tIGEvdGVsbmV0L2NvbW1hbmRzLmMKKysrIGIvdGVsbmV0 L2NvbW1hbmRzLmMKQEAgLTgxLDcgKzgxLDcgQEAKICMgaW5jbHVkZSA8aWRuYS5oPgogI2VuZGlm CiAKLSNpbmNsdWRlIDx1bnVzZWQtcGFyYW1ldGVyLmg+CisjaW5jbHVkZSA8YXR0cmlidXRlLmg+ CiAjaW5jbHVkZSA8bGliaW5ldHV0aWxzLmg+CiAKICNpbmNsdWRlICJnZW5lcmFsLmgiCkBAIC0x NTY3LDcgKzE1NjcsNyBAQCBzdXNwZW5kICh2b2lkKQogCiAjaWYgIWRlZmluZWQgVE4zMjcwCiBp bnQKLXNoZWxsIChpbnQgYXJnYywgY2hhciAqYXJndltdIF9HTF9VTlVTRURfUEFSQU1FVEVSKQor c2hlbGwgKGludCBhcmdjLCBjaGFyICphcmd2W10gTUFZQkVfVU5VU0VEKQogewogICBsb25nIG9s ZHJvd3MsIG9sZGNvbHMsIG5ld3Jvd3MsIG5ld2NvbHMsIGVycjsKIApkaWZmIC0tZ2l0IGEvdGVs bmV0L21haW4uYyBiL3RlbG5ldC9tYWluLmMKaW5kZXggYzc5MGQ2ZS4uMWE5NmQzNSAxMDA2NDQK LS0tIGEvdGVsbmV0L21haW4uYworKysgYi90ZWxuZXQvbWFpbi5jCkBAIC02NCw3ICs2NCw3IEBA CiAjaW5jbHVkZSA8cHJvZ25hbWUuaD4KICNpbmNsdWRlIDxlcnJvci5oPgogI2luY2x1ZGUgPGFy Z3AuaD4KLSNpbmNsdWRlIDx1bnVzZWQtcGFyYW1ldGVyLmg+CisjaW5jbHVkZSA8YXR0cmlidXRl Lmg+CiAjaW5jbHVkZSA8bGliaW5ldHV0aWxzLmg+CiAKICNpbmNsdWRlIDxhcnBhL3RlbG5ldC5o PgpAQCAtMjAxLDcgKzIwMSw3IEBAIHN0YXRpYyBzdHJ1Y3QgYXJncF9vcHRpb24gYXJncF9vcHRp b25zW10gPSB7CiB9OwogCiBzdGF0aWMgZXJyb3JfdAotcGFyc2Vfb3B0IChpbnQga2V5LCBjaGFy ICphcmcsIHN0cnVjdCBhcmdwX3N0YXRlICpzdGF0ZSBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3Bh cnNlX29wdCAoaW50IGtleSwgY2hhciAqYXJnLCBzdHJ1Y3QgYXJncF9zdGF0ZSAqc3RhdGUgTUFZ QkVfVU5VU0VEKQogewogICBzd2l0Y2ggKGtleSkKICAgICB7CmRpZmYgLS1naXQgYS90ZWxuZXQv c3lzX2JzZC5jIGIvdGVsbmV0L3N5c19ic2QuYwppbmRleCA2YTRiNjU1Li45ZGQyZWM0IDEwMDY0 NAotLS0gYS90ZWxuZXQvc3lzX2JzZC5jCisrKyBiL3RlbG5ldC9zeXNfYnNkLmMKQEAgLTY0LDcg KzY0LDcgQEAKICNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPGFycGEvdGVsbmV0Lmg+CiAj aW5jbHVkZSA8c3lzL3NlbGVjdC5oPgotI2luY2x1ZGUgPHVudXNlZC1wYXJhbWV0ZXIuaD4KKyNp bmNsdWRlIDxhdHRyaWJ1dGUuaD4KIAogI2luY2x1ZGUgInJpbmcuaCIKIApAQCAtOTQyLDcgKzk0 Miw3IEBAIE5ldFNldFBncnAgKGludCBmZCkKICAqLwogCiB2b2lkCi1kZWFkcGVlciAoaW50IHNp ZyBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK2RlYWRwZWVyIChpbnQgc2lnIE1BWUJFX1VOVVNFRCkK IHsKICAgc2V0Y29tbWFuZG1vZGUgKCk7CiAgIGxvbmdqbXAgKHBlZXJkaWVkLCAtMSk7CkBAIC05 NTAsNyArOTUwLDcgQEAgZGVhZHBlZXIgKGludCBzaWcgX0dMX1VOVVNFRF9QQVJBTUVURVIpCiAK IAogdm9pZAotaW50ciAoaW50IHNpZyBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK2ludHIgKGludCBz aWcgTUFZQkVfVU5VU0VEKQogewogICBpZiAobG9jYWxjaGFycykKICAgICB7CkBAIC05NjMsNyAr OTYzLDcgQEAgaW50ciAoaW50IHNpZyBfR0xfVU5VU0VEX1BBUkFNRVRFUikKIAogCiB2b2lkCi1p bnRyMiAoaW50IHNpZyBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK2ludHIyIChpbnQgc2lnIE1BWUJF X1VOVVNFRCkKIHsKICAgaWYgKGxvY2FsY2hhcnMpCiAgICAgewpAQCAtOTc5LDcgKzk3OSw3IEBA IGludHIyIChpbnQgc2lnIF9HTF9VTlVTRURfUEFSQU1FVEVSKQogCiAjaWZkZWYJU0lHVFNUUAog dm9pZAotc3VzcCAoaW50IHNpZyBfR0xfVU5VU0VEX1BBUkFNRVRFUikKK3N1c3AgKGludCBzaWcg TUFZQkVfVU5VU0VEKQogewogICBpZiAoKHJsb2dpbiAhPSBfUE9TSVhfVkRJU0FCTEUpICYmIHJs b2dpbl9zdXNwICgpKQogICAgIHJldHVybjsKQEAgLTk5MCw3ICs5OTAsNyBAQCBzdXNwIChpbnQg c2lnIF9HTF9VTlVTRURfUEFSQU1FVEVSKQogCiAjaWZkZWYJU0lHV0lOQ0gKIHZvaWQKLXNlbmR3 aW4gKGludCBzaWcgX0dMX1VOVVNFRF9QQVJBTUVURVIpCitzZW5kd2luIChpbnQgc2lnIE1BWUJF X1VOVVNFRCkKIHsKICAgaWYgKGNvbm5lY3RlZCkKICAgICB7CkBAIC0xMDAxLDcgKzEwMDEsNyBA QCBzZW5kd2luIChpbnQgc2lnIF9HTF9VTlVTRURfUEFSQU1FVEVSKQogCiAjaWZkZWYJU0lHSU5G Twogdm9pZAotYXl0IChpbnQgc2lnIF9HTF9VTlVTRURfUEFSQU1FVEVSKQorYXl0IChpbnQgc2ln IE1BWUJFX1VOVVNFRCkKIHsKICAgaWYgKGNvbm5lY3RlZCkKICAgICBzZW5kYXl0ICgpOwpkaWZm IC0tZ2l0IGEvdGVsbmV0ZC90ZWxuZXRkLmMgYi90ZWxuZXRkL3RlbG5ldGQuYwppbmRleCBjMGQz YmEwLi5kYjVkMjEyIDEwMDY0NAotLS0gYS90ZWxuZXRkL3RlbG5ldGQuYworKysgYi90ZWxuZXRk L3RlbG5ldGQuYwpAQCAtMjcsNyArMjcsNyBAQAogI2luY2x1ZGUgPGFyZ3AuaD4KICNpbmNsdWRl IDxwcm9nbmFtZS5oPgogI2luY2x1ZGUgPGVycm9yLmg+Ci0jaW5jbHVkZSA8dW51c2VkLXBhcmFt ZXRlci5oPgorI2luY2x1ZGUgPGF0dHJpYnV0ZS5oPgogI2luY2x1ZGUgPGxpYmluZXR1dGlscy5o PgogCiAjaWYgZGVmaW5lZCBBVVRIRU5USUNBVElPTiB8fCBkZWZpbmVkIEVOQ1JZUFRJT04KQEAg LTE0NSw3ICsxNDUsNyBAQCBzdGF0aWMgc3RydWN0IGFyZ3Bfb3B0aW9uIGFyZ3Bfb3B0aW9uc1td ID0gewogfTsKIAogc3RhdGljIGVycm9yX3QKLXBhcnNlX29wdCAoaW50IGtleSwgY2hhciAqYXJn LCBzdHJ1Y3QgYXJncF9zdGF0ZSAqc3RhdGUgX0dMX1VOVVNFRF9QQVJBTUVURVIpCitwYXJzZV9v cHQgKGludCBrZXksIGNoYXIgKmFyZywgc3RydWN0IGFyZ3Bfc3RhdGUgKnN0YXRlIE1BWUJFX1VO VVNFRCkKIHsKICAgc3dpdGNoIChrZXkpCiAgICAgewpAQCAtNzk2LDcgKzc5Niw3IEBAIHByaW50 X2hvc3RpbmZvICh2b2lkKQogfQogCiBzdGF0aWMgdm9pZAotY2hsZF9pc19kb25lIChpbnQgc2ln IF9HTF9VTlVTRURfUEFSQU1FVEVSKQorY2hsZF9pc19kb25lIChpbnQgc2lnIE1BWUJFX1VOVVNF RCkKIHsKICAgcGVuZGluZ19zaWdjaGxkID0gMTsKIH0KZGlmZiAtLWdpdCBhL3Rlc3RzL2xvY2Fs aG9zdC5jIGIvdGVzdHMvbG9jYWxob3N0LmMKaW5kZXggOGI3YTc0NS4uMDE5YjIzOCAxMDA2NDQK LS0tIGEvdGVzdHMvbG9jYWxob3N0LmMKKysrIGIvdGVzdHMvbG9jYWxob3N0LmMKQEAgLTIzLDEx ICsyMywxMSBAQAogCiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KLSNp bmNsdWRlIDx1bnVzZWQtcGFyYW1ldGVyLmg+CisjaW5jbHVkZSA8YXR0cmlidXRlLmg+CiAjaW5j bHVkZSA8cHJvZ25hbWUuaD4KIAogaW50Ci1tYWluIChpbnQgYXJnYyBfR0xfVU5VU0VEX1BBUkFN RVRFUiwgY2hhciAqKmFyZ3YpCittYWluIChpbnQgYXJnYyBNQVlCRV9VTlVTRUQsIGNoYXIgKiph cmd2KQogewogICBjaGFyICpwID0gbG9jYWxob3N0ICgpOwogICBzZXRfcHJvZ3JhbV9uYW1lIChh cmd2WzBdKTsKZGlmZiAtLWdpdCBhL3Rlc3RzL3dhaXRkYWVtb24uYyBiL3Rlc3RzL3dhaXRkYWVt b24uYwppbmRleCA5NWJmMmVlLi42NmFmNmNhIDEwMDY0NAotLS0gYS90ZXN0cy93YWl0ZGFlbW9u LmMKKysrIGIvdGVzdHMvd2FpdGRhZW1vbi5jCkBAIC0zNCwxOCArMzQsMTggQEAKICNpbmNsdWRl IDxlcnJvci5oPgogI2luY2x1ZGUgPHByb2duYW1lLmg+CiAjaW5jbHVkZSA8bGliaW5ldHV0aWxz Lmg+Ci0jaW5jbHVkZSA8dW51c2VkLXBhcmFtZXRlci5oPgorI2luY2x1ZGUgPGF0dHJpYnV0ZS5o PgogCiBleHRlcm4gaW50IHdhaXRkYWVtb24gKGludCBub2NoZGlyLCBpbnQgbm9jbG9zZSwgaW50 IG1heHdhaXQpOwogCiB2b2lkCi1kb2V4aXQgKGludCBzaWdubyBfR0xfVU5VU0VEX1BBUkFNRVRF UikKK2RvZXhpdCAoaW50IHNpZ25vIE1BWUJFX1VOVVNFRCkKIHsKICAgX2V4aXQgKEVYSVRfU1VD Q0VTUyk7CiB9CiAKIGludAotbWFpbiAoaW50IGFyZ2MgX0dMX1VOVVNFRF9QQVJBTUVURVIsIGNo YXIgKmFyZ3ZbXSkKK21haW4gKGludCBhcmdjIE1BWUJFX1VOVVNFRCwgY2hhciAqYXJndltdKQog ewogICBwaWRfdCBwcGlkOwogCmRpZmYgLS1naXQgYS93aG9pcy93aG9pcy5jIGIvd2hvaXMvd2hv aXMuYwppbmRleCBhNjJmNWNhLi4zZTRmMTkyIDEwMDY0NAotLS0gYS93aG9pcy93aG9pcy5jCisr KyBiL3dob2lzL3dob2lzLmMKQEAgLTQxLDcgKzQxLDcgQEAKICNkZWZpbmUgb2JzdGFja19jaHVu a19mcmVlIGZyZWUKICNpbmNsdWRlIDxvYnN0YWNrLmg+CiAjaW5jbHVkZSA8ZXJyb3IuaD4KLSNp bmNsdWRlIDx1bnVzZWQtcGFyYW1ldGVyLmg+CisjaW5jbHVkZSA8YXR0cmlidXRlLmg+CiAjaW5j bHVkZSA8bGliaW5ldHV0aWxzLmg+CiAKIC8qIEFwcGxpY2F0aW9uLXNwZWNpZmljICovCkBAIC0x MDMsNyArMTAzLDcgQEAgc3RhdGljIHN0cnVjdCBhcmdwX29wdGlvbiByaXBlX2FyZ3Bfb3B0aW9u c1tdID0gewogCiBzdGF0aWMgZXJyb3JfdAogcmlwZV9hcmdwX3BhcnNlciAoaW50IGtleSwgY2hh ciAqYXJnLAotCQkgIHN0cnVjdCBhcmdwX3N0YXRlICpzdGF0ZSBfR0xfVU5VU0VEX1BBUkFNRVRF UikKKwkJICBzdHJ1Y3QgYXJncF9zdGF0ZSAqc3RhdGUgTUFZQkVfVU5VU0VEKQogewogICBpZiAo a2V5ID4gMCAmJiAodW5zaWduZWQpIGtleSA8IDEyOCkKICAgICB7CkBAIC0xNDIsNyArMTQyLDcg QEAgc3RhdGljIHN0cnVjdCBhcmdwX29wdGlvbiBnd2hvaXNfYXJncF9vcHRpb25zW10gPSB7CiAK IHN0YXRpYyBlcnJvcl90CiBnd2hvaXNfYXJncF9wYXJzZXIgKGludCBrZXksIGNoYXIgKmFyZywK LQkJICAgIHN0cnVjdCBhcmdwX3N0YXRlICpzdGF0ZSBfR0xfVU5VU0VEX1BBUkFNRVRFUikKKwkJ ICAgIHN0cnVjdCBhcmdwX3N0YXRlICpzdGF0ZSBNQVlCRV9VTlVTRUQpCiB7CiAgIGNoYXIgKnAs ICpxOwogCgpodHRwOi8vZ2l0LnNhdmFubmFoLmdudS5vcmcvY2dpdC9pbmV0dXRpbHMuZ2l0L2Nv bW1pdC8/aWQ9MGU0ODMyZTczYTkzZWNkM2YzMzY1YjU0MDI0MjgzOWFjOTkzNDNkYwoKCmNvbW1p dCAwZTQ4MzJlNzNhOTNlY2QzZjMzNjViNTQwMjQyODM5YWM5OTM0M2RjCkF1dGhvcjogU2ltb24g Sm9zZWZzc29uIDxzaW1vbkBqb3NlZnNzb24ub3JnPgpEYXRlOiAgIFdlZCBTZXAgMSAyMjowOToy MiAyMDIxICswMjAwCgogICAgbWFpbnQ6IERvbid0IGNjIHJlbGVhc2UgYW5ub3VuY2VtZW50IHRv IHRyYW5zbGF0b3JzLgogICAgCiAgICAqIG1haW50Lm1rICh0cmFuc2xhdGlvbl9wcm9qZWN0Xyk6 IFNldCB0byBlbXB0eS4KCmRpZmYgLS1naXQgYS9jZmcubWsgYi9jZmcubWsKaW5kZXggYTBlMjM0 ZS4uNjJlNDdlOCAxMDA2NDQKLS0tIGEvY2ZnLm1rCisrKyBiL2NmZy5tawpAQCAtMjMsNiArMjMs OCBAQCBib290c3RyYXAtdG9vbHMgPSBnbnVsaWIsYXV0b2NvbmYsYXV0b21ha2UsYmlzb24sbTQs bWFrZWluZm8saGVscDJtYW4sbWFrZSxnemlwLAogCiBvbGRfTkVXU19oYXNoID0gOWU1ODI5MGEy OTIwNDRiZDZkZTYzNGY1MmY2ZWQ5NDAKIAordHJhbnNsYXRpb25fcHJvamVjdF8gPQorCiBfbWFr ZWZpbGVfYXRfYXRfY2hlY2tfZXhjZXB0aW9ucyA9ICcgJiYgIS9QQVRIREVGU19NQUtFLycKIAog bG9jYWwtY2hlY2tzLXRvLXNraXAgPSBcCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKU3VtbWFyeSBvZiBjaGFu Z2VzOgogYm9vdHN0cmFwLmNvbmYgICAgICAgICAgICB8ICAyICstCiBjZmcubWsgICAgICAgICAg ICAgICAgICAgIHwgIDIgKysKIGNvbmZpZ3VyZS5hYyAgICAgICAgICAgICAgfCAgMyAtLS0KIGZ0 cC9jbWRzLmMgICAgICAgICAgICAgICAgfCA2NiArKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQogZnRwL2Z0cC5jICAgICAgICAgICAgICAgICB8IDE0ICsrKysr LS0tLS0KIGZ0cC9tYWluLmMgICAgICAgICAgICAgICAgfCAgOCArKystLS0KIGZ0cGQvZnRwZC5j ICAgICAgICAgICAgICAgfCAgNiArKy0tLQogZnRwZC9wYW0uYyAgICAgICAgICAgICAgICB8ICA0 ICstLQogZnRwZC9zZXJ2ZXJfbW9kZS5jICAgICAgICB8ICA0ICstLQogaWZjb25maWcvb3B0aW9u cy5jICAgICAgICB8ICA2ICsrLS0tCiBpZmNvbmZpZy9wcmludGlmLmMgICAgICAgIHwgNDggKysr KysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQogaWZjb25maWcvc3lzdGVtL2JzZC5jICAg ICB8IDI2ICsrKysrKysrKy0tLS0tLS0tLS0KIGlmY29uZmlnL3N5c3RlbS9nZW5lcmljLmMgfCAy MCArKysrKysrLS0tLS0tLQogaWZjb25maWcvc3lzdGVtL2h1cmQuYyAgICB8IDI0ICsrKysrKysr LS0tLS0tLS0tCiBpZmNvbmZpZy9zeXN0ZW0vbGludXguYyAgIHwgMjAgKysrKysrKy0tLS0tLS0K IGlmY29uZmlnL3N5c3RlbS9zb2xhcmlzLmMgfCAgOCArKystLS0KIGxpYmluZXR1dGlscy9kYWVt b24uYyAgICAgfCAgNCArLS0KIGxpYnRlbG5ldC9hdXRoLmMgICAgICAgICAgfCAgNCArLS0KIGxp YnRlbG5ldC9lbmNyeXB0LmMgICAgICAgfCAxMCArKystLS0tCiBsaWJ0ZWxuZXQva2VyYmVyb3M1 LmMgICAgIHwgIDYgKystLS0KIGxpYnRlbG5ldC9zaGlzaGkuYyAgICAgICAgfCAgOCArKystLS0K IHBpbmcvcGluZy5jICAgICAgICAgICAgICAgfCAgNCArLS0KIHBpbmcvcGluZzYuYyAgICAgICAg ICAgICAgfCAgOCArKystLS0KIHBpbmcvcGluZ19hZGRyZXNzLmMgICAgICAgfCAgOCArKystLS0K IHBpbmcvcGluZ19jb21tb24uYyAgICAgICAgfCAgMiArLQogcGluZy9waW5nX2VjaG8uYyAgICAg ICAgICB8ICA2ICsrLS0tCiBwaW5nL3Bpbmdfcm91dGVyLmMgICAgICAgIHwgIDQgKy0tCiBwaW5n L3BpbmdfdGltZXN0YW1wLmMgICAgIHwgIDggKysrLS0tCiBzcmMvaW5ldGQuYyAgICAgICAgICAg ICAgIHwgMjIgKysrKysrKystLS0tLS0tLQogc3JjL2xvZ2dlci5jICAgICAgICAgICAgICB8ICA0 ICstLQogc3JjL3JjcC5jICAgICAgICAgICAgICAgICB8ICA2ICsrLS0tCiBzcmMvcmV4ZWNkLmMg ICAgICAgICAgICAgIHwgIDggKysrLS0tCiBzcmMvcmxvZ2luLmMgICAgICAgICAgICAgIHwgMTAg KysrLS0tLQogc3JjL3Jsb2dpbmQuYyAgICAgICAgICAgICB8ICA4ICsrKy0tLQogc3JjL3JzaC5j ICAgICAgICAgICAgICAgICB8ICA2ICsrLS0tCiBzcmMvcnNoZC5jICAgICAgICAgICAgICAgIHwg IDYgKystLS0KIHNyYy9zeXNsb2dkLmMgICAgICAgICAgICAgfCAxMiArKysrLS0tLS0KIHNyYy90 ZnRwLmMgICAgICAgICAgICAgICAgfCAxOCArKysrKystLS0tLS0tCiBzcmMvdGZ0cGQuYyAgICAg ICAgICAgICAgIHwgIDggKysrLS0tCiBzcmMvdHJhY2Vyb3V0ZS5jICAgICAgICAgIHwgIDQgKy0t CiBzcmMvdXVjcGQuYyAgICAgICAgICAgICAgIHwgIDQgKy0tCiB0YWxrL2luaXRfZGlzcC5jICAg ICAgICAgIHwgIDQgKy0tCiB0YWxrL2ludml0ZS5jICAgICAgICAgICAgIHwgIDQgKy0tCiB0YWxr L21zZ3MuYyAgICAgICAgICAgICAgIHwgIDQgKy0tCiB0YWxrZC90YWJsZS5jICAgICAgICAgICAg IHwgIDQgKy0tCiB0YWxrZC90YWxrZC5jICAgICAgICAgICAgIHwgIDYgKystLS0KIHRlbG5ldC9j b21tYW5kcy5jICAgICAgICAgfCAgNCArLS0KIHRlbG5ldC9tYWluLmMgICAgICAgICAgICAgfCAg NCArLS0KIHRlbG5ldC9zeXNfYnNkLmMgICAgICAgICAgfCAxNCArKysrKy0tLS0tCiB0ZWxuZXRk L3RlbG5ldGQuYyAgICAgICAgIHwgIDYgKystLS0KIHRlc3RzL2xvY2FsaG9zdC5jICAgICAgICAg fCAgNCArLS0KIHRlc3RzL3dhaXRkYWVtb24uYyAgICAgICAgfCAgNiArKy0tLQogd2hvaXMvd2hv aXMuYyAgICAgICAgICAgICB8ICA2ICsrLS0tCiA1MyBmaWxlcyBjaGFuZ2VkLCAyNTcgaW5zZXJ0 aW9ucygrKSwgMjU4IGRlbGV0aW9ucygtKQoKCmhvb2tzL3Bvc3QtcmVjZWl2ZQotLSAKR05VIElu ZXR1dGlscyAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkNvbW1pdC1pbmV0dXRpbHMgbWFpbGluZyBsaXN0CkNvbW1pdC1pbmV0dXRpbHNAZ251Lm9yZwpo dHRwczovL2xpc3RzLmdudS5vcmcvbWFpbG1hbi9saXN0aW5mby9jb21taXQtaW5ldHV0aWxzCg==