<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>129759</bug_id>
          
          <creation_ts>2006-04-12 16:12 0000</creation_ts>
          <short_desc>app-cdr/cdrtools-2.01.01_alpha07 lacks the unicode patch</short_desc>
          <delta_ts>2006-10-28 04:19:22 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Linux</product>
          <component>Applications</component>
          <version>unspecified</version>
          <rep_platform>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          
          <priority>P2</priority>
          <bug_severity>major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>rudo@matfyz.cz</reporter>
          <assigned_to>media-optical@gentoo.org</assigned_to>
          <cc>jakub@gentoo.org</cc>
    
    <cc>rudo@matfyz.cz</cc>
    
    <cc>slyfox@inbox.ru</cc>
    
    <cc>theli@ukr.net</cc>

      

      
          <long_desc isprivate="0">
            <who>rudo@matfyz.cz</who>
            <bug_when>2006-04-12 16:12:08 0000</bug_when>
            <thetext>Hello.

Recently, app-cdr/cdrtools-2.01.01_alpha07 has been marked stable. In the ChangeLog, I noticed there is supposed to be a &quot;a better fix for unicode&quot;. While this does fix displaying the name of cdrtools author, the patch (mkisofs-iconv-10.patch) that made it possible to create (valid) ISO images with Joliet extensions under UTF-8 locale was removed from the ebuild.

To reproduce, create a file with some accents in its name (I&apos;ll use &amp;#269;</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>rudo@matfyz.cz</who>
            <bug_when>2006-04-12 16:12:08 0000</bug_when>
            <thetext>Hello.

Recently, app-cdr/cdrtools-2.01.01_alpha07 has been marked stable. In the ChangeLog, I noticed there is supposed to be a &quot;a better fix for unicode&quot;. While this does fix displaying the name of cdrtools author, the patch (mkisofs-iconv-10.patch) that made it possible to create (valid) ISO images with Joliet extensions under UTF-8 locale was removed from the ebuild.

To reproduce, create a file with some accents in its name (I&apos;ll use &amp;#269;ú&amp;#269;o.txt here) and run:

# mkisofs -r -J -o i.iso &amp;#269;ú&amp;#269;o.txt
# mount -o loop,utf8,norock i.iso /mnt
# ls -l /mnt

You see garbled filename (you can get the same result by running &quot;recode l1..utf8 &lt;&lt;&lt;&amp;#269;ú&amp;#269;o.txt&quot;).

cdrtools-2.01-r3 works without problems in this regard.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>rudo@matfyz.cz</who>
            <bug_when>2006-04-12 16:24:48 0000</bug_when>
            <thetext>Hmm, I see bugzilla could not cope with the accented text either ;-)))

You should get the idea nevertheless.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>madalexonline@yahoo.co.uk</who>
            <bug_when>2006-05-01 04:44:32 0000</bug_when>
            <thetext>Indeed, forcing the use of utf8 with
# mkisofs -input-charset=utf8
no longer works; it complains &quot;Unknown charset&quot;
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>theli@ukr.net</who>
            <bug_when>2006-06-19 08:43:42 0000</bug_when>
            <thetext>cdrtools-2.01.01_alpha10 behaves in the same way :(</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>pylon@gentoo.org</who>
            <bug_when>2006-06-19 16:47:20 0000</bug_when>
            <thetext>(In reply to comment #3)
&gt; cdrtools-2.01.01_alpha10 behaves in the same way :(

Strange.  I though I already posted an update to that bug several days ago.

I tried to apply the patch to the current alpha10-release of cdrtools, but I had no luck.  Even with patching the patch I could not get it working.  Too many things changed and I&apos;m not used to cdrtool&apos;s code.

The utf8-USE-flag indeed just enables proper output of the messages, but can&apos;t handle the iso-creation with utf-8 filenames.

It&apos;s much appreciated if somebody can send in a patch that works with alpha10.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>kseongcheol@yahoo.com</who>
            <bug_when>2006-07-21 18:56:29 0000</bug_when>
            <thetext>Created an attachment (id=92466)
This works to me.

I&apos;m not a programmer but made a patch based on the original mkisofs-iconv-10.patch.
not sure it is in the right way, but it works to me.
If it&apos;s in a wrong way, please someone fix that.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jakub@gentoo.org</who>
            <bug_when>2006-09-04 10:15:07 0000</bug_when>
            <thetext>*** Bug 146287 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>pylon@gentoo.org</who>
            <bug_when>2006-10-28 01:55:41 0000</bug_when>
            <thetext>(In reply to comment #5)
&gt; not sure it is in the right way, but it works to me.

Great, that seems to work:

elladan tmp # mkisofs -r -J -o i.iso &amp;#337;&amp;#369;</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>pylon@gentoo.org</who>
            <bug_when>2006-10-28 01:55:41 0000</bug_when>
            <thetext>(In reply to comment #5)
&gt; not sure it is in the right way, but it works to me.

Great, that seems to work:

elladan tmp # mkisofs -r -J -o i.iso &amp;#337;&amp;#369;þ&amp;#8364;&amp;#26505;a.txt
INFO:   UTF-8 character encoding detected by locale settings.
        Assuming UTF-8 encoded filenames on source filesystem,
        use -input-charset to override.
Total translation table size: 0
Total rockridge attributes bytes: 258
Total directory bytes: 0
Path table size(bytes): 10
Max brk space used 0
182 extents written (0 MB)
elladan tmp # mount -o loop,utf8,norock i.iso /mnt/misc/
elladan tmp # ls -l /mnt/misc/
total 1
-r-xr-xr-x 1 root root 17 28. Okt 10:49 &amp;#337;&amp;#369;þ&amp;#8364;&amp;#26505;a.txt


I&apos;m going to apply your patch to all newer versions of cdrtools in the tree.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>pylon@gentoo.org</who>
            <bug_when>2006-10-28 04:19:22 0000</bug_when>
            <thetext>It&apos;s in portage, so let&apos;s close this bug.</thetext>
          </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92466</attachid>
            <date>2006-07-21 18:56 0000</date>
            <desc>This works to me.</desc>
            <filename>mkisofs-iconv-10-2.01.01_alpha11.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">ZGlmZiAtdU5yIGNkcnRvb2xzLTIuMDEuMDEub3JpZy9pbmNsdWRlL3VubHMuaCBjZHJ0b29scy0y
LjAxLjAxL2luY2x1ZGUvdW5scy5oCi0tLSBjZHJ0b29scy0yLjAxLjAxLm9yaWcvaW5jbHVkZS91
bmxzLmgJMjAwNS0wNC0yMSAxOToxMjoyNy4wMDAwMDAwMDAgKzA5MDAKKysrIGNkcnRvb2xzLTIu
MDEuMDEvaW5jbHVkZS91bmxzLmgJMjAwNi0wNy0yMiAxMDozNjoyOS42NTU1OTg3NTAgKzA5MDAK
QEAgLTI2LDYgKzI2LDEwIEBACiAjaW5jbHVkZSA8cHJvdG90eXAuaD4KICNlbmRpZgogCisjaWZk
ZWYgVVNFX0lDT05WCisjaW5jbHVkZSA8aWNvbnYuaD4KKyNlbmRpZgorCiAjaWZkZWYJX19jcGx1
c3BsdXMKIGV4dGVybiAiQyIgewogI2VuZGlmCkBAIC00MCw2ICs0NCw5IEBACiAJdW5zaWduZWQg
Y2hhciAJKip1bmxzX3VuaTJjczsJCS8qIFVuaWNvZGUgLT4gQ2hhcnNldAkqLwogCXN0cnVjdCB1
bmxzX3VuaWNvZGUgKnVubHNfY3MydW5pOwkvKiBDaGFyc2V0IC0+IFVuaWNvZGUJKi8KIAlzdHJ1
Y3QgdW5sc190YWJsZSAqdW5sc19uZXh0OwkJLyogTmV4dCB0YWJsZQkJKi8KKyNpZmRlZiBVU0Vf
SUNPTlYKKwlpY29udl90IGljb252X2Q7CisjZW5kaWYKIH07CiAKIGV4dGVybiBpbnQJCWluaXRf
dW5scwkJX19QUigodm9pZCkpOwpAQCAtNTEsNiArNTgsOSBAQAogZXh0ZXJuIHZvaWQgCQl1bmxv
YWRfdW5scwkJX19QUigoc3RydWN0IHVubHNfdGFibGUgKikpOwogZXh0ZXJuIHN0cnVjdCB1bmxz
X3RhYmxlICpsb2FkX3VubHNfZGVmYXVsdAlfX1BSKCh2b2lkKSk7CiBleHRlcm4gaW50CQlpbml0
X3VubHNfZmlsZQkJX19QUigoY2hhciAqIG5hbWUpKTsKKyNpZmRlZiBVU0VfSUNPTlYKK2V4dGVy
biBpbnQJCWluaXRfdW5sc19pY29udgkJX19QUigoY2hhciAqIG5hbWUpKTsKKyNlbmRpZgogCiAj
aWZkZWYJX19jcGx1c3BsdXMKIH0KZGlmZiAtdU5yIGNkcnRvb2xzLTIuMDEuMDEub3JpZy9saWJ1
bmxzL1RhcmdldHMgY2RydG9vbHMtMi4wMS4wMS9saWJ1bmxzL1RhcmdldHMKLS0tIGNkcnRvb2xz
LTIuMDEuMDEub3JpZy9saWJ1bmxzL1RhcmdldHMJMjAwMi0xMi0wMyAwOTozNDoyNy4wMDAwMDAw
MDAgKzA5MDAKKysrIGNkcnRvb2xzLTIuMDEuMDEvbGlidW5scy9UYXJnZXRzCTIwMDYtMDctMjIg
MTA6MzY6MjkuNjU1NTk4NzUwICswOTAwCkBAIC0zOSw0ICszOSw1IEBACiAJbmxzX2NwMTAwMjku
YyBcCiAJbmxzX2NwMTAwNzkuYyBcCiAJbmxzX2NwMTAwODEuYyBcCi0JbmxzX2ZpbGUuYworCW5s
c19maWxlLmMgXAorCW5sc19pY29udi5jCmRpZmYgLXVOciBjZHJ0b29scy0yLjAxLjAxLm9yaWcv
bGlidW5scy9saWJ1bmxzLm1rIGNkcnRvb2xzLTIuMDEuMDEvbGlidW5scy9saWJ1bmxzLm1rCi0t
LSBjZHJ0b29scy0yLjAxLjAxLm9yaWcvbGlidW5scy9saWJ1bmxzLm1rCTIwMDAtMDMtMjUgMjE6
NTE6NTYuMDAwMDAwMDAwICswOTAwCisrKyBjZHJ0b29scy0yLjAxLjAxL2xpYnVubHMvbGlidW5s
cy5tawkyMDA2LTA3LTIyIDEwOjM2OjI5LjY1NTU5ODc1MCArMDkwMApAQCAtOCw2ICs4LDcgQEAK
IElOU0RJUj0JCWxpYgogVEFSR0VUTElCPQl1bmxzCiAjQ1BQT1BUUyArPQktSXN0ZGlvCitDUFBP
UFRTICs9CS1EVVNFX0lDT05WCiBpbmNsdWRlCQlUYXJnZXRzCiBMSUJTPQkJCiAKZGlmZiAtdU5y
IGNkcnRvb2xzLTIuMDEuMDEub3JpZy9saWJ1bmxzL25scy5oIGNkcnRvb2xzLTIuMDEuMDEvbGli
dW5scy9ubHMuaAotLS0gY2RydG9vbHMtMi4wMS4wMS5vcmlnL2xpYnVubHMvbmxzLmgJMjAwNS0w
NS0wMiAwNTo1NTo1MC4wMDAwMDAwMDAgKzA5MDAKKysrIGNkcnRvb2xzLTIuMDEuMDEvbGlidW5s
cy9ubHMuaAkyMDA2LTA3LTIyIDEwOjM2OjI5LjY1NTU5ODc1MCArMDkwMApAQCAtMTEwLDUgKzEx
MCw4IEBACiBleHRlcm4gaW50IGluaXRfdW5sc19jcDEwMDc5CV9fUFIoKHZvaWQpKTsKIGV4dGVy
biBpbnQgaW5pdF91bmxzX2NwMTAwODEJX19QUigodm9pZCkpOwogZXh0ZXJuIGludCBpbml0X3Vu
bHNfZmlsZQlfX1BSKChjaGFyICogbmFtZSkpOworI2lmZGVmIFVTRV9JQ09OVgorZXh0ZXJuIGlu
dCBpbml0X3VubHNfaWNvbnYJX19QUigoY2hhciAqIG5hbWUpKTsKKyNlbmRpZgogCiAjZW5kaWYJ
LyogX05MU19IICovCmRpZmYgLXVOciBjZHJ0b29scy0yLjAxLjAxLm9yaWcvbGlidW5scy9ubHNf
aWNvbnYuYyBjZHJ0b29scy0yLjAxLjAxL2xpYnVubHMvbmxzX2ljb252LmMKLS0tIGNkcnRvb2xz
LTIuMDEuMDEub3JpZy9saWJ1bmxzL25sc19pY29udi5jCTE5NzAtMDEtMDEgMDk6MDA6MDAuMDAw
MDAwMDAwICswOTAwCisrKyBjZHJ0b29scy0yLjAxLjAxL2xpYnVubHMvbmxzX2ljb252LmMJMjAw
Ni0wNy0yMiAxMDozNjoyOS42NTU1OTg3NTAgKzA5MDAKQEAgLTAsMCArMSw3OSBAQAorLyogQCgj
KW5sc19pY29udi5jCTEuMCAwMi8wNC8yMCAyMDAyIEouIFNjaGlsbGluZyAgKi8KKyNpZm5kZWYg
bGludAorc3RhdGljCWNoYXIgc2Njc2lkW10gPQorCSJAKCMpbmxzX2ljb252LmMJMS4wIDAyLzAx
LzIwIDIwMDIgSi4gU2NoaWxsaW5nIjsKKyNlbmRpZgorLyoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBm
cmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBp
dCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1
Ymxpc2hlZCBieQorICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNp
b24gMiwgb3IgKGF0IHlvdXIgb3B0aW9uKQorICogYW55IGxhdGVyIHZlcnNpb24uCisgKgorICog
VGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1
c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w
bGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug
Zm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5
IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHBy
b2dyYW07IHNlZSB0aGUgZmlsZSBDT1BZSU5HLiAgSWYgbm90LCB3cml0ZSB0bworICogdGhlIEZy
ZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgNjc1IE1hc3MgQXZlLCBDYW1icmlkZ2UsIE1BIDAyMTM5
LCBVU0EuCisgKi8KKy8qCisgKglNb2RpZmljYXRpb25zIHRvIG1ha2UgdGhlIGNvZGUgcG9ydGFi
bGUgQ29weXJpZ2h0IChjKSAyMDAwIEouIFNjaGlsbGluZworICoKKyAqIG5sc19pY29udjogY3Jl
YXRlIGEgcHNldWRvLWNoYXJzZXQgdGFibGUgdG8gdXNlIGljb252KCkgcHJvdmlkZWQgYnkgQwor
ICogbGlicmFyeSBvciBsaWJpY29udiBieSBCcnVubyBIYWlibGUKKyAqIFRoZSBVbmljb2RlIHRv
IGNoYXJzZXQgdGFibGUgaGFzIG9ubHkgZXhhY3QgbWFwcGluZ3MuCisgKgorICoKKyAqIEp1bmdz
aGlrIFNoaW4gKGpzaGluQG1haWxhcHMub3JnKSAwNC1GZWItMjAwMgorICovCisKKyNpZmRlZiBV
U0VfSUNPTlYKKyNpbmNsdWRlIDxtY29uZmlnLmg+CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNs
dWRlIDxzdGR4bGliLmg+CisjaW5jbHVkZSA8c3RyZGVmcy5oPgorI2luY2x1ZGUgIm5scy5oIgor
I2luY2x1ZGUgPGljb252Lmg+CisKKworaW50Citpbml0X3VubHNfaWNvbnYoY2hhcnNldCkKKwlj
aGFyCSpjaGFyc2V0OworeworCWljb252X3QgaWNvbnZfZDsgIC8qIGljb252IGNvbnZlcnNpb24g
ZGVzY3JpcHRvciAqLworCXN0cnVjdCB1bmxzX3RhYmxlICp0YWJsZTsKKworCS8qIGdpdmUgdXAg
aWYgbm8gY2hhcnNldCBpcyBnaXZlbiAqLworCWlmIChjaGFyc2V0ID09IE5VTEwpCisJCXJldHVy
biAtMTsKKworCS8qIHNlZSBpZiB3ZSBhbHJlYWR5IGhhdmUgYSB0YWJsZSB3aXRoIHRoaXMgbmFt
ZSAtIGJ1aWx0IGluIHRhYmxlcworCSAgIGhhdmUgcHJlY2VkZW5jZSBvdmVyIGljb252KCkgLSBp
LmUuIGNhbid0IGhhdmUgdGhlIG5hbWUgb2YgYW4KKwkgICBleGlzdGluZyB0YWJsZS4gQWxzbywg
d2UgbWF5IGhhdmUgYWxyZWFkeSByZWdpc3RlcmVkIHRoaXMgZmlsZQorCSAgIHRhYmxlICovCisJ
aWYgKGZpbmRfdW5scyhjaGFyc2V0KSAhPSBOVUxMKQorCQlyZXR1cm4gLTE7CisKKwlpZiAoKGlj
b252X2QgPSBpY29udl9vcGVuKCJVQ1MtMkJFIiwgY2hhcnNldCkpID09IChpY29udl90KSAtMSkK
KwkJcmV0dXJuIC0xOworCisKKwkvKiBzZXQgdXAgdGhlIHRhYmxlICovCisJaWYgKCh0YWJsZSA9
IChzdHJ1Y3QgdW5sc190YWJsZSAqKW1hbGxvYyhzaXplb2YgKHN0cnVjdCB1bmxzX3RhYmxlKSkp
CisJCQkJCQkJPT0gTlVMTCkgeworCQlyZXR1cm4gLTE7CisJfQorCisJLyogZ2l2ZSB0aGUgdGFi
bGUgdGhlIGZpbGUgbmFtZSwgc28gd2UgY2FuIGZpbmQgaXQgYWdhaW4gaWYgbmVlZGVkICovCisJ
dGFibGUtPnVubHNfbmFtZSA9IHN0cmR1cChjaGFyc2V0KTsKKwl0YWJsZS0+aWNvbnZfZCA9IGlj
b252X2Q7CisJdGFibGUtPnVubHNfdW5pMmNzID0gTlVMTDsKKwl0YWJsZS0+dW5sc19jczJ1bmkg
PSBOVUxMOworCXRhYmxlLT51bmxzX25leHQgPSBOVUxMOworCisJLyogcmVnaXN0ZXIgdGhlIHRh
YmxlICovCisJcmV0dXJuIHJlZ2lzdGVyX3VubHModGFibGUpOworfQorI2VuZGlmCmRpZmYgLXVO
ciBjZHJ0b29scy0yLjAxLjAxLm9yaWcvbWtpc29mcy9NYWtlZmlsZSBjZHJ0b29scy0yLjAxLjAx
L21raXNvZnMvTWFrZWZpbGUKLS0tIGNkcnRvb2xzLTIuMDEuMDEub3JpZy9ta2lzb2ZzL01ha2Vm
aWxlCTIwMDQtMDItMjMgMDA6MTM6NDMuMDAwMDAwMDAwICswOTAwCisrKyBjZHJ0b29scy0yLjAx
LjAxL21raXNvZnMvTWFrZWZpbGUJMjAwNi0wNy0yMiAxMDozNjoyOS45MDM2MTQyNTAgKzA5MDAK
QEAgLTMxLDYgKzMxLDcgQEAKIENQUE9QVFMgKz0JLURVREYKIENQUE9QVFMgKz0JLUREVkRfVklE
RU8KIENQUE9QVFMgKz0JLURTT1JUSU5HCitDUFBPUFRTICs9CS1EVVNFX0lDT05WCiBDUFBPUFRT
ICs9CS1JLi4vbGliaGZzX2lzby8KIENQUE9QVFMJKz0JLURIQVZFX0NPTkZJR19IIC1EVVNFX0xJ
QlNDSElMWSAtRFVTRV9TQ0cgXAogCQknLURBUFBJRF9ERUZBVUxUPSJNS0lTT0ZTIElTTyA5NjYw
L0hGUyBGSUxFU1lTVEVNIEJVSUxERVIgJiBDRFJFQ09SRCBDRC1SL0RWRCBDUkVBVE9SIChDKSAx
OTkzIEUuWU9VTkdEQUxFIChDKSAxOTk3IEouUEVBUlNPTi9KLlNDSElMTElORyInIFwKZGlmZiAt
dU5yIGNkcnRvb2xzLTIuMDEuMDEub3JpZy9ta2lzb2ZzL2pvbGlldC5jIGNkcnRvb2xzLTIuMDEu
MDEvbWtpc29mcy9qb2xpZXQuYwotLS0gY2RydG9vbHMtMi4wMS4wMS5vcmlnL21raXNvZnMvam9s
aWV0LmMJMjAwNS0wNS0wMiAwMzozODoxNC4wMDAwMDAwMDAgKzA5MDAKKysrIGNkcnRvb2xzLTIu
MDEuMDEvbWtpc29mcy9qb2xpZXQuYwkyMDA2LTA3LTIyIDEwOjM2OjI5LjkwMzYxNDI1MCArMDkw
MApAQCAtOTAsNiArOTAsMTEgQEAKICNpbmNsdWRlIDx1bmxzLmg+CS8qIEZvciBVTklDT0RFIHRy
YW5zbGF0aW9uICovCiAjaW5jbHVkZSA8c2NoaWx5Lmg+CiAKKyNpZmRlZiBVU0VfSUNPTlYKKyNp
bmNsdWRlIDxpY29udi5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjZW5kaWYKKwogc3RhdGljIFVp
bnQJanBhdGhfdGFibGVfaW5kZXg7CiBzdGF0aWMgc3RydWN0IGRpcmVjdG9yeSAqKmpwYXRobGlz
dDsKIHN0YXRpYyBpbnQJbmV4dF9qcGF0aF9pbmRleCA9IDE7CkBAIC0xMDMsMTMgKzEwOCwyMyBA
QAogfTsKIAogI2lmZGVmCVVERgotCXZvaWQJY29udmVydF90b191bmljb2RlCV9fUFIoKHVuc2ln
bmVkIGNoYXIgKmJ1ZmZlciwKKyMJaWZkZWYgVVNFX0lDT05WCisJc2l6ZV90CisjCWVsc2UKKwl2
b2lkCisjCWVuZGlmCisJCWNvbnZlcnRfdG9fdW5pY29kZQlfX1BSKCh1bnNpZ25lZCBjaGFyICpi
dWZmZXIsCiAJCWludCBzaXplLCBjaGFyICpzb3VyY2UsIHN0cnVjdCB1bmxzX3RhYmxlICppbmxz
KSk7Ci0JaW50CWpvbGlldF9zdHJsZW4JCV9fUFIoKGNvbnN0IGNoYXIgKnN0cmluZykpOworCWlu
dAlqb2xpZXRfc3RybGVuCQlfX1BSKChjb25zdCBjaGFyICpzdHJpbmcsIHN0cnVjdCB1bmxzX3Rh
YmxlICppbmxzKSk7CiAjZWxzZQotc3RhdGljIHZvaWQJY29udmVydF90b191bmljb2RlCV9fUFIo
KHVuc2lnbmVkIGNoYXIgKmJ1ZmZlciwKKyMJaWZkZWYgVVNFX0lDT05WCisJc3RhdGljIHNpemVf
dAorIwllbHNlCisJc3RhdGljIHZvaWQKKyNlbmRpZgorCQljb252ZXJ0X3RvX3VuaWNvZGUJX19Q
UigodW5zaWduZWQgY2hhciAqYnVmZmVyLAogCQlpbnQgc2l6ZSwgY2hhciAqc291cmNlLCBzdHJ1
Y3QgdW5sc190YWJsZSAqaW5scykpOwotc3RhdGljIGludAlqb2xpZXRfc3RybGVuCQlfX1BSKChj
b25zdCBjaGFyICpzdHJpbmcpKTsKK3N0YXRpYyBpbnQJam9saWV0X3N0cmxlbgkJX19QUigoY29u
c3QgY2hhciAqc3RyaW5nLCBzdHJ1Y3QgdW5sc190YWJsZSAqaW5scykpOwogI2VuZGlmCiBzdGF0
aWMgdm9pZAlnZXRfam9saWV0X3ZvbF9kZXNjCV9fUFIoKHN0cnVjdCBpc29fcHJpbWFyeV9kZXNj
cmlwdG9yICpqdm9sX2Rlc2MpKTsKIHN0YXRpYyB2b2lkCWFzc2lnbl9qb2xpZXRfZGlyZWN0b3J5
X2FkZHJlc3NlcyBfX1BSKChzdHJ1Y3QgZGlyZWN0b3J5ICpub2RlKSk7CkBAIC0xNjEsNiArMTc2
LDIwIEBACiAJaWYgKGlubHMgPT0gb25scykKIAkJcmV0dXJuIChjKTsKIAorI2lmZGVmIFVTRV9J
Q09OVgorCWlmKGlubHMtPnVubHNfY3MydW5pID09IE5VTEwgfHwgb25scy0+dW5sc191bmkyY3Mg
PT0gTlVMTCkgeworCQkvKgorCQkgKiBUaGlzIHNob3VsZG4ndCBiZSByZWFjaGVkCisJCSAqLwor
CQlzdGF0aWMgQk9PTCBpY29udl93YXJuZWQgPSBGQUxTRTsKKwkJaWYoIWljb252X3dhcm5lZCkg
eworCQkJZXJyb3IoIldhcm5pbmc6IEljb252IGNvbnZlcnNpb24gbm90IHN1cHBvcnRlZCBpbiBj
b252X2NoYXJzZXQuXG4iKTsKKwkJCWljb252X3dhcm5lZCA9IFRSVUU7CisJCX0KKwkJcmV0dXJu
IChjKTsKKwl9CisjZW5kaWYKKwogCS8qIGdldCBoaWdoIGFuZCBsb3cgVU5JQ09ERSBieXRlcyAq
LwogCXVoID0gaW5scy0+dW5sc19jczJ1bmlbY10udW5sc19oaWdoOwogCXVsID0gaW5scy0+dW5s
c19jczJ1bmlbY10udW5sc19sb3c7CkBAIC0xODYsMTAgKzIxNSwxOCBAQAogICoKICAqIE5vdGVz
OgogICovCi0jaWZkZWYJVURGCi12b2lkCisjaWZkZWYgVVNFX0lDT05WCisjCWlmCVVERgorc2l6
ZV90CisjCWVsc2UKK3N0YXRpYyBzaXplX3QKKyMJZW5kaWYKICNlbHNlCisjCWlmCVVERgordm9p
ZAorIwllbHNlCiBzdGF0aWMgdm9pZAorIwllbmRpZgogI2VuZGlmCiBjb252ZXJ0X3RvX3VuaWNv
ZGUoYnVmZmVyLCBzaXplLCBzb3VyY2UsIGlubHMpCiAJdW5zaWduZWQgY2hhcgkqYnVmZmVyOwpA
QCAtMjE2LDYgKzI1Myw1MSBAQAogCQl0bXBidWYgPSAoVWNoYXIgKikgc291cmNlOwogCX0KIAor
I2lmZGVmIFVTRV9JQ09OVgorCWlmIChpbmxzLT5pY29udl9kICYmIGlubHMtPnVubHNfY3MydW5p
PT1OVUxMICYmCisJCQlpbmxzLT51bmxzX3VuaTJjcz09TlVMTCkgeworCQljaGFyICppbnB0ciA9
IHRtcGJ1ZjsKKwkJY2hhciAqb3V0cHRyID0gYnVmZmVyOworCQlzaXplX3QgaW5sZWZ0ID0gc3Ry
bGVuKHRtcGJ1Zik7CisJCXNpemVfdCBpbmxlbiA9IGlubGVmdDsKKwkJc2l6ZV90IG91dGxlZnQg
PSBzaXplOworCisJCWljb252KGlubHMtPmljb252X2QsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwp
OworCQlpZihpY29udihpbmxzLT5pY29udl9kLCAmaW5wdHIsICZpbmxlZnQsICZvdXRwdHIsICZv
dXRsZWZ0KSA9PQorCQkJCShzaXplX3QpLTEgJiYgZXJybm8gPT0gRUlMU0VRKSB7CisJCQlmcHJp
bnRmKHN0ZGVyciwgIkluY29ycmVjdGx5IGVuY29kZWQgc3RyaW5nICglcykgIgorCQkJCSJlbmNv
dW50ZXJlZC5cblBvc3NpYmx5IGNyZWF0aW5nIGFuIGludmFsaWQgIgorCQkJCSJKb2xpZXQgZXh0
ZW5zaW9uLiBBYm9ydGluZy5cbiIsIHNvdXJjZSk7CisJCQlleGl0KDEpOworCQl9CisKKwkgIAlm
b3IgKGkgPSAwOyAoaSArIDEpIDwgc2l6ZSAtIG91dGxlZnQ7IGkgKz0gMikgewkvKiBTaXplIG1h
eSBiZSBvZGQhISEqLworCQkJaWYgKGJ1ZmZlcltpXT09J1wwJykgeworCQkJCXN3aXRjaCAoYnVm
ZmVyW2krMV0pIHsgICAvKiBJbnZhbGlkIGNoYXJhY3RlcnMgZm9yIEpvbGlldCAqLworCQkJCQlj
YXNlICcqJzoKKwkJCQkJY2FzZSAnLyc6CisJCQkJCWNhc2UgJzonOgorCQkJCQljYXNlICc7JzoK
KwkJCQkJY2FzZSAnPyc6CisJCQkJCWNhc2UgJ1xcJzoKKwkJCQkJCWJ1ZmZlcltpKzFdPSdfJzsK
KwkJCQkJZGVmYXVsdDoKKwkJCQkJCWlmIChidWZmZXJbaSsxXSA9PSAweDdmIHx8CisJCQkJCQkJ
ICAgIGJ1ZmZlcltpKzFdIDwgMHgyMCkKKwkJCQkJCQlidWZmZXJbaSsxXT0nXyc7CisJCQkJfQor
CQkJfQorCQl9CisJCWlmIChzaXplICYgMSkgewkvKiBiZWF1dGlmaWNhdGlvbiAqLworCSAgCQli
dWZmZXJbc2l6ZSAtIDFdID0gMDsKKwkJfQorCQlpZiAoc291cmNlID09IE5VTEwpIHsKKwkJCWZy
ZWUodG1wYnVmKTsKKwkJfQorCQlyZXR1cm4gKGlubGVuIC0gaW5sZWZ0KTsKKwl9CisjZW5kaWYK
KwogCS8qCiAJICogTm93IHN0YXJ0IGNvcHlpbmcgY2hhcmFjdGVycy4gIElmIHRoZSBzaXplIHdh
cyBzcGVjaWZpZWQgdG8gYmUgMCwKIAkgKiB0aGVuIGFzc3VtZSB0aGUgaW5wdXQgd2FzIDAgdGVy
bWluYXRlZC4KQEAgLTI3MSw2ICszNTMsOSBAQAogCWlmIChzb3VyY2UgPT0gTlVMTCkgewogCQlm
cmVlKHRtcGJ1Zik7CiAJfQorI2lmZGVmIFVTRV9JQ09OVgorCXJldHVybiBqOworI2VuZGlmCiB9
CiAKIC8qCkBAIC0yODcsMTIgKzM3Miw1MCBAQAogI2Vsc2UKIHN0YXRpYyBpbnQKICNlbmRpZgot
am9saWV0X3N0cmxlbihzdHJpbmcpCitqb2xpZXRfc3RybGVuKHN0cmluZywgaW5scykKIAljb25z
dCBjaGFyCSpzdHJpbmc7CisJc3RydWN0IHVubHNfdGFibGUgKmlubHM7CiB7CiAJaW50CQlydG47
CiAKKyNpZmRlZiBVU0VfSUNPTlYKKwlpZiAoaW5scy0+aWNvbnZfZCAmJiBpbmxzLT51bmxzX2Nz
MnVuaT09TlVMTCAmJgorCQkJaW5scy0+dW5sc191bmkyY3M9PU5VTEwpIHsKKwkJLyoKKwkJICog
d2UgY29uc3QtY2FzdCBzaW5jZSB3ZSdyZSBzdXJlIGljb252IHdvbid0IGNoYW5nZQorCQkgKiB0
aGUgc3RyaW5nIGl0c2VsZgorCQkgKi8KKwkJY2hhciAqc3RyaW5nX3B0ciA9IChjaGFyICopc3Ry
aW5nOworCQlzaXplX3Qgc3RyaW5nX2xlbiA9IHN0cmxlbihzdHJpbmcpOworCisJCS8qCisJCSAq
IGljb252IGhhcyBubyB3YXkgb2YgZmluZGluZyBvdXQgdGhlIHJlcXVpcmVkIHNpemUKKwkJICog
aW4gdGhlIHRhcmdldAorCQkgKi8KKworCQljaGFyICp0bXAsICp0bXBfcHRyOworCQkvKiB3ZSBh
c3N1bWUgdGhhdCB0aGUgbWF4aW11bSBsZW5ndGggaXMgMiAqIGpsZW4gKi8KKwkJc2l6ZV90IHRt
cF9sZW4gPSAoc2l6ZV90KWpsZW4gKiAyICsgMTsKKwkJdG1wID0gZV9tYWxsb2ModG1wX2xlbik7
CisJCXRtcF9wdHIgPSB0bXA7CisKKwkJaWNvbnYoaW5scy0+aWNvbnZfZCwgTlVMTCwgTlVMTCwg
TlVMTCwgTlVMTCk7CisJCWljb252KGlubHMtPmljb252X2QsICZzdHJpbmdfcHRyLCAmc3RyaW5n
X2xlbiwgJnRtcF9wdHIsCisJCQkmdG1wX2xlbik7CisKKwkJLyoKKwkJICogaWNvbnYgYWR2YW5j
ZWQgdGhlIHRtcCBwb2ludGVyIHdpdGggYXMgbWFueSBjaGFycworCQkgKiBhcyBpdCBoYXMgd3Jp
dHRlbiB0byBpdCwgc28gd2UgYWRkIHVwIHRoZSBkZWx0YQorCQkgKi8KKwkJcnRuID0gKHRtcF9w
dHIgLSB0bXApOworCisJCWZyZWUodG1wKTsKKwl9IGVsc2UgeworCQlydG4gPSBzdHJsZW4oc3Ry
aW5nKSA8PCAxOworCX0KKyNlbHNlCiAJcnRuID0gc3RybGVuKHN0cmluZykgPDwgMTsKKyNlbmRp
ZgogCiAJLyoKIAkgKiBXZSBkbyBjbGFtcCB0aGUgbWF4aW11bSBsZW5ndGggb2YgYSBKb2xpZXQg
c3RyaW5nIHRvIGJlIHRoZQpAQCAtNDgwLDE2ICs2MDMsMzMgQEAKIAkvKiBjb21wYXJlIHRoZSBV
bmljb2RlIG5hbWVzICovCiAKIAl3aGlsZSAoKnJwbnQgJiYgKmxwbnQpIHsKKyNpZmRlZiBVU0Vf
SUNPTlYKKwkJc2l6ZV90IHJpLCBsaTsKKworCQlyaSA9IGNvbnZlcnRfdG9fdW5pY29kZShydG1w
LCAyLCBycG50LCByaW5scyk7CisJCWxpID0gY29udmVydF90b191bmljb2RlKGx0bXAsIDIsIGxw
bnQsIGxpbmxzKTsKKwkJcnBudCArPSByaTsKKwkJbHBudCArPSBsaTsKKwkJaWYoIXJpICYmICFs
aSkKKwkJCXJldHVybiAoMCk7CisJCWVsc2UgaWYocmkgJiYgIWxpKQorCQkJcmV0dXJuICgxKTsK
KwkJZWxzZSBpZighcmkgJiYgbGkpCisJCQlyZXR1cm4gKC0xKTsKKyNlbHNlCiAJCWNvbnZlcnRf
dG9fdW5pY29kZShydG1wLCAyLCBycG50LCByaW5scyk7CiAJCWNvbnZlcnRfdG9fdW5pY29kZShs
dG1wLCAyLCBscG50LCBsaW5scyk7CisjZW5kaWYKIAogCQlpZiAoYV90b191XzJfYnl0ZShydG1w
KSA8IGFfdG9fdV8yX2J5dGUobHRtcCkpCiAJCQlyZXR1cm4gKC0xKTsKIAkJaWYgKGFfdG9fdV8y
X2J5dGUocnRtcCkgPiBhX3RvX3VfMl9ieXRlKGx0bXApKQogCQkJcmV0dXJuICgxKTsKIAorI2lm
bmRlZiBVU0VfSUNPTlYKIAkJcnBudCsrOwogCQlscG50Kys7CisjZW5kaWYKIAl9CiAKIAlpZiAo
KnJwbnQpCkBAIC01NzQsMTAgKzcxNCwxMCBAQAogCQl9CiAjaWZkZWYgQVBQTEVfSFlCCiAJCWlm
IChVU0VfTUFDX05BTUUoZGUpKQotCQkJbmFtZWxlbiA9IGpvbGlldF9zdHJsZW4oZGUtPmhmc19l
bnQtPm5hbWUpOworCQkJbmFtZWxlbiA9IGpvbGlldF9zdHJsZW4oZGUtPmhmc19lbnQtPm5hbWUs
IGhmc19pbmxzKTsKIAkJZWxzZQogI2VuZGlmCS8qIEFQUExFX0hZQiAqLwotCQkJbmFtZWxlbiA9
IGpvbGlldF9zdHJsZW4oZGUtPm5hbWUpOworCQkJbmFtZWxlbiA9IGpvbGlldF9zdHJsZW4oZGUt
Pm5hbWUsIGluX25scyk7CiAKIAkJaWYgKGRwbnQgPT0gcm9vdCkgewogCQkJanBhdGhfdGFibGVf
bFtqcGF0aF90YWJsZV9pbmRleF0gPSAxOwpAQCAtNzQyLDEwICs4ODIsMTAgQEAKICNpZmRlZiBB
UFBMRV9IWUIKIAkJLyogVXNlIHRoZSBIRlMgbmFtZSBpZiBpdCBleGlzdHMgKi8KIAkJaWYgKFVT
RV9NQUNfTkFNRShzX2VudHJ5MSkpCi0JCQljdnRfbGVuID0gam9saWV0X3N0cmxlbihzX2VudHJ5
MS0+aGZzX2VudC0+bmFtZSk7CisJCQljdnRfbGVuID0gam9saWV0X3N0cmxlbihzX2VudHJ5MS0+
aGZzX2VudC0+bmFtZSwgaGZzX2lubHMpOwogCQllbHNlCiAjZW5kaWYJLyogQVBQTEVfSFlCICov
Ci0JCQljdnRfbGVuID0gam9saWV0X3N0cmxlbihzX2VudHJ5MS0+bmFtZSk7CisJCQljdnRfbGVu
ID0gam9saWV0X3N0cmxlbihzX2VudHJ5MS0+bmFtZSwgaW5fbmxzKTsKIAogCQkvKgogCQkgKiBG
aXggdGhlIHJlY29yZCBsZW5ndGgKQEAgLTg5MSwxMiArMTAzMSwxMiBAQAogCQkJCWlmIChVU0Vf
TUFDX05BTUUoc19lbnRyeSkpCiAJCQkJCS8qIFVzZSB0aGUgSEZTIG5hbWUgaWYgaXQgZXhpc3Rz
ICovCiAJCQkJCWpwYXRoX3RhYmxlX3NpemUgKz0KLQkJCQkJCWpvbGlldF9zdHJsZW4oc19lbnRy
eS0+aGZzX2VudC0+bmFtZSkgKworCQkJCQkJam9saWV0X3N0cmxlbihzX2VudHJ5LT5oZnNfZW50
LT5uYW1lLCBoZnNfaW5scykgKwogCQkJCQkJb2Zmc2V0b2Yoc3RydWN0IGlzb19wYXRoX3RhYmxl
LCBuYW1lWzBdKTsKIAkJCQllbHNlCiAjZW5kaWYJLyogQVBQTEVfSFlCICovCiAJCQkJCWpwYXRo
X3RhYmxlX3NpemUgKz0KLQkJCQkJCWpvbGlldF9zdHJsZW4oc19lbnRyeS0+bmFtZSkgKworCQkJ
CQkJam9saWV0X3N0cmxlbihzX2VudHJ5LT5uYW1lLCBpbl9ubHMpICsKIAkJCQkJCW9mZnNldG9m
KHN0cnVjdCBpc29fcGF0aF90YWJsZSwgbmFtZVswXSk7CiAJCQkJaWYgKGpwYXRoX3RhYmxlX3Np
emUgJiAxKSB7CiAJCQkJCWpwYXRoX3RhYmxlX3NpemUrKzsKQEAgLTkxOCwxMyArMTA1OCwxMyBA
QAogCQkJCS8qIFVzZSB0aGUgSEZTIG5hbWUgaWYgaXQgZXhpc3RzICovCiAJCQkJc19lbnRyeS0+
anJlY2xlbiA9CiAJCQkJb2Zmc2V0b2Yoc3RydWN0IGlzb19kaXJlY3RvcnlfcmVjb3JkLCBuYW1l
WzBdKQotCQkJCQkrIGpvbGlldF9zdHJsZW4oc19lbnRyeS0+aGZzX2VudC0+bmFtZSkKKwkJCQkJ
KyBqb2xpZXRfc3RybGVuKHNfZW50cnktPmhmc19lbnQtPm5hbWUsIGhmc19pbmxzKQogCQkJCQkr
IDE7CiAJCQllbHNlCiAjZW5kaWYJLyogQVBQTEVfSFlCICovCiAJCQkJc19lbnRyeS0+anJlY2xl
biA9CiAJCQkJb2Zmc2V0b2Yoc3RydWN0IGlzb19kaXJlY3RvcnlfcmVjb3JkLCBuYW1lWzBdKQot
CQkJCQkrIGpvbGlldF9zdHJsZW4oc19lbnRyeS0+bmFtZSkKKwkJCQkJKyBqb2xpZXRfc3RybGVu
KHNfZW50cnktPm5hbWUsIGluX25scykKIAkJCQkJKyAxOwogCQl9IGVsc2UgewogCQkJLyoKQEAg
LTEwNzIsNiArMTIxMiw5IEBACiAjZW5kaWYKIAogCXdoaWxlICgqcnBudCAmJiAqbHBudCkgewor
I2lmZGVmIFVTRV9JQ09OVgorCQlzaXplX3QgcmksIGxpOworI2VuZGlmCiAJCWlmICgqcnBudCA9
PSAnOycgJiYgKmxwbnQgIT0gJzsnKQogCQkJcmV0dXJuICgtMSk7CiAJCWlmICgqcnBudCAhPSAn
OycgJiYgKmxwbnQgPT0gJzsnKQpAQCAtMTA5MiwxNiArMTIzNSwzMiBAQAogCQkJcmV0dXJuICgx
KTsKICNlbmRpZgogCisjaWZkZWYgVVNFX0lDT05WCisKKwkJcmkgPSBjb252ZXJ0X3RvX3VuaWNv
ZGUocnRtcCwgMiwgcnBudCwgcmlubHMpOworCQlsaSA9IGNvbnZlcnRfdG9fdW5pY29kZShsdG1w
LCAyLCBscG50LCBsaW5scyk7CisJCXJwbnQgKz0gcmk7CisJCWxwbnQgKz0gbGk7CisJCWlmKCFy
aSAmJiAhbGkpCisJCQlyZXR1cm4gKDApOworCQllbHNlIGlmKHJpICYmICFsaSkKKwkJCXJldHVy
biAoMSk7CisJCWVsc2UgaWYoIXJpICYmIGxpKQorCQkJcmV0dXJuICgtMSk7CisjZWxzZQogCQlj
b252ZXJ0X3RvX3VuaWNvZGUocnRtcCwgMiwgcnBudCwgcmlubHMpOwogCQljb252ZXJ0X3RvX3Vu
aWNvZGUobHRtcCwgMiwgbHBudCwgbGlubHMpOworI2VuZGlmCiAKIAkJaWYgKGFfdG9fdV8yX2J5
dGUocnRtcCkgPCBhX3RvX3VfMl9ieXRlKGx0bXApKQogCQkJcmV0dXJuICgtMSk7CiAJCWlmIChh
X3RvX3VfMl9ieXRlKHJ0bXApID4gYV90b191XzJfYnl0ZShsdG1wKSkKIAkJCXJldHVybiAoMSk7
CiAKKyNpZm5kZWYgVVNFX0lDT05WCiAJCXJwbnQrKzsKIAkJbHBudCsrOworI2VuZGlmCiAJfQog
CWlmICgqcnBudCkKIAkJcmV0dXJuICgxKTsKZGlmZiAtdU5yIGNkcnRvb2xzLTIuMDEuMDEub3Jp
Zy9ta2lzb2ZzL21raXNvZnMuYyBjZHJ0b29scy0yLjAxLjAxL21raXNvZnMvbWtpc29mcy5jCi0t
LSBjZHJ0b29scy0yLjAxLjAxLm9yaWcvbWtpc29mcy9ta2lzb2ZzLmMJMjAwNi0wMS0zMCAxOToz
NzozMC4wMDAwMDAwMDAgKzA5MDAKKysrIGNkcnRvb2xzLTIuMDEuMDEvbWtpc29mcy9ta2lzb2Zz
LmMJMjAwNi0wNy0yMiAxMDozNjoyOS45MDc2MTQ1MDAgKzA5MDAKQEAgLTU5LDYgKzU5LDExIEBA
CiAjZW5kaWYKICNlbmRpZgkvKiBub19tb3JlX25lZWRlZCAqLwogCisjaWZkZWYgVVNFX0lDT05W
CisjaW5jbHVkZSA8bG9jYWxlLmg+CisjaW5jbHVkZSA8bGFuZ2luZm8uaD4KKyNlbmRpZgorCiBz
dHJ1Y3QgZGlyZWN0b3J5ICpyb290ID0gTlVMTDsKIGludAkJcGF0aF9pbmQ7CiAKQEAgLTIyMyw2
ICsyMjgsMTAgQEAKIGludAlkb19zb3J0ID0gMDsJCS8qIHNvcnQgZmlsZSBkYXRhICovCiAjZW5k
aWYgLyogU09SVElORyAqLwogCisjaWZkZWYgVVNFX0lDT05WCitpbnQgaWNvbnZfcG9zc2libGU7
CisjZW5kaWYKKwogc3RydWN0IHVubHNfdGFibGUgKmluX25scyA9IE5VTEw7ICAvKiBpbnB1dCBV
TklDT0RFIGNvbnZlcnNpb24gdGFibGUgKi8KIHN0cnVjdCB1bmxzX3RhYmxlICpvdXRfbmxzID0g
TlVMTDsgLyogb3V0cHV0IFVOSUNPREUgY29udmVyc2lvbiB0YWJsZSAqLwogI2lmZGVmIEFQUExF
X0hZQgpAQCAtMjMzOSw2ICsyMzQ4LDM3IEBACiAJaW5pdF91bmxzX2ZpbGUoaGZzX29jaGFyc2V0
KTsKICNlbmRpZiAvKiBBUFBMRV9IWUIgKi8KIAorI2lmZGVmIFVTRV9JQ09OVgorCWljb252X3Bv
c3NpYmxlID0gIShpc285NjYwX2xldmVsID49IDQgfHwgKChvY2hhcnNldCAmJgorCQlzdHJjbXAo
b2NoYXJzZXQsIGljaGFyc2V0ID8gaWNoYXJzZXQgOiAiIikpICYmCisJCXVzZV9Sb2NrUmlkZ2Up
IHx8IGFwcGxlX2V4dCB8fCBhcHBsZV9oeWIpOworCisJc2V0bG9jYWxlKExDX0NUWVBFLCAiIik7
CisJCisgIAlpZiAoaWNoYXJzZXQgPT0gTlVMTCAmJiBpY29udl9wb3NzaWJsZSkgeworCQljaGFy
ICpjaGFyc2V0ID0gbmxfbGFuZ2luZm8oQ09ERVNFVCk7CisJCS8qIHNldCB0byBkZXRlY3RlZCB2
YWx1ZSBidXQgb25seSBpZiBpdCBpcyBub3QgcHVyZSBVUy1BU0NJSSAqLworCQlpZihzdHJjbXAo
Y2hhcnNldCwgIkFOU0lfWDMuNC0xOTY4IikgIT0gMCkKKwkJCWljaGFyc2V0ID0gY2hhcnNldDsK
KworCQlpZihpY2hhcnNldCAmJiB2ZXJib3NlID4gMCkKKwkJCWZwcmludGYoc3RkZXJyLCAiSU5G
TzpcdCIKKwkJCSIlcyBjaGFyYWN0ZXIgZW5jb2RpbmcgZGV0ZWN0ZWQgYnkgbG9jYWxlIHNldHRp
bmdzLiIKKwkJCSJcblx0QXNzdW1pbmcgJXMgZW5jb2RlZCBmaWxlbmFtZXMgb24gc291cmNlICIK
KwkJCSJmaWxlc3lzdGVtLFxuIgorCQkJIlx0dXNlIC1pbnB1dC1jaGFyc2V0IHRvIG92ZXJyaWRl
LlxuIiwKKwkJCWljaGFyc2V0LCBpY2hhcnNldCk7CisJfQorCisJaWYoaWNvbnZfcG9zc2libGUp
IHsKKwkJLyoKKwkJICogZG9uJ3QgY2FyZSBpZiBpbml0aWFsaXphdGlvbiBmYWlscworCQkgKi8K
KwkJaW5pdF91bmxzX2ljb252KGljaGFyc2V0KTsKKwkJaW5pdF91bmxzX2ljb252KG9jaGFyc2V0
KTsKKwl9CisjZW5kaWYKKwogCWlmIChpY2hhcnNldCA9PSBOVUxMKSB7CiAjaWYJKGRlZmluZWQo
X19DWUdXSU4zMl9fKSB8fCBkZWZpbmVkKF9fQ1lHV0lOX18pIHx8IGRlZmluZWQoX19ESkdQUF9f
KSkgJiYgIWRlZmluZWQoSVNfQ1lHV0lOXzEpCiAJCWluX25scyA9IGxvYWRfdW5scygiY3A0Mzci
KTsKQEAgLTIzNjYsNiArMjQwNiwxMiBAQAogCWlmIChpbl9ubHMgPT0gTlVMTCB8fCBvdXRfbmxz
ID09IE5VTEwpIHsgLyogVW5rbm93biBjaGFyc2V0IHNwZWNpZmllZCAqLwogCQlmcHJpbnRmKHN0
ZGVyciwgIlVua25vd24gY2hhcnNldFxuS25vd24gY2hhcnNldHMgYXJlOlxuIik7CiAJCWxpc3Rf
dW5scygpOwkvKiBMaXN0IGFsbCBrbm93biBjaGFyc2V0IG5hbWVzICovCisjaWZkZWYgVVNFX0lD
T05WCisJCWlmKCFpY29udl9wb3NzaWJsZSkKKwkJCWZwcmludGYoc3RkZXJyLCAiSWNvbnYgY2hh
cnNldHMgY2Fubm90IGJlIHVzZWQgd2l0aCAiCisJCQkJIkFwcGxlIGV4dGVuc2lvbiwgSEZTLCBJ
U085NjYwIHZlcnNpb24gMiBvclxuIgorCQkJCSJSb2NrIFJpZGdlLlxuIik7CisjZW5kaWYKIAkJ
ZXhpdCgxKTsKIAl9CiAKZGlmZiAtdU5yIGNkcnRvb2xzLTIuMDEuMDEub3JpZy9ta2lzb2ZzL21r
aXNvZnMuaCBjZHJ0b29scy0yLjAxLjAxL21raXNvZnMvbWtpc29mcy5oCi0tLSBjZHJ0b29scy0y
LjAxLjAxLm9yaWcvbWtpc29mcy9ta2lzb2ZzLmgJMjAwNS0wNS0wMiAwMzozODoxNC4wMDAwMDAw
MDAgKzA5MDAKKysrIGNkcnRvb2xzLTIuMDEuMDEvbWtpc29mcy9ta2lzb2ZzLmgJMjAwNi0wNy0y
MiAxMDozNjoyOS45MDc2MTQ1MDAgKzA5MDAKQEAgLTUwMyw5ICs1MDMsMTQgQEAKIAogLyogam9s
aWV0LmMgKi8KICNpZmRlZglVREYKKyMJaWZkZWYgVVNFX0lDT05WCitleHRlcm4Jc2l6ZV90CWNv
bnZlcnRfdG9fdW5pY29kZQlfX1BSKCh1bnNpZ25lZCBjaGFyICpidWZmZXIsCisJCQlpbnQgc2l6
ZSwgY2hhciAqc291cmNlLCBzdHJ1Y3QgdW5sc190YWJsZSAqaW5scykpOworIwllbHNlCiBleHRl
cm4Jdm9pZAljb252ZXJ0X3RvX3VuaWNvZGUJX19QUigodW5zaWduZWQgY2hhciAqYnVmZmVyLAog
CQkJaW50IHNpemUsIGNoYXIgKnNvdXJjZSwgc3RydWN0IHVubHNfdGFibGUgKmlubHMpKTsKLWV4
dGVybglpbnQJam9saWV0X3N0cmxlbgkJX19QUigoY29uc3QgY2hhciAqc3RyaW5nKSk7CisjCWVu
ZGlmCitleHRlcm4JaW50IGpvbGlldF9zdHJsZW4JCV9fUFIoKGNvbnN0IGNoYXIgKnN0cmluZywg
c3RydWN0IHVubHNfdGFibGUgKmlubHMpKTsKICNlbmRpZgogZXh0ZXJuIHVuc2lnbmVkIGNoYXIg
Y29udl9jaGFyc2V0IF9fUFIoKHVuc2lnbmVkIGNoYXIsIHN0cnVjdCB1bmxzX3RhYmxlICosCiAJ
CQkJc3RydWN0IHVubHNfdGFibGUgKikpOwpkaWZmIC11TnIgY2RydG9vbHMtMi4wMS4wMS5vcmln
L21raXNvZnMvdWRmLmMgY2RydG9vbHMtMi4wMS4wMS9ta2lzb2ZzL3VkZi5jCi0tLSBjZHJ0b29s
cy0yLjAxLjAxLm9yaWcvbWtpc29mcy91ZGYuYwkyMDA0LTA0LTE1IDIwOjE1OjA4LjAwMDAwMDAw
MCArMDkwMAorKysgY2RydG9vbHMtMi4wMS4wMS9ta2lzb2ZzL3VkZi5jCTIwMDYtMDctMjIgMTA6
MzY6MjkuOTA3NjE0NTAwICswOTAwCkBAIC00NDEsNyArNDQxLDcgQEAKIAlpbnQgaTsKIAlpbnQg
ZXhwYW5kZWRfbGVuZ3RoOwogCi0JZXhwYW5kZWRfbGVuZ3RoID0gam9saWV0X3N0cmxlbihzcmMp
OworCWV4cGFuZGVkX2xlbmd0aCA9IGpvbGlldF9zdHJsZW4oc3JjLCBpbl9ubHMpOwogCWlmIChl
eHBhbmRlZF9sZW5ndGggPiAxMDI0KQogCQlleHBhbmRlZF9sZW5ndGggPSAxMDI0OwogCWlmIChl
eHBhbmRlZF9sZW5ndGggPiAoZHN0X3NpemUtMSkqMikK
</data>        

          </attachment>
    </bug>

</bugzilla>