patch for vanilla kernel 2.6.25

Lino Sanfilippo <[email protected]> Tue, 07 Jul 2009 17:08:43 +0200
Newsgroups gmane.linux.dazuko.devel
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--------------040003060503060302000102
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit



Geschäftsführender Gesellschafter: Tjark Auerbach
Sitz der Gesellschaft: Tettnang
Handelsregister: Amtsgericht Ulm, HRB 630992
ALLGEMEINE GESCHÄFTSBEDINGUNGEN
Es gelten unsere Allgemeinen Geschäftsbedingungen
(AGB). Sie finden sie in der jeweils gültigen Fassung
im Internet unter http://www.avira.de/agb
***************************************************
--------------040003060503060302000102
Content-Type: text/plain;
 name="patch_2.6.25"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
 filename="patch_2.6.25"

ZGlmZiAteCBDVlMgLXJ1cCBkYXp1a29mcy0zLjAuMC9DSEFOR0VMT0cgZGF6dWtvZnMtMy4w
LjAtcmM0XzIuNi4yNS9DSEFOR0VMT0cKLS0tIGRhenVrb2ZzLTMuMC4wL0NIQU5HRUxPRwky
MDA5LTAyLTIyIDE3OjUxOjIyLjAwMDAwMDAwMCArMDEwMAorKysgZGF6dWtvZnMtMy4wLjAt
cmM0XzIuNi4yNS9DSEFOR0VMT0cJMjAwOC0xMi0xMiAxOToyMDozMC4wMDAwMDAwMDAgKzAx
MDAKQEAgLTIsMTEgKzIsNiBAQAogIERhenVrb0ZTIENIQU5HRUxPRwogPT09PT09PT09PT09
PT09PT09PT0KIAotMy4wLjAgKDIwMDktMDItMjIpCi0tIGFkZGVkIGRlZmluZSBmb3IgdmVy
c2lvbiBudW1iZXIgb3V0cHV0Ci0tIGFkZGVkIHBhdGNoZXMgZm9yIHZhcmlvdXMgb3RoZXIg
a2VybmVscwotCi0KIDMuMC4wLXJjNCAoMjAwOC0xMS0zMCkKIC0gZml4IGluY29ycmVjdCBk
ZW50cnkvdmZzbW50IHJlZmVyZW5jaW5nIHdoZW4gYWNjZXNzIGRlbmllZAogLSBmaXggaW1w
cm9wZXIgY2xlYW51cCBpbiBzZXZlcmFsIGVycm9yIGhhbmRsaW5nIGNvbmRpdGlvbnMKZGlm
ZiAteCBDVlMgLXJ1cCBkYXp1a29mcy0zLjAuMC9jdHJsX2Rldi5jIGRhenVrb2ZzLTMuMC4w
LXJjNF8yLjYuMjUvY3RybF9kZXYuYwotLS0gZGF6dWtvZnMtMy4wLjAvY3RybF9kZXYuYwky
MDA5LTAyLTIyIDE3OjQ1OjIwLjAwMDAwMDAwMCArMDEwMAorKysgZGF6dWtvZnMtMy4wLjAt
cmM0XzIuNi4yNS9jdHJsX2Rldi5jCTIwMDgtMTItMTIgMTk6MjA6MzAuMDAwMDAwMDAwICsw
MTAwCkBAIC0xODMsNyArMTgzLDcgQEAgaW50IGRhenVrb2ZzX2N0cmxfZGV2X2luaXQoaW50
IGRldl9tYWpvcgogCiAJLyogY3JlYXRlIGNvbnRyb2wgZGV2aWNlICovCiAJZGV2ID0gZGV2
aWNlX2NyZWF0ZShkYXp1a29mc19jbGFzcywgTlVMTCwgTUtERVYoZGV2X21ham9yLCBkZXZf
bWlub3IpLAotCQkJICAgIE5VTEwsICIlcy5jdHJsIiwgREVWSUNFX05BTUUpOworCQkJICAg
ICIlcy5jdHJsIiwgREVWSUNFX05BTUUpOwogCWlmIChJU19FUlIoZGV2KSkgewogCQllcnIg
PSBQVFJfRVJSKGRldik7CiAJCWdvdG8gZXJyb3Jfb3V0MjsKZGlmZiAteCBDVlMgLXJ1cCBk
YXp1a29mcy0zLjAuMC9kYXp1a29mc19mcy5oIGRhenVrb2ZzLTMuMC4wLXJjNF8yLjYuMjUv
ZGF6dWtvZnNfZnMuaAotLS0gZGF6dWtvZnMtMy4wLjAvZGF6dWtvZnNfZnMuaAkyMDA5LTAy
LTIyIDE3OjQzOjExLjAwMDAwMDAwMCArMDEwMAorKysgZGF6dWtvZnMtMy4wLjAtcmM0XzIu
Ni4yNS9kYXp1a29mc19mcy5oCTIwMDktMDctMDMgMTg6MDA6MzYuMDAwMDAwMDAwICswMjAw
CkBAIC0zLDcgKzMsNyBAQAogICAgQ29weXJpZ2h0IChDKSAxOTk3LTIwMDQgRXJleiBaYWRv
awogICAgQ29weXJpZ2h0IChDKSAyMDAxLTIwMDQgU3RvbnkgQnJvb2sgVW5pdmVyc2l0eQog
ICAgQ29weXJpZ2h0IChDKSAyMDA0LTIwMDcgSW50ZXJuYXRpb25hbCBCdXNpbmVzcyBNYWNo
aW5lcyBDb3JwLgotICAgQ29weXJpZ2h0IChDKSAyMDA4LTIwMDkgSm9obiBPZ25lc3MKKyAg
IENvcHlyaWdodCAoQykgMjAwOCBKb2huIE9nbmVzcwogICAgICBBdXRob3I6IEpvaG4gT2du
ZXNzIDxkYXp1a29jb2RlQG9nbmVzcy5uZXQ+CiAKICAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVl
IHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKQEAgLTI0LDggKzI0
LDYgQEAKICNpZm5kZWYgX19EQVpVS09GU19GU19ICiAjZGVmaW5lIF9fREFaVUtPRlNfRlNf
SAogCi0jZGVmaW5lIERBWlVLT0ZTX1ZFUlNJT04gIjMuMC4wIgotCiBleHRlcm4gc3RydWN0
IGttZW1fY2FjaGUgKmRhenVrb2ZzX2RlbnRyeV9pbmZvX2NhY2hlcDsKIGV4dGVybiBzdHJ1
Y3Qga21lbV9jYWNoZSAqZGF6dWtvZnNfZmlsZV9pbmZvX2NhY2hlcDsKIGV4dGVybiBzdHJ1
Y3QgZmlsZV9vcGVyYXRpb25zIGRhenVrb2ZzX21haW5fZm9wczsKZGlmZiAteCBDVlMgLXJ1
cCBkYXp1a29mcy0zLjAuMC9ldmVudC5jIGRhenVrb2ZzLTMuMC4wLXJjNF8yLjYuMjUvZXZl
bnQuYwotLS0gZGF6dWtvZnMtMy4wLjAvZXZlbnQuYwkyMDA5LTAyLTIyIDE3OjQ0OjAzLjAw
MDAwMDAwMCArMDEwMAorKysgZGF6dWtvZnMtMy4wLjAtcmM0XzIuNi4yNS9ldmVudC5jCTIw
MDktMDctMDMgMTg6NTU6MDMuMDAwMDAwMDAwICswMjAwCkBAIC0yMyw3ICsyMyw2IEBACiAj
aW5jbHVkZSA8bGludXgvZmlsZS5oPgogI2luY2x1ZGUgPGxpbnV4L2ZzLmg+CiAjaW5jbHVk
ZSA8bGludXgvbW91bnQuaD4KLSNpbmNsdWRlIDxsaW51eC9mcmVlemVyLmg+CiAKICNpbmNs
dWRlICJkZXYuaCIKICNpbmNsdWRlICJkYXp1a29mc19mcy5oIgpAQCAtMTYyLDE2ICsxNjEs
MjMgQEAgc3RhdGljIGludCBjYXB0dXJlX2dyb3VwX2NvdW50KGludCAqY2FjaAogCXJldHVy
biBlcnI7CiB9CiAKLXN0YXRpYyBpbnQgZ2V0X2dyb3VwX2NvdW50KHZvaWQpCitzdGF0aWMg
aW50IGdldF9ncm91cF9jb3VudF9pbnRlcnJ1cHRpYmxlKHZvaWQpCiB7CiAJaW50IGNhY2hl
ID0gMDsKLQlpbnQgcmV0ID0gd2FpdF9ldmVudF9mcmVlemFibGUoX19ncm91cF9jb3VudF9x
dWV1ZSwKLQkJCQkgICAgICAgY2FwdHVyZV9ncm91cF9jb3VudCgmY2FjaGUpID09IDApOwor
CWludCByZXQgPSB3YWl0X2V2ZW50X2ludGVycnVwdGlibGUoX19ncm91cF9jb3VudF9xdWV1
ZSwKKwkJCQkgICAgICAgICAgIGNhcHR1cmVfZ3JvdXBfY291bnQoJmNhY2hlKSA9PSAwKTsK
IAlpZiAocmV0ID09IDApCiAJCXJldCA9IF9fZ3JvdXBfY291bnQ7CiAJcmV0dXJuIHJldDsK
IH0KIAorc3RhdGljIGludCBnZXRfZ3JvdXBfY291bnQodm9pZCkKK3sKKwlpbnQgY2FjaGUg
PSAwOworCXdhaXRfZXZlbnQoX19ncm91cF9jb3VudF9xdWV1ZSwgY2FwdHVyZV9ncm91cF9j
b3VudCgmY2FjaGUpID09IDApOworCXJldHVybiBfX2dyb3VwX2NvdW50OworfQorCiBzdGF0
aWMgdm9pZCBwdXRfZ3JvdXBfY291bnQodm9pZCkKIHsKIAltdXRleF9sb2NrKCZncm91cF9j
b3VudF9tdXRleCk7CkBAIC0zOTksNyArNDA1LDcgQEAgaW50IGRhenVrb2ZzX2FkZF9ncm91
cChjb25zdCBjaGFyICpuYW1lLAogCWludCBhbHJlYWR5X2V4aXN0czsKIAlpbnQgYXZhaWxh
YmxlX2lkID0gMDsKIAlzdHJ1Y3QgZGF6dWtvZnNfZ3JvdXAgKmdycDsKLQlpbnQgZ3JwX2Nv
dW50ID0gZ2V0X2dyb3VwX2NvdW50KCk7CisJaW50IGdycF9jb3VudCA9IGdldF9ncm91cF9j
b3VudF9pbnRlcnJ1cHRpYmxlKCk7CiAKIAlpZiAoZ3JwX2NvdW50IDwgMCkgewogCQlyZXQg
PSBncnBfY291bnQ7CkBAIC00NDcsNyArNDUzLDcgQEAgaW50IGRhenVrb2ZzX3JlbW92ZV9n
cm91cChjb25zdCBjaGFyICpuYQogCWludCByZXQgPSAwOwogCXN0cnVjdCBkYXp1a29mc19n
cm91cCAqZ3JwOwogCXN0cnVjdCBsaXN0X2hlYWQgKnBvczsKLQlpbnQgZ3JwX2NvdW50ID0g
Z2V0X2dyb3VwX2NvdW50KCk7CisJaW50IGdycF9jb3VudCA9IGdldF9ncm91cF9jb3VudF9p
bnRlcnJ1cHRpYmxlKCk7CiAKIAlpZiAoZ3JwX2NvdW50IDwgMCkgewogCQlyZXQgPSBncnBf
Y291bnQ7CkBAIC03MDEsMTEgKzcwNywxMCBAQCBpbnQgZGF6dWtvZnNfY2hlY2tfYWNjZXNz
KHN0cnVjdCBkZW50cnkgCiB7CiAJc3RydWN0IGRhenVrb2ZzX2V2ZW50X2NvbnRhaW5lciAq
ZWNfYXJyYXlbR1JPVVBfQ09VTlRdOwogCXN0cnVjdCBkYXp1a29mc19ldmVudCAqZXZ0Owot
CWludCBncnBfY291bnQgPSBnZXRfZ3JvdXBfY291bnQoKTsKLQlpbnQgZXJyOworCWludCBn
cnBfY291bnQ7CisJaW50IGVyciA9IDA7CiAKLQlpZiAoZ3JwX2NvdW50IDwgMCkKLQkJcmV0
dXJuIGdycF9jb3VudDsKKwlncnBfY291bnQgPSBnZXRfZ3JvdXBfY291bnQoKTsKIAogCWlm
IChjaGVja19hY2Nlc3NfcHJlY2hlY2soZ3JwX2NvdW50KSkgewogCQlwdXRfZ3JvdXBfY291
bnQoKTsKQEAgLTcxMywzMiArNzE4LDI5IEBAIGludCBkYXp1a29mc19jaGVja19hY2Nlc3Mo
c3RydWN0IGRlbnRyeSAKIAl9CiAKIAkvKiBhdCB0aGlzIHBvaW50LCB0aGUgYWNjZXNzIHNo
b3VsZCBiZSBoYW5kbGVkICovCi0KIAlpZiAoYWxsb2NhdGVfZXZlbnRfYW5kX2NvbnRhaW5l
cnMoJmV2dCwgZWNfYXJyYXksIGdycF9jb3VudCkpIHsKIAkJcHV0X2dyb3VwX2NvdW50KCk7
Ci0JCWVyciA9IC1FTk9NRU07Ci0JCWdvdG8gb3V0OworCQlyZXR1cm4gLUVOT01FTTsKIAl9
Ci0KIAlldnQtPmRlbnRyeSA9IGRnZXQoZGVudHJ5KTsKIAlldnQtPm1udCA9IG1udGdldCht
bnQpOwogCWV2dC0+cGlkID0gY3VycmVudC0+cGlkOwotCiAJYXNzaWduX2V2ZW50X3RvX2dy
b3VwcyhldnQsIGVjX2FycmF5KTsKIAogCXB1dF9ncm91cF9jb3VudCgpOwogCi0JLyogd2Fp
dCB1bnRpbCBldmVudCBjb21wbGV0ZWx5IHByb2Nlc3NlZCBvciBzaWduYWwgKi8KLQllcnIg
PSB3YWl0X2V2ZW50X2ZyZWV6YWJsZShldnQtPnF1ZXVlLCBldmVudF9hc3NpZ25lZChldnQp
ID09IDApOworCS8qIHdhaXQgdW50aWwgZXZlbnQgY29tcGxldGVseSBwcm9jZXNzZWQgKi8K
Kwl3YWl0X2V2ZW50KGV2dC0+cXVldWUsIGV2ZW50X2Fzc2lnbmVkKGV2dCkgPT0gMCk7CiAK
IAlpZiAoZXZ0LT5kZW55KQogCQllcnIgPSAtRVBFUk07CiAKIAlyZWxlYXNlX2V2ZW50KGV2
dCwgMCwgMCk7Ci1vdXQ6CisJCiAJcmV0dXJuIGVycjsKIH0KIAorCiBpbnQgZGF6dWtvZnNf
Z3JvdXBfb3Blbl90cmFja2luZyh1bnNpZ25lZCBsb25nIGdyb3VwX2lkKQogewogCXN0cnVj
dCBkYXp1a29mc19ncm91cCAqZ3JwOwpAQCAtOTI4LDcgKzkzMCw4IEBAIHN0YXRpYyBpbnQg
b3Blbl9maWxlKHN0cnVjdCBkYXp1a29mc19ldmUKIAkvKiBhZGQgbXlzZWxmIHRvIGJlIGln
bm9yZWQgb24gZmlsZSBvcGVuICh0byBhdm9pZCByZWN1cnNpb24pICovCiAJbWFza19wcm9j
KCZwcm9jKTsKIAotCWVjLT5maWxlID0gZGVudHJ5X29wZW4oZGdldChldnQtPmRlbnRyeSks
IG1udGdldChldnQtPm1udCksIE9fUkRPTkxZKTsKKwllYy0+ZmlsZSA9IGRlbnRyeV9vcGVu
KGRnZXQoZXZ0LT5kZW50cnkpLCBtbnRnZXQoZXZ0LT5tbnQpLCAKKwkJCSAgICAgICBPX1JE
T05MWSB8IE9fTEFSR0VGSUxFKTsKIAlpZiAoSVNfRVJSKGVjLT5maWxlKSkgewogCQljaGVj
a19yZWN1cnNpb24oKTsgIC8qIHJlbW92ZSBteXNlbGYgZnJvbSBwcm9jX2xpc3QgKi8KIAkJ
cmV0ID0gUFRSX0VSUihlYy0+ZmlsZSk7CkBAIC0xMDA0LDkgKzEwMDcsOSBAQCBpbnQgZGF6
dWtvZnNfZ2V0X2V2ZW50KHVuc2lnbmVkIGxvbmcgZ3JvCiAJfQogCiAJd2hpbGUgKDEpIHsK
LQkJcmV0ID0gd2FpdF9ldmVudF9mcmVlemFibGUoZ3JwLT5xdWV1ZSwKLQkJCQkJICAgaXNf
ZXZlbnRfYXZhaWxhYmxlKGdycCkgfHwKLQkJCQkJICAgZ3JwLT5kZXByZWNhdGVkKTsKKwkJ
cmV0ID0gd2FpdF9ldmVudF9pbnRlcnJ1cHRpYmxlKGdycC0+cXVldWUsCisJCQkJCSAgICAg
ICBpc19ldmVudF9hdmFpbGFibGUoZ3JwKSB8fAorCQkJCQkgICAgICAgZ3JwLT5kZXByZWNh
dGVkKTsKIAkJaWYgKHJldCAhPSAwKQogCQkJYnJlYWs7CiAKZGlmZiAteCBDVlMgLXJ1cCBk
YXp1a29mcy0zLjAuMC9maWxlLmMgZGF6dWtvZnMtMy4wLjAtcmM0XzIuNi4yNS9maWxlLmMK
LS0tIGRhenVrb2ZzLTMuMC4wL2ZpbGUuYwkyMDA5LTAyLTIyIDE3OjQzOjExLjAwMDAwMDAw
MCArMDEwMAorKysgZGF6dWtvZnMtMy4wLjAtcmM0XzIuNi4yNS9maWxlLmMJMjAwOS0wNy0w
MyAxODo0ODo0OC4wMDAwMDAwMDAgKzAyMDAKQEAgLTE3NywxMCArMTc3LDExIEBAIHN0YXRp
YyBpbnQgZGF6dWtvZnNfb3BlbihzdHJ1Y3QgaW5vZGUgKmkKIAlzdHJ1Y3QgZmlsZSAqbG93
ZXJfZmlsZTsKIAlpbnQgZXJyOwogCi0JZXJyID0gZGF6dWtvZnNfY2hlY2tfYWNjZXNzKGZp
bGUtPmZfZGVudHJ5LCBmaWxlLT5mX3Zmc21udCk7Ci0JaWYgKGVycikKLQkJZ290byBlcnJv
cl9vdXQxOwotCisJaWYgKFNfSVNSRUcoaW5vZGUtPmlfbW9kZSkpIHsKKwkJZXJyID0gZGF6
dWtvZnNfY2hlY2tfYWNjZXNzKGZpbGUtPmZfZGVudHJ5LCBmaWxlLT5mX3Zmc21udCk7CisJ
CWlmIChlcnIpCisJCQlnb3RvIGVycm9yX291dDE7CisJfQogCVNFVF9GSUxFX0lORk8oZmls
ZSwga21lbV9jYWNoZV96YWxsb2MoZGF6dWtvZnNfZmlsZV9pbmZvX2NhY2hlcCwKIAkJICAg
ICAgR0ZQX0tFUk5FTCkpOwogCWlmICghR0VUX0ZJTEVfSU5GTyhmaWxlKSkgewpAQCAtMjcy
LDYgKzI3MywyMCBAQCBvdXQ6CiAJcmV0dXJuIGVycjsKIH0KIAorc3RhdGljIGludCBkYXp1
a29mc19tbWFwIChzdHJ1Y3QgZmlsZSAqZmlsZSwgc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2
bSkKK3sKKworCXN0cnVjdCBmaWxlICpsb3dlcl9maWxlID0gR0VUX0xPV0VSX0ZJTEUoZmls
ZSk7CisKKwkvKiBpZiBsb3dlciBmcyBkb2VzIG5vdCBzdXBwb3J0IG1tYXAoKSwgd2UgZG9u
dCBjYWxsIGdlbmVyaWNfZmlsZV9yZWFkb25seV9tbWFwKCksIAorCSAqIHNpbmNlIHRoaXMg
d291bGQgcmVzdWx0IGluIGNhbGxpbmcgbG93ZXIgcmVhZHBhZ2UoKSwgd2hpY2ggbWlnaHQg
bm90IGJlIAorCSAqIGRlZmluZWQgYnkgbG93ZXIgZnMgaWYgbW1hcCgpIGlzIG5vdCBzdXBw
b3J0ZWQqLworCWlmICghbG93ZXJfZmlsZS0+Zl9vcCB8fCAhbG93ZXJfZmlsZS0+Zl9vcC0+
bW1hcCkgCisJCXJldHVybiAtRU5PREVWOworCQorCisJcmV0dXJuIGdlbmVyaWNfZmlsZV9y
ZWFkb25seV9tbWFwKGZpbGUsIHZtKTsKK30KIC8qKgogICogVW51c2VkIG9wZXJhdGlvbnM6
CiAgKiAgIC0gb3duZXIKQEAgLTI5NSwxOCArMzEwLDE1IEBAIG91dDoKIHN0cnVjdCBmaWxl
X29wZXJhdGlvbnMgZGF6dWtvZnNfbWFpbl9mb3BzID0gewogCS5sbHNlZWsJCT0gZGF6dWtv
ZnNfbGxzZWVrLAogCS5yZWFkCQk9IGRhenVrb2ZzX3JlYWQsCi0JLmFpb19yZWFkCT0gZ2Vu
ZXJpY19maWxlX2Fpb19yZWFkLAogCS53cml0ZQkJPSBkYXp1a29mc193cml0ZSwKLQkuYWlv
X3dyaXRlCT0gZ2VuZXJpY19maWxlX2Fpb193cml0ZSwKIAkucmVhZGRpcgk9IGRhenVrb2Zz
X3JlYWRkaXIsCiAJLmlvY3RsCQk9IGRhenVrb2ZzX2lvY3RsLAotCS5tbWFwCQk9IGdlbmVy
aWNfZmlsZV9tbWFwLAorCS5tbWFwCQk9IGRhenVrb2ZzX21tYXAsCiAJLm9wZW4JCT0gZGF6
dWtvZnNfb3BlbiwKIAkuZmx1c2gJCT0gZGF6dWtvZnNfZmx1c2gsCiAJLnJlbGVhc2UJPSBk
YXp1a29mc19yZWxlYXNlLAogCS5mc3luYwkJPSBkYXp1a29mc19mc3luYywKIAkuZmFzeW5j
CQk9IGRhenVrb2ZzX2Zhc3luYywKLQkuc3BsaWNlX3JlYWQJPSBnZW5lcmljX2ZpbGVfc3Bs
aWNlX3JlYWQsCiB9OwogCiAvKioKQEAgLTMzNSwxMSArMzQ3LDEwIEBAIHN0cnVjdCBmaWxl
X29wZXJhdGlvbnMgZGF6dWtvZnNfbWFpbl9mb3AKIGNvbnN0IHN0cnVjdCBmaWxlX29wZXJh
dGlvbnMgZGF6dWtvZnNfZGlyX2ZvcHMgPSB7CiAJLnJlYWRkaXIJPSBkYXp1a29mc19yZWFk
ZGlyLAogCS5pb2N0bAkJPSBkYXp1a29mc19pb2N0bCwKLQkubW1hcAkJPSBnZW5lcmljX2Zp
bGVfbW1hcCwKKwkubW1hcAkJPSBkYXp1a29mc19tbWFwLAogCS5vcGVuCQk9IGRhenVrb2Zz
X29wZW4sCiAJLmZsdXNoCQk9IGRhenVrb2ZzX2ZsdXNoLAogCS5yZWxlYXNlCT0gZGF6dWtv
ZnNfcmVsZWFzZSwKIAkuZnN5bmMJCT0gZGF6dWtvZnNfZnN5bmMsCiAJLmZhc3luYwkJPSBk
YXp1a29mc19mYXN5bmMsCi0JLnNwbGljZV9yZWFkCT0gZ2VuZXJpY19maWxlX3NwbGljZV9y
ZWFkLAogfTsKZGlmZiAteCBDVlMgLXJ1cCBkYXp1a29mcy0zLjAuMC9ncm91cF9kZXYuYyBk
YXp1a29mcy0zLjAuMC1yYzRfMi42LjI1L2dyb3VwX2Rldi5jCi0tLSBkYXp1a29mcy0zLjAu
MC9ncm91cF9kZXYuYwkyMDA5LTAyLTIyIDE3OjQ1OjIwLjAwMDAwMDAwMCArMDEwMAorKysg
ZGF6dWtvZnMtMy4wLjAtcmM0XzIuNi4yNS9ncm91cF9kZXYuYwkyMDA4LTEyLTEyIDE5OjIw
OjMwLjAwMDAwMDAwMCArMDEwMApAQCAtMjEwLDcgKzIxMCw3IEBAIGludCBkYXp1a29mc19n
cm91cF9kZXZfaW5pdChpbnQgZGV2X21ham8KIAkvKiBjcmVhdGUgZ3JvdXAgZGV2aWNlcyAq
LwogCWZvciAoaSA9IDA7IGkgPCBHUk9VUF9DT1VOVDsgaSsrKSB7CiAJCWRldiA9IGRldmlj
ZV9jcmVhdGUoZGF6dWtvZnNfY2xhc3MsIE5VTEwsCi0JCQkJICAgIE1LREVWKGRldl9tYWpv
ciwgZGV2X21pbm9yX2VuZCksIE5VTEwsCisJCQkJICAgIE1LREVWKGRldl9tYWpvciwgZGV2
X21pbm9yX2VuZCksCiAJCQkJICAgICIlcy4lZCIsIERFVklDRV9OQU1FLCBpKTsKIAkJaWYg
KElTX0VSUihkZXYpKSB7CiAJCQllcnIgPSBQVFJfRVJSKGRldik7CmRpZmYgLXggQ1ZTIC1y
dXAgZGF6dWtvZnMtMy4wLjAvaWduX2Rldi5jIGRhenVrb2ZzLTMuMC4wLXJjNF8yLjYuMjUv
aWduX2Rldi5jCi0tLSBkYXp1a29mcy0zLjAuMC9pZ25fZGV2LmMJMjAwOS0wMi0yMiAxNzo0
NToyMC4wMDAwMDAwMDAgKzAxMDAKKysrIGRhenVrb2ZzLTMuMC4wLXJjNF8yLjYuMjUvaWdu
X2Rldi5jCTIwMDgtMTItMTIgMTk6MjA6MzAuMDAwMDAwMDAwICswMTAwCkBAIC0xNTksNyAr
MTU5LDcgQEAgaW50IGRhenVrb2ZzX2lnbl9kZXZfaW5pdChpbnQgZGV2X21ham9yLAogCiAJ
LyogY3JlYXRlIGlnbm9yZSBkZXZpY2UgKi8KIAlkZXYgPSBkZXZpY2VfY3JlYXRlKGRhenVr
b2ZzX2NsYXNzLCBOVUxMLCBNS0RFVihkZXZfbWFqb3IsIGRldl9taW5vciksCi0JCQkgICAg
TlVMTCwgIiVzLmlnbiIsIERFVklDRV9OQU1FKTsKKwkJCSAgICAiJXMuaWduIiwgREVWSUNF
X05BTUUpOwogCWlmIChJU19FUlIoZGV2KSkgewogCQllcnIgPSBQVFJfRVJSKGRldik7CiAJ
CWdvdG8gZXJyb3Jfb3V0MzsKZGlmZiAteCBDVlMgLXJ1cCBkYXp1a29mcy0zLjAuMC9pbm9k
ZS5jIGRhenVrb2ZzLTMuMC4wLXJjNF8yLjYuMjUvaW5vZGUuYwotLS0gZGF6dWtvZnMtMy4w
LjAvaW5vZGUuYwkyMDA5LTAyLTIyIDE3OjQ2OjAyLjAwMDAwMDAwMCArMDEwMAorKysgZGF6
dWtvZnMtMy4wLjAtcmM0XzIuNi4yNS9pbm9kZS5jCTIwMDktMDctMDMgMTg6Mzk6MjEuMDAw
MDAwMDAwICswMjAwCkBAIC00NywxNCArNDcsMjggQEAgc3RhdGljIGludCBkYXp1a29mc19p
bm9kZV90ZXN0KHN0cnVjdCBpbgogCiBzdGF0aWMgdm9pZCBkYXp1a29mc19pbml0X2lub2Rl
KHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0cnVjdCBpbm9kZSAqbG93ZXJfaW5vZGUpCiB7Ci0J
U0VUX0xPV0VSX0lOT0RFKGlub2RlLCBsb3dlcl9pbm9kZSk7Ci0JaW5vZGUtPmlfaW5vID0g
bG93ZXJfaW5vZGUtPmlfaW5vOwotCWlub2RlLT5pX3ZlcnNpb24rKzsKLQlpbm9kZS0+aV9v
cCA9ICZkYXp1a29mc19tYWluX2lvcHM7Ci0JaW5vZGUtPmlfZm9wID0gJmRhenVrb2ZzX21h
aW5fZm9wczsKLQlpbm9kZS0+aV9tYXBwaW5nLT5hX29wcyA9ICZkYXp1a29mc19hb3BzOwor
ICAgICAgICBTRVRfTE9XRVJfSU5PREUoaW5vZGUsIGxvd2VyX2lub2RlKTsKKyAgICAgICAg
aW5vZGUtPmlfaW5vID0gbG93ZXJfaW5vZGUtPmlfaW5vOworICAgICAgICBpbm9kZS0+aV92
ZXJzaW9uKys7CisKKyAgICAgICAgaWYgKFNfSVNESVIobG93ZXJfaW5vZGUtPmlfbW9kZSkp
IHsKKyAgICAgICAgICAgICAgICBpbm9kZS0+aV9vcCA9ICZkYXp1a29mc19kaXJfaW9wczsK
KyAgICAgICAgICAgICAgICBpbm9kZS0+aV9mb3AgPSAmZGF6dWtvZnNfZGlyX2ZvcHM7Cisg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgaW5vZGUtPmlfb3AgPSAmZGF6dWtv
ZnNfbWFpbl9pb3BzOworICAgICAgICAgICAgICAgIGlub2RlLT5pX2ZvcCA9ICZkYXp1a29m
c19tYWluX2ZvcHM7CisKKyAgICAgICAgICAgICAgICBpZiAoU19JU0xOSyhsb3dlcl9pbm9k
ZS0+aV9tb2RlKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGlub2RlLT5pX29wID0gJmRh
enVrb2ZzX3N5bWxpbmtfaW9wczsKKyAgICAgICAgICAgICAgICBlbHNlICBpZiAoc3BlY2lh
bF9maWxlKGxvd2VyX2lub2RlLT5pX21vZGUpKSB7CisgICAgICAgICAgICAgICAgICAgICAg
ICBpbml0X3NwZWNpYWxfaW5vZGUoaW5vZGUsIGxvd2VyX2lub2RlLT5pX21vZGUsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG93ZXJfaW5vZGUtPmlf
cmRldik7CisgICAgICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGlub2RlLT5p
X21hcHBpbmctPmFfb3BzID0gJmRhenVrb2ZzX2FvcHM7CiB9CiAKKwogc3RhdGljIGludCBk
YXp1a29mc19pbm9kZV9zZXQoc3RydWN0IGlub2RlICppbm9kZSwgdm9pZCAqbG93ZXJfaW5v
ZGUpCiB7CiAJZGF6dWtvZnNfaW5pdF9pbm9kZShpbm9kZSwgKHN0cnVjdCBpbm9kZSAqKWxv
d2VyX2lub2RlKTsKQEAgLTYyLDcyICs3NiwxMTcgQEAgc3RhdGljIGludCBkYXp1a29mc19p
bm9kZV9zZXQoc3RydWN0IGlubwogfQogCiBpbnQgZGF6dWtvZnNfaW50ZXJwb3NlKHN0cnVj
dCBkZW50cnkgKmxvd2VyX2RlbnRyeSwgc3RydWN0IGRlbnRyeSAqZGVudHJ5LAotCQkgICAg
IHN0cnVjdCBzdXBlcl9ibG9jayAqc2IsIGludCBmbGFnKQorCQkgICAgIHN0cnVjdCBzdXBl
cl9ibG9jayAqc2IsIGludCBoYXNoKQogewogCXN0cnVjdCBpbm9kZSAqaW5vZGU7Ci0Jc3Ry
dWN0IGlub2RlICpsb3dlcl9pbm9kZSA9IGlncmFiKGxvd2VyX2RlbnRyeS0+ZF9pbm9kZSk7
Ci0JaW50IGVyciA9IDA7CisJc3RydWN0IGlub2RlICpsb3dlcl9pbm9kZTsKKwlpbnQgZXJy
OwogCi0JaWYgKCFsb3dlcl9pbm9kZSkgewotCQllcnIgPSAtRVNUQUxFOwotCQlnb3RvIG91
dDsKLQl9CisJbG93ZXJfaW5vZGUgPSBpZ3JhYihsb3dlcl9kZW50cnktPmRfaW5vZGUpOwog
Ci0JaWYgKGxvd2VyX2lub2RlLT5pX3NiICE9IEdFVF9MT1dFUl9TQihzYikpIHsKLQkJaXB1
dChsb3dlcl9pbm9kZSk7Ci0JCWVyciA9IC1FWERFVjsKLQkJZ290byBvdXQ7Ci0JfQorCWlm
ICghbG93ZXJfaW5vZGUpIAorCQlyZXR1cm4gLUVTVEFMRTsKIAogCWlub2RlID0gaWdldDVf
bG9ja2VkKHNiLCAodW5zaWduZWQgbG9uZylsb3dlcl9pbm9kZSwKIAkJCSAgICAgZGF6dWtv
ZnNfaW5vZGVfdGVzdCwgZGF6dWtvZnNfaW5vZGVfc2V0LAogCQkJICAgICBsb3dlcl9pbm9k
ZSk7Ci0KIAlpZiAoIWlub2RlKSB7Ci0JCWlwdXQobG93ZXJfaW5vZGUpOwogCQllcnIgPSAt
RUFDQ0VTOwotCQlnb3RvIG91dDsKKwkJZ290byBlcnI7CiAJfQogCi0JaWYgKGlub2RlLT5p
X3N0YXRlICYgSV9ORVcpIHsKKwlpZiAoaW5vZGUtPmlfc3RhdGUgJiBJX05FVykgCiAJCXVu
bG9ja19uZXdfaW5vZGUoaW5vZGUpOwogCQkvKgogCQkgKiBUaGlzIGlzIGEgbmV3IG5vZGUg
c28gd2UgbGVhdmUgdGhlIGxvd2VyX25vZGUgImluIHVzZSIKIAkJICogYW5kIGRvIG5vdCBj
YWxsIGlwdXQoKS4KIAkJICovCi0JfSBlbHNlIHsKKwllbHNlIAogCQkvKgogCQkgKiBUaGlz
IGlzIG5vdCBhIG5ldyBub2RlIHNvIHdlIGRlY3JlbWVudCB0aGUgdXNhZ2UgY291bnQuCiAJ
CSAqLwogCQlpcHV0KGxvd2VyX2lub2RlKTsKLQl9CiAKLQlpZiAoU19JU0xOSyhsb3dlcl9p
bm9kZS0+aV9tb2RlKSkKLQkJaW5vZGUtPmlfb3AgPSAmZGF6dWtvZnNfc3ltbGlua19pb3Bz
OwotCWVsc2UgaWYgKFNfSVNESVIobG93ZXJfaW5vZGUtPmlfbW9kZSkpCi0JCWlub2RlLT5p
X29wID0gJmRhenVrb2ZzX2Rpcl9pb3BzOwotCi0JaWYgKFNfSVNESVIobG93ZXJfaW5vZGUt
PmlfbW9kZSkpCi0JCWlub2RlLT5pX2ZvcCA9ICZkYXp1a29mc19kaXJfZm9wczsKLQotCWlm
IChzcGVjaWFsX2ZpbGUobG93ZXJfaW5vZGUtPmlfbW9kZSkpIHsKLQkJaW5pdF9zcGVjaWFs
X2lub2RlKGlub2RlLCBsb3dlcl9pbm9kZS0+aV9tb2RlLAotCQkJCSAgIGxvd2VyX2lub2Rl
LT5pX3JkZXYpOwotCX0KLQotCWRlbnRyeS0+ZF9vcCA9ICZkYXp1a29mc19kb3BzOwogCi0J
aWYgKGZsYWcpCisJaWYgKGhhc2gpCiAJCWRfYWRkKGRlbnRyeSwgaW5vZGUpOwogCWVsc2UK
IAkJZF9pbnN0YW50aWF0ZShkZW50cnksIGlub2RlKTsKIAogCWZzc3RhY2tfY29weV9hdHRy
X2FsbChpbm9kZSwgbG93ZXJfaW5vZGUsIE5VTEwpOwogCWZzc3RhY2tfY29weV9pbm9kZV9z
aXplKGlub2RlLCBsb3dlcl9pbm9kZSk7Ci1vdXQ6CisKKwlyZXR1cm4gMDsKK2VycjoKKwlp
cHV0KGxvd2VyX2lub2RlKTsKIAlyZXR1cm4gZXJyOwogfQogCisvKiBjcmVhdGVzIGEgbmV3
IGxvd2VyIGRlbnRyeSAqLworc3RhdGljIHN0cnVjdCBkZW50cnkgKmRhenVrb2ZzX25ld19s
b3dlcl9kZW50cnkoc3RydWN0IHFzdHIgKm5hbWUsCisJCQkJCQlzdHJ1Y3QgZGVudHJ5ICps
b3dlcl9iYXNlLCAKKwkJCQkJCXN0cnVjdCBuYW1laWRhdGEgKm5kKQoreworCXN0cnVjdCBk
ZW50cnkgKm5ld19kZW50cnk7CisJc3RydWN0IGRlbnRyeSAqdG1wOworCXN0cnVjdCBpbm9k
ZSAqbG93ZXJfaW5vZGU7CisKKwlsb3dlcl9pbm9kZSA9IGxvd2VyX2Jhc2UtPmRfaW5vZGU7
CisJLyogWFhYOiBpcyB0aGlzIGNoZWNrIHN0aWxsIG5lY2Vzc2FyeT8gKHNlZSBfX2xvb2t1
cF9oYXNoKCkpCisJICAgVGhpcyBpcyAoaG9wZWx5KSBwcm90ZWN0ZWQgYnkgbG9ja2VkIHVw
cGVyIGlub2RlICovCisJaWYgKElTX0RFQURESVIobG93ZXJfaW5vZGUpKSB7CisJCW5ld19k
ZW50cnkgPSBFUlJfUFRSKC1FTk9FTlQpOworCQlnb3RvIG91dDsKKwl9CisJdG1wID0gZF9h
bGxvYyhsb3dlcl9iYXNlLCBuYW1lKTsKKwlpZiAoIXRtcCkgeworCQluZXdfZGVudHJ5ID0g
RVJSX1BUUigtRU5PTUVNKTsKKwkJZ290byBvdXQ7CisJfQorCW5ld19kZW50cnkgPSBsb3dl
cl9pbm9kZS0+aV9vcC0+bG9va3VwKGxvd2VyX2lub2RlLCB0bXAsIG5kKTsKKwkvKiBsb29r
dXAoKSBzZWVtaW5nbHkgaXMgYWxsb3dlZCB0byByZXR1cm4gaXRzIG93biBkZW50cnkgKHdo
aWNoIAorCSAqIG1heSBpbmRlZWQgYmUgYSBkZW50cnkgb3Igb25seSBhbiBlcnJvcikuIElm
IHNvCisJICogd2UgdXNlIGl0IGFuZCBkaXNjYXJkIG91cnMuIE90aGVyd2lzZSB3ZSB1c2Ug
b3VycyAqLyAKKwlpZiAoIW5ld19kZW50cnkpIAorCQluZXdfZGVudHJ5ID0gdG1wOworCWVs
c2UgCisJCWRwdXQodG1wKTsKKwkJCitvdXQ6CQkKKwlyZXR1cm4gbmV3X2RlbnRyeTsKK30K
KworCisvKiBnZXQgbG93ZXIgZGVudHJ5IGZvciBnaXZlbiBuYW1lICovCitzdGF0aWMgc3Ry
dWN0IGRlbnRyeSAqZGF6dWtvZnNfbG9va3VwX29uZV9sb3dlcihzdHJ1Y3QgcXN0ciAqbmFt
ZSwgCisJCQkJCQlzdHJ1Y3QgZGVudHJ5ICpsb3dlcl9iYXNlLAorCQkJCQkJc3RydWN0IHZm
c21vdW50ICpsb3dlcl9tbnQpCit7CisJc3RydWN0IGRlbnRyeSAqcmVzdWx0OworCXN0cnVj
dCBuYW1laWRhdGEgbmQ7CisJaW50IGVycjsKKworCWVyciA9IHZmc19wYXRoX2xvb2t1cChs
b3dlcl9iYXNlLCBsb3dlcl9tbnQsIG5hbWUtPm5hbWUsIDAsICZuZCk7CisKKwlpZiAoIWVy
cikgeworCQkvKiBpbm9kZSBhbHJlYWR5IGV4aXN0cyBvbiBkaXNrICovCisJCXJlc3VsdCA9
IG5kLnBhdGguZGVudHJ5OworCQkvKiB3ZSBkb250IG5lZWQgdGhlIG1vdW50ICovCisJCW1u
dHB1dChuZC5wYXRoLm1udCk7CisJCWdvdG8gb3V0OworCX0KKwlpZiAoZXJyICE9IC1FTk9F
TlQpIHsgLyogdGhpcyBpcyBhIFJFQUwgZXJyb3IgKi8JCisJCXJlc3VsdCA9IEVSUl9QVFIo
ZXJyKTsKKwkJZ290byBvdXQ7CisJfQkKKwkvKiBjcmVhdGUgYSBuZXcgKGxvd2VyKSBkZW50
cnkgKi8KKwlyZXN1bHQgPSBkYXp1a29mc19uZXdfbG93ZXJfZGVudHJ5KG5hbWUsIGxvd2Vy
X2Jhc2UsICZuZCk7CitvdXQ6CisJcmV0dXJuIHJlc3VsdDsKKworfQorCisKIC8qKgogICog
RGVzY3JpcHRpb246IENhbGxlZCB3aGVuIHRoZSBWRlMgbmVlZHMgdG8gbG9vayB1cCBhbiBp
bm9kZSBpbiBhIHBhcmVudAogICogZGlyZWN0b3J5LiBUaGUgbmFtZSB0byBsb29rIGZvciBp
cyBmb3VuZCBpbiB0aGUgZGVudHJ5LiBUaGlzIG1ldGhvZApAQCAtMTQ4LDYyICsyMDcsNDgg
QEAgc3RhdGljIHN0cnVjdCBkZW50cnkgKmRhenVrb2ZzX2xvb2t1cChzdAogCXN0cnVjdCBk
ZW50cnkgKmxvd2VyX2RlbnRyeTsKIAlzdHJ1Y3QgZGVudHJ5ICpsb3dlcl9kZW50cnlfcGFy
ZW50OwogCXN0cnVjdCB2ZnNtb3VudCAqbG93ZXJfbW50OwotCWludCBlcnIgPSAwOwotCi0J
aWYgKChkZW50cnktPmRfbmFtZS5sZW4gPT0gMSAmJiAhc3RyY21wKGRlbnRyeS0+ZF9uYW1l
Lm5hbWUsICIuIikpCi0JICAgIHx8IChkZW50cnktPmRfbmFtZS5sZW4gPT0gMiAmJgotCQkh
c3RyY21wKGRlbnRyeS0+ZF9uYW1lLm5hbWUsICIuLiIpKSkgewotCQlkX2Ryb3AoZGVudHJ5
KTsKLQkJZ290byBvdXQ7Ci0JfQotCi0JZGVudHJ5LT5kX29wID0gJmRhenVrb2ZzX2RvcHM7
CisJaW50IGVycjsKIAogCWxvd2VyX2RlbnRyeV9wYXJlbnQgPSBHRVRfTE9XRVJfREVOVFJZ
KGRlbnRyeS0+ZF9wYXJlbnQpOwotCWxvd2VyX2RlbnRyeSA9IGxvb2t1cF9vbmVfbGVuKGRl
bnRyeS0+ZF9uYW1lLm5hbWUsIGxvd2VyX2RlbnRyeV9wYXJlbnQsCi0JCQkJICAgICAgZGVu
dHJ5LT5kX25hbWUubGVuKTsKKwkvKiBzaG91bGQgYmUgcmVsZWFzZWQgaW4gZF9yZWxlYXNl
KCkgKi8KKwlsb3dlcl9tbnQgPSBtbnRnZXQoR0VUX0xPV0VSX01OVChkZW50cnktPmRfcGFy
ZW50KSk7CiAKKwlsb3dlcl9kZW50cnkgPSBkYXp1a29mc19sb29rdXBfb25lX2xvd2VyKCZk
ZW50cnktPmRfbmFtZSwgCisJCQkJCQkgbG93ZXJfZGVudHJ5X3BhcmVudCwgCisJCQkJCQkg
bG93ZXJfbW50KTsgCiAJaWYgKElTX0VSUihsb3dlcl9kZW50cnkpKSB7Ci0JCWVyciA9IFBU
Ul9FUlIobG93ZXJfZGVudHJ5KTsKLQkJZF9kcm9wKGRlbnRyeSk7Ci0JCWdvdG8gb3V0Owor
CQltbnRwdXQobG93ZXJfbW50KTsKKwkJcmV0dXJuIGxvd2VyX2RlbnRyeTsKIAl9Ci0KIAlC
VUdfT04oIWF0b21pY19yZWFkKCZsb3dlcl9kZW50cnktPmRfY291bnQpKTsKIAorCWRlbnRy
eS0+ZF9vcCA9ICZkYXp1a29mc19kb3BzOwogCVNFVF9ERU5UUllfSU5GTyhkZW50cnksIGtt
ZW1fY2FjaGVfemFsbG9jKGRhenVrb2ZzX2RlbnRyeV9pbmZvX2NhY2hlcCwKIAkJCUdGUF9L
RVJORUwpKTsKIAogCWlmICghR0VUX0RFTlRSWV9JTkZPKGRlbnRyeSkpIHsKLQkJZXJyID0g
LUVOT01FTTsKLQkJZ290byBvdXRfZHB1dDsKKwkJbW50cHV0KGxvd2VyX21udCk7CisJCWRw
dXQobG93ZXJfZGVudHJ5KTsKKwkJcmV0dXJuIEVSUl9QVFIoLUVOT01FTSk7CiAJfQotCi0J
bG93ZXJfbW50ID0gbW50Z2V0KEdFVF9MT1dFUl9NTlQoZGVudHJ5LT5kX3BhcmVudCkpOwot
Ci0JZnNzdGFja19jb3B5X2F0dHJfYXRpbWUoZGlyLCBsb3dlcl9kZW50cnlfcGFyZW50LT5k
X2lub2RlKTsKLQogCVNFVF9MT1dFUl9ERU5UUlkoZGVudHJ5LCBsb3dlcl9kZW50cnksIGxv
d2VyX21udCk7Ci0KKwkvKiBmcm9tIG5vdyBsb3dlciBkZW50cnkgYW5kIGxvd2VyIG1vdW50
IGFyZSByZWxlYXNlZCBpbiAKKwkgIGRfcmVsZWFzZSBvZiB1cHBlciBkZW50cnkgKi8KKwlm
c3N0YWNrX2NvcHlfYXR0cl9hdGltZShkaXIsIGxvd2VyX2RlbnRyeV9wYXJlbnQtPmRfaW5v
ZGUpOwogCWlmICghbG93ZXJfZGVudHJ5LT5kX2lub2RlKSB7CiAJCS8qCiAJCSAqIFdlIHdh
bnQgdG8gYWRkIGJlY2F1c2Ugd2UgY291bGQgbm90IGZpbmQgaW4gbG93ZXIuCiAJCSAqLwog
CQlkX2FkZChkZW50cnksIE5VTEwpOwotCQlnb3RvIG91dDsKKwkJZ290byBvazsKIAl9CiAK
IAllcnIgPSBkYXp1a29mc19pbnRlcnBvc2UobG93ZXJfZGVudHJ5LCBkZW50cnksIGRpci0+
aV9zYiwgMSk7Ci0JaWYgKGVycikKLQkJZ290byBvdXRfZHB1dDsKLQlnb3RvIG91dDsKLQot
b3V0X2RwdXQ6Ci0JZHB1dChsb3dlcl9kZW50cnkpOwotCWRfZHJvcChkZW50cnkpOworCWlm
IChlcnIpIAorCQlyZXR1cm4gRVJSX1BUUihlcnIpOwogCi1vdXQ6Ci0JcmV0dXJuIEVSUl9Q
VFIoZXJyKTsKK29rOgorCXJldHVybiBOVUxMOyAvKiB0ZWxsIGNhbGxlciB0byB1c2UgaXRz
IG93biwgcGFzc2VkIGRlbnRyeSwgbm90IG91cnMgKi8KIH0KIAogLyoqCkBAIC0zNDAsNyAr
Mzg1LDggQEAgc3RhdGljIGludCBkYXp1a29mc19zeW1saW5rKHN0cnVjdCBpbm9kZQogCW11
dGV4X2xvY2tfbmVzdGVkKCYobG93ZXJfZGVudHJ5X3BhcmVudF9pbm9kZS0+aV9tdXRleCks
CiAJCQkgIElfTVVURVhfUEFSRU5UKTsKIAotCWVyciA9IHZmc19zeW1saW5rKGxvd2VyX2Rl
bnRyeV9wYXJlbnRfaW5vZGUsIGxvd2VyX2RlbnRyeSwgc3ltbmFtZSk7CisJZXJyID0gdmZz
X3N5bWxpbmsobG93ZXJfZGVudHJ5X3BhcmVudF9pbm9kZSwgbG93ZXJfZGVudHJ5LCBzeW1u
YW1lLAorCQkJICBTX0lBTExVR08pOwogCWlmIChlcnIpCiAJCWdvdG8gb3V0OwogCkBAIC00
NTIsOSArNDk4LDM3IEBAIHN0YXRpYyB2b2lkIGRhenVrb2ZzX3B1dF9saW5rKHN0cnVjdCBk
ZW4KICAqIERlc2NyaXB0aW9uOiBDYWxsZWQgYnkgdGhlIFZGUyB0byBjaGVjayBmb3IgYWNj
ZXNzIHJpZ2h0cyBvbiBhCiAgKiBQT1NJWC1saWtlIGZpbGVzeXN0ZW0uCiAgKi8KLXN0YXRp
YyBpbnQgZGF6dWtvZnNfcGVybWlzc2lvbihzdHJ1Y3QgaW5vZGUgKmlub2RlLCBpbnQgbWFz
aykKK3N0YXRpYyBpbnQgZGF6dWtvZnNfcGVybWlzc2lvbihzdHJ1Y3QgaW5vZGUgKmlub2Rl
LCBpbnQgbWFzaywKKwkJCSAgICAgICBzdHJ1Y3QgbmFtZWlkYXRhICpuZCkKIHsKLQlyZXR1
cm4gaW5vZGVfcGVybWlzc2lvbihHRVRfTE9XRVJfSU5PREUoaW5vZGUpLCBtYXNrKTsKKwlz
dHJ1Y3QgdmZzbW91bnQgKmxvd2VyX21udCA9IE5VTEw7CisJc3RydWN0IGRlbnRyeSAqbG93
ZXJfZGVudHJ5ID0gTlVMTDsKKwlzdHJ1Y3QgdmZzbW91bnQgKnZmc21udF9zYXZlID0gTlVM
TDsKKwlzdHJ1Y3QgZGVudHJ5ICpkZW50cnlfc2F2ZSA9IE5VTEw7CisJaW50IGVycjsKKwor
CWlmIChuZCkgeworCQlsb3dlcl9tbnQgPSBHRVRfTE9XRVJfTU5UKG5kLT5wYXRoLmRlbnRy
eSk7CisJCWxvd2VyX2RlbnRyeSA9IEdFVF9MT1dFUl9ERU5UUlkobmQtPnBhdGguZGVudHJ5
KTsKKworCQl2ZnNtbnRfc2F2ZSA9IG5kLT5wYXRoLm1udDsKKwkJZGVudHJ5X3NhdmUgPSBu
ZC0+cGF0aC5kZW50cnk7CisKKwkJbmQtPnBhdGgubW50ID0gbW50Z2V0KGxvd2VyX21udCk7
CisJCW5kLT5wYXRoLmRlbnRyeSA9IGRnZXQobG93ZXJfZGVudHJ5KTsKKwl9CisKKwllcnIg
PSBwZXJtaXNzaW9uKEdFVF9MT1dFUl9JTk9ERShpbm9kZSksIG1hc2ssIG5kKTsKKworCWlm
IChuZCkgeworCQltbnRwdXQobG93ZXJfbW50KTsKKwkJZHB1dChsb3dlcl9kZW50cnkpOwor
CisJCW5kLT5wYXRoLm1udCA9IHZmc21udF9zYXZlOworCQluZC0+cGF0aC5kZW50cnkgPSBk
ZW50cnlfc2F2ZTsKKwl9CisKKyAgICAgICAgcmV0dXJuIGVycjsKIH0KIAogLyoqCkBAIC00
NjgsMTQgKzU0MiwyNyBAQCBzdGF0aWMgaW50IGRhenVrb2ZzX3NldGF0dHIoc3RydWN0IGRl
bnRyCiAJc3RydWN0IGlub2RlICpsb3dlcl9pbm9kZSA9IEdFVF9MT1dFUl9JTk9ERShpbm9k
ZSk7CiAJaW50IGVycjsKIAotCWVyciA9IG5vdGlmeV9jaGFuZ2UobG93ZXJfZGVudHJ5LCBp
YSk7CiAKLQlmc3N0YWNrX2NvcHlfYXR0cl9hbGwoaW5vZGUsIGxvd2VyX2lub2RlLCBOVUxM
KTsKLQlmc3N0YWNrX2NvcHlfaW5vZGVfc2l6ZShpbm9kZSwgbG93ZXJfaW5vZGUpOworCWlm
ICghbG93ZXJfaW5vZGUtPmlfb3AgfHwgIWxvd2VyX2lub2RlLT5pX29wLT5zZXRhdHRyKSAK
KwkJLyogWFhYOiBhdCB0aGlzIHBvaW50IGl0IGlzIHRvbyBsYXRlIHRvIGhhbmRsZSBpbm9k
ZXMgcHJvcGVybHkgdGhhdCBkbyBOT1QKKwkJc3BlY2lmeSBzZXRhdHRyKCkuIFZGUyB3b3Vs
ZCBub3JtYWxseSBjYWxsIGlub2RlX3NldGF0dHIoKSBpbiAKKwkJdGhpcyBjYXNlLiBTbyB0
byBmb3JjZSB0aGlzIHdlIGp1bXAgYmFjayB0byBub3RpZnlfY2hhbmdlIHdoaWNoIHdpbGwK
KwkJaGFuZGxlIHRoaXMgZm9yIHVzLiBCdXQgdGhpcyBpcyBkYW5nZXJvdXM6CisJCVRoZSBh
dHRyaWJ1dGVzIG1pZ2h0IGJlIG1vZGlmaWVkIGJ5IG5vdGlmeV9jaGFuZ2UoKSBpbiBhIHdh
eQorCQl0aGF0IHJlc3VsdHMgaW4gaW52YWxpZCBhdHRyaWJ1dGVzLiBUaGlzIHNlZW1zIHRv
IGJlIHRoZSBjYXNlCisJCWlmIHRoZSBpbm9kZSBmb3Igd2hpY2ggdGhpcyBmdW5jdGlvbiBp
cyBjYWxsZWQgaGFzIHRoZSBzZXR1aWQKKwkJb3Igc2V0Z2lkIGJpdCBzZXQgKi8gCisJCWVy
ciA9IG5vdGlmeV9jaGFuZ2UobG93ZXJfZGVudHJ5LCBpYSk7CisJZWxzZSAKKwkJZXJyID0g
bG93ZXJfaW5vZGUtPmlfb3AtPnNldGF0dHIobG93ZXJfZGVudHJ5LCBpYSk7CisJCisJaWYg
KCFlcnIpIHsKKwkJZnNzdGFja19jb3B5X2F0dHJfYWxsKGlub2RlLCBsb3dlcl9pbm9kZSwg
TlVMTCk7CisJCWZzc3RhY2tfY29weV9pbm9kZV9zaXplKGlub2RlLCBsb3dlcl9pbm9kZSk7
CisJfSAKIAogCXJldHVybiBlcnI7CiB9Ci0KIC8qKgogICogRGVzY3JpcHRpb246IENhbGxl
ZCBieSB0aGUgVkZTIHRvIHNldCBhbiBleHRlbmRlZCBhdHRyaWJ1dGUgZm9yIGEgZmlsZS4K
ICAqIEV4dGVuZGVkIGF0dHJpYnV0ZSBpcyBhIG5hbWU6dmFsdWUgcGFpciBhc3NvY2lhdGVk
IHdpdGggYW4gaW5vZGUuIFRoaXMKQEAgLTQ5Niw3ICs1ODMsNyBAQCBzdGF0aWMgaW50IGRh
enVrb2ZzX3NldHhhdHRyKHN0cnVjdCBkZW50CiAKIAlpZiAoIWxvd2VyX2RlbnRyeV9pbm9k
ZS0+aV9vcCB8fAogCSAgICAhbG93ZXJfZGVudHJ5X2lub2RlLT5pX29wLT5zZXR4YXR0cikg
ewotCQllcnIgPSAtRU5PU1lTOworCQllcnIgPSAtRU9QTk9UU1VQUDsKIAkJZ290byBvdXQ7
CiAJfQogCkBAIC01MjgsNyArNjE1LDcgQEAgc3RhdGljIHNzaXplX3QgZGF6dWtvZnNfZ2V0
eGF0dHIoc3RydWN0IAogCiAJaWYgKCFsb3dlcl9kZW50cnlfaW5vZGUtPmlfb3AgfHwKIAkg
ICAgIWxvd2VyX2RlbnRyeV9pbm9kZS0+aV9vcC0+Z2V0eGF0dHIpIHsKLQkJZXJyID0gLUVO
T1NZUzsKKwkJZXJyID0gLUVPUE5PVFNVUFA7CiAJCWdvdG8gb3V0OwogCX0KIApAQCAtNTU3
LDcgKzY0NCw3IEBAIHN0YXRpYyBzc2l6ZV90IGRhenVrb2ZzX2xpc3R4YXR0cihzdHJ1Y3QK
IAogCWlmICghbG93ZXJfZGVudHJ5X2lub2RlLT5pX29wIHx8CiAJICAgICFsb3dlcl9kZW50
cnlfaW5vZGUtPmlfb3AtPmxpc3R4YXR0cikgewotCQllcnIgPSAtRU5PU1lTOworCQllcnIg
PSAtRU9QTk9UU1VQUDsKIAkJZ290byBvdXQ7CiAJfQogCkBAIC01ODQsNyArNjcxLDcgQEAg
c3RhdGljIGludCBkYXp1a29mc19yZW1vdmV4YXR0cihzdHJ1Y3QgZAogCiAJaWYgKCFsb3dl
cl9kZW50cnlfaW5vZGUtPmlfb3AgfHwKIAkgICAgIWxvd2VyX2RlbnRyeV9pbm9kZS0+aV9v
cC0+cmVtb3ZleGF0dHIpIHsKLQkJZXJyID0gLUVOT1NZUzsKKwkJZXJyID0gLUVPUE5PVFNV
UFA7CiAJCWdvdG8gb3V0OwogCX0KIApkaWZmIC14IENWUyAtcnVwIGRhenVrb2ZzLTMuMC4w
L01ha2VmaWxlIGRhenVrb2ZzLTMuMC4wLXJjNF8yLjYuMjUvTWFrZWZpbGUKLS0tIGRhenVr
b2ZzLTMuMC4wL01ha2VmaWxlCTIwMDktMDItMjIgMTc6NDY6MDIuMDAwMDAwMDAwICswMTAw
CisrKyBkYXp1a29mcy0zLjAuMC1yYzRfMi42LjI1L01ha2VmaWxlCTIwMDktMDUtMTEgMTk6
NTA6MDAuMDAwMDAwMDAwICswMjAwCkBAIC0xOSw2ICsxOSw3IEBAIGRhenVrb2ZzX2luc3Rh
bGw6IGRhenVrb2ZzX21vZHVsZXMKIAogY2xlYW46CiAJcm0gLWYgTW9kdWxlLnN5bXZlcnMK
KwlybSAtZiBtb2R1bGVzLm9yZGVyCiAJbWFrZSAtQyAkKERBWlVLT0ZTX0tFUk5FTF9TUkMp
IFNVQkRJUlM9ImBwd2RgIiBjbGVhbgogCiAuUEhPTlk6IGRhenVrb2ZzX21vZHVsZXMgZGF6
dWtvZnNfaW5zdGFsbCBjbGVhbgpkaWZmIC14IENWUyAtcnVwIGRhenVrb2ZzLTMuMC4wL1JF
QURNRSBkYXp1a29mcy0zLjAuMC1yYzRfMi42LjI1L1JFQURNRQotLS0gZGF6dWtvZnMtMy4w
LjAvUkVBRE1FCTIwMDktMDItMjIgMTc6Mzg6MjEuMDAwMDAwMDAwICswMTAwCisrKyBkYXp1
a29mcy0zLjAuMC1yYzRfMi42LjI1L1JFQURNRQkyMDA4LTEyLTEyIDE5OjIwOjMwLjAwMDAw
MDAwMCArMDEwMApAQCAtMjEsMTAgKzIxLDEwIEBAIE5PVEU6IERhenVrb0ZTIGlzIGNvbXBs
ZXRlbHkgc2VwYXJhdGUgZnIKID09PT09PT09PT09PT09PT09CiAKIEJlbG93IGFyZSBicmll
ZiBpbnN0cnVjdGlvbnMgdG8gZ2V0IERhenVrb0ZTIGNvbXBpbGVkIGFuZCBydW5uaW5nIG9u
IGEKLXN5c3RlbSB3aXRoIGEgTGludXggMi42LjI4IGtlcm5lbC4gWW91IG1heSBuZWVkIHRv
IG1hbnVhbGx5IGFkanVzdCB0aGUKK3N5c3RlbSB3aXRoIGEgTGludXggMi42LjI3IGtlcm5l
bC4gWW91IG1heSBuZWVkIHRvIG1hbnVhbGx5IGFkanVzdCB0aGUKIE1ha2VmaWxlIGlmIHlv
dSBrZXJuZWwgc291cmNlcyBhcmUgbm90IGluIHRoZSBkZWZhdWx0IGxvY2F0aW9uLgotKFBh
dGNoZXMgYXJlIHByb3ZpZGVkIGZvciB2YXJpb3VzIG90aGVyIGtlcm5lbHMuIFNlZSB0aGUg
c2VjdGlvbiBiZWxvdwotdGl0bGVkICJQQVRDSElORyIgZm9yIG1vcmUgaW5mb3JtYXRpb24u
KQorKEEgcGF0Y2ggaXMgcHJvdmlkZWQgdG8gY29udmVydCB0aGUgRGF6dWtvRlMgY29kZSB0
byBzdXBwb3J0IExpbnV4CisyLjYuMjYuKQogCiBjb21waWxlIHRoZSBrZXJuZWwgbW9kdWxl
CiAgICMgbWFrZQpAQCAtNTIsMjUgKzUyLDYgQEAgdW5tb3VudCBEYXp1a29GUwogCiAKIAot
PT09PT09PT09PQotIFBBVENISU5HCi09PT09PT09PT09Ci0KLUluIHRoZSAicGF0Y2hlcyIg
ZGlyZWN0b3J5IHRoZXJlIGFyZSBwYXRjaGVzIGF2YWlsYWJsZSB0byBtb2RpZnkgdGhlCi1E
YXp1a29GUyBjb2RlIHRvIGZpdCB2YXJpb3VzIG90aGVyIGtlcm5lbHMuIEZvciBleGFtcGxl
LCBpZiB5b3UgYXJlCi1ydW5uaW5nIG9wZW5TVVNFIDExLjEgeW91IGNhbiBwYXRjaCB0aGUg
Y29kZSB3aXRoIHRoZSBmb2xsb3dpbmcKLWNvbW1hbmQ6Ci0KLSQgcGF0Y2ggLXAxIDwgcGF0
Y2hlcy9wYXRjaC1vcGVuc3VzZS0xMS4xCi0KLVRoZXJlIHNob3VsZCBub3QgYmUgYW55IGVy
cm9ycy4gSWYgdGhlcmUgYXJlIGVycm9ycywgdGhlbiB0aGUgcGF0Y2gKLWlzIGJyb2tlbiBh
bmQgc2hvdWxkIGJlIHJlcG9ydGVkIG9uIHRoZSBkYXp1a28tZGV2ZWwgbWFpbGluZyBsaXN0
LgotCi1PbmNlIHRoZSBjb2RlIGhhcyBiZWVuIHBhdGNoZWQgeW91IGNhbiBidWlsZCB0aGUg
a2VybmVsIG1vZHVsZSBhcwotZGVzY3JpYmVkIGluIHRoZSBzZWN0aW9uICJCVUlMRCAvIElO
U1RBTEwiIGFib3ZlLgotCi0KLQogPT09PT09PT09CiAgVEVTVElORwogPT09PT09PT09CkBA
IC0xNTQsOSArMTM1LDYgQEAgYW55IHByb2JsZW1zLgogIEtOT1dOIElTU1VFUwogPT09PT09
PT09PT09PT0KIAotLSBUaGUga2VybmVsIHdpbGwgY3Jhc2ggaWYgeW91IGF0dGVtcHQgdG8g
bW91bnQgRGF6dWtvRlMgdG8gYSBmaWxlIGluc3RlYWQKLSAgb2YgYSBkaXJlY3RvcnkuIChU
aGUgdmFyaW91cyBrZXJuZWwgcGF0Y2hlcyBoYW5kbGUgdGhpcyBlcnJvci4pCi0KIC0gRGF6
dWtvRlMgZG9lcyBub3Qgc3VwcG9ydCB3cml0aW5nIHRvIG1lbW9yeSBtYXBwZWQgZmlsZXMu
IFRoaXMgc2hvdWxkIG5vdAogICBjYXVzZSB0aGUga2VybmVsIHRvIGNyYXNoLCBidXQgd2ls
bCBpbnN0ZWFkIHJlc3VsdCBpbiB0aGUgYXBwbGljYXRpb24KICAgZmFpbGluZyB0byBwZXJm
b3JtIHRoZSB3cml0ZXMgKGFsdGhvdWdoIG1tYXAoKSB3aWxsIGFwcGVhciB0byBiZQpkaWZm
IC14IENWUyAtcnVwIGRhenVrb2ZzLTMuMC4wL3N1cGVyLmMgZGF6dWtvZnMtMy4wLjAtcmM0
XzIuNi4yNS9zdXBlci5jCi0tLSBkYXp1a29mcy0zLjAuMC9zdXBlci5jCTIwMDktMDItMjIg
MTc6NDY6MDIuMDAwMDAwMDAwICswMTAwCisrKyBkYXp1a29mcy0zLjAuMC1yYzRfMi42LjI1
L3N1cGVyLmMJMjAwOS0wNy0wMyAxODoxNDoyOS4wMDAwMDAwMDAgKzAyMDAKQEAgLTM1LDYg
KzM1LDEwIEBAIHN0YXRpYyBzdHJ1Y3Qga21lbV9jYWNoZSAqZGF6dWtvZnNfc2JfaW4KIHN0
cnVjdCBrbWVtX2NhY2hlICpkYXp1a29mc19kZW50cnlfaW5mb19jYWNoZXA7CiBzdHJ1Y3Qg
a21lbV9jYWNoZSAqZGF6dWtvZnNfZmlsZV9pbmZvX2NhY2hlcDsKIAorCisjZGVmaW5lIERB
WlVLT0ZTX1ZFUlNJT04gIjMuMC4wLXJjNC1hdmlyYS1iMi42IgorCisKIHN0YXRpYyBzdHJ1
Y3QgaW5vZGUgKmRhenVrb2ZzX2FsbG9jX2lub2RlKHN0cnVjdCBzdXBlcl9ibG9jayAqc2Ip
CiB7CiAJc3RydWN0IGRhenVrb2ZzX2lub2RlX2luZm8gKmlub2RlaTsKQEAgLTE3MCw3ICsx
NzQsMTAgQEAgc3RhdGljIGludCBkYXp1a29mc19yZWFkX3N1cGVyKHN0cnVjdCBzdQogCQll
cnIgPSAtRU5PRU5UOwogCQlnb3RvIG91dF9wdXQ7CiAJfQotCisJaWYgKCFTX0lTRElSKGxv
d2VyX3Jvb3QtPmRfaW5vZGUtPmlfbW9kZSkpIHsKKwkJZXJyID0gLUVOT0VOVDsKKwkJZ290
byBvdXRfcHV0OworCX0KIAlTRVRfTE9XRVJfU0Ioc2IsIGxvd2VyX3Jvb3QtPmRfc2IpOwog
CXNiLT5zX21heGJ5dGVzID0gbG93ZXJfcm9vdC0+ZF9zYi0+c19tYXhieXRlczsKIAlTRVRf
TE9XRVJfREVOVFJZKHNiLT5zX3Jvb3QsIGxvd2VyX3Jvb3QsIGxvd2VyX21udCk7CkBAIC0y
MTMsMTUgKzIyMCwxNiBAQCBzdGF0aWMgaW50IGRhenVrb2ZzX2dldF9zYihzdHJ1Y3QgZmls
ZV9zCiAKIG91dF9hYm9ydDoKIAl1cF93cml0ZSgmc2ItPnNfdW1vdW50KTsKKwlkcHV0KHNi
LT5zX3Jvb3QpOwogCWRlYWN0aXZhdGVfc3VwZXIoc2IpOwogb3V0OgogCXJldHVybiBlcnI7
CiB9CiAKLXN0YXRpYyB2b2lkIGluaXRfb25jZSh2b2lkICpkYXRhKQorc3RhdGljIHZvaWQg
aW5pdF9vbmNlKHN0cnVjdCBrbWVtX2NhY2hlICpjYWNoZXAsIHZvaWQgKnZwdHIpCiB7CiAJ
c3RydWN0IGRhenVrb2ZzX2lub2RlX2luZm8gKmlub2RlX2luZm8gPQotCQkoc3RydWN0IGRh
enVrb2ZzX2lub2RlX2luZm8gKilkYXRhOworCQkoc3RydWN0IGRhenVrb2ZzX2lub2RlX2lu
Zm8gKil2cHRyOwogCiAJbWVtc2V0KGlub2RlX2luZm8sIDAsIHNpemVvZihzdHJ1Y3QgZGF6
dWtvZnNfaW5vZGVfaW5mbykpOwogCWlub2RlX2luaXRfb25jZSgmKGlub2RlX2luZm8tPnZm
c19pbm9kZSkpOwpAQCAtMzA1LDcgKzMxMyw3IEBAIHN0YXRpYyBzdHJ1Y3QgZmlsZV9zeXN0
ZW1fdHlwZSBkYXp1a29mc18KIAogc3RhdGljIGludCBfX2luaXQgaW5pdF9kYXp1a29mc19m
cyh2b2lkKQogewotCWludCBlcnIgPSAwOworCWludCBlcnI7CiAKIAllcnIgPSBkYXp1a29m
c19kZXZfaW5pdCgpOwogCWlmIChlcnIpCkBAIC0zMTksNyArMzI3LDcgQEAgc3RhdGljIGlu
dCBfX2luaXQgaW5pdF9kYXp1a29mc19mcyh2b2lkKQogCWlmIChlcnIpCiAJCWdvdG8gZXJy
b3Jfb3V0MzsKIAotCXByaW50ayhLRVJOX0lORk8gImRhenVrb2ZzOiBsb2FkZWQsIHZlcnNp
b249JXNcbiIsIERBWlVLT0ZTX1ZFUlNJT04pOworCXByaW50ayhLRVJOX0lORk8gImRhenVr
b2ZzOiBsb2FkZWQsIHZlcnNpb249IiBEQVpVS09GU19WRVJTSU9OICJcbiIpOwogCXJldHVy
biAwOwogCiBlcnJvcl9vdXQzOgpAQCAtMzM1LDkgKzM0Myw4IEBAIHN0YXRpYyB2b2lkIF9f
ZXhpdCBleGl0X2RhenVrb2ZzX2ZzKHZvaWQKIAl1bnJlZ2lzdGVyX2ZpbGVzeXN0ZW0oJmRh
enVrb2ZzX2ZzX3R5cGUpOwogCWRlc3Ryb3lfY2FjaGVzKCk7CiAJZGF6dWtvZnNfZGV2X2Rl
c3Ryb3koKTsKLQlwcmludGsoS0VSTl9JTkZPICJkYXp1a29mczogdW5sb2FkZWQsIHZlcnNp
b249JXNcbiIsIERBWlVLT0ZTX1ZFUlNJT04pOworCXByaW50ayhLRVJOX0lORk8gImRhenVr
b2ZzOiB1bmxvYWRlZCwgdmVyc2lvbj0iIERBWlVLT0ZTX1ZFUlNJT04gIlxuIik7CiB9Ci0K
IE1PRFVMRV9BVVRIT1IoIkpvaG4gT2duZXNzIik7CiBNT0RVTEVfREVTQ1JJUFRJT04oImFj
Y2VzcyBjb250cm9sIHN0YWNrYWJsZSBmaWxlc3lzdGVtIik7CiBNT0RVTEVfTElDRU5TRSgi
R1BMIik7Cg==
--------------040003060503060302000102
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Dazuko-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/dazuko-devel

--------------040003060503060302000102--