patch for vanilla kernel 2.6.27

Lino Sanfilippo <[email protected]> Tue, 07 Jul 2009 17:05:49 +0200
Newsgroups gmane.linux.dazuko.devel
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--------------080506090005080008080105
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
***************************************************
--------------080506090005080008080105
Content-Type: text/plain;
 name="patch_2.6.27"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
 filename="patch_2.6.27"

ZGlmZiAteCBDVlMgLXJ1cCBkYXp1a29mcy0zLjAuMC9DSEFOR0VMT0cgZGF6dWtvZnMtMy4w
LjAtcmM0XzIuNi4yNy9DSEFOR0VMT0cKLS0tIGRhenVrb2ZzLTMuMC4wL0NIQU5HRUxPRwky
MDA5LTAyLTIyIDE3OjUxOjIyLjAwMDAwMDAwMCArMDEwMAorKysgZGF6dWtvZnMtMy4wLjAt
cmM0XzIuNi4yNy9DSEFOR0VMT0cJMjAwOC0xMS0zMCAxNDoxMToyMi4wMDAwMDAwMDAgKzAx
MDAKQEAgLTIsMTEgKzIsNiBAQAogIERhenVrb0ZTIENIQU5HRUxPRwogPT09PT09PT09PT09
PT09PT09PT0KIAotMy4wLjAgKDIwMDktMDItMjIpCi0tIGFkZGVkIGRlZmluZSBmb3IgdmVy
c2lvbiBudW1iZXIgb3V0cHV0Ci0tIGFkZGVkIHBhdGNoZXMgZm9yIHZhcmlvdXMgb3RoZXIg
a2VybmVscwotCi0KIDMuMC4wLXJjNCAoMjAwOC0xMS0zMCkKIC0gZml4IGluY29ycmVjdCBk
ZW50cnkvdmZzbW50IHJlZmVyZW5jaW5nIHdoZW4gYWNjZXNzIGRlbmllZAogLSBmaXggaW1w
cm9wZXIgY2xlYW51cCBpbiBzZXZlcmFsIGVycm9yIGhhbmRsaW5nIGNvbmRpdGlvbnMKZGlm
ZiAteCBDVlMgLXJ1cCBkYXp1a29mcy0zLjAuMC9kYXp1a29mc19mcy5oIGRhenVrb2ZzLTMu
MC4wLXJjNF8yLjYuMjcvZGF6dWtvZnNfZnMuaAotLS0gZGF6dWtvZnMtMy4wLjAvZGF6dWtv
ZnNfZnMuaAkyMDA5LTAyLTIyIDE3OjQzOjExLjAwMDAwMDAwMCArMDEwMAorKysgZGF6dWtv
ZnMtMy4wLjAtcmM0XzIuNi4yNy9kYXp1a29mc19mcy5oCTIwMDktMDctMDMgMTg6MDA6MDYu
MDAwMDAwMDAwICswMjAwCkBAIC0zLDcgKzMsNyBAQAogICAgQ29weXJpZ2h0IChDKSAxOTk3
LTIwMDQgRXJleiBaYWRvawogICAgQ29weXJpZ2h0IChDKSAyMDAxLTIwMDQgU3RvbnkgQnJv
b2sgVW5pdmVyc2l0eQogICAgQ29weXJpZ2h0IChDKSAyMDA0LTIwMDcgSW50ZXJuYXRpb25h
bCBCdXNpbmVzcyBNYWNoaW5lcyBDb3JwLgotICAgQ29weXJpZ2h0IChDKSAyMDA4LTIwMDkg
Sm9obiBPZ25lc3MKKyAgIENvcHlyaWdodCAoQykgMjAwOCBKb2huIE9nbmVzcwogICAgICBB
dXRob3I6IEpvaG4gT2duZXNzIDxkYXp1a29jb2RlQG9nbmVzcy5uZXQ+CiAKICAgIFRoaXMg
cHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKQEAgLTI0LDggKzI0LDYgQEAKICNpZm5kZWYgX19EQVpVS09GU19GU19ICiAjZGVmaW5l
IF9fREFaVUtPRlNfRlNfSAogCi0jZGVmaW5lIERBWlVLT0ZTX1ZFUlNJT04gIjMuMC4wIgot
CiBleHRlcm4gc3RydWN0IGttZW1fY2FjaGUgKmRhenVrb2ZzX2RlbnRyeV9pbmZvX2NhY2hl
cDsKIGV4dGVybiBzdHJ1Y3Qga21lbV9jYWNoZSAqZGF6dWtvZnNfZmlsZV9pbmZvX2NhY2hl
cDsKIGV4dGVybiBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25zIGRhenVrb2ZzX21haW5fZm9wczsK
ZGlmZiAteCBDVlMgLXJ1cCBkYXp1a29mcy0zLjAuMC9ldmVudC5jIGRhenVrb2ZzLTMuMC4w
LXJjNF8yLjYuMjcvZXZlbnQuYwotLS0gZGF6dWtvZnMtMy4wLjAvZXZlbnQuYwkyMDA5LTAy
LTIyIDE3OjQ0OjAzLjAwMDAwMDAwMCArMDEwMAorKysgZGF6dWtvZnMtMy4wLjAtcmM0XzIu
Ni4yNy9ldmVudC5jCTIwMDktMDctMDMgMTg6NTQ6NDcuMDAwMDAwMDAwICswMjAwCkBAIC0y
Myw3ICsyMyw2IEBACiAjaW5jbHVkZSA8bGludXgvZmlsZS5oPgogI2luY2x1ZGUgPGxpbnV4
L2ZzLmg+CiAjaW5jbHVkZSA8bGludXgvbW91bnQuaD4KLSNpbmNsdWRlIDxsaW51eC9mcmVl
emVyLmg+CiAKICNpbmNsdWRlICJkZXYuaCIKICNpbmNsdWRlICJkYXp1a29mc19mcy5oIgpA
QCAtMTYyLDE2ICsxNjEsMjMgQEAgc3RhdGljIGludCBjYXB0dXJlX2dyb3VwX2NvdW50KGlu
dCAqY2FjaAogCXJldHVybiBlcnI7CiB9CiAKLXN0YXRpYyBpbnQgZ2V0X2dyb3VwX2NvdW50
KHZvaWQpCitzdGF0aWMgaW50IGdldF9ncm91cF9jb3VudF9pbnRlcnJ1cHRpYmxlKHZvaWQp
CiB7CiAJaW50IGNhY2hlID0gMDsKLQlpbnQgcmV0ID0gd2FpdF9ldmVudF9mcmVlemFibGUo
X19ncm91cF9jb3VudF9xdWV1ZSwKLQkJCQkgICAgICAgY2FwdHVyZV9ncm91cF9jb3VudCgm
Y2FjaGUpID09IDApOworCWludCByZXQgPSB3YWl0X2V2ZW50X2ludGVycnVwdGlibGUoX19n
cm91cF9jb3VudF9xdWV1ZSwKKwkJCQkgICAgICAgICAgIGNhcHR1cmVfZ3JvdXBfY291bnQo
JmNhY2hlKSA9PSAwKTsKIAlpZiAocmV0ID09IDApCiAJCXJldCA9IF9fZ3JvdXBfY291bnQ7
CiAJcmV0dXJuIHJldDsKIH0KIAorc3RhdGljIGludCBnZXRfZ3JvdXBfY291bnQodm9pZCkK
K3sKKwlpbnQgY2FjaGUgPSAwOworCXdhaXRfZXZlbnQoX19ncm91cF9jb3VudF9xdWV1ZSwg
Y2FwdHVyZV9ncm91cF9jb3VudCgmY2FjaGUpID09IDApOworCXJldHVybiBfX2dyb3VwX2Nv
dW50OworfQorCiBzdGF0aWMgdm9pZCBwdXRfZ3JvdXBfY291bnQodm9pZCkKIHsKIAltdXRl
eF9sb2NrKCZncm91cF9jb3VudF9tdXRleCk7CkBAIC0zOTksNyArNDA1LDcgQEAgaW50IGRh
enVrb2ZzX2FkZF9ncm91cChjb25zdCBjaGFyICpuYW1lLAogCWludCBhbHJlYWR5X2V4aXN0
czsKIAlpbnQgYXZhaWxhYmxlX2lkID0gMDsKIAlzdHJ1Y3QgZGF6dWtvZnNfZ3JvdXAgKmdy
cDsKLQlpbnQgZ3JwX2NvdW50ID0gZ2V0X2dyb3VwX2NvdW50KCk7CisJaW50IGdycF9jb3Vu
dCA9IGdldF9ncm91cF9jb3VudF9pbnRlcnJ1cHRpYmxlKCk7CiAKIAlpZiAoZ3JwX2NvdW50
IDwgMCkgewogCQlyZXQgPSBncnBfY291bnQ7CkBAIC00NDcsNyArNDUzLDcgQEAgaW50IGRh
enVrb2ZzX3JlbW92ZV9ncm91cChjb25zdCBjaGFyICpuYQogCWludCByZXQgPSAwOwogCXN0
cnVjdCBkYXp1a29mc19ncm91cCAqZ3JwOwogCXN0cnVjdCBsaXN0X2hlYWQgKnBvczsKLQlp
bnQgZ3JwX2NvdW50ID0gZ2V0X2dyb3VwX2NvdW50KCk7CisJaW50IGdycF9jb3VudCA9IGdl
dF9ncm91cF9jb3VudF9pbnRlcnJ1cHRpYmxlKCk7CiAKIAlpZiAoZ3JwX2NvdW50IDwgMCkg
ewogCQlyZXQgPSBncnBfY291bnQ7CkBAIC03MDEsMTEgKzcwNywxMCBAQCBpbnQgZGF6dWtv
ZnNfY2hlY2tfYWNjZXNzKHN0cnVjdCBkZW50cnkgCiB7CiAJc3RydWN0IGRhenVrb2ZzX2V2
ZW50X2NvbnRhaW5lciAqZWNfYXJyYXlbR1JPVVBfQ09VTlRdOwogCXN0cnVjdCBkYXp1a29m
c19ldmVudCAqZXZ0OwotCWludCBncnBfY291bnQgPSBnZXRfZ3JvdXBfY291bnQoKTsKLQlp
bnQgZXJyOworCWludCBncnBfY291bnQ7CisJaW50IGVyciA9IDA7CiAKLQlpZiAoZ3JwX2Nv
dW50IDwgMCkKLQkJcmV0dXJuIGdycF9jb3VudDsKKwlncnBfY291bnQgPSBnZXRfZ3JvdXBf
Y291bnQoKTsKIAogCWlmIChjaGVja19hY2Nlc3NfcHJlY2hlY2soZ3JwX2NvdW50KSkgewog
CQlwdXRfZ3JvdXBfY291bnQoKTsKQEAgLTcxMywzMiArNzE4LDI5IEBAIGludCBkYXp1a29m
c19jaGVja19hY2Nlc3Moc3RydWN0IGRlbnRyeSAKIAl9CiAKIAkvKiBhdCB0aGlzIHBvaW50
LCB0aGUgYWNjZXNzIHNob3VsZCBiZSBoYW5kbGVkICovCi0KIAlpZiAoYWxsb2NhdGVfZXZl
bnRfYW5kX2NvbnRhaW5lcnMoJmV2dCwgZWNfYXJyYXksIGdycF9jb3VudCkpIHsKIAkJcHV0
X2dyb3VwX2NvdW50KCk7Ci0JCWVyciA9IC1FTk9NRU07Ci0JCWdvdG8gb3V0OworCQlyZXR1
cm4gLUVOT01FTTsKIAl9Ci0KIAlldnQtPmRlbnRyeSA9IGRnZXQoZGVudHJ5KTsKIAlldnQt
Pm1udCA9IG1udGdldChtbnQpOwogCWV2dC0+cGlkID0gY3VycmVudC0+cGlkOwotCiAJYXNz
aWduX2V2ZW50X3RvX2dyb3VwcyhldnQsIGVjX2FycmF5KTsKIAogCXB1dF9ncm91cF9jb3Vu
dCgpOwogCi0JLyogd2FpdCB1bnRpbCBldmVudCBjb21wbGV0ZWx5IHByb2Nlc3NlZCBvciBz
aWduYWwgKi8KLQllcnIgPSB3YWl0X2V2ZW50X2ZyZWV6YWJsZShldnQtPnF1ZXVlLCBldmVu
dF9hc3NpZ25lZChldnQpID09IDApOworCS8qIHdhaXQgdW50aWwgZXZlbnQgY29tcGxldGVs
eSBwcm9jZXNzZWQgKi8KKwl3YWl0X2V2ZW50KGV2dC0+cXVldWUsIGV2ZW50X2Fzc2lnbmVk
KGV2dCkgPT0gMCk7CiAKIAlpZiAoZXZ0LT5kZW55KQogCQllcnIgPSAtRVBFUk07CiAKIAly
ZWxlYXNlX2V2ZW50KGV2dCwgMCwgMCk7Ci1vdXQ6CisJCiAJcmV0dXJuIGVycjsKIH0KIAor
CiBpbnQgZGF6dWtvZnNfZ3JvdXBfb3Blbl90cmFja2luZyh1bnNpZ25lZCBsb25nIGdyb3Vw
X2lkKQogewogCXN0cnVjdCBkYXp1a29mc19ncm91cCAqZ3JwOwpAQCAtOTI4LDcgKzkzMCw4
IEBAIHN0YXRpYyBpbnQgb3Blbl9maWxlKHN0cnVjdCBkYXp1a29mc19ldmUKIAkvKiBhZGQg
bXlzZWxmIHRvIGJlIGlnbm9yZWQgb24gZmlsZSBvcGVuICh0byBhdm9pZCByZWN1cnNpb24p
ICovCiAJbWFza19wcm9jKCZwcm9jKTsKIAotCWVjLT5maWxlID0gZGVudHJ5X29wZW4oZGdl
dChldnQtPmRlbnRyeSksIG1udGdldChldnQtPm1udCksIE9fUkRPTkxZKTsKKwllYy0+Zmls
ZSA9IGRlbnRyeV9vcGVuKGRnZXQoZXZ0LT5kZW50cnkpLCBtbnRnZXQoZXZ0LT5tbnQpLCAK
KwkJCSAgICAgICBPX1JET05MWSB8IE9fTEFSR0VGSUxFKTsKIAlpZiAoSVNfRVJSKGVjLT5m
aWxlKSkgewogCQljaGVja19yZWN1cnNpb24oKTsgIC8qIHJlbW92ZSBteXNlbGYgZnJvbSBw
cm9jX2xpc3QgKi8KIAkJcmV0ID0gUFRSX0VSUihlYy0+ZmlsZSk7CkBAIC0xMDA0LDkgKzEw
MDcsOSBAQCBpbnQgZGF6dWtvZnNfZ2V0X2V2ZW50KHVuc2lnbmVkIGxvbmcgZ3JvCiAJfQog
CiAJd2hpbGUgKDEpIHsKLQkJcmV0ID0gd2FpdF9ldmVudF9mcmVlemFibGUoZ3JwLT5xdWV1
ZSwKLQkJCQkJICAgaXNfZXZlbnRfYXZhaWxhYmxlKGdycCkgfHwKLQkJCQkJICAgZ3JwLT5k
ZXByZWNhdGVkKTsKKwkJcmV0ID0gd2FpdF9ldmVudF9pbnRlcnJ1cHRpYmxlKGdycC0+cXVl
dWUsCisJCQkJCSAgICAgICBpc19ldmVudF9hdmFpbGFibGUoZ3JwKSB8fAorCQkJCQkgICAg
ICAgZ3JwLT5kZXByZWNhdGVkKTsKIAkJaWYgKHJldCAhPSAwKQogCQkJYnJlYWs7CiAKZGlm
ZiAteCBDVlMgLXJ1cCBkYXp1a29mcy0zLjAuMC9maWxlLmMgZGF6dWtvZnMtMy4wLjAtcmM0
XzIuNi4yNy9maWxlLmMKLS0tIGRhenVrb2ZzLTMuMC4wL2ZpbGUuYwkyMDA5LTAyLTIyIDE3
OjQzOjExLjAwMDAwMDAwMCArMDEwMAorKysgZGF6dWtvZnMtMy4wLjAtcmM0XzIuNi4yNy9m
aWxlLmMJMjAwOS0wNy0wMyAxODo0ODoyMi4wMDAwMDAwMDAgKzAyMDAKQEAgLTE3NywxMCAr
MTc3LDExIEBAIHN0YXRpYyBpbnQgZGF6dWtvZnNfb3BlbihzdHJ1Y3QgaW5vZGUgKmkKIAlz
dHJ1Y3QgZmlsZSAqbG93ZXJfZmlsZTsKIAlpbnQgZXJyOwogCi0JZXJyID0gZGF6dWtvZnNf
Y2hlY2tfYWNjZXNzKGZpbGUtPmZfZGVudHJ5LCBmaWxlLT5mX3Zmc21udCk7Ci0JaWYgKGVy
cikKLQkJZ290byBlcnJvcl9vdXQxOwotCisJaWYgKFNfSVNSRUcoaW5vZGUtPmlfbW9kZSkp
IHsKKwkJZXJyID0gZGF6dWtvZnNfY2hlY2tfYWNjZXNzKGZpbGUtPmZfZGVudHJ5LCBmaWxl
LT5mX3Zmc21udCk7CisJCWlmIChlcnIpCisJCQlnb3RvIGVycm9yX291dDE7CisJfQogCVNF
VF9GSUxFX0lORk8oZmlsZSwga21lbV9jYWNoZV96YWxsb2MoZGF6dWtvZnNfZmlsZV9pbmZv
X2NhY2hlcCwKIAkJICAgICAgR0ZQX0tFUk5FTCkpOwogCWlmICghR0VUX0ZJTEVfSU5GTyhm
aWxlKSkgewpAQCAtMjcyLDYgKzI3MywyMCBAQCBvdXQ6CiAJcmV0dXJuIGVycjsKIH0KIAor
c3RhdGljIGludCBkYXp1a29mc19tbWFwIChzdHJ1Y3QgZmlsZSAqZmlsZSwgc3RydWN0IHZt
X2FyZWFfc3RydWN0ICp2bSkKK3sKKworCXN0cnVjdCBmaWxlICpsb3dlcl9maWxlID0gR0VU
X0xPV0VSX0ZJTEUoZmlsZSk7CisKKwkvKiBpZiBsb3dlciBmcyBkb2VzIG5vdCBzdXBwb3J0
IG1tYXAoKSwgd2UgZG9udCBjYWxsIGdlbmVyaWNfZmlsZV9yZWFkb25seV9tbWFwKCksIAor
CSAqIHNpbmNlIHRoaXMgd291bGQgcmVzdWx0IGluIGNhbGxpbmcgbG93ZXIgcmVhZHBhZ2Uo
KSwgd2hpY2ggbWlnaHQgbm90IGJlIAorCSAqIGRlZmluZWQgYnkgbG93ZXIgZnMgaWYgbW1h
cCgpIGlzIG5vdCBzdXBwb3J0ZWQqLworCWlmICghbG93ZXJfZmlsZS0+Zl9vcCB8fCAhbG93
ZXJfZmlsZS0+Zl9vcC0+bW1hcCkgCisJCXJldHVybiAtRU5PREVWOworCQorCisJcmV0dXJu
IGdlbmVyaWNfZmlsZV9yZWFkb25seV9tbWFwKGZpbGUsIHZtKTsKK30KIC8qKgogICogVW51
c2VkIG9wZXJhdGlvbnM6CiAgKiAgIC0gb3duZXIKQEAgLTI5NSwxOCArMzEwLDE1IEBAIG91
dDoKIHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgZGF6dWtvZnNfbWFpbl9mb3BzID0gewogCS5s
bHNlZWsJCT0gZGF6dWtvZnNfbGxzZWVrLAogCS5yZWFkCQk9IGRhenVrb2ZzX3JlYWQsCi0J
LmFpb19yZWFkCT0gZ2VuZXJpY19maWxlX2Fpb19yZWFkLAogCS53cml0ZQkJPSBkYXp1a29m
c193cml0ZSwKLQkuYWlvX3dyaXRlCT0gZ2VuZXJpY19maWxlX2Fpb193cml0ZSwKIAkucmVh
ZGRpcgk9IGRhenVrb2ZzX3JlYWRkaXIsCiAJLmlvY3RsCQk9IGRhenVrb2ZzX2lvY3RsLAot
CS5tbWFwCQk9IGdlbmVyaWNfZmlsZV9tbWFwLAorCS5tbWFwCQk9IGRhenVrb2ZzX21tYXAs
CQogCS5vcGVuCQk9IGRhenVrb2ZzX29wZW4sCiAJLmZsdXNoCQk9IGRhenVrb2ZzX2ZsdXNo
LAogCS5yZWxlYXNlCT0gZGF6dWtvZnNfcmVsZWFzZSwKIAkuZnN5bmMJCT0gZGF6dWtvZnNf
ZnN5bmMsCiAJLmZhc3luYwkJPSBkYXp1a29mc19mYXN5bmMsCi0JLnNwbGljZV9yZWFkCT0g
Z2VuZXJpY19maWxlX3NwbGljZV9yZWFkLAogfTsKIAogLyoqCkBAIC0zMzUsMTEgKzM0Nywx
MCBAQCBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25zIGRhenVrb2ZzX21haW5fZm9wCiBjb25zdCBz
dHJ1Y3QgZmlsZV9vcGVyYXRpb25zIGRhenVrb2ZzX2Rpcl9mb3BzID0gewogCS5yZWFkZGly
CT0gZGF6dWtvZnNfcmVhZGRpciwKIAkuaW9jdGwJCT0gZGF6dWtvZnNfaW9jdGwsCi0JLm1t
YXAJCT0gZ2VuZXJpY19maWxlX21tYXAsCisJLm1tYXAJCT0gZGF6dWtvZnNfbW1hcCwJCiAJ
Lm9wZW4JCT0gZGF6dWtvZnNfb3BlbiwKIAkuZmx1c2gJCT0gZGF6dWtvZnNfZmx1c2gsCiAJ
LnJlbGVhc2UJPSBkYXp1a29mc19yZWxlYXNlLAogCS5mc3luYwkJPSBkYXp1a29mc19mc3lu
YywKIAkuZmFzeW5jCQk9IGRhenVrb2ZzX2Zhc3luYywKLQkuc3BsaWNlX3JlYWQJPSBnZW5l
cmljX2ZpbGVfc3BsaWNlX3JlYWQsCiB9OwpkaWZmIC14IENWUyAtcnVwIGRhenVrb2ZzLTMu
MC4wL2lub2RlLmMgZGF6dWtvZnMtMy4wLjAtcmM0XzIuNi4yNy9pbm9kZS5jCi0tLSBkYXp1
a29mcy0zLjAuMC9pbm9kZS5jCTIwMDktMDItMjIgMTc6NDY6MDIuMDAwMDAwMDAwICswMTAw
CisrKyBkYXp1a29mcy0zLjAuMC1yYzRfMi42LjI3L2lub2RlLmMJMjAwOS0wNy0wMyAxODoz
ODo1OC4wMDAwMDAwMDAgKzAyMDAKQEAgLTQ3LDEyICs0NywyNSBAQCBzdGF0aWMgaW50IGRh
enVrb2ZzX2lub2RlX3Rlc3Qoc3RydWN0IGluCiAKIHN0YXRpYyB2b2lkIGRhenVrb2ZzX2lu
aXRfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSwgc3RydWN0IGlub2RlICpsb3dlcl9pbm9k
ZSkKIHsKLQlTRVRfTE9XRVJfSU5PREUoaW5vZGUsIGxvd2VyX2lub2RlKTsKLQlpbm9kZS0+
aV9pbm8gPSBsb3dlcl9pbm9kZS0+aV9pbm87Ci0JaW5vZGUtPmlfdmVyc2lvbisrOwotCWlu
b2RlLT5pX29wID0gJmRhenVrb2ZzX21haW5faW9wczsKLQlpbm9kZS0+aV9mb3AgPSAmZGF6
dWtvZnNfbWFpbl9mb3BzOwotCWlub2RlLT5pX21hcHBpbmctPmFfb3BzID0gJmRhenVrb2Zz
X2FvcHM7CisgICAgICAgIFNFVF9MT1dFUl9JTk9ERShpbm9kZSwgbG93ZXJfaW5vZGUpOwor
ICAgICAgICBpbm9kZS0+aV9pbm8gPSBsb3dlcl9pbm9kZS0+aV9pbm87CisgICAgICAgIGlu
b2RlLT5pX3ZlcnNpb24rKzsKKworICAgICAgICBpZiAoU19JU0RJUihsb3dlcl9pbm9kZS0+
aV9tb2RlKSkgeworICAgICAgICAgICAgICAgIGlub2RlLT5pX29wID0gJmRhenVrb2ZzX2Rp
cl9pb3BzOworICAgICAgICAgICAgICAgIGlub2RlLT5pX2ZvcCA9ICZkYXp1a29mc19kaXJf
Zm9wczsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBpbm9kZS0+aV9vcCA9
ICZkYXp1a29mc19tYWluX2lvcHM7CisgICAgICAgICAgICAgICAgaW5vZGUtPmlfZm9wID0g
JmRhenVrb2ZzX21haW5fZm9wczsKKworICAgICAgICAgICAgICAgIGlmIChTX0lTTE5LKGxv
d2VyX2lub2RlLT5pX21vZGUpKQorICAgICAgICAgICAgICAgICAgICAgICAgaW5vZGUtPmlf
b3AgPSAmZGF6dWtvZnNfc3ltbGlua19pb3BzOworICAgICAgICAgICAgICAgIGVsc2UgIGlm
IChzcGVjaWFsX2ZpbGUobG93ZXJfaW5vZGUtPmlfbW9kZSkpIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGluaXRfc3BlY2lhbF9pbm9kZShpbm9kZSwgbG93ZXJfaW5vZGUtPmlfbW9k
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb3dlcl9p
bm9kZS0+aV9yZGV2KTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAg
aW5vZGUtPmlfbWFwcGluZy0+YV9vcHMgPSAmZGF6dWtvZnNfYW9wczsKIH0KIAogc3RhdGlj
IGludCBkYXp1a29mc19pbm9kZV9zZXQoc3RydWN0IGlub2RlICppbm9kZSwgdm9pZCAqbG93
ZXJfaW5vZGUpCkBAIC02MSw3MyArNzQsMTIwIEBAIHN0YXRpYyBpbnQgZGF6dWtvZnNfaW5v
ZGVfc2V0KHN0cnVjdCBpbm8KIAlyZXR1cm4gMDsKIH0KIAorCiBpbnQgZGF6dWtvZnNfaW50
ZXJwb3NlKHN0cnVjdCBkZW50cnkgKmxvd2VyX2RlbnRyeSwgc3RydWN0IGRlbnRyeSAqZGVu
dHJ5LAotCQkgICAgIHN0cnVjdCBzdXBlcl9ibG9jayAqc2IsIGludCBmbGFnKQorCQkgICAg
IHN0cnVjdCBzdXBlcl9ibG9jayAqc2IsIGludCBoYXNoKQogewogCXN0cnVjdCBpbm9kZSAq
aW5vZGU7Ci0Jc3RydWN0IGlub2RlICpsb3dlcl9pbm9kZSA9IGlncmFiKGxvd2VyX2RlbnRy
eS0+ZF9pbm9kZSk7Ci0JaW50IGVyciA9IDA7CisJc3RydWN0IGlub2RlICpsb3dlcl9pbm9k
ZTsKKwlpbnQgZXJyOwogCi0JaWYgKCFsb3dlcl9pbm9kZSkgewotCQllcnIgPSAtRVNUQUxF
OwotCQlnb3RvIG91dDsKLQl9CisJbG93ZXJfaW5vZGUgPSBpZ3JhYihsb3dlcl9kZW50cnkt
PmRfaW5vZGUpOwogCi0JaWYgKGxvd2VyX2lub2RlLT5pX3NiICE9IEdFVF9MT1dFUl9TQihz
YikpIHsKLQkJaXB1dChsb3dlcl9pbm9kZSk7Ci0JCWVyciA9IC1FWERFVjsKLQkJZ290byBv
dXQ7Ci0JfQorCWlmICghbG93ZXJfaW5vZGUpIAorCQlyZXR1cm4gLUVTVEFMRTsKIAogCWlu
b2RlID0gaWdldDVfbG9ja2VkKHNiLCAodW5zaWduZWQgbG9uZylsb3dlcl9pbm9kZSwKIAkJ
CSAgICAgZGF6dWtvZnNfaW5vZGVfdGVzdCwgZGF6dWtvZnNfaW5vZGVfc2V0LAogCQkJICAg
ICBsb3dlcl9pbm9kZSk7Ci0KIAlpZiAoIWlub2RlKSB7Ci0JCWlwdXQobG93ZXJfaW5vZGUp
OwogCQllcnIgPSAtRUFDQ0VTOwotCQlnb3RvIG91dDsKKwkJZ290byBlcnI7CiAJfQogCi0J
aWYgKGlub2RlLT5pX3N0YXRlICYgSV9ORVcpIHsKKwlpZiAoaW5vZGUtPmlfc3RhdGUgJiBJ
X05FVykgCiAJCXVubG9ja19uZXdfaW5vZGUoaW5vZGUpOwogCQkvKgogCQkgKiBUaGlzIGlz
IGEgbmV3IG5vZGUgc28gd2UgbGVhdmUgdGhlIGxvd2VyX25vZGUgImluIHVzZSIKIAkJICog
YW5kIGRvIG5vdCBjYWxsIGlwdXQoKS4KIAkJICovCi0JfSBlbHNlIHsKKwllbHNlIAogCQkv
KgogCQkgKiBUaGlzIGlzIG5vdCBhIG5ldyBub2RlIHNvIHdlIGRlY3JlbWVudCB0aGUgdXNh
Z2UgY291bnQuCiAJCSAqLwogCQlpcHV0KGxvd2VyX2lub2RlKTsKLQl9CiAKLQlpZiAoU19J
U0xOSyhsb3dlcl9pbm9kZS0+aV9tb2RlKSkKLQkJaW5vZGUtPmlfb3AgPSAmZGF6dWtvZnNf
c3ltbGlua19pb3BzOwotCWVsc2UgaWYgKFNfSVNESVIobG93ZXJfaW5vZGUtPmlfbW9kZSkp
Ci0JCWlub2RlLT5pX29wID0gJmRhenVrb2ZzX2Rpcl9pb3BzOwotCi0JaWYgKFNfSVNESVIo
bG93ZXJfaW5vZGUtPmlfbW9kZSkpCi0JCWlub2RlLT5pX2ZvcCA9ICZkYXp1a29mc19kaXJf
Zm9wczsKLQotCWlmIChzcGVjaWFsX2ZpbGUobG93ZXJfaW5vZGUtPmlfbW9kZSkpIHsKLQkJ
aW5pdF9zcGVjaWFsX2lub2RlKGlub2RlLCBsb3dlcl9pbm9kZS0+aV9tb2RlLAotCQkJCSAg
IGxvd2VyX2lub2RlLT5pX3JkZXYpOwotCX0KLQotCWRlbnRyeS0+ZF9vcCA9ICZkYXp1a29m
c19kb3BzOwogCi0JaWYgKGZsYWcpCisJaWYgKGhhc2gpCiAJCWRfYWRkKGRlbnRyeSwgaW5v
ZGUpOwogCWVsc2UKIAkJZF9pbnN0YW50aWF0ZShkZW50cnksIGlub2RlKTsKIAogCWZzc3Rh
Y2tfY29weV9hdHRyX2FsbChpbm9kZSwgbG93ZXJfaW5vZGUsIE5VTEwpOwogCWZzc3RhY2tf
Y29weV9pbm9kZV9zaXplKGlub2RlLCBsb3dlcl9pbm9kZSk7Ci1vdXQ6CisKKwlyZXR1cm4g
MDsKK2VycjoKKwlpcHV0KGxvd2VyX2lub2RlKTsKIAlyZXR1cm4gZXJyOwogfQogCisKKy8q
IGNyZWF0ZXMgYSBuZXcgbG93ZXIgZGVudHJ5ICovCitzdGF0aWMgc3RydWN0IGRlbnRyeSAq
ZGF6dWtvZnNfbmV3X2xvd2VyX2RlbnRyeShzdHJ1Y3QgcXN0ciAqbmFtZSwKKwkJCQkJCXN0
cnVjdCBkZW50cnkgKmxvd2VyX2Jhc2UsIAorCQkJCQkJc3RydWN0IG5hbWVpZGF0YSAqbmQp
Cit7CisJc3RydWN0IGRlbnRyeSAqbmV3X2RlbnRyeTsKKwlzdHJ1Y3QgZGVudHJ5ICp0bXA7
CisJc3RydWN0IGlub2RlICpsb3dlcl9pbm9kZTsKKworCWxvd2VyX2lub2RlID0gbG93ZXJf
YmFzZS0+ZF9pbm9kZTsKKwkvKiBYWFg6IGlzIHRoaXMgY2hlY2sgc3RpbGwgbmVjZXNzYXJ5
PyAoc2VlIF9fbG9va3VwX2hhc2goKSkKKwkgICBUaGlzIGlzIChob3BlbHkpIHByb3RlY3Rl
ZCBieSBsb2NrZWQgdXBwZXIgaW5vZGUgKi8KKwlpZiAoSVNfREVBRERJUihsb3dlcl9pbm9k
ZSkpIHsKKwkJbmV3X2RlbnRyeSA9IEVSUl9QVFIoLUVOT0VOVCk7CisJCWdvdG8gb3V0Owor
CX0KKwl0bXAgPSBkX2FsbG9jKGxvd2VyX2Jhc2UsIG5hbWUpOworCWlmICghdG1wKSB7CisJ
CW5ld19kZW50cnkgPSBFUlJfUFRSKC1FTk9NRU0pOworCQlnb3RvIG91dDsKKwl9CisJbmV3
X2RlbnRyeSA9IGxvd2VyX2lub2RlLT5pX29wLT5sb29rdXAobG93ZXJfaW5vZGUsIHRtcCwg
bmQpOworCS8qIGxvb2t1cCgpIHNlZW1pbmdseSBpcyBhbGxvd2VkIHRvIHJldHVybiBpdHMg
b3duIGRlbnRyeSAod2hpY2ggCisJICogbWF5IGluZGVlZCBiZSBhIGRlbnRyeSBvciBvbmx5
IGFuIGVycm9yKS4gSWYgc28KKwkgKiB3ZSB1c2UgaXQgYW5kIGRpc2NhcmQgb3Vycy4gT3Ro
ZXJ3aXNlIHdlIHVzZSBvdXJzICovIAorCWlmICghbmV3X2RlbnRyeSkgCisJCW5ld19kZW50
cnkgPSB0bXA7CisJZWxzZSAKKwkJZHB1dCh0bXApOworCQkKK291dDoJCQorCXJldHVybiBu
ZXdfZGVudHJ5OworfQorCisKKy8qIGdldCBsb3dlciBkZW50cnkgZm9yIGdpdmVuIG5hbWUg
Ki8KK3N0YXRpYyBzdHJ1Y3QgZGVudHJ5ICpkYXp1a29mc19sb29rdXBfb25lX2xvd2VyKHN0
cnVjdCBxc3RyICpuYW1lLCAKKwkJCQkJCXN0cnVjdCBkZW50cnkgKmxvd2VyX2Jhc2UsCisJ
CQkJCQlzdHJ1Y3QgdmZzbW91bnQgKmxvd2VyX21udCkKK3sKKwlzdHJ1Y3QgZGVudHJ5ICpy
ZXN1bHQ7CisJc3RydWN0IG5hbWVpZGF0YSBuZDsKKwlpbnQgZXJyOworCisJZXJyID0gdmZz
X3BhdGhfbG9va3VwKGxvd2VyX2Jhc2UsIGxvd2VyX21udCwgbmFtZS0+bmFtZSwgMCwgJm5k
KTsKKworCWlmICghZXJyKSB7CisJCS8qIGlub2RlIGFscmVhZHkgZXhpc3RzIG9uIGRpc2sg
Ki8KKwkJcmVzdWx0ID0gbmQucGF0aC5kZW50cnk7CisJCS8qIHdlIGRvbnQgbmVlZCB0aGUg
bW91bnQgKi8KKwkJbW50cHV0KG5kLnBhdGgubW50KTsKKwkJZ290byBvdXQ7CisJfQorCWlm
IChlcnIgIT0gLUVOT0VOVCkgeyAvKiB0aGlzIGlzIGEgUkVBTCBlcnJvciAqLwkKKwkJcmVz
dWx0ID0gRVJSX1BUUihlcnIpOworCQlnb3RvIG91dDsKKwl9CQorCS8qIGNyZWF0ZSBhIG5l
dyAobG93ZXIpIGRlbnRyeSAqLworCXJlc3VsdCA9IGRhenVrb2ZzX25ld19sb3dlcl9kZW50
cnkobmFtZSwgbG93ZXJfYmFzZSwgJm5kKTsKK291dDoKKwlyZXR1cm4gcmVzdWx0OworCit9
CisKKwogLyoqCiAgKiBEZXNjcmlwdGlvbjogQ2FsbGVkIHdoZW4gdGhlIFZGUyBuZWVkcyB0
byBsb29rIHVwIGFuIGlub2RlIGluIGEgcGFyZW50CiAgKiBkaXJlY3RvcnkuIFRoZSBuYW1l
IHRvIGxvb2sgZm9yIGlzIGZvdW5kIGluIHRoZSBkZW50cnkuIFRoaXMgbWV0aG9kCkBAIC0x
NDgsNjIgKzIwOCw0OCBAQCBzdGF0aWMgc3RydWN0IGRlbnRyeSAqZGF6dWtvZnNfbG9va3Vw
KHN0CiAJc3RydWN0IGRlbnRyeSAqbG93ZXJfZGVudHJ5OwogCXN0cnVjdCBkZW50cnkgKmxv
d2VyX2RlbnRyeV9wYXJlbnQ7CiAJc3RydWN0IHZmc21vdW50ICpsb3dlcl9tbnQ7Ci0JaW50
IGVyciA9IDA7Ci0KLQlpZiAoKGRlbnRyeS0+ZF9uYW1lLmxlbiA9PSAxICYmICFzdHJjbXAo
ZGVudHJ5LT5kX25hbWUubmFtZSwgIi4iKSkKLQkgICAgfHwgKGRlbnRyeS0+ZF9uYW1lLmxl
biA9PSAyICYmCi0JCSFzdHJjbXAoZGVudHJ5LT5kX25hbWUubmFtZSwgIi4uIikpKSB7Ci0J
CWRfZHJvcChkZW50cnkpOwotCQlnb3RvIG91dDsKLQl9Ci0KLQlkZW50cnktPmRfb3AgPSAm
ZGF6dWtvZnNfZG9wczsKKwlpbnQgZXJyOwogCiAJbG93ZXJfZGVudHJ5X3BhcmVudCA9IEdF
VF9MT1dFUl9ERU5UUlkoZGVudHJ5LT5kX3BhcmVudCk7Ci0JbG93ZXJfZGVudHJ5ID0gbG9v
a3VwX29uZV9sZW4oZGVudHJ5LT5kX25hbWUubmFtZSwgbG93ZXJfZGVudHJ5X3BhcmVudCwK
LQkJCQkgICAgICBkZW50cnktPmRfbmFtZS5sZW4pOworCS8qIHNob3VsZCBiZSByZWxlYXNl
ZCBpbiBkX3JlbGVhc2UoKSAqLworCWxvd2VyX21udCA9IG1udGdldChHRVRfTE9XRVJfTU5U
KGRlbnRyeS0+ZF9wYXJlbnQpKTsKIAorCWxvd2VyX2RlbnRyeSA9IGRhenVrb2ZzX2xvb2t1
cF9vbmVfbG93ZXIoJmRlbnRyeS0+ZF9uYW1lLCAKKwkJCQkJCSBsb3dlcl9kZW50cnlfcGFy
ZW50LCAKKwkJCQkJCSBsb3dlcl9tbnQpOyAKIAlpZiAoSVNfRVJSKGxvd2VyX2RlbnRyeSkp
IHsKLQkJZXJyID0gUFRSX0VSUihsb3dlcl9kZW50cnkpOwotCQlkX2Ryb3AoZGVudHJ5KTsK
LQkJZ290byBvdXQ7CisJCW1udHB1dChsb3dlcl9tbnQpOworCQlyZXR1cm4gbG93ZXJfZGVu
dHJ5OwogCX0KLQogCUJVR19PTighYXRvbWljX3JlYWQoJmxvd2VyX2RlbnRyeS0+ZF9jb3Vu
dCkpOwogCisJZGVudHJ5LT5kX29wID0gJmRhenVrb2ZzX2RvcHM7CiAJU0VUX0RFTlRSWV9J
TkZPKGRlbnRyeSwga21lbV9jYWNoZV96YWxsb2MoZGF6dWtvZnNfZGVudHJ5X2luZm9fY2Fj
aGVwLAogCQkJR0ZQX0tFUk5FTCkpOwogCiAJaWYgKCFHRVRfREVOVFJZX0lORk8oZGVudHJ5
KSkgewotCQllcnIgPSAtRU5PTUVNOwotCQlnb3RvIG91dF9kcHV0OworCQltbnRwdXQobG93
ZXJfbW50KTsKKwkJZHB1dChsb3dlcl9kZW50cnkpOworCQlyZXR1cm4gRVJSX1BUUigtRU5P
TUVNKTsKIAl9Ci0KLQlsb3dlcl9tbnQgPSBtbnRnZXQoR0VUX0xPV0VSX01OVChkZW50cnkt
PmRfcGFyZW50KSk7Ci0KLQlmc3N0YWNrX2NvcHlfYXR0cl9hdGltZShkaXIsIGxvd2VyX2Rl
bnRyeV9wYXJlbnQtPmRfaW5vZGUpOwotCiAJU0VUX0xPV0VSX0RFTlRSWShkZW50cnksIGxv
d2VyX2RlbnRyeSwgbG93ZXJfbW50KTsKLQorCS8qIGZyb20gbm93IGxvd2VyIGRlbnRyeSBh
bmQgbG93ZXIgbW91bnQgYXJlIHJlbGVhc2VkIGluIAorCSAgZF9yZWxlYXNlIG9mIHVwcGVy
IGRlbnRyeSAqLworCWZzc3RhY2tfY29weV9hdHRyX2F0aW1lKGRpciwgbG93ZXJfZGVudHJ5
X3BhcmVudC0+ZF9pbm9kZSk7CiAJaWYgKCFsb3dlcl9kZW50cnktPmRfaW5vZGUpIHsKIAkJ
LyoKIAkJICogV2Ugd2FudCB0byBhZGQgYmVjYXVzZSB3ZSBjb3VsZCBub3QgZmluZCBpbiBs
b3dlci4KIAkJICovCiAJCWRfYWRkKGRlbnRyeSwgTlVMTCk7Ci0JCWdvdG8gb3V0OworCQln
b3RvIG9rOwogCX0KIAogCWVyciA9IGRhenVrb2ZzX2ludGVycG9zZShsb3dlcl9kZW50cnks
IGRlbnRyeSwgZGlyLT5pX3NiLCAxKTsKLQlpZiAoZXJyKQotCQlnb3RvIG91dF9kcHV0Owot
CWdvdG8gb3V0OworCWlmIChlcnIpIAorCQlyZXR1cm4gRVJSX1BUUihlcnIpOwogCi1vdXRf
ZHB1dDoKLQlkcHV0KGxvd2VyX2RlbnRyeSk7Ci0JZF9kcm9wKGRlbnRyeSk7Ci0KLW91dDoK
LQlyZXR1cm4gRVJSX1BUUihlcnIpOworb2s6CisJcmV0dXJuIE5VTEw7IC8qIHRlbGwgY2Fs
bGVyIHRvIHVzZSBpdHMgb3duLCBwYXNzZWQgZGVudHJ5LCBub3Qgb3VycyAqLwogfQogCiAv
KioKQEAgLTQ2OCwxMCArNTE0LDI0IEBAIHN0YXRpYyBpbnQgZGF6dWtvZnNfc2V0YXR0cihz
dHJ1Y3QgZGVudHIKIAlzdHJ1Y3QgaW5vZGUgKmxvd2VyX2lub2RlID0gR0VUX0xPV0VSX0lO
T0RFKGlub2RlKTsKIAlpbnQgZXJyOwogCi0JZXJyID0gbm90aWZ5X2NoYW5nZShsb3dlcl9k
ZW50cnksIGlhKTsKIAotCWZzc3RhY2tfY29weV9hdHRyX2FsbChpbm9kZSwgbG93ZXJfaW5v
ZGUsIE5VTEwpOwotCWZzc3RhY2tfY29weV9pbm9kZV9zaXplKGlub2RlLCBsb3dlcl9pbm9k
ZSk7CisJaWYgKCFsb3dlcl9pbm9kZS0+aV9vcCB8fCAhbG93ZXJfaW5vZGUtPmlfb3AtPnNl
dGF0dHIpCisJCS8qIFhYWDogYXQgdGhpcyBwb2ludCBpdCBpcyB0b28gbGF0ZSB0byBoYW5k
bGUgaW5vZGVzIHByb3Blcmx5IHRoYXQgZG8gTk9UCisJCXNwZWNpZnkgc2V0YXR0cigpLiBW
RlMgd291bGQgbm9ybWFsbHkgY2FsbCBpbm9kZV9zZXRhdHRyKCkgaW4KKwkJdGhpcyBjYXNl
LiBTbyB0byBmb3JjZSB0aGlzIHdlIGp1bXAgYmFjayB0byBub3RpZnlfY2hhbmdlIHdoaWNo
IHdpbGwKKwkJaGFuZGxlIHRoaXMgZm9yIHVzLiBCdXQgdGhpcyBpcyBkYW5nZXJvdXM6CisJ
CVRoZSBhdHRyaWJ1dGVzIG1pZ2h0IGJlIG1vZGlmaWVkIGJ5IG5vdGlmeV9jaGFuZ2UoKSBp
biBhIHdheQorCQl0aGF0IHJlc3VsdHMgaW4gaW52YWxpZCBhdHRyaWJ1dGVzLiBUaGlzIHNl
ZW1zIHRvIGJlIHRoZSBjYXNlCisJCWlmIHRoZSBpbm9kZSBmb3Igd2hpY2ggdGhpcyBmdW5j
dGlvbiBpcyBjYWxsZWQgaGFzIHRoZSBzZXR1aWQKKwkJb3Igc2V0Z2lkIGJpdCBzZXQgKi8K
KwkJZXJyID0gbm90aWZ5X2NoYW5nZShsb3dlcl9kZW50cnksIGlhKTsKKwllbHNlCisJCWVy
ciA9IGxvd2VyX2lub2RlLT5pX29wLT5zZXRhdHRyKGxvd2VyX2RlbnRyeSwgaWEpOworCisJ
aWYgKCFlcnIpIHsKKwkJZnNzdGFja19jb3B5X2F0dHJfYWxsKGlub2RlLCBsb3dlcl9pbm9k
ZSwgTlVMTCk7CisJCWZzc3RhY2tfY29weV9pbm9kZV9zaXplKGlub2RlLCBsb3dlcl9pbm9k
ZSk7CisJfQogCiAJcmV0dXJuIGVycjsKIH0KQEAgLTQ5Niw3ICs1NTYsNyBAQCBzdGF0aWMg
aW50IGRhenVrb2ZzX3NldHhhdHRyKHN0cnVjdCBkZW50CiAKIAlpZiAoIWxvd2VyX2RlbnRy
eV9pbm9kZS0+aV9vcCB8fAogCSAgICAhbG93ZXJfZGVudHJ5X2lub2RlLT5pX29wLT5zZXR4
YXR0cikgewotCQllcnIgPSAtRU5PU1lTOworCQllcnIgPSAtRU9QTk9UU1VQUDsKIAkJZ290
byBvdXQ7CiAJfQogCkBAIC01MjgsNyArNTg4LDcgQEAgc3RhdGljIHNzaXplX3QgZGF6dWtv
ZnNfZ2V0eGF0dHIoc3RydWN0IAogCiAJaWYgKCFsb3dlcl9kZW50cnlfaW5vZGUtPmlfb3Ag
fHwKIAkgICAgIWxvd2VyX2RlbnRyeV9pbm9kZS0+aV9vcC0+Z2V0eGF0dHIpIHsKLQkJZXJy
ID0gLUVOT1NZUzsKKwkJZXJyID0gLUVPUE5PVFNVUFA7CiAJCWdvdG8gb3V0OwogCX0KIApA
QCAtNTU3LDcgKzYxNyw3IEBAIHN0YXRpYyBzc2l6ZV90IGRhenVrb2ZzX2xpc3R4YXR0cihz
dHJ1Y3QKIAogCWlmICghbG93ZXJfZGVudHJ5X2lub2RlLT5pX29wIHx8CiAJICAgICFsb3dl
cl9kZW50cnlfaW5vZGUtPmlfb3AtPmxpc3R4YXR0cikgewotCQllcnIgPSAtRU5PU1lTOwor
CQllcnIgPSAtRU9QTk9UU1VQUDsKIAkJZ290byBvdXQ7CiAJfQogCkBAIC01ODQsNyArNjQ0
LDcgQEAgc3RhdGljIGludCBkYXp1a29mc19yZW1vdmV4YXR0cihzdHJ1Y3QgZAogCiAJaWYg
KCFsb3dlcl9kZW50cnlfaW5vZGUtPmlfb3AgfHwKIAkgICAgIWxvd2VyX2RlbnRyeV9pbm9k
ZS0+aV9vcC0+cmVtb3ZleGF0dHIpIHsKLQkJZXJyID0gLUVOT1NZUzsKKwkJZXJyID0gLUVP
UE5PVFNVUFA7CiAJCWdvdG8gb3V0OwogCX0KIApkaWZmIC14IENWUyAtcnVwIGRhenVrb2Zz
LTMuMC4wL01ha2VmaWxlIGRhenVrb2ZzLTMuMC4wLXJjNF8yLjYuMjcvTWFrZWZpbGUKLS0t
IGRhenVrb2ZzLTMuMC4wL01ha2VmaWxlCTIwMDktMDItMjIgMTc6NDY6MDIuMDAwMDAwMDAw
ICswMTAwCisrKyBkYXp1a29mcy0zLjAuMC1yYzRfMi42LjI3L01ha2VmaWxlCTIwMDktMDUt
MTEgMTk6NDk6NTguMDAwMDAwMDAwICswMjAwCkBAIC0xOSw2ICsxOSw3IEBAIGRhenVrb2Zz
X2luc3RhbGw6IGRhenVrb2ZzX21vZHVsZXMKIAogY2xlYW46CiAJcm0gLWYgTW9kdWxlLnN5
bXZlcnMKKwlybSAtZiBtb2R1bGVzLm9yZGVyCiAJbWFrZSAtQyAkKERBWlVLT0ZTX0tFUk5F
TF9TUkMpIFNVQkRJUlM9ImBwd2RgIiBjbGVhbgogCiAuUEhPTlk6IGRhenVrb2ZzX21vZHVs
ZXMgZGF6dWtvZnNfaW5zdGFsbCBjbGVhbgpkaWZmIC14IENWUyAtcnVwIGRhenVrb2ZzLTMu
MC4wL1JFQURNRSBkYXp1a29mcy0zLjAuMC1yYzRfMi42LjI3L1JFQURNRQotLS0gZGF6dWtv
ZnMtMy4wLjAvUkVBRE1FCTIwMDktMDItMjIgMTc6Mzg6MjEuMDAwMDAwMDAwICswMTAwCisr
KyBkYXp1a29mcy0zLjAuMC1yYzRfMi42LjI3L1JFQURNRQkyMDA4LTExLTMwIDE0OjEyOjIx
LjAwMDAwMDAwMCArMDEwMApAQCAtMjEsMTAgKzIxLDEwIEBAIE5PVEU6IERhenVrb0ZTIGlz
IGNvbXBsZXRlbHkgc2VwYXJhdGUgZnIKID09PT09PT09PT09PT09PT09CiAKIEJlbG93IGFy
ZSBicmllZiBpbnN0cnVjdGlvbnMgdG8gZ2V0IERhenVrb0ZTIGNvbXBpbGVkIGFuZCBydW5u
aW5nIG9uIGEKLXN5c3RlbSB3aXRoIGEgTGludXggMi42LjI4IGtlcm5lbC4gWW91IG1heSBu
ZWVkIHRvIG1hbnVhbGx5IGFkanVzdCB0aGUKK3N5c3RlbSB3aXRoIGEgTGludXggMi42LjI3
IGtlcm5lbC4gWW91IG1heSBuZWVkIHRvIG1hbnVhbGx5IGFkanVzdCB0aGUKIE1ha2VmaWxl
IGlmIHlvdSBrZXJuZWwgc291cmNlcyBhcmUgbm90IGluIHRoZSBkZWZhdWx0IGxvY2F0aW9u
LgotKFBhdGNoZXMgYXJlIHByb3ZpZGVkIGZvciB2YXJpb3VzIG90aGVyIGtlcm5lbHMuIFNl
ZSB0aGUgc2VjdGlvbiBiZWxvdwotdGl0bGVkICJQQVRDSElORyIgZm9yIG1vcmUgaW5mb3Jt
YXRpb24uKQorKEEgcGF0Y2ggaXMgcHJvdmlkZWQgdG8gY29udmVydCB0aGUgRGF6dWtvRlMg
Y29kZSB0byBzdXBwb3J0IExpbnV4CisyLjYuMjYuKQogCiBjb21waWxlIHRoZSBrZXJuZWwg
bW9kdWxlCiAgICMgbWFrZQpAQCAtNTIsMjUgKzUyLDYgQEAgdW5tb3VudCBEYXp1a29GUwog
CiAKIAotPT09PT09PT09PQotIFBBVENISU5HCi09PT09PT09PT09Ci0KLUluIHRoZSAicGF0
Y2hlcyIgZGlyZWN0b3J5IHRoZXJlIGFyZSBwYXRjaGVzIGF2YWlsYWJsZSB0byBtb2RpZnkg
dGhlCi1EYXp1a29GUyBjb2RlIHRvIGZpdCB2YXJpb3VzIG90aGVyIGtlcm5lbHMuIEZvciBl
eGFtcGxlLCBpZiB5b3UgYXJlCi1ydW5uaW5nIG9wZW5TVVNFIDExLjEgeW91IGNhbiBwYXRj
aCB0aGUgY29kZSB3aXRoIHRoZSBmb2xsb3dpbmcKLWNvbW1hbmQ6Ci0KLSQgcGF0Y2ggLXAx
IDwgcGF0Y2hlcy9wYXRjaC1vcGVuc3VzZS0xMS4xCi0KLVRoZXJlIHNob3VsZCBub3QgYmUg
YW55IGVycm9ycy4gSWYgdGhlcmUgYXJlIGVycm9ycywgdGhlbiB0aGUgcGF0Y2gKLWlzIGJy
b2tlbiBhbmQgc2hvdWxkIGJlIHJlcG9ydGVkIG9uIHRoZSBkYXp1a28tZGV2ZWwgbWFpbGlu
ZyBsaXN0LgotCi1PbmNlIHRoZSBjb2RlIGhhcyBiZWVuIHBhdGNoZWQgeW91IGNhbiBidWls
ZCB0aGUga2VybmVsIG1vZHVsZSBhcwotZGVzY3JpYmVkIGluIHRoZSBzZWN0aW9uICJCVUlM
RCAvIElOU1RBTEwiIGFib3ZlLgotCi0KLQogPT09PT09PT09CiAgVEVTVElORwogPT09PT09
PT09CkBAIC0xNTQsOSArMTM1LDYgQEAgYW55IHByb2JsZW1zLgogIEtOT1dOIElTU1VFUwog
PT09PT09PT09PT09PT0KIAotLSBUaGUga2VybmVsIHdpbGwgY3Jhc2ggaWYgeW91IGF0dGVt
cHQgdG8gbW91bnQgRGF6dWtvRlMgdG8gYSBmaWxlIGluc3RlYWQKLSAgb2YgYSBkaXJlY3Rv
cnkuIChUaGUgdmFyaW91cyBrZXJuZWwgcGF0Y2hlcyBoYW5kbGUgdGhpcyBlcnJvci4pCi0K
IC0gRGF6dWtvRlMgZG9lcyBub3Qgc3VwcG9ydCB3cml0aW5nIHRvIG1lbW9yeSBtYXBwZWQg
ZmlsZXMuIFRoaXMgc2hvdWxkIG5vdAogICBjYXVzZSB0aGUga2VybmVsIHRvIGNyYXNoLCBi
dXQgd2lsbCBpbnN0ZWFkIHJlc3VsdCBpbiB0aGUgYXBwbGljYXRpb24KICAgZmFpbGluZyB0
byBwZXJmb3JtIHRoZSB3cml0ZXMgKGFsdGhvdWdoIG1tYXAoKSB3aWxsIGFwcGVhciB0byBi
ZQpkaWZmIC14IENWUyAtcnVwIGRhenVrb2ZzLTMuMC4wL3N1cGVyLmMgZGF6dWtvZnMtMy4w
LjAtcmM0XzIuNi4yNy9zdXBlci5jCi0tLSBkYXp1a29mcy0zLjAuMC9zdXBlci5jCTIwMDkt
MDItMjIgMTc6NDY6MDIuMDAwMDAwMDAwICswMTAwCisrKyBkYXp1a29mcy0zLjAuMC1yYzRf
Mi42LjI3L3N1cGVyLmMJMjAwOS0wNy0wMyAxODoxMzo0OS4wMDAwMDAwMDAgKzAyMDAKQEAg
LTM1LDYgKzM1LDEwIEBAIHN0YXRpYyBzdHJ1Y3Qga21lbV9jYWNoZSAqZGF6dWtvZnNfc2Jf
aW4KIHN0cnVjdCBrbWVtX2NhY2hlICpkYXp1a29mc19kZW50cnlfaW5mb19jYWNoZXA7CiBz
dHJ1Y3Qga21lbV9jYWNoZSAqZGF6dWtvZnNfZmlsZV9pbmZvX2NhY2hlcDsKIAorCisjZGVm
aW5lIERBWlVLT0ZTX1ZFUlNJT04gIjMuMC4wLXJjNC1hdmlyYS1iMi42IgorCisKIHN0YXRp
YyBzdHJ1Y3QgaW5vZGUgKmRhenVrb2ZzX2FsbG9jX2lub2RlKHN0cnVjdCBzdXBlcl9ibG9j
ayAqc2IpCiB7CiAJc3RydWN0IGRhenVrb2ZzX2lub2RlX2luZm8gKmlub2RlaTsKQEAgLTE3
MSw2ICsxNzUsMTEgQEAgc3RhdGljIGludCBkYXp1a29mc19yZWFkX3N1cGVyKHN0cnVjdCBz
dQogCQlnb3RvIG91dF9wdXQ7CiAJfQogCisJaWYgKCFTX0lTRElSKGxvd2VyX3Jvb3QtPmRf
aW5vZGUtPmlfbW9kZSkpIHsKKwkJZXJyID0gLUVOT0VOVDsKKwkJZ290byBvdXRfcHV0Owor
CX0KKwogCVNFVF9MT1dFUl9TQihzYiwgbG93ZXJfcm9vdC0+ZF9zYik7CiAJc2ItPnNfbWF4
Ynl0ZXMgPSBsb3dlcl9yb290LT5kX3NiLT5zX21heGJ5dGVzOwogCVNFVF9MT1dFUl9ERU5U
Ulkoc2ItPnNfcm9vdCwgbG93ZXJfcm9vdCwgbG93ZXJfbW50KTsKQEAgLTIxMyw2ICsyMjIs
NyBAQCBzdGF0aWMgaW50IGRhenVrb2ZzX2dldF9zYihzdHJ1Y3QgZmlsZV9zCiAKIG91dF9h
Ym9ydDoKIAl1cF93cml0ZSgmc2ItPnNfdW1vdW50KTsKKwlkcHV0KHNiLT5zX3Jvb3QpOwog
CWRlYWN0aXZhdGVfc3VwZXIoc2IpOwogb3V0OgogCXJldHVybiBlcnI7CkBAIC0zMDUsNyAr
MzE1LDcgQEAgc3RhdGljIHN0cnVjdCBmaWxlX3N5c3RlbV90eXBlIGRhenVrb2ZzXwogCiBz
dGF0aWMgaW50IF9faW5pdCBpbml0X2RhenVrb2ZzX2ZzKHZvaWQpCiB7Ci0JaW50IGVyciA9
IDA7CisJaW50IGVycjsKIAogCWVyciA9IGRhenVrb2ZzX2Rldl9pbml0KCk7CiAJaWYgKGVy
cikKQEAgLTMxOSw3ICszMjksNyBAQCBzdGF0aWMgaW50IF9faW5pdCBpbml0X2RhenVrb2Zz
X2ZzKHZvaWQpCiAJaWYgKGVycikKIAkJZ290byBlcnJvcl9vdXQzOwogCi0JcHJpbnRrKEtF
Uk5fSU5GTyAiZGF6dWtvZnM6IGxvYWRlZCwgdmVyc2lvbj0lc1xuIiwgREFaVUtPRlNfVkVS
U0lPTik7CisJcHJpbnRrKEtFUk5fSU5GTyAiZGF6dWtvZnM6IGxvYWRlZCwgdmVyc2lvbj0i
IERBWlVLT0ZTX1ZFUlNJT04gIlxuIik7CiAJcmV0dXJuIDA7CiAKIGVycm9yX291dDM6CkBA
IC0zMzUsOSArMzQ1LDggQEAgc3RhdGljIHZvaWQgX19leGl0IGV4aXRfZGF6dWtvZnNfZnMo
dm9pZAogCXVucmVnaXN0ZXJfZmlsZXN5c3RlbSgmZGF6dWtvZnNfZnNfdHlwZSk7CiAJZGVz
dHJveV9jYWNoZXMoKTsKIAlkYXp1a29mc19kZXZfZGVzdHJveSgpOwotCXByaW50ayhLRVJO
X0lORk8gImRhenVrb2ZzOiB1bmxvYWRlZCwgdmVyc2lvbj0lc1xuIiwgREFaVUtPRlNfVkVS
U0lPTik7CisJcHJpbnRrKEtFUk5fSU5GTyAiZGF6dWtvZnM6IHVubG9hZGVkLCB2ZXJzaW9u
PSIgREFaVUtPRlNfVkVSU0lPTiAiXG4iKTsKIH0KLQogTU9EVUxFX0FVVEhPUigiSm9obiBP
Z25lc3MiKTsKIE1PRFVMRV9ERVNDUklQVElPTigiYWNjZXNzIGNvbnRyb2wgc3RhY2thYmxl
IGZpbGVzeXN0ZW0iKTsKIE1PRFVMRV9MSUNFTlNFKCJHUEwiKTsK
--------------080506090005080008080105
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

--------------080506090005080008080105--