Re: mutt/2144: Please always use ascii_strcasecmp to compare ASCII parameter strings
The following reply was made to PR mutt/2144; it has been noted by GNATS.
From: Thomas Roessler <roessler@xxxxxxxxxxxxxxxxxx>
To: bug-any@xxxxxxxxxxxxx
Cc:
Subject: Re: mutt/2144: Please always use ascii_strcasecmp to compare ASCII
parameter strings
Date: Thu, 1 Dec 2005 15:26:04 -0500
Is there any particular reason why you introduce additional
functions with a mutt_prefix, instead of using ascii_strcasecmp
and ascii_strncasecmp?
(I haven't looked at the patch, just at the description.)
On 2005-12-01 20:47:38 +0100, Recai Oktas wrote:
> From: Recai Oktas <roktas@xxxxxxxxxx>
> To: Mutt Developers <mutt-dev@xxxxxxxx>
> Date: Thu, 01 Dec 2005 20:47:38 +0100
> Subject: mutt/2144: Please always use ascii_strcasecmp to compare ASCII
> parameter strings
> Reply-To: bug-any@xxxxxxxxxxxxx
> X-Spam-Level:
>
> >Number: 2144
> >Notify-List:
> >Category: mutt
> >Synopsis: Please always use ascii_strcasecmp to compare ASCII
> >parameter strings
> >Confidential: no
> >Severity: normal
> >Priority: medium
> >Responsible: mutt-dev
> >State: open
> >Keywords:
> >Class: sw-bug
> >Submitter-Id: net
> >Arrival-Date: Thu Dec 01 20:47:37 +0100 2005
> >Originator: Recai Oktas <roktas@xxxxxxxxxx>
> >Release:
> >Organization:
> >Environment:
> Debian GNU/Linux (unstable)
> >Description:
> The latest Mutt package (version 1.5.11) doesn't work under the Turkish
> locales (tr_TR, tr_TR.UTF-8). Tracking down the bug, I've found that the
> changes introduced in the "attachment counting for index display" patch have
> caused the problem. This is a well-known bug pattern occured for Turkish
> locales. Thomas Roessler has already warned the developers for the problem
> (which is exactly the case for this particular bug). Excerpt from the
> Changelog:
>
> 2002/03/26 22:25:48 Thomas Roessler <roessler@xxxxxxxxxxxxxxxxxx>
>
> [...]
>
> * smime.c: Please use ascii_strcasecmp() if you want to compare ASCII
> parameter strings. mutt_strcasecmp() depends on the locale, and detects "i"
> and "I" as _different_ in Turkish locales.
> >How-To-Repeat:
> Setup the locale as tr_TR (or tr_TR.UTF-8) and invoke Mutt with a
> configuration file which has an 'attachments' setting, i.e. "attachments +I
> text/plain". This will generate a parse error.
> >Fix:
> Attached is a trivial patch which introduces two new functions:
> mutt_ascii_strcasecmp and mutt_ascii_strncasecmp , and applies the
> 's/mutt_strcasecmp/mutt_ascii_strcasecmp' and
> 's/mutt_strncasecmp/mutt_ascii_strncasecmp' substitutions for all _obvious_
> cases. That is, the patch does not only deal with this reported bug, it
> also covers the other obvious cases.
>
> P.S. Unfortunately, I couldn't test the patch, but I'll test and inform you
> later.
> >Add-To-Audit-Trail:
>
> >Unformatted:
> ----gnatsweb-attachment----
> Content-Type: text/x-patch; name="mutt_ascii_strcase.patch"
> Content-Transfer-Encoding: base64
> Content-Disposition: attachment; filename="mutt_ascii_strcase.patch"
>
> ZGlmZiAtcnUgbXV0dC5vcmlnL2NvbG9yLmMgbXV0dC9jb2xvci5jCi0tLSBtdXR0Lm9yaWcvY29s
> b3IuYwkyMDA1LTA5LTE3IDIzOjQ2OjEwLjAwMDAwMDAwMCArMDMwMAorKysgbXV0dC9jb2xvci5j
> CTIwMDUtMTItMDEgMjE6MDY6MDIuMDAwMDAwMDAwICswMjAwCkBAIC0zMDksMTQgKzMwOSwxNCBA
> QAogewogICBjaGFyICplcHRyOwogCi0gIGlmIChtdXR0X3N0cm5jYXNlY21wIChzLCAiYnJpZ2h0
> IiwgNikgPT0gMCkKKyAgaWYgKG11dHRfYXNjaWlfc3RybmNhc2VjbXAgKHMsICJicmlnaHQiLCA2
> KSA9PSAwKQogICB7CiAgICAgKmF0dHIgfD0gYnJpdGU7CiAgICAgcyArPSA2OwogICB9CiAKICAg
> LyogYWxsb3cgYWxpYXNlcyBmb3IgeHRlcm0gY29sb3IgcmVzb3VyY2VzICovCi0gIGlmIChtdXR0
> X3N0cm5jYXNlY21wIChzLCAiY29sb3IiLCA1KSA9PSAwKQorICBpZiAobXV0dF9hc2NpaV9zdHJu
> Y2FzZWNtcCAocywgImNvbG9yIiwgNSkgPT0gMCkKICAgewogICAgIHMgKz0gNTsKICAgICAqY29s
> ID0gc3RydG9sIChzLCAmZXB0ciwgMTApOwpkaWZmIC1ydSBtdXR0Lm9yaWcvY3J5cHQuYyBtdXR0
> L2NyeXB0LmMKLS0tIG11dHQub3JpZy9jcnlwdC5jCTIwMDUtMTAtMjEgMDc6MzU6MzcuMDAwMDAw
> MDAwICswMzAwCisrKyBtdXR0L2NyeXB0LmMJMjAwNS0xMi0wMSAyMTowNzoxOS4wMDAwMDAwMDAg
> KzAyMDAKQEAgLTU1Miw3ICs1NTIsNyBAQAogCWNvbnZlcnRfdG9fN2JpdCAoYS0+cGFydHMpOwog
> ICAgIH0gCiAgICAgZWxzZSBpZiAoYS0+dHlwZSA9PSBUWVBFTUVTU0FHRSAmJgotCSAgICAgbXV0
> dF9zdHJjYXNlY21wKGEtPnN1YnR5cGUsICJkZWxpdmVyeS1zdGF0dXMiKSkKKwkgICAgIG11dHRf
> YXNjaWlfc3RyY2FzZWNtcChhLT5zdWJ0eXBlLCAiZGVsaXZlcnktc3RhdHVzIikpCiAgICAgewog
> ICAgICAgaWYoYS0+ZW5jb2RpbmcgIT0gRU5DN0JJVCkKIAltdXR0X21lc3NhZ2VfdG9fN2JpdCAo
> YSwgTlVMTCk7CkBAIC04MDgsMTUgKzgwOCwxNSBAQAogICAKICAgaWYgKChXaXRoQ3J5cHRvICYg
> QVBQTElDQVRJT05fUEdQKQogICAgICAgJiYgcHJvdG9jb2xfbWFqb3IgPT0gVFlQRUFQUExJQ0FU
> SU9OCi0gICAgICAmJiAhbXV0dF9zdHJjYXNlY21wIChwcm90b2NvbF9taW5vciwgInBncC1zaWdu
> YXR1cmUiKSkKKyAgICAgICYmICFtdXR0X2FzY2lpX3N0cmNhc2VjbXAgKHByb3RvY29sX21pbm9y
> LCAicGdwLXNpZ25hdHVyZSIpKQogICAgIDsKICAgZWxzZSBpZiAoKFdpdGhDcnlwdG8gJiBBUFBM
> SUNBVElPTl9TTUlNRSkKICAgICAgICAgICAgJiYgcHJvdG9jb2xfbWFqb3IgPT0gVFlQRUFQUExJ
> Q0FUSU9OCi0JICAgJiYgIShtdXR0X3N0cmNhc2VjbXAgKHByb3RvY29sX21pbm9yLCAieC1wa2Nz
> Ny1zaWduYXR1cmUiKQotCSAgICAgICAmJiBtdXR0X3N0cmNhc2VjbXAgKHByb3RvY29sX21pbm9y
> LCAicGtjczctc2lnbmF0dXJlIikpKQorCSAgICYmICEobXV0dF9hc2NpaV9zdHJjYXNlY21wIChw
> cm90b2NvbF9taW5vciwgIngtcGtjczctc2lnbmF0dXJlIikKKwkgICAgICAgJiYgbXV0dF9hc2Np
> aV9zdHJjYXNlY21wIChwcm90b2NvbF9taW5vciwgInBrY3M3LXNpZ25hdHVyZSIpKSkKICAgICA7
> CiAgIGVsc2UgaWYgKHByb3RvY29sX21ham9yID09IFRZUEVNVUxUSVBBUlQKLQkgICAmJiAhbXV0
> dF9zdHJjYXNlY21wIChwcm90b2NvbF9taW5vciwgIm1peGVkIikpCisJICAgJiYgIW11dHRfYXNj
> aWlfc3RyY2FzZWNtcCAocHJvdG9jb2xfbWlub3IsICJtaXhlZCIpKQogICAgIDsKICAgZWxzZQog
> ICB7CkBAIC04NDAsNyArODQwLDcgQEAKIAl7CiAJICBpZiAoKFdpdGhDcnlwdG8gJiBBUFBMSUNB
> VElPTl9QR1ApCiAgICAgICAgICAgICAgICYmIHNpZ25hdHVyZXNbaV0tPnR5cGUgPT0gVFlQRUFQ
> UExJQ0FUSU9OIAotCSAgICAgICYmICFtdXR0X3N0cmNhc2VjbXAgKHNpZ25hdHVyZXNbaV0tPnN1
> YnR5cGUsICJwZ3Atc2lnbmF0dXJlIikpCisJICAgICAgJiYgIW11dHRfYXNjaWlfc3RyY2FzZWNt
> cCAoc2lnbmF0dXJlc1tpXS0+c3VidHlwZSwgInBncC1zaWduYXR1cmUiKSkKIAkgIHsKIAkgICAg
> aWYgKGNyeXB0X3BncF92ZXJpZnlfb25lIChzaWduYXR1cmVzW2ldLCBzLCB0ZW1wZmlsZSkgIT0g
> MCkKIAkgICAgICBnb29kc2lnID0gMDsKQEAgLTg1MCw4ICs4NTAsOCBAQAogCiAJICBpZiAoKFdp
> dGhDcnlwdG8gJiBBUFBMSUNBVElPTl9TTUlNRSkKICAgICAgICAgICAgICAgJiYgc2lnbmF0dXJl
> c1tpXS0+dHlwZSA9PSBUWVBFQVBQTElDQVRJT04gCi0JICAgICAgJiYgKCFtdXR0X3N0cmNhc2Vj
> bXAoc2lnbmF0dXJlc1tpXS0+c3VidHlwZSwgIngtcGtjczctc2lnbmF0dXJlIikKLQkJICB8fCAh
> bXV0dF9zdHJjYXNlY21wKHNpZ25hdHVyZXNbaV0tPnN1YnR5cGUsICJwa2NzNy1zaWduYXR1cmUi
> KSkpCisJICAgICAgJiYgKCFtdXR0X2FzY2lpX3N0cmNhc2VjbXAoc2lnbmF0dXJlc1tpXS0+c3Vi
> dHlwZSwgIngtcGtjczctc2lnbmF0dXJlIikKKwkJICB8fCAhbXV0dF9hc2NpaV9zdHJjYXNlY21w
> KHNpZ25hdHVyZXNbaV0tPnN1YnR5cGUsICJwa2NzNy1zaWduYXR1cmUiKSkpCiAJICB7CiAJICAg
> IGlmIChjcnlwdF9zbWltZV92ZXJpZnlfb25lIChzaWduYXR1cmVzW2ldLCBzLCB0ZW1wZmlsZSkg
> IT0gMCkKIAkgICAgICBnb29kc2lnID0gMDsKZGlmZiAtcnUgbXV0dC5vcmlnL2hhbmRsZXIuYyBt
> dXR0L2hhbmRsZXIuYwotLS0gbXV0dC5vcmlnL2hhbmRsZXIuYwkyMDA1LTExLTIyIDE0OjIxOjE0
> LjAwMDAwMDAwMCArMDIwMAorKysgbXV0dC9oYW5kbGVyLmMJMjAwNS0xMi0wMSAyMTowODoxOC4w
> MDAwMDAwMDAgKzAyMDAKQEAgLTE4NDMsNyArMTg0Myw3IEBACiAJaGFuZGxlciA9IG11dHRfc2ln
> bmVkX2hhbmRsZXI7CiAgICAgfQogICAgIGVsc2UgaWYgKChXaXRoQ3J5cHRvICYgQVBQTElDQVRJ
> T05fUEdQKQotICAgICAgICAgICAgICYmIG11dHRfc3RyY2FzZWNtcCAoImVuY3J5cHRlZCIsIGIt
> PnN1YnR5cGUpID09IDApCisgICAgICAgICAgICAgJiYgbXV0dF9hc2NpaV9zdHJjYXNlY21wICgi
> ZW5jcnlwdGVkIiwgYi0+c3VidHlwZSkgPT0gMCkKICAgICB7CiAgICAgICBwID0gbXV0dF9nZXRf
> cGFyYW1ldGVyICgicHJvdG9jb2wiLCBiLT5wYXJhbWV0ZXIpOwogCmRpZmYgLXJ1IG11dHQub3Jp
> Zy9pbml0LmMgbXV0dC9pbml0LmMKLS0tIG11dHQub3JpZy9pbml0LmMJMjAwNS0xMC0wNSAyMjoy
> NDo0MC4wMDAwMDAwMDAgKzAzMDAKKysrIG11dHQvaW5pdC5jCTIwMDUtMTItMDEgMjE6MDk6MjYu
> MDAwMDAwMDAwICswMjAwCkBAIC04MzQsOSArODM0LDkgQEAKICAgICBhID0gc2FmZV9tYWxsb2Mo
> c2l6ZW9mKEFUVEFDSF9NQVRDSCkpOwogCiAgICAgLyogc29tZSBjaGVhcCBoYWNrcyB0aGF0IEkg
> ZXhwZWN0IHRvIHJlbW92ZSAqLwotICAgIGlmICghbXV0dF9zdHJjYXNlY21wKGJ1Zi0+ZGF0YSwg
> ImFueSIpKQorICAgIGlmICghbXV0dF9hc2NpaV9zdHJjYXNlY21wKGJ1Zi0+ZGF0YSwgImFueSIp
> KQogICAgICAgYS0+bWFqb3IgPSBzYWZlX3N0cmR1cCgiKi8uKiIpOwotICAgIGVsc2UgaWYgKCFt
> dXR0X3N0cmNhc2VjbXAoYnVmLT5kYXRhLCAibm9uZSIpKQorICAgIGVsc2UgaWYgKCFtdXR0X2Fz
> Y2lpX3N0cmNhc2VjbXAoYnVmLT5kYXRhLCAibm9uZSIpKQogICAgICAgYS0+bWFqb3IgPSBzYWZl
> X3N0cmR1cCgiY2hlYXBfaGFjay90aGlzX3Nob3VsZF9uZXZlcl9tYXRjaCIpOwogICAgIGVsc2UK
> ICAgICAgIGEtPm1ham9yID0gc2FmZV9zdHJkdXAoYnVmLT5kYXRhKTsKQEAgLTg5OCw5ICs4OTgs
> OSBAQAogICB7CiAgICAgbXV0dF9leHRyYWN0X3Rva2VuIChidWYsIHMsIDApOwogCi0gICAgaWYg
> KCFtdXR0X3N0cmNhc2VjbXAoYnVmLT5kYXRhLCAiYW55IikpCisgICAgaWYgKCFtdXR0X2FzY2lp
> X3N0cmNhc2VjbXAoYnVmLT5kYXRhLCAiYW55IikpCiAgICAgICB0bXAgPSBzYWZlX3N0cmR1cCgi
> Ki8uKiIpOwotICAgIGVsc2UgaWYgKCFtdXR0X3N0cmNhc2VjbXAoYnVmLT5kYXRhLCAibm9uZSIp
> KQorICAgIGVsc2UgaWYgKCFtdXR0X2FzY2lpX3N0cmNhc2VjbXAoYnVmLT5kYXRhLCAibm9uZSIp
> KQogICAgICAgdG1wID0gc2FmZV9zdHJkdXAoImNoZWFwX2hhY2svdGhpc19zaG91bGRfbmV2ZXJf
> bWF0Y2giKTsKICAgICBlbHNlCiAgICAgICB0bXAgPSBzYWZlX3N0cmR1cChidWYtPmRhdGEpOwpA
> QCAtMTAwMSwxMyArMTAwMSwxMyBAQAogICAgIG9wID0gJysnOwogICAgIGNhdGVnb3J5LS07CiAg
> IH0KLSAgaWYgKCFtdXR0X3N0cm5jYXNlY21wKGNhdGVnb3J5LCAiYXR0YWNobWVudCIsIHN0cmxl
> bihjYXRlZ29yeSkpKSB7CisgIGlmICghbXV0dF9hc2NpaV9zdHJuY2FzZWNtcChjYXRlZ29yeSwg
> ImF0dGFjaG1lbnQiLCBzdHJsZW4oY2F0ZWdvcnkpKSkgewogICAgIGlmIChvcCA9PSAnKycpCiAg
> ICAgICBsaXN0cCA9ICZBdHRhY2hBbGxvdzsKICAgICBlbHNlCiAgICAgICBsaXN0cCA9ICZBdHRh
> Y2hFeGNsdWRlOwogICB9Ci0gIGVsc2UgaWYgKCFtdXR0X3N0cm5jYXNlY21wKGNhdGVnb3J5LCAi
> aW5saW5lIiwgc3RybGVuKGNhdGVnb3J5KSkpIHsKKyAgZWxzZSBpZiAoIW11dHRfYXNjaWlfc3Ry
> bmNhc2VjbXAoY2F0ZWdvcnksICJpbmxpbmUiLCBzdHJsZW4oY2F0ZWdvcnkpKSkgewogICAgIGlm
> IChvcCA9PSAnKycpCiAgICAgICBsaXN0cCA9ICZJbmxpbmVBbGxvdzsKICAgICBlbHNlCkBAIC0x
> MDM4LDEzICsxMDM4LDEzIEBACiAgICAgb3AgPSAnKyc7CiAgICAgcC0tOwogICB9Ci0gIGlmICgh
> bXV0dF9zdHJuY2FzZWNtcChwLCAiYXR0YWNobWVudCIsIHN0cmxlbihwKSkpIHsKKyAgaWYgKCFt
> dXR0X2FzY2lpX3N0cm5jYXNlY21wKHAsICJhdHRhY2htZW50Iiwgc3RybGVuKHApKSkgewogICAg
> IGlmIChvcCA9PSAnKycpCiAgICAgICBsaXN0cCA9ICZBdHRhY2hBbGxvdzsKICAgICBlbHNlCiAg
> ICAgICBsaXN0cCA9ICZBdHRhY2hFeGNsdWRlOwogICB9Ci0gIGVsc2UgaWYgKCFtdXR0X3N0cm5j
> YXNlY21wKHAsICJpbmxpbmUiLCBzdHJsZW4ocCkpKSB7CisgIGVsc2UgaWYgKCFtdXR0X2FzY2lp
> X3N0cm5jYXNlY21wKHAsICJpbmxpbmUiLCBzdHJsZW4ocCkpKSB7CiAgICAgaWYgKG9wID09ICcr
> JykKICAgICAgIGxpc3RwID0gJklubGluZUFsbG93OwogICAgIGVsc2UKZGlmZiAtcnUgbXV0dC5v
> cmlnL2xpYi5jIG11dHQvbGliLmMKLS0tIG11dHQub3JpZy9saWIuYwkyMDA1LTA5LTE3IDIzOjQ2
> OjEwLjAwMDAwMDAwMCArMDMwMAorKysgbXV0dC9saWIuYwkyMDA1LTEyLTAxIDIxOjEwOjEyLjAw
> MDAwMDAwMCArMDIwMApAQCAtNDYsNiArNDYsNyBAQAogI2RlZmluZSBFWF9PSyAwCiAjZW5kaWYK
> IAorI2luY2x1ZGUgImFzY2lpLmgiCiAjaW5jbHVkZSAibGliLmgiCiAKIHN0YXRpYyBzdHJ1Y3Qg
> c3lzZXhpdHMKQEAgLTcwNCw2ICs3MDUsMTEgQEAKICAgcmV0dXJuIHN0cmNhc2VjbXAoTk9OVUxM
> KGEpLCBOT05VTEwoYikpOwogfQogCitpbnQgbXV0dF9hc2NpaV9zdHJjYXNlY21wKGNvbnN0IGNo
> YXIgKmEsIGNvbnN0IGNoYXIgKmIpCit7CisgIHJldHVybiBhc2NpaV9zdHJjYXNlY21wKE5PTlVM
> TChhKSwgTk9OVUxMKGIpKTsKK30KKwogaW50IG11dHRfc3RybmNtcChjb25zdCBjaGFyICphLCBj
> b25zdCBjaGFyICpiLCBzaXplX3QgbCkKIHsKICAgcmV0dXJuIHN0cm5jbXAoTk9OVUxMKGEpLCBO
> T05VTEwoYiksIGwpOwpAQCAtNzE0LDYgKzcyMCwxMSBAQAogICByZXR1cm4gc3RybmNhc2VjbXAo
> Tk9OVUxMKGEpLCBOT05VTEwoYiksIGwpOwogfQogCitpbnQgbXV0dF9hc2NpaV9zdHJuY2FzZWNt
> cChjb25zdCBjaGFyICphLCBjb25zdCBjaGFyICpiLCBzaXplX3QgbCkKK3sKKyAgcmV0dXJuIGFz
> Y2lpX3N0cm5jYXNlY21wKE5PTlVMTChhKSwgTk9OVUxMKGIpLCBsKTsKK30KKwogc2l6ZV90IG11
> dHRfc3RybGVuKGNvbnN0IGNoYXIgKmEpCiB7CiAgIHJldHVybiBhID8gc3RybGVuIChhKSA6IDA7
> CmRpZmYgLXJ1IG11dHQub3JpZy9saWIuaCBtdXR0L2xpYi5oCi0tLSBtdXR0Lm9yaWcvbGliLmgJ
> MjAwNS0wOS0xNyAyMzo0NjoxMC4wMDAwMDAwMDAgKzAzMDAKKysrIG11dHQvbGliLmgJMjAwNS0x
> Mi0wMSAyMToxMjo0MC4wMDAwMDAwMDAgKzAyMDAKQEAgLTEyOCw4ICsxMjgsMTAgQEAKIGludCBt
> dXR0X2NvcHlfYnl0ZXMgKEZJTEUgKiwgRklMRSAqLCBzaXplX3QpOwogaW50IG11dHRfcnhfc2Fu
> aXRpemVfc3RyaW5nIChjaGFyICosIHNpemVfdCwgY29uc3QgY2hhciAqKTsKIGludCBtdXR0X3N0
> cmNhc2VjbXAgKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKK2ludCBtdXR0X2FzY2lpX3N0
> cmNhc2VjbXAgKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKTsKIGludCBtdXR0X3N0cmNtcCAo
> Y29uc3QgY2hhciAqLCBjb25zdCBjaGFyICopOwogaW50IG11dHRfc3RybmNhc2VjbXAgKGNvbnN0
> IGNoYXIgKiwgY29uc3QgY2hhciAqLCBzaXplX3QpOworaW50IG11dHRfYXNjaWlfc3RybmNhc2Vj
> bXAgKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqLCBzaXplX3QpOwogaW50IG11dHRfc3RybmNt
> cCAoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIHNpemVfdCk7CiBpbnQgbXV0dF9zdHJjb2xs
> IChjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKik7CiBpbnQgc2FmZV9vcGVuIChjb25zdCBjaGFy
> ICosIGludCk7CmRpZmYgLXJ1IG11dHQub3JpZy9wYXJzZS5jIG11dHQvcGFyc2UuYwotLS0gbXV0
> dC5vcmlnL3BhcnNlLmMJMjAwNS0xMC0yMSAwNzozNTozNy4wMDAwMDAwMDAgKzAzMDAKKysrIG11
> dHQvcGFyc2UuYwkyMDA1LTEyLTAxIDIxOjEwOjM2LjAwMDAwMDAwMCArMDIwMApAQCAtMTU0Miw3
> ICsxNTQyLDcgQEAKICAgICB7CiAgICAgICAvKiBBbHdheXMgcmVjdXJzZSBtdWx0aXBhcnRzLCBl
> eGNlcHQgbXVsdGlwYXJ0L2FsdGVybmF0aXZlLiAqLwogICAgICAgc2hhbGxyZWN1cnNlID0gMTsK
> LSAgICAgIGlmICghbXV0dF9zdHJjYXNlY21wKGJwLT5zdWJ0eXBlLCAiYWx0ZXJuYXRpdmUiKSkK
> KyAgICAgIGlmICghbXV0dF9hc2NpaV9zdHJjYXNlY21wKGJwLT5zdWJ0eXBlLCAiYWx0ZXJuYXRp
> dmUiKSkKICAgICAgICAgc2hhbGxyZWN1cnNlID0gMDsKIAogICAgICAgLyogRG9uJ3QgY291bnQg
> Y29udGFpbmVycyBpZiB0aGV5J3JlIHRvcC1sZXZlbC4gKi8KZGlmZiAtcnUgbXV0dC5vcmlnL3Nt
> aW1lLmMgbXV0dC9zbWltZS5jCi0tLSBtdXR0Lm9yaWcvc21pbWUuYwkyMDA1LTEwLTIxIDA3OjM1
> OjM4LjAwMDAwMDAwMCArMDMwMAorKysgbXV0dC9zbWltZS5jCTIwMDUtMTItMDEgMjE6MTE6NTUu
> MDAwMDAwMDAwICswMjAwCkBAIC0xNjIxLDcgKzE2MjEsNyBAQAogICAgICAgcmV3aW5kIChzbWlt
> ZWVycik7CiAgICAgICAKICAgICAgIGxpbmUgPSBtdXR0X3JlYWRfbGluZSAobGluZSwgJmxpbmVs
> ZW4sIHNtaW1lZXJyLCAmbGluZW5vKTsKLSAgICAgIGlmIChsaW5lbGVuICYmICFtdXR0X3N0cmNh
> c2VjbXAgKGxpbmUsICJ2ZXJpZmljYXRpb24gc3VjY2Vzc2Z1bCIpKQorICAgICAgaWYgKGxpbmVs
> ZW4gJiYgIW11dHRfYXNjaWlfc3RyY2FzZWNtcCAobGluZSwgInZlcmlmaWNhdGlvbiBzdWNjZXNz
> ZnVsIikpCiAJYmFkc2lnID0gMDsKIAogICAgICAgRlJFRSAoJmxpbmUpOwpAQCAtMTg0Miw3ICsx
> ODQyLDcgQEAKICAgICByZXdpbmQgKHNtaW1lZXJyKTsKICAgICAKICAgICBsaW5lID0gbXV0dF9y
> ZWFkX2xpbmUgKGxpbmUsICZsaW5lbGVuLCBzbWltZWVyciwgJmxpbmVubyk7Ci0gICAgaWYgKGxp
> bmVsZW4gJiYgIW11dHRfc3RyY2FzZWNtcCAobGluZSwgInZlcmlmaWNhdGlvbiBzdWNjZXNzZnVs
> IikpCisgICAgaWYgKGxpbmVsZW4gJiYgIW11dHRfYXNjaWlfc3RyY2FzZWNtcCAobGluZSwgInZl
> cmlmaWNhdGlvbiBzdWNjZXNzZnVsIikpCiAgICAgICBtLT5nb29kc2lnID0gMTsKICAgICBGUkVF
> ICgmbGluZSk7CiAgIH0K
>
>
>
--
Thomas Roessler <roessler@xxxxxxxxxxxxxxxxxx>