<?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>124826</bug_id>
          
          <creation_ts>2006-03-03 10:13 0000</creation_ts>
          <short_desc>mail-client/evolution - DoS on certain email content (CVE-2006-0040)</short_desc>
          <delta_ts>2007-06-07 21:54:49 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Gentoo Security</product>
          <component>Vulnerabilities</component>
          <version>unspecified</version>
          <rep_platform>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          <bug_file_loc>http://bugzilla.gnome.org/show_bug.cgi?id=337439</bug_file_loc>
          <status_whiteboard>A3? [glsa]</status_whiteboard>
          
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>171107</dependson>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>carlo@gentoo.org</reporter>
          <assigned_to>security@gentoo.org</assigned_to>
          <cc>eva@gentoo.org</cc>
    
    <cc>gnome-office@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>carlo@gentoo.org</who>
            <bug_when>2006-03-03 10:13:43 0000</bug_when>
            <thetext>http://www.derkeiler.com/Mailing-Lists/securityfocus/bugtraq/2006-03/msg00022.html</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>koon@gentoo.org</who>
            <bug_when>2006-03-03 10:31:02 0000</bug_when>
            <thetext>Waiting on upstream...</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>koon@gentoo.org</who>
            <bug_when>2006-03-11 03:11:01 0000</bug_when>
            <thetext>Can&apos;t find a reference upstream. Gnome team, could you check and maybe file a bug in the unlikely case there isn&apos;t one ?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>vorlon@gentoo.org</who>
            <bug_when>2006-03-23 12:42:12 0000</bug_when>
            <thetext>maybe linked to/the same as bug 127323 ?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>koon@gentoo.org</who>
            <bug_when>2006-04-09 09:28:17 0000</bug_when>
            <thetext>It&apos;s apparently not the same... but that doesn&apos;t help.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>geekypenguin@gmail.com</who>
            <bug_when>2006-05-17 18:15:00 0000</bug_when>
            <thetext>This was not a direct issue to evolution, it is related to gtkhtml, the bug should push forward to and see about marking 3.10.1 or a slightly older version stable.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>geekypenguin@gmail.com</who>
            <bug_when>2006-05-17 18:50:50 0000</bug_when>
            <thetext>Url is to upstream bug report.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>dang@gentoo.org</who>
            <bug_when>2006-05-17 19:05:58 0000</bug_when>
            <thetext>Trying this on 3.11.1 (current development version of gtkhtml), it took ~1 minute to render, and took ~650MB of RAM.  I&apos;d say that nothing has changed, and the original reporter had &lt;512MB of RAM.  That would swap pretty hard, and make your system fairly unusable.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jaervosz@gentoo.org</who>
            <bug_when>2006-09-05 05:52:51 0000</bug_when>
            <thetext>gnome-office, according to the CVE and Secunia entries 2.6.2 is not affected by this. Please advise.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jaervosz@gentoo.org</who>
            <bug_when>2006-09-13 23:04:33 0000</bug_when>
            <thetext>Any news on this one?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jaervosz@gentoo.org</who>
            <bug_when>2006-09-26 09:17:50 0000</bug_when>
            <thetext>Any news on this one?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>pva@gentoo.org</who>
            <bug_when>2007-02-25 10:17:14 0000</bug_when>
            <thetext>Sune: I&apos;m not from gnome-office but... This is not bug in evolution itself but in GTKHTML renderer which reproduces perfectly in gtkhtml-3.12.3. Influence of this bug can be reproduced in evolution-2.8.3 and I do not see any reasons why this could not be reproduced in evolution-2.6.2. At least I can remember messages which could eat whole memory and crash evolution in the same way as described. I do not know where do people took &quot;affected evolution versions&quot;.
I think that workaround suggested in gnome bugzilla should be applied. But currently that patch does not work here and I wait their response on comment #24 in gnome bugzilla... Also it&apos;s very interesting what redhat has in their bugzilla but I do not have access there.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>falco@gentoo.org</who>
            <bug_when>2007-03-09 22:00:03 0000</bug_when>
            <thetext>Thanks Volkov... do you think this bug is still relevant or obsolete now?</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>pva@gentoo.org</who>
            <bug_when>2007-03-13 05:28:13 0000</bug_when>
            <thetext>This issue still is not fixed so it&apos;s still relevant. Upstream patch is not working here as it should. I&apos;ve contacted Srinivasa Ragavan, author of that patch and he answered:

&quot;I am currently OOF/Town. I will get back to you in a weeks time.&quot;

So again, waiting upstream...</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>falco@gentoo.org</who>
            <bug_when>2007-03-14 00:21:14 0000</bug_when>
            <thetext>(In reply to comment #13)
&gt; This issue still is not fixed so it&apos;s still relevant. Upstream patch is not
&gt; working here as it should. I&apos;ve contacted Srinivasa Ragavan, author of that
&gt; patch and he answered:
&gt; 
&gt; &quot;I am currently OOF/Town. I will get back to you in a weeks time.&quot;
&gt; 
&gt; So again, waiting upstream...
&gt; 

alright. I&apos;ll ping again within some weeks.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>pva@gentoo.org</who>
            <bug_when>2007-03-16 09:48:18 0000</bug_when>
            <thetext>Well. I&apos;ve received explanations:

That patch checks for on-disk letter size instead of rendered in-memory. So actually patch works but it does not prevents all possible out-of-memory conditions which could occur during letter rendering with gtkhtml...

To fix this bug. Hm... Of course proper fix should be applied to gtkhtml library. But I do not have currently time to delve into that library thus I suggest just to follow upstream and apply patch they think fix the issue.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>pva@gentoo.org</who>
            <bug_when>2007-03-16 09:49:29 0000</bug_when>
            <thetext>Created an attachment (id=113451)
Upstream patch.

</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>falco@gentoo.org</who>
            <bug_when>2007-03-26 22:06:55 0000</bug_when>
            <thetext>Hi Peter, can you provide a new ebuild with these patches if you think they are good, please? unless it&apos;s already done... thanks!</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>pva@gentoo.org</who>
            <bug_when>2007-04-22 09:49:08 0000</bug_when>
            <thetext>This is fixed in &gt;=evolution-2.8.3-r2 which should be stabilized together with gnome-2.16.3.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>jaervosz@gentoo.org</who>
            <bug_when>2007-04-30 09:22:18 0000</bug_when>
            <thetext>Awaiting Gnome stabilization on bug #171107</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>leio@gentoo.org</who>
            <bug_when>2007-06-02 03:55:35 0000</bug_when>
            <thetext>evolution-2.8.3-r2 is stable on all supported arches.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>falco@gentoo.org</who>
            <bug_when>2007-06-07 21:54:49 0000</bug_when>
            <thetext>fixed by GLSA 200706-02 with the code exec vulnerability (CVE-2007-1002) , thanks everybody. Feel free to reopen if you disagree.</thetext>
          </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>113451</attachid>
            <date>2007-03-16 09:49 0000</date>
            <desc>Upstream patch.</desc>
            <filename>evolution-2.8.3-show-plain-if-rendered-message-exceed-limit.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">aHR0cDovL2J1Z3ppbGxhLmdub21lLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzM3NDM5CgpXb3JrYXJv
dW5kIGZvciBtaXNjIEdUS0hUTUwgYnVncyB3aGljaCBrZWVwcyBldm9sdXRpb24gZnJvbSByZW5k
ZXJpbmcgbWVzc2FnZQppZiByZW5kZXJlZCBtZXNzYWdlIHNpemUgaXMgZ3JlYXRlciB0aGFuIGdp
dmVuIGluIFByZWZlcmVuY2VzIHdpbmRvdy4KCmRpZmYgLU5hdXIgZXZvbHV0aW9uLTIuOC4zLm9y
aWcvbWFpbC9lbS1mb3JtYXQuYyBldm9sdXRpb24tMi44LjMvbWFpbC9lbS1mb3JtYXQuYwotLS0g
ZXZvbHV0aW9uLTIuOC4zLm9yaWcvbWFpbC9lbS1mb3JtYXQuYwkyMDA3LTAxLTI5IDEzOjAwOjAx
LjAwMDAwMDAwMCArMDMwMAorKysgZXZvbHV0aW9uLTIuOC4zL21haWwvZW0tZm9ybWF0LmMJMjAw
Ny0wMi0yNSAxMToxMTo1MC4wMDAwMDAwMDAgKzAzMDAKQEAgLTQ3LDYgKzQ3LDcgQEAKICNpbmNs
dWRlIDxjYW1lbC9jYW1lbC1zdHJpbmctdXRpbHMuaD4KICNpbmNsdWRlIDxjYW1lbC9jYW1lbC1z
dHJlYW0tZmlsdGVyLmg+CiAjaW5jbHVkZSA8Y2FtZWwvY2FtZWwtc3RyZWFtLW51bGwuaD4KKyNp
bmNsdWRlIDxjYW1lbC9jYW1lbC1zdHJlYW0tbWVtLmg+CiAjaW5jbHVkZSA8Y2FtZWwvY2FtZWwt
bWltZS1maWx0ZXItY2hhcnNldC5oPgogI2luY2x1ZGUgPGNhbWVsL2NhbWVsLW1pbWUtZmlsdGVy
LXdpbmRvd3MuaD4KICNpbmNsdWRlIDxjYW1lbC9jYW1lbC1taW1lLWZpbHRlci1wZ3AuaD4KQEAg
LTgwLDcgKzgxLDYgQEAKIHN0YXRpYyB2b2lkIGVtZl9mb3JtYXRfY2xvbmUoRU1Gb3JtYXQgKmVt
ZiwgQ2FtZWxGb2xkZXIgKmZvbGRlciwgY29uc3QgY2hhciAqdWlkLCBDYW1lbE1pbWVNZXNzYWdl
ICptc2csIEVNRm9ybWF0ICplbWZzb3VyY2UpOwogc3RhdGljIHZvaWQgZW1mX2Zvcm1hdF9zZWN1
cmUoRU1Gb3JtYXQgKmVtZiwgQ2FtZWxTdHJlYW0gKnN0cmVhbSwgQ2FtZWxNaW1lUGFydCAqcGFy
dCwgQ2FtZWxDaXBoZXJWYWxpZGl0eSAqdmFsaWQpOwogc3RhdGljIGdib29sZWFuIGVtZl9idXN5
KEVNRm9ybWF0ICplbWYpOwotCiBlbnVtIHsKIAlFTUZfQ09NUExFVEUsCiAJRU1GX0xBU1RfU0lH
TkFMLApAQCAtMTE3LDggKzExNywxMCBAQAogZW1mX2luaXQoR09iamVjdCAqbykKIHsKIAlFTUZv
cm1hdCAqZW1mID0gKEVNRm9ybWF0ICopbzsKLQkKKwljaGFyICogYXNpemU7CisJCQogCWVtZi0+
aW5saW5lX3RhYmxlID0gZ19oYXNoX3RhYmxlX25ldyhnX3N0cl9oYXNoLCBnX3N0cl9lcXVhbCk7
CisJZW1mLT5jb21wb3NlciA9IEZBTFNFOwogCWVfZGxpc3RfaW5pdCgmZW1mLT5oZWFkZXJfbGlz
dCk7CiAJZW1fZm9ybWF0X2RlZmF1bHRfaGVhZGVycyhlbWYpOwogCWVtZi0+cGFydF9pZCA9IGdf
c3RyaW5nX25ldygiIik7CkBAIC00NjksNiArNDcxLDcgQEAKICAqIFJldHVybiB2YWx1ZTogCiAg
KiovCiBFTUZvcm1hdFBVUkkgKgorCiBlbV9mb3JtYXRfZmluZF9wdXJpKEVNRm9ybWF0ICplbWYs
IGNvbnN0IGNoYXIgKnVyaSkKIHsKIAlyZXR1cm4gZ19oYXNoX3RhYmxlX2xvb2t1cChlbWYtPnBl
bmRpbmdfdXJpX3RhYmxlLCB1cmkpOwpAQCAtMTAxNiw3ICsxMDE5LDcgQEAKIAlDYW1lbERhdGFX
cmFwcGVyICpkdyA9IGNhbWVsX21lZGl1bV9nZXRfY29udGVudF9vYmplY3QoKENhbWVsTWVkaXVt
ICopcGFydCk7CiAKIAlpZiAoY2FtZWxfY29udGVudF90eXBlX2lzIChkdy0+bWltZV90eXBlLCAi
dGV4dCIsICIqIikpCi0JCWVtX2Zvcm1hdF9mb3JtYXRfdGV4dChlbWYsIHN0cmVhbSwgZHcpOwor
CQllbV9mb3JtYXRfZm9ybWF0X3RleHQoZW1mLCBzdHJlYW0sIHBhcnQpOwogCWVsc2UKIAkJY2Ft
ZWxfZGF0YV93cmFwcGVyX2RlY29kZV90b19zdHJlYW0oZHcsIHN0cmVhbSk7CiB9CkBAIC0xMDM2
LDYgKzEwMzksOSBAQAogCUNhbWVsTWltZUZpbHRlckNoYXJzZXQgKmZpbHRlcjsKIAljb25zdCBj
aGFyICpjaGFyc2V0ID0gTlVMTDsKIAlDYW1lbE1pbWVGaWx0ZXJXaW5kb3dzICp3aW5kb3dzID0g
TlVMTDsKKwlDYW1lbFN0cmVhbSAqbWVtX3N0cmVhbSA9IE5VTEw7CisJc2l6ZV90IHNpemU7CisJ
c2l6ZV90IG1heDsKIAkKIAlpZiAoZW1mLT5jaGFyc2V0KSB7CiAJCWNoYXJzZXQgPSBlbWYtPmNo
YXJzZXQ7CkBAIC0xMDY0LDE3ICsxMDcwLDI3IEBACiAJfSBlbHNlIGlmIChjaGFyc2V0ID09IE5V
TEwpIHsKIAkJY2hhcnNldCA9IGVtZi0+ZGVmYXVsdF9jaGFyc2V0OwogCX0KLQkKLQlmaWx0ZXJf
c3RyZWFtID0gY2FtZWxfc3RyZWFtX2ZpbHRlcl9uZXdfd2l0aF9zdHJlYW0oc3RyZWFtKTsKKwor
CW1lbV9zdHJlYW0gPSAoQ2FtZWxTdHJlYW1NZW0gKiljYW1lbF9zdHJlYW1fbWVtX25ldyAoKTsK
KwlmaWx0ZXJfc3RyZWFtID0gY2FtZWxfc3RyZWFtX2ZpbHRlcl9uZXdfd2l0aF9zdHJlYW0obWVt
X3N0cmVhbSk7CiAJCiAJaWYgKChmaWx0ZXIgPSBjYW1lbF9taW1lX2ZpbHRlcl9jaGFyc2V0X25l
d19jb252ZXJ0KGNoYXJzZXQsICJVVEYtOCIpKSkgewogCQljYW1lbF9zdHJlYW1fZmlsdGVyX2Fk
ZChmaWx0ZXJfc3RyZWFtLCAoQ2FtZWxNaW1lRmlsdGVyICopIGZpbHRlcik7CiAJCWNhbWVsX29i
amVjdF91bnJlZihmaWx0ZXIpOwogCX0KLQkKLQljYW1lbF9kYXRhX3dyYXBwZXJfZGVjb2RlX3Rv
X3N0cmVhbShkdywgKENhbWVsU3RyZWFtICopZmlsdGVyX3N0cmVhbSk7CisKKwltYXggPSBtYWls
X2NvbmZpZ19nZXRfbWVzc2FnZV9saW1pdCgpOworCXNpemUgPSBjYW1lbF9kYXRhX3dyYXBwZXJf
ZGVjb2RlX3RvX3N0cmVhbShlbWYtPm1vZGUgPT0gRU1fRk9STUFUX1NPVVJDRSA/IChDYW1lbERh
dGFXcmFwcGVyICopZHc6IGNhbWVsX21lZGl1bV9nZXRfY29udGVudF9vYmplY3QoKENhbWVsTWVk
aXVtICopZHcpLCAoQ2FtZWxTdHJlYW0gKilmaWx0ZXJfc3RyZWFtKTsKIAljYW1lbF9zdHJlYW1f
Zmx1c2goKENhbWVsU3RyZWFtICopZmlsdGVyX3N0cmVhbSk7CiAJY2FtZWxfb2JqZWN0X3VucmVm
KGZpbHRlcl9zdHJlYW0pOworCWNhbWVsX3N0cmVhbV9yZXNldCAobWVtX3N0cmVhbSk7CisKKwlp
ZiAobWF4ID09IC0xIHx8IHNpemUgPCAobWF4ICogMTAyNCkgfHwgZW1mLT5jb21wb3Nlcikgewor
CQljYW1lbF9zdHJlYW1fd3JpdGVfdG9fc3RyZWFtKG1lbV9zdHJlYW0sIChDYW1lbFN0cmVhbSAq
KXN0cmVhbSk7CisJCWNhbWVsX3N0cmVhbV9mbHVzaCgoQ2FtZWxTdHJlYW0gKilzdHJlYW0pOwor
CX0gZWxzZSB7CisJCSgoRU1Gb3JtYXRDbGFzcyAqKUdfT0JKRUNUX0dFVF9DTEFTUyhlbWYpKS0+
Zm9ybWF0X29wdGlvbmFsKGVtZiwgc3RyZWFtLCAoQ2FtZWxNaW1lUGFydCAqKWR3LCBtZW1fc3Ry
ZWFtKTsKKwl9CiAKIAlpZiAod2luZG93cykKIAkJY2FtZWxfb2JqZWN0X3VucmVmKHdpbmRvd3Mp
OwpAQCAtMTQ5NSw3ICsxNTExLDcgQEAKIHN0YXRpYyB2b2lkCiBlbWZfbWVzc2FnZV9kZWxpdmVy
eXN0YXR1cyhFTUZvcm1hdCAqZW1mLCBDYW1lbFN0cmVhbSAqc3RyZWFtLCBDYW1lbE1pbWVQYXJ0
ICpwYXJ0LCBjb25zdCBFTUZvcm1hdEhhbmRsZXIgKmluZm8pCiB7Ci0JZW1fZm9ybWF0X2Zvcm1h
dF90ZXh0KGVtZiwgc3RyZWFtLCBjYW1lbF9tZWRpdW1fZ2V0X2NvbnRlbnRfb2JqZWN0KChDYW1l
bE1lZGl1bSAqKXBhcnQpKTsKKwllbV9mb3JtYXRfZm9ybWF0X3RleHQoZW1mLCBzdHJlYW0sIHBh
cnQpOwogfQogCiBzdGF0aWMgdm9pZApkaWZmIC1OYXVyIGV2b2x1dGlvbi0yLjguMy5vcmlnL21h
aWwvZW0tZm9ybWF0LmggZXZvbHV0aW9uLTIuOC4zL21haWwvZW0tZm9ybWF0LmgKLS0tIGV2b2x1
dGlvbi0yLjguMy5vcmlnL21haWwvZW0tZm9ybWF0LmgJMjAwNy0wMS0yOSAxMzowMDowMS4wMDAw
MDAwMDAgKzAzMDAKKysrIGV2b2x1dGlvbi0yLjguMy9tYWlsL2VtLWZvcm1hdC5oCTIwMDctMDIt
MjUgMTE6MTE6NTAuMDAwMDAwMDAwICswMzAwCkBAIC0yMjYsNiArMjI2LDcgQEAKIAllbV9mb3Jt
YXRfbW9kZV90IG1vZGU7CS8qIHNvdXJjZS9oZWFkZXJzL2V0YyAqLwogCWNoYXIgKmNoYXJzZXQ7
CQkvKiBjaGFyc2V0IG92ZXJyaWRlICovCiAJY2hhciAqZGVmYXVsdF9jaGFyc2V0OwkvKiBjaGFy
c2V0IGZhbGxiYWNrICovCisJZ2Jvb2xlYW4gY29tcG9zZXI7IC8qIEZvcm1hdHRpbmcgZnJvbSBj
b21wb3NlciA/Ki8KIH07CiAKIHN0cnVjdCBfRU1Gb3JtYXRDbGFzcyB7CkBAIC0yNTcsNiArMjU4
LDkgQEAKIAkvKiByZXR1cm5zIHRydWUgaWYgdGhlIGZvcm1hdHRlciBpcyBzdGlsbCBidXN5IHdp
dGggcGVuZGluZyBzdHVmZiAqLwogCWdib29sZWFuICgqYnVzeSkoRU1Gb3JtYXQgKik7CiAKKwkv
KiBTaG93cyBvcHRpb25hbCB3YXkgdG8gb3BlbiBtZXNzYWdlcyAgKi8KKwl2b2lkICgqZm9ybWF0
X29wdGlvbmFsKShFTUZvcm1hdCAqLCBzdHJ1Y3QgX0NhbWVsU3RyZWFtICosIHN0cnVjdCBfQ2Ft
ZWxNaW1lUGFydCAqLCBzdHJ1Y3QgX0NhbWVsU3RyZWFtKiApOworCQogCS8qIHNpZ25hbHMgKi8K
IAkvKiBjb21wbGV0ZSwgYWx0ZXJuYXRpdmUgdG8gcG9sbGluZyBidXN5LCBmb3IgYXN5bmNocm9u
b3VzIHdvcmsgKi8KIAl2b2lkICgqY29tcGxldGUpKEVNRm9ybWF0ICopOwpkaWZmIC1OYXVyIGV2
b2x1dGlvbi0yLjguMy5vcmlnL21haWwvZW0tZm9ybWF0LWh0bWwuYyBldm9sdXRpb24tMi44LjMv
bWFpbC9lbS1mb3JtYXQtaHRtbC5jCi0tLSBldm9sdXRpb24tMi44LjMub3JpZy9tYWlsL2VtLWZv
cm1hdC1odG1sLmMJMjAwNy0wMS0yOSAxMzowMDowMS4wMDAwMDAwMDAgKzAzMDAKKysrIGV2b2x1
dGlvbi0yLjguMy9tYWlsL2VtLWZvcm1hdC1odG1sLmMJMjAwNy0wMi0yNSAxMToxMTo1MC4wMDAw
MDAwMDAgKzAzMDAKQEAgLTc2Nyw3ICs3NjcsNyBAQAogICAgCQkJCQkiPGRpdiBzdHlsZT1cImJv
cmRlcjogc29saWQgIyUwNnggMXB4OyBiYWNrZ3JvdW5kLWNvbG9yOiAjJTA2eDsgcGFkZGluZzog
MTBweDtcIj5cbiIsCiAgICAJCQkJCWVmaC0+ZnJhbWVfY29sb3VyICYgMHhmZmZmZmYsIGVmaC0+
Y29udGVudF9jb2xvdXIgJiAweGZmZmZmZik7CiAJCQljYW1lbF9zdHJlYW1fd3JpdGVfc3RyaW5n
KHN0cmVhbSwgIjx0dD5cbiIpOwotCQkJZW1fZm9ybWF0X2Zvcm1hdF90ZXh0KChFTUZvcm1hdCAq
KWVmaCwgKENhbWVsU3RyZWFtICopZmlsdGVyZWRfc3RyZWFtLCBjYW1lbF9tZWRpdW1fZ2V0X2Nv
bnRlbnRfb2JqZWN0KChDYW1lbE1lZGl1bSAqKW5ld3BhcnQpKTsKKwkJCWVtX2Zvcm1hdF9mb3Jt
YXRfdGV4dCgoRU1Gb3JtYXQgKillZmgsIChDYW1lbFN0cmVhbSAqKWZpbHRlcmVkX3N0cmVhbSwg
bmV3cGFydCk7CiAJCQljYW1lbF9zdHJlYW1fZmx1c2goKENhbWVsU3RyZWFtICopZmlsdGVyZWRf
c3RyZWFtKTsKIAkJCWNhbWVsX3N0cmVhbV93cml0ZV9zdHJpbmcoc3RyZWFtLCAiPC90dD5cbiIp
OwogCQkJY2FtZWxfc3RyZWFtX3dyaXRlX3N0cmluZyhzdHJlYW0sICI8L2Rpdj5cbiIpOwpAQCAt
ODA3LDcgKzgwNyw3IEBACiAJCQkgICAgICI8ZGl2IHN0eWxlPVwiYm9yZGVyOiBzb2xpZCAjJTA2
eCAxcHg7IGJhY2tncm91bmQtY29sb3I6ICMlMDZ4OyBwYWRkaW5nOiAxMHB4O1wiPlxuIiwKIAkJ
CSAgICAgZWZoLT5mcmFtZV9jb2xvdXIgJiAweGZmZmZmZiwgZWZoLT5jb250ZW50X2NvbG91ciAm
IDB4ZmZmZmZmKTsKIAotCWVtX2Zvcm1hdF9mb3JtYXRfdGV4dCgoRU1Gb3JtYXQgKillZmgsIChD
YW1lbFN0cmVhbSAqKWZpbHRlcmVkX3N0cmVhbSwgZHcpOworCWVtX2Zvcm1hdF9mb3JtYXRfdGV4
dCgoRU1Gb3JtYXQgKillZmgsIChDYW1lbFN0cmVhbSAqKWZpbHRlcmVkX3N0cmVhbSwgcGFydCk7
CiAJCiAJY2FtZWxfb2JqZWN0X3VucmVmKGZpbHRlcmVkX3N0cmVhbSk7CiAJY2FtZWxfc3RyZWFt
X3dyaXRlX3N0cmluZyhzdHJlYW0sICI8L2Rpdj4iKTsKQEAgLTgyOSw3ICs4MjksNyBAQAogCQlj
YW1lbF9kYXRhX3dyYXBwZXJfd3JpdGVfdG9fc3RyZWFtKGR3LCBvdXQpOwogCWNhbWVsX29iamVj
dF91bnJlZihvdXQpOwogI2VuZGlmCi0JZW1fZm9ybWF0X2Zvcm1hdF90ZXh0KGVtZiwgc3RyZWFt
LCBjYW1lbF9tZWRpdW1fZ2V0X2NvbnRlbnRfb2JqZWN0KChDYW1lbE1lZGl1bSAqKXB1cmktPnBh
cnQpKTsKKwllbV9mb3JtYXRfZm9ybWF0X3RleHQoZW1mLCBzdHJlYW0sIHB1cmktPnBhcnQpOwog
fQogCiBzdGF0aWMgdm9pZApAQCAtOTg1LDcgKzk4NSw3IEBACiAJY2FtZWxfb2JqZWN0X3VucmVm
KGh0bWxfZmlsdGVyKTsKIAogCWNhbWVsX3N0cmVhbV93cml0ZV9zdHJpbmcoc3RyZWFtLCAiPHR0
PlxuIik7Ci0JZW1fZm9ybWF0X2Zvcm1hdF90ZXh0KChFTUZvcm1hdCAqKWVmaCwgKENhbWVsU3Ry
ZWFtICopZmlsdGVyZWRfc3RyZWFtLCBjYW1lbF9tZWRpdW1fZ2V0X2NvbnRlbnRfb2JqZWN0KChD
YW1lbE1lZGl1bSAqKXBhcnQpKTsKKwllbV9mb3JtYXRfZm9ybWF0X3RleHQoKEVNRm9ybWF0ICop
ZWZoLCAoQ2FtZWxTdHJlYW0gKilmaWx0ZXJlZF9zdHJlYW0sIHBhcnQpOwogCWNhbWVsX3N0cmVh
bV9mbHVzaCgoQ2FtZWxTdHJlYW0gKilmaWx0ZXJlZF9zdHJlYW0pOwogCWNhbWVsX3N0cmVhbV93
cml0ZV9zdHJpbmcoc3RyZWFtLCAiPC90dD5cbiIpOwogCmRpZmYgLU5hdXIgZXZvbHV0aW9uLTIu
OC4zLm9yaWcvbWFpbC9lbS1mb3JtYXQtaHRtbC1kaXNwbGF5LmMgZXZvbHV0aW9uLTIuOC4zL21h
aWwvZW0tZm9ybWF0LWh0bWwtZGlzcGxheS5jCi0tLSBldm9sdXRpb24tMi44LjMub3JpZy9tYWls
L2VtLWZvcm1hdC1odG1sLWRpc3BsYXkuYwkyMDA3LTAyLTI1IDExOjA5OjU4LjAwMDAwMDAwMCAr
MDMwMAorKysgZXZvbHV0aW9uLTIuOC4zL21haWwvZW0tZm9ybWF0LWh0bWwtZGlzcGxheS5jCTIw
MDctMDItMjUgMTE6MTE6NTAuMDAwMDAwMDAwICswMzAwCkBAIC03NSw2ICs3NSw3IEBACiAjaW5j
bHVkZSA8Ym9ub2JvL2Jvbm9iby13aWRnZXQuaD4KIAogI2luY2x1ZGUgPGNhbWVsL2NhbWVsLXN0
cmVhbS5oPgorI2luY2x1ZGUgPGNhbWVsL2NhbWVsLXN0cmVhbS1maWx0ZXIuaD4KICNpbmNsdWRl
IDxjYW1lbC9jYW1lbC1zdHJlYW0tbWVtLmg+CiAjaW5jbHVkZSA8Y2FtZWwvY2FtZWwtbWltZS1m
aWx0ZXItdG9odG1sLmg+CiAjaW5jbHVkZSA8Y2FtZWwvY2FtZWwtbWltZS1wYXJ0Lmg+CkBAIC0x
ODQsNiArMTg1LDkgQEAKIAlHdGtJbWFnZSAqaW1hZ2U7CiAJR3RrV2lkZ2V0ICpldmVudF9ib3g7
CiAKKwkvKiBPcHRpb25hbCBUZXh0IE1lbSBTdHJlYW0gKi8KKwlDYW1lbFN0cmVhbU1lbSAqbXN0
cmVhbTsKKwkKIAkvKiBTaWduZWQgLyBFbmNyeXB0ZWQgKi8KICAgICAgICAgY2FtZWxfY2lwaGVy
X3ZhbGlkaXR5X3NpZ25fdCBzaWduOwogICAgICAgICBjYW1lbF9jaXBoZXJfdmFsaWRpdHlfZW5j
cnlwdF90IGVuY3J5cHQ7CkBAIC0yMDEsNiArMjA1LDcgQEAKIHN0YXRpYyB2b2lkIGVmaGRfZm9y
bWF0X2Vycm9yKEVNRm9ybWF0ICplbWYsIENhbWVsU3RyZWFtICpzdHJlYW0sIGNvbnN0IGNoYXIg
KnR4dCk7CiBzdGF0aWMgdm9pZCBlZmhkX2Zvcm1hdF9zb3VyY2UoRU1Gb3JtYXQgKiwgQ2FtZWxT
dHJlYW0gKiwgQ2FtZWxNaW1lUGFydCAqKTsKIHN0YXRpYyB2b2lkIGVmaGRfZm9ybWF0X2F0dGFj
aG1lbnQoRU1Gb3JtYXQgKiwgQ2FtZWxTdHJlYW0gKiwgQ2FtZWxNaW1lUGFydCAqLCBjb25zdCBj
aGFyICosIGNvbnN0IEVNRm9ybWF0SGFuZGxlciAqKTsKK3N0YXRpYyB2b2lkIGVmaGRfZm9ybWF0
X29wdGlvbmFsKEVNRm9ybWF0ICosIENhbWVsU3RyZWFtICosIENhbWVsTWltZVBhcnQgKiwgQ2Ft
ZWxTdHJlYW0gKik7CiBzdGF0aWMgdm9pZCBlZmhkX2Zvcm1hdF9zZWN1cmUoRU1Gb3JtYXQgKmVt
ZiwgQ2FtZWxTdHJlYW0gKnN0cmVhbSwgQ2FtZWxNaW1lUGFydCAqcGFydCwgQ2FtZWxDaXBoZXJW
YWxpZGl0eSAqdmFsaWQpOwogc3RhdGljIHZvaWQgZWZoZF9jb21wbGV0ZShFTUZvcm1hdCAqKTsK
IGdib29sZWFuIGVmaGRfbW5lbW9uaWNfc2hvd19iYXIgKEd0a1dpZGdldCAqd2lkZ2V0LCBnYm9v
bGVhbiBmb2N1cywgR3RrV2lkZ2V0ICplZmhkKTsKQEAgLTM1NSw2ICszNjAsNyBAQAogCSgoRU1G
b3JtYXRDbGFzcyAqKWtsYXNzKS0+Zm9ybWF0X2Vycm9yID0gZWZoZF9mb3JtYXRfZXJyb3I7CiAJ
KChFTUZvcm1hdENsYXNzICopa2xhc3MpLT5mb3JtYXRfc291cmNlID0gZWZoZF9mb3JtYXRfc291
cmNlOwogCSgoRU1Gb3JtYXRDbGFzcyAqKWtsYXNzKS0+Zm9ybWF0X2F0dGFjaG1lbnQgPSBlZmhk
X2Zvcm1hdF9hdHRhY2htZW50OworCSgoRU1Gb3JtYXRDbGFzcyAqKWtsYXNzKS0+Zm9ybWF0X29w
dGlvbmFsID0gZWZoZF9mb3JtYXRfb3B0aW9uYWw7CQogCSgoRU1Gb3JtYXRDbGFzcyAqKWtsYXNz
KS0+Zm9ybWF0X3NlY3VyZSA9IGVmaGRfZm9ybWF0X3NlY3VyZTsKIAkoKEVNRm9ybWF0Q2xhc3Mg
KilrbGFzcyktPmNvbXBsZXRlID0gZWZoZF9jb21wbGV0ZTsKIApAQCAtMTUxMSw3ICsxNTE3LDcg
QEAKIAl9CiAKIAllX3BvcHVwX2FkZF9pdGVtcygoRVBvcHVwICopZW1wLCBtZW51cywgTlVMTCwg
ZWZoZF9tZW51X2l0ZW1zX2ZyZWUsIGluZm8pOwotCisJCiAJbWVudSA9IGVfcG9wdXBfY3JlYXRl
X21lbnVfb25jZSgoRVBvcHVwICopZW1wLCAoRVBvcHVwVGFyZ2V0ICopdGFyZ2V0LCAwKTsKIAlp
ZiAoZXZlbnQpCiAJCWd0a19tZW51X3BvcHVwKG1lbnUsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEws
IGV2ZW50LT5idXR0b24sIGV2ZW50LT50aW1lKTsKQEAgLTI0MDYsNyArMjQxMiw2IEBACiAJaWYg
KGhhbmRsZSkgewogCQlpZiAoaW5mby0+c2hvd24pCiAJCQloYW5kbGUtPmhhbmRsZXIoZW1mLCBz
dHJlYW0sIHBhcnQsIGhhbmRsZSk7Ci0JCS8qY2FtZWxfc3RyZWFtX3ByaW50ZihzdHJlYW0sICI8
aWZyYW1lIHNyYz1cIiVzXCIgbWFyZ2luaGVpZ2h0PTAgbWFyZ2lud2lkdGg9MD4lczwvaWZyYW1l
PlxuIiwgY2xhc3NpZCwgXygiQXR0YWNobWVudCBjb250ZW50IGNvdWxkIG5vdCBiZSBsb2FkZWQi
KSk7Ki8KIAl9IGVsc2UgaWYgKGVmaGRfdXNlX2NvbXBvbmVudChtaW1lX3R5cGUpKSB7CiAJCWdf
ZnJlZShjbGFzc2lkKTsgLyogbWVzc3kgKi8KIApAQCAtMjQxNywzICsyNDIyLDE2MSBAQAogCiAJ
Z19mcmVlKGNsYXNzaWQpOwogfQorCitzdGF0aWMgdm9pZCAKK2VmaGRfb3B0aW9uYWxfYnV0dG9u
X3Nob3cgKEd0a1dpZGdldCAqd2lkZ2V0LCBHdGtXaWRnZXQgKncpCit7CisJR3RrV2lkZ2V0ICps
YWJlbCA9IGdfb2JqZWN0X2dldF9kYXRhICh3aWRnZXQsICJ0ZXh0LWxhYmVsIik7CisJCisJaWYg
KEdUS19XSURHRVRfVklTSUJMRSAodykpIHsKKwkJZ3RrX3dpZGdldF9oaWRlICh3KTsKKwkJZ3Rr
X2xhYmVsX3NldF90ZXh0X3dpdGhfbW5lbW9uaWMgKGxhYmVsLCBfKCJWaWV3IF9VbmZvcm1hdHRl
ZCIpKTsKKwl9IGVsc2UgeworCQlndGtfbGFiZWxfc2V0X3RleHRfd2l0aF9tbmVtb25pYyAobGFi
ZWwsIF8oIkhpZGUgX1VuZm9ybWF0dGVkIikpOwkJCisJCWd0a193aWRnZXRfc2hvdyAodyk7CisJ
fQorfQorCitzdGF0aWMgdm9pZAorZWZoZF9yZXNpemUgKEd0a1dpZGdldCAqdywgR3RrQWxsb2Nh
dGlvbiAqZXZlbnQsIEVNRm9ybWF0SFRNTCAqZWZoKQoreworCWd0a193aWRnZXRfc2V0X3NpemVf
cmVxdWVzdCAodywgKChHdGtXaWRnZXQgKillZmgtPmh0bWwpLT5hbGxvY2F0aW9uLndpZHRoLTQ4
LCAyNTApOworfQorCisvKiBvcHRpb25hbCByZW5kZXIgYXR0YWNobWVudCBidXR0b24gY2FsbGJh
Y2sgKi8KK3N0YXRpYyBnYm9vbGVhbgorZWZoZF9hdHRhY2htZW50X29wdGlvbmFsKEVNRm9ybWF0
SFRNTCAqZWZoLCBHdGtIVE1MRW1iZWRkZWQgKmViLCBFTUZvcm1hdEhUTUxQT2JqZWN0ICpwb2Jq
ZWN0KQoreworCUVNRm9ybWF0SFRNTERpc3BsYXkgKmVmaGQgPSAoRU1Gb3JtYXRIVE1MRGlzcGxh
eSAqKWVmaDsKKwlFQXR0YWNobWVudCAqbmV3OworCXN0cnVjdCBfYXR0YWNoX3B1cmkgKmluZm87
CisJR3RrV2lkZ2V0ICpoYm94LCAqdmJveCwgKncsICpidXR0b24sICptYWluYm94LCAqc2Nyb2xs
LCAqbGFiZWwsICppbWc7CisJY2hhciAqc2ltcGxlX3R5cGUsICp0bXAsICpuZXdfZmlsZSA9IE5V
TEw7CisJY29uc3QgY2hhciAqZmlsZTsKKwlHZGtQaXhidWYgKnBpeGJ1ZiwgKm1pbmk7CisJQXRr
T2JqZWN0ICphMTF5OworCUd0a1RleHRWaWV3ICp2aWV3OworCUd0a1RleHRCdWZmZXIgKmJ1ZmZl
cjsKKwlHdGtUYXJnZXRFbnRyeSBkcmFnX3R5cGVzW10gPSB7CisJCXsgTlVMTCwgMCwgMCB9LAor
CQl7ICJ0ZXh0L3VyaS1saXN0IiwgMCwgMSB9LAorCX07CisKKwkvKiBGSVhNRTogaGFuZGxlIGRl
ZmF1bHQgc2hvd24gY2FzZSAqLworCWQocHJpbnRmKCJhZGRpbmcgYXR0YWNobWVudCBidXR0b24v
Y29udGVudCBmb3Igb3B0aW9uYWwgcmVuZGVyaW5nXG4iKSk7CisKKwlpbmZvID0gKHN0cnVjdCBf
YXR0YWNoX3B1cmkgKillbV9mb3JtYXRfZmluZF9wdXJpKChFTUZvcm1hdCAqKWVmaCwgcG9iamVj
dC0+Y2xhc3NpZCk7CisJZ19hc3NlcnQoaW5mbyAhPSBOVUxMKTsKKwlnX2Fzc2VydChpbmZvLT5m
b3J3YXJkID09IE5VTEwpOworCisJc2Nyb2xsID0gZ3RrX3Njcm9sbGVkX3dpbmRvd19uZXcgKE5V
TEwsIE5VTEwpOwkKKwltYWluYm94ID0gZ3RrX2hib3hfbmV3KEZBTFNFLCAwKTsKKworCWJ1dHRv
biA9IGd0a19idXR0b25fbmV3KCk7CisJaGJveCA9IGd0a19oYm94X25ldyAoRkFMU0UsIDApOwor
CWltZyA9IGVfaWNvbl9mYWN0b3J5X2dldF9pbWFnZSAoInN0b2NrX3Nob3ctYWxsIiwgRV9JQ09O
X1NJWkVfQlVUVE9OKTsKKwlsYWJlbCA9IGd0a19sYWJlbF9uZXdfd2l0aF9tbmVtb25pYyhfKCJW
aWV3IF9VbmZvcm1hdHRlZCIpKTsKKwlnX29iamVjdF9zZXRfZGF0YSAoYnV0dG9uLCAidGV4dC1s
YWJlbCIsIChncG9pbnRlcilsYWJlbCk7CisJZ3RrX2JveF9wYWNrX3N0YXJ0ICgoR3RrQm94ICop
aGJveCwgaW1nLCBUUlVFLCBUUlVFLCAyKTsKKwlndGtfYm94X3BhY2tfc3RhcnQgKChHdGtCb3gg
KiloYm94LCBsYWJlbCwgVFJVRSwgVFJVRSwgMik7CisJZ3RrX3dpZGdldF9zaG93X2FsbCAoaGJv
eCk7CisJZ3RrX2NvbnRhaW5lcl9hZGQgKGJ1dHRvbiwgaGJveCk7CisJaWYgKGluZm8tPmhhbmRs
ZSkKKwkJZ19zaWduYWxfY29ubmVjdChidXR0b24sICJjbGlja2VkIiwgR19DQUxMQkFDSyhlZmhk
X29wdGlvbmFsX2J1dHRvbl9zaG93KSwgc2Nyb2xsKTsKKwllbHNlIHsKKwkJZ3RrX3dpZGdldF9z
ZXRfc2Vuc2l0aXZlKGJ1dHRvbiwgRkFMU0UpOworCQlHVEtfV0lER0VUX1VOU0VUX0ZMQUdTKGJ1
dHRvbiwgR1RLX0NBTl9GT0NVUyk7CisJfQorCQorCXZib3ggPSBndGtfdmJveF9uZXcgKEZBTFNF
LCAwKTsKKwlndGtfYm94X3BhY2tfc3RhcnQoKEd0a0JveCAqKW1haW5ib3gsIGJ1dHRvbiwgRkFM
U0UsIEZBTFNFLCA2KTsKKworCWJ1dHRvbiA9IGd0a19idXR0b25fbmV3KCk7CisJaGJveCA9IGd0
a19oYm94X25ldyAoRkFMU0UsIDApOworCWltZyA9IGVfaWNvbl9mYWN0b3J5X2dldF9pbWFnZSAo
InN0b2NrX29wZW4iLCBFX0lDT05fU0laRV9CVVRUT04pOworCWxhYmVsID0gZ3RrX2xhYmVsX25l
d193aXRoX21uZW1vbmljKF8oIk9fcGVuIFdpdGgiKSk7CisJZ3RrX2JveF9wYWNrX3N0YXJ0ICgo
R3RrQm94ICopaGJveCwgaW1nLCBUUlVFLCBUUlVFLCAyKTsKKwlndGtfYm94X3BhY2tfc3RhcnQg
KChHdGtCb3ggKiloYm94LCBsYWJlbCwgVFJVRSwgVFJVRSwgMik7CisJZ3RrX2JveF9wYWNrX3N0
YXJ0ICgoR3RrQm94ICopaGJveCwgZ3RrX2Fycm93X25ldyhHVEtfQVJST1dfRE9XTiwgR1RLX1NI
QURPV19OT05FKSwgVFJVRSwgVFJVRSwgMik7CisJZ3RrX3dpZGdldF9zaG93X2FsbCAoaGJveCk7
CisJZ3RrX2NvbnRhaW5lcl9hZGQgKGJ1dHRvbiwgaGJveCk7CisJCisJYTExeSA9IGd0a193aWRn
ZXRfZ2V0X2FjY2Vzc2libGUgKGJ1dHRvbik7CisJYXRrX29iamVjdF9zZXRfbmFtZSAoYTExeSwg
XygiQXR0YWNobWVudCIpKTsKKworCWdfc2lnbmFsX2Nvbm5lY3QoYnV0dG9uLCAiYnV0dG9uX3By
ZXNzX2V2ZW50IiwgR19DQUxMQkFDSyhlZmhkX2F0dGFjaG1lbnRfcG9wdXApLCBpbmZvKTsKKwln
X3NpZ25hbF9jb25uZWN0KGJ1dHRvbiwgInBvcHVwX21lbnUiLCBHX0NBTExCQUNLKGVmaGRfYXR0
YWNobWVudF9wb3B1cF9tZW51KSwgaW5mbyk7CisJZ19zaWduYWxfY29ubmVjdChidXR0b24sICJj
bGlja2VkIiwgR19DQUxMQkFDSyhlZmhkX2F0dGFjaG1lbnRfcG9wdXBfbWVudSksIGluZm8pOwor
CWd0a19ib3hfcGFja19zdGFydCgoR3RrQm94ICopbWFpbmJveCwgYnV0dG9uLCBGQUxTRSwgRkFM
U0UsIDYpOworCisJZ3RrX3dpZGdldF9zaG93X2FsbChtYWluYm94KTsKKworCWd0a19ib3hfcGFj
a19zdGFydCgoR3RrQm94ICopdmJveCwgbWFpbmJveCwgRkFMU0UsIEZBTFNFLCA2KTsKKworCXZp
ZXcgPSBndGtfdGV4dF92aWV3X25ldyAoKTsKKwlndGtfdGV4dF92aWV3X3NldF9lZGl0YWJsZSAo
dmlldywgRkFMU0UpOworCWd0a190ZXh0X3ZpZXdfc2V0X2N1cnNvcl92aXNpYmxlICh2aWV3LCBG
QUxTRSk7CisJYnVmZmVyID0gZ3RrX3RleHRfdmlld19nZXRfYnVmZmVyKHZpZXcpOworCWd0a190
ZXh0X2J1ZmZlcl9zZXRfdGV4dCAoYnVmZmVyLCBpbmZvLT5tc3RyZWFtLT5idWZmZXItPmRhdGEs
IGluZm8tPm1zdHJlYW0tPmJ1ZmZlci0+bGVuKTsKKwljYW1lbF9vYmplY3RfdW5yZWYoaW5mby0+
bXN0cmVhbSk7CisJaW5mby0+bXN0cmVhbSA9IE5VTEw7CisJZ3RrX3Njcm9sbGVkX3dpbmRvd19z
ZXRfcG9saWN5IChzY3JvbGwsIEdUS19QT0xJQ1lfQVVUT01BVElDLCBHVEtfUE9MSUNZX0FVVE9N
QVRJQyk7CisJZ3RrX3Njcm9sbGVkX3dpbmRvd19zZXRfc2hhZG93X3R5cGUgKEdUS19TQ1JPTExF
RF9XSU5ET1cgKHNjcm9sbCksIEdUS19TSEFET1dfSU4pOworCWd0a19jb250YWluZXJfYWRkIChz
Y3JvbGwsIHZpZXcpOworCWd0a19ib3hfcGFja19zdGFydCgoR3RrQm94ICopdmJveCwgc2Nyb2xs
LCBUUlVFLCBUUlVFLCA2KTsKKwlndGtfd2lkZ2V0X3Nob3cgKHZpZXcpOworCWd0a193aWRnZXRf
c2V0X3NpemVfcmVxdWVzdCAoc2Nyb2xsLCAoKEd0a1dpZGdldCAqKWVmaC0+aHRtbCktPmFsbG9j
YXRpb24ud2lkdGgtNDgsIDI1MCk7CisJZ19zaWduYWxfY29ubmVjdCAoc2Nyb2xsLCAic2l6ZV9h
bGxvY2F0ZSIsIEdfQ0FMTEJBQ0soZWZoZF9yZXNpemUpLCBlZmgpOworCWd0a193aWRnZXRfc2hv
dyAoc2Nyb2xsKTsKKworCWlmICghaW5mby0+c2hvd24pCisJCWd0a193aWRnZXRfaGlkZSAoc2Ny
b2xsKTsKKwkKKwlndGtfd2lkZ2V0X3Nob3cgKHZib3gpOworCWd0a19jb250YWluZXJfYWRkKChH
dGtDb250YWluZXIgKillYiwgdmJveCk7CisJaW5mby0+aGFuZGxlID0gTlVMTDsKKworCXJldHVy
biBUUlVFOworfQorCitzdGF0aWMgdm9pZAorZWZoZF9mb3JtYXRfb3B0aW9uYWwoRU1Gb3JtYXQg
KmVtZiwgQ2FtZWxTdHJlYW0gKmZzdHJlYW0sIENhbWVsTWltZVBhcnQgKnBhcnQsIENhbWVsU3Ry
ZWFtICptc3RyZWFtKQoreworCWNoYXIgKmNsYXNzaWQsICp0ZXh0LCAqaHRtbDsKKwlzdHJ1Y3Qg
X2F0dGFjaF9wdXJpICppbmZvOworCUNhbWVsU3RyZWFtICpzdHJlYW0gPSAoKENhbWVsU3RyZWFt
RmlsdGVyICopIGZzdHJlYW0pLT5zb3VyY2U7CisJCisJY2xhc3NpZCA9IGdfc3RyZHVwX3ByaW50
Zigib3B0aW9uYWwlcyIsIGVtZi0+cGFydF9pZC0+c3RyKTsKKwlpbmZvID0gKHN0cnVjdCBfYXR0
YWNoX3B1cmkgKillbV9mb3JtYXRfYWRkX3B1cmkoZW1mLCBzaXplb2YoKmluZm8pLCBjbGFzc2lk
LCBwYXJ0LCBlZmhkX2F0dGFjaG1lbnRfZnJhbWUpOworCWVtX2Zvcm1hdF9odG1sX2FkZF9wb2Jq
ZWN0KChFTUZvcm1hdEhUTUwgKillbWYsIHNpemVvZihFTUZvcm1hdEhUTUxQT2JqZWN0KSwgY2xh
c3NpZCwgcGFydCwgZWZoZF9hdHRhY2htZW50X29wdGlvbmFsKTsKKwlpbmZvLT5oYW5kbGUgPSBl
bV9mb3JtYXRfZmluZF9oYW5kbGVyKGVtZiwgInRleHQvcGxhaW4iKTs7CisJaW5mby0+c2hvd24g
PSBGQUxTRTsKKwlpbmZvLT5zbm9vcF9taW1lX3R5cGUgPSBnX3N0cmR1cCgidGV4dC9wbGFpbiIp
OworCWluZm8tPmF0dGFjaG1lbnQgPSBlX2F0dGFjaG1lbnRfbmV3X2Zyb21fbWltZV9wYXJ0IChp
bmZvLT5wdXJpLnBhcnQpOworCWluZm8tPm1zdHJlYW0gPSBtc3RyZWFtOworCWlmIChlbWYtPnZh
bGlkKSB7CisJCWluZm8tPnNpZ24gPSBlbWYtPnZhbGlkLT5zaWduLnN0YXR1czsKKwkJaW5mby0+
ZW5jcnlwdCA9IGVtZi0+dmFsaWQtPmVuY3J5cHQuc3RhdHVzOworCX0KKworCWNhbWVsX3N0cmVh
bV93cml0ZV9zdHJpbmcoc3RyZWFtLAorCQkJCSAgRU1fRk9STUFUX0hUTUxfVlBBRAorCQkJCSAg
Ijx0YWJsZSBjZWxsc3BhY2luZz0wIGNlbGxwYWRkaW5nPTA+PHRyPjx0ZD48aDM+PGZvbnQgc2l6
ZT0tMSBjb2xvcj1yZWQ+Iik7CisKKwlodG1sID0gY2FtZWxfdGV4dF90b19odG1sKF8oIkV2b2x1
dGlvbiBjYW5ub3QgcmVuZGVyIHRoaXMgZW1haWwgYXMgaXQgaXMgdG9vIGxhcmdlIHRvIGhhbmRs
ZS4gWW91IGNhbiB2aWV3IGl0IHVuZm9ybWF0dGVkIG9yIHdpdGggYW4gZXh0ZXJuYWwgdGV4dCBl
ZGl0b3IuIiksICgoRU1Gb3JtYXRIVE1MICopZW1mKS0+dGV4dF9odG1sX2ZsYWdzICYgQ0FNRUxf
TUlNRV9GSUxURVJfVE9IVE1MX0NPTlZFUlRfVVJMUywgMCk7CisJY2FtZWxfc3RyZWFtX3dyaXRl
X3N0cmluZyhzdHJlYW0sIGh0bWwpOworCWNhbWVsX3N0cmVhbV93cml0ZV9zdHJpbmcoc3RyZWFt
LAorCQkJCSAgIjwvZm9udD48L2gzPjwvdGQ+PC90cj48L3RhYmxlPlxuIik7CisJY2FtZWxfc3Ry
ZWFtX3dyaXRlX3N0cmluZyhzdHJlYW0sCisJCQkJICAiPHRhYmxlIGNlbGxzcGFjaW5nPTAgY2Vs
bHBhZGRpbmc9MD4iCisJCQkJICAiPHRyPiIpOwkKKwljYW1lbF9zdHJlYW1fcHJpbnRmKHN0cmVh
bSwgIjx0ZD48b2JqZWN0IGNsYXNzaWQ9XCIlc1wiPjwvb2JqZWN0PjwvdGQ+PC90cj48L3RhYmxl
PiIsIGNsYXNzaWQpOworCisJZ19mcmVlKGh0bWwpOworCisJY2FtZWxfc3RyZWFtX3dyaXRlX3N0
cmluZyhzdHJlYW0sCisvKiAJCQkJICAiPC9mb250PjwvaDI+PC90ZD48L3RyPjwvdGFibGU+XG4i
ICovCisJCQkJICBFTV9GT1JNQVRfSFRNTF9WUEFEKTsKKworCWdfZnJlZShjbGFzc2lkKTsKK30K
ZGlmZiAtTmF1ciBldm9sdXRpb24tMi44LjMub3JpZy9tYWlsL2VtLWZvcm1hdC1xdW90ZS5jIGV2
b2x1dGlvbi0yLjguMy9tYWlsL2VtLWZvcm1hdC1xdW90ZS5jCi0tLSBldm9sdXRpb24tMi44LjMu
b3JpZy9tYWlsL2VtLWZvcm1hdC1xdW90ZS5jCTIwMDctMDEtMjkgMTM6MDA6MDEuMDAwMDAwMDAw
ICswMzAwCisrKyBldm9sdXRpb24tMi44LjMvbWFpbC9lbS1mb3JtYXQtcXVvdGUuYwkyMDA3LTAy
LTI1IDExOjExOjUwLjAwMDAwMDAwMCArMDMwMApAQCAtNDExLDcgKzQxMSw3IEBACiAJY2FtZWxf
c3RyZWFtX2ZpbHRlcl9hZGQoZmlsdGVyZWRfc3RyZWFtLCBodG1sX2ZpbHRlcik7CiAJY2FtZWxf
b2JqZWN0X3VucmVmKGh0bWxfZmlsdGVyKTsKIAkKLQllbV9mb3JtYXRfZm9ybWF0X3RleHQoZW1m
LCAoQ2FtZWxTdHJlYW0gKilmaWx0ZXJlZF9zdHJlYW0sIGR3KTsKKwllbV9mb3JtYXRfZm9ybWF0
X3RleHQoZW1mLCAoQ2FtZWxTdHJlYW0gKilmaWx0ZXJlZF9zdHJlYW0sIHBhcnQpOwogCWNhbWVs
X29iamVjdF91bnJlZihmaWx0ZXJlZF9zdHJlYW0pOwogfQogCkBAIC00NzMsNyArNDczLDcgQEAK
IAljYW1lbF9zdHJlYW1fZmlsdGVyX2FkZChmaWx0ZXJlZF9zdHJlYW0sIGh0bWxfZmlsdGVyKTsK
IAljYW1lbF9vYmplY3RfdW5yZWYoaHRtbF9maWx0ZXIpOwogCQotCWVtX2Zvcm1hdF9mb3JtYXRf
dGV4dCgoRU1Gb3JtYXQgKillbWZxLCAoQ2FtZWxTdHJlYW0gKilmaWx0ZXJlZF9zdHJlYW0sIGNh
bWVsX21lZGl1bV9nZXRfY29udGVudF9vYmplY3QoKENhbWVsTWVkaXVtICopcGFydCkpOworCWVt
X2Zvcm1hdF9mb3JtYXRfdGV4dCgoRU1Gb3JtYXQgKillbWZxLCAoQ2FtZWxTdHJlYW0gKilmaWx0
ZXJlZF9zdHJlYW0sIHBhcnQpOwogCWNhbWVsX3N0cmVhbV9mbHVzaCgoQ2FtZWxTdHJlYW0gKilm
aWx0ZXJlZF9zdHJlYW0pOwogCWNhbWVsX29iamVjdF91bnJlZihmaWx0ZXJlZF9zdHJlYW0pOwog
fQpAQCAtNTAxLDcgKzUwMSw3IEBACiAJY2FtZWxfb2JqZWN0X3VucmVmKGVucmljaGVkKTsKIAog
CWNhbWVsX3N0cmVhbV93cml0ZV9zdHJpbmcoc3RyZWFtLCAiPGJyPjxocj48YnI+Iik7Ci0JZW1f
Zm9ybWF0X2Zvcm1hdF90ZXh0KChFTUZvcm1hdCAqKWVtZnEsIChDYW1lbFN0cmVhbSAqKWZpbHRl
cmVkX3N0cmVhbSwgZHcpOworCWVtX2Zvcm1hdF9mb3JtYXRfdGV4dCgoRU1Gb3JtYXQgKillbWZx
LCAoQ2FtZWxTdHJlYW0gKilmaWx0ZXJlZF9zdHJlYW0sIHBhcnQpOwogCWNhbWVsX29iamVjdF91
bnJlZihmaWx0ZXJlZF9zdHJlYW0pOwogfQogCkBAIC01MDksNyArNTA5LDcgQEAKIGVtZnFfdGV4
dF9odG1sKEVNRm9ybWF0ICplbWYsIENhbWVsU3RyZWFtICpzdHJlYW0sIENhbWVsTWltZVBhcnQg
KnBhcnQsIEVNRm9ybWF0SGFuZGxlciAqaW5mbykKIHsKIAljYW1lbF9zdHJlYW1fd3JpdGVfc3Ry
aW5nKHN0cmVhbSwgIlxuPCEtLSB0ZXh0L2h0bWwgLS0+XG4iKTsKLQllbV9mb3JtYXRfZm9ybWF0
X3RleHQoZW1mLCBzdHJlYW0sIGNhbWVsX21lZGl1bV9nZXRfY29udGVudF9vYmplY3QoKENhbWVs
TWVkaXVtICopcGFydCkpOworCWVtX2Zvcm1hdF9mb3JtYXRfdGV4dChlbWYsIHN0cmVhbSwgcGFy
dCk7CiB9CiAKIHN0YXRpYyB2b2lkCmRpZmYgLU5hdXIgZXZvbHV0aW9uLTIuOC4zLm9yaWcvbWFp
bC9lbS1tYWlsZXItcHJlZnMuYyBldm9sdXRpb24tMi44LjMvbWFpbC9lbS1tYWlsZXItcHJlZnMu
YwotLS0gZXZvbHV0aW9uLTIuOC4zLm9yaWcvbWFpbC9lbS1tYWlsZXItcHJlZnMuYwkyMDA3LTAx
LTI5IDEzOjAwOjAxLjAwMDAwMDAwMCArMDMwMAorKysgZXZvbHV0aW9uLTIuOC4zL21haWwvZW0t
bWFpbGVyLXByZWZzLmMJMjAwNy0wMi0yNSAxMToxMTo1MC4wMDAwMDAwMDAgKzAzMDAKQEAgLTQ1
OSw2ICs0NTksMTYgQEAKIH0KIAogc3RhdGljIHZvaWQKK21saW1pdF9jb3VudF9jaGFuZ2VkIChH
dGtTcGluQnV0dG9uICpzcGluLCBFTU1haWxlclByZWZzICpwcmVmcykKK3sKKwlpbnQgY291bnQ7
CisJCisJY291bnQgPSAoaW50KSBndGtfc3Bpbl9idXR0b25fZ2V0X3ZhbHVlIChwcmVmcy0+bWxp
bWl0X2NvdW50KTsKKwkKKwlnY29uZl9jbGllbnRfc2V0X2ludCAocHJlZnMtPmdjb25mLCAiL2Fw
cHMvZXZvbHV0aW9uL21haWwvZGlzcGxheS9tZXNzYWdlX3RleHRfcGFydF9saW1pdCIsIGNvdW50
LCBOVUxMKTsKK30KKworc3RhdGljIHZvaWQKIHNwaW5fYnV0dG9uX2luaXQgKEVNTWFpbGVyUHJl
ZnMgKnByZWZzLCBHdGtTcGluQnV0dG9uICpzcGluLCBjb25zdCBjaGFyICprZXksIGZsb2F0IGRp
diwgR0NhbGxiYWNrIHZhbHVlX2NoYW5nZWQpCiB7CiAJR0Vycm9yICplcnIgPSBOVUxMOwpAQCAt
NzcyLDYgKzc4MiwxNiBAQAogCQkJICAiL2FwcHMvZXZvbHV0aW9uL21haWwvZGlzcGxheS9tYXJr
X3NlZW5fdGltZW91dCIsCiAJCQkgIDEwMDAuMCwgR19DQUxMQkFDSyAobWFya19zZWVuX3RpbWVv
dXRfY2hhbmdlZCkpOwogCisJcHJlZnMtPm1saW1pdF90b2dnbGUgPSBHVEtfVE9HR0xFX0JVVFRP
TiAoZ2xhZGVfeG1sX2dldF93aWRnZXQgKGd1aSwgIm1saW1pdF9jaGVja2J1dHRvbiIpKTsKKwl0
b2dnbGVfYnV0dG9uX2luaXQgKHByZWZzLCBwcmVmcy0+bWxpbWl0X3RvZ2dsZSwgRkFMU0UsCisJ
CQkgICAgIi9hcHBzL2V2b2x1dGlvbi9tYWlsL2Rpc3BsYXkvZm9yY2VfbWVzc2FnZV9saW1pdCIs
CisJCQkgICAgR19DQUxMQkFDSyAodG9nZ2xlX2J1dHRvbl90b2dnbGVkKSk7CisJCisJcHJlZnMt
Pm1saW1pdF9jb3VudCA9IEdUS19TUElOX0JVVFRPTiAoZ2xhZGVfeG1sX2dldF93aWRnZXQgKGd1
aSwgIm1saW1pdF9zcGluIikpOworCXNwaW5fYnV0dG9uX2luaXQgKHByZWZzLCBwcmVmcy0+bWxp
bWl0X2NvdW50LAorCQkJICAiL2FwcHMvZXZvbHV0aW9uL21haWwvZGlzcGxheS9tZXNzYWdlX3Rl
eHRfcGFydF9saW1pdCIsCisJCQkgIDEsIEdfQ0FMTEJBQ0sgKG1saW1pdF9jb3VudF9jaGFuZ2Vk
KSk7CisJCiAJcHJlZnMtPmFkZHJlc3NfdG9nZ2xlID0gR1RLX1RPR0dMRV9CVVRUT04gKGdsYWRl
X3htbF9nZXRfd2lkZ2V0IChndWksICJhZGRyZXNzX2NoZWNrYm94IikpOwogCXRvZ2dsZV9idXR0
b25faW5pdCAocHJlZnMsIHByZWZzLT5hZGRyZXNzX3RvZ2dsZSwgRkFMU0UsCiAJCQkgICAgIi9h
cHBzL2V2b2x1dGlvbi9tYWlsL2Rpc3BsYXkvYWRkcmVzc19jb21wcmVzcyIsCmRpZmYgLU5hdXIg
ZXZvbHV0aW9uLTIuOC4zLm9yaWcvbWFpbC9lbS1tYWlsZXItcHJlZnMuaCBldm9sdXRpb24tMi44
LjMvbWFpbC9lbS1tYWlsZXItcHJlZnMuaAotLS0gZXZvbHV0aW9uLTIuOC4zLm9yaWcvbWFpbC9l
bS1tYWlsZXItcHJlZnMuaAkyMDA3LTAxLTI5IDEzOjAwOjAxLjAwMDAwMDAwMCArMDMwMAorKysg
ZXZvbHV0aW9uLTIuOC4zL21haWwvZW0tbWFpbGVyLXByZWZzLmgJMjAwNy0wMi0yNSAxMToxMTo1
MC4wMDAwMDAwMDAgKzAzMDAKQEAgLTc1LDcgKzc1LDkgQEAKIAlzdHJ1Y3QgX0d0a1RvZ2dsZUJ1
dHRvbiAqdGltZW91dF90b2dnbGU7CiAJc3RydWN0IF9HdGtTcGluQnV0dG9uICp0aW1lb3V0Owog
CXN0cnVjdCBfR3RrVG9nZ2xlQnV0dG9uICphZGRyZXNzX3RvZ2dsZTsKLQlzdHJ1Y3QgX0d0a1Nw
aW5CdXR0b24gKmFkZHJlc3NfY291bnQ7CQorCXN0cnVjdCBfR3RrU3BpbkJ1dHRvbiAqYWRkcmVz
c19jb3VudDsKKwlzdHJ1Y3QgX0d0a1RvZ2dsZUJ1dHRvbiAqbWxpbWl0X3RvZ2dsZTsKKwlzdHJ1
Y3QgX0d0a1NwaW5CdXR0b24gKm1saW1pdF9jb3VudDsKIAlzdHJ1Y3QgX0d0a09wdGlvbk1lbnUg
KmNoYXJzZXQ7CiAJc3RydWN0IF9HdGtUb2dnbGVCdXR0b24gKmNpdGF0aW9uX2hpZ2hsaWdodDsK
IAlzdHJ1Y3QgX0dub21lQ29sb3JQaWNrZXIgKmNpdGF0aW9uX2NvbG9yOwpkaWZmIC1OYXVyIGV2
b2x1dGlvbi0yLjguMy5vcmlnL21haWwvZW0tdXRpbHMuYyBldm9sdXRpb24tMi44LjMvbWFpbC9l
bS11dGlscy5jCi0tLSBldm9sdXRpb24tMi44LjMub3JpZy9tYWlsL2VtLXV0aWxzLmMJMjAwNy0w
Mi0yNSAxMTowOTo1OC4wMDAwMDAwMDAgKzAzMDAKKysrIGV2b2x1dGlvbi0yLjguMy9tYWlsL2Vt
LXV0aWxzLmMJMjAwNy0wMi0yNSAxMToxMTo1MC4wMDAwMDAwMDAgKzAzMDAKQEAgLTE0ODgsNiAr
MTQ4OCw3IEBACiAJY2FtZWxfc3RyZWFtX21lbV9zZXRfYnl0ZV9hcnJheSAobWVtLCBidWYpOwog
CQogCWVtZnEgPSBlbV9mb3JtYXRfcXVvdGVfbmV3KE5VTEwsIChDYW1lbFN0cmVhbSAqKW1lbSwg
MCk7CisJKChFTUZvcm1hdCAqKSBlbWZxKS0+Y29tcG9zZXIgPSBUUlVFOwogCWVtX2Zvcm1hdF9z
ZXRfc2Vzc2lvbigoRU1Gb3JtYXQgKillbWZxLCBzZXNzaW9uKTsKIAlpZiAoc291cmNlKSB7CiAJ
CS8qIGNvcHkgb3ZlciB0aGluZ3Mgd2UgY2FuLCBvdGhlciB0aGluZ3MgYXJlIGludGVybmFsLCBw
ZXJoYXBzIG5lZWQgZGlmZmVyZW50IGFwaSB0aGFuICdjbG9uZScgKi8KQEAgLTE1MzYsNiArMTUz
Nyw3IEBACiAJY2FtZWxfc3RyZWFtX21lbV9zZXRfYnl0ZV9hcnJheSAobWVtLCBidWYpOwogCiAJ
ZW1mcSA9IGVtX2Zvcm1hdF9xdW90ZV9uZXcoY3JlZGl0cywgKENhbWVsU3RyZWFtICopbWVtLCBm
bGFncyk7CisJKChFTUZvcm1hdCAqKSBlbWZxKS0+Y29tcG9zZXIgPSBUUlVFOwkKIAllbV9mb3Jt
YXRfc2V0X3Nlc3Npb24oKEVNRm9ybWF0ICopZW1mcSwgc2Vzc2lvbik7CiAJCiAJaWYgKCFzb3Vy
Y2UpIHsKZGlmZiAtTmF1ciBldm9sdXRpb24tMi44LjMub3JpZy9tYWlsL2V2b2x1dGlvbi1tYWls
LnNjaGVtYXMuaW4uaW4gZXZvbHV0aW9uLTIuOC4zL21haWwvZXZvbHV0aW9uLW1haWwuc2NoZW1h
cy5pbi5pbgotLS0gZXZvbHV0aW9uLTIuOC4zLm9yaWcvbWFpbC9ldm9sdXRpb24tbWFpbC5zY2hl
bWFzLmluLmluCTIwMDctMDItMjUgMTE6MDk6NTguMDAwMDAwMDAwICswMzAwCisrKyBldm9sdXRp
b24tMi44LjMvbWFpbC9ldm9sdXRpb24tbWFpbC5zY2hlbWFzLmluLmluCTIwMDctMDItMjUgMTE6
MTE6NTAuMDAwMDAwMDAwICswMzAwCkBAIC00ODUsNyArNDg1LDM2IEBACiAgICAgICAgICA8L2xv
bmc+CiAgICAgICA8L2xvY2FsZT4KICAgICA8L3NjaGVtYT4KLSAgICAKKworICAgIDxzY2hlbWE+
CisgICAgICA8a2V5Pi9zY2hlbWFzL2FwcHMvZXZvbHV0aW9uL21haWwvZGlzcGxheS9mb3JjZV9t
ZXNzYWdlX2xpbWl0PC9rZXk+CisgICAgICA8YXBwbHl0bz4vYXBwcy9ldm9sdXRpb24vbWFpbC9k
aXNwbGF5L2ZvcmNlX21lc3NhZ2VfbGltaXQ8L2FwcGx5dG8+CisgICAgICA8b3duZXI+ZXZvbHV0
aW9uLW1haWw8L293bmVyPgorICAgICAgPHR5cGU+Ym9vbDwvdHlwZT4KKyAgICAgIDxkZWZhdWx0
PnRydWU8L2RlZmF1bHQ+CisgICAgICA8bG9jYWxlIG5hbWU9IkMiPgorICAgICAgICAgPHNob3J0
PkFsbG93cyBldm9sdXRpb24gdG8gZGlzcGxheSB0ZXh0IHBhcnQgb2YgbGltaXRlZCBzaXplPC9z
aG9ydD4KKyAgICAgICAgIDxsb25nPgorCQkgRW5hYmxlIHRvIHJlbmRlciBtZXNzYWdlIHRleHQg
cGFydCBvZiBsaW1pdGVkIHNpemUuCisgICAgICAgICA8L2xvbmc+CisgICAgICA8L2xvY2FsZT4K
KyAgICA8L3NjaGVtYT4KKworICAgIDxzY2hlbWE+CisgICAgICA8a2V5Pi9zY2hlbWFzL2FwcHMv
ZXZvbHV0aW9uL21haWwvZGlzcGxheS9tZXNzYWdlX3RleHRfcGFydF9saW1pdDwva2V5PgorICAg
ICAgPGFwcGx5dG8+L2FwcHMvZXZvbHV0aW9uL21haWwvZGlzcGxheS9tZXNzYWdlX3RleHRfcGFy
dF9saW1pdDwvYXBwbHl0bz4KKyAgICAgIDxvd25lcj5ldm9sdXRpb24tbWFpbDwvb3duZXI+Cisg
ICAgICA8dHlwZT5pbnQ8L3R5cGU+CisgICAgICA8ZGVmYXVsdD40MDk2PC9kZWZhdWx0PgorICAg
ICAgPGxvY2FsZSBuYW1lPSJDIj4KKyAgICAgICAgIDxzaG9ydD5UZXh0IG1lc3NhZ2UgcGFydCBs
aW1pdDwvc2hvcnQ+CisgICAgICAgICA8bG9uZz4KKwkJIFRoaXMgZGVjaWRlcyB0aGUgbWF4IHNp
emUgb2YgdGhlIHRleHQgcGFydCB0aGF0IGNhbiBiZSBmb3JtYXR0ZWQgdW5kZXIKKwkJIGV2b2x1
dGlvbi4gVGhlIGRlZmF1bHQgaXMgNE1CIC8gNDA5NiBLQiBhbmQgaXMgc3BlY2lmaWVkIGludGVy
bXMgb2YgS0IuCisJCSA8L2xvbmc+CisgICAgICA8L2xvY2FsZT4KKyAgICA8L3NjaGVtYT4KKwog
ICAgIDxzY2hlbWE+CiAgICAgICA8a2V5Pi9zY2hlbWFzL2FwcHMvZXZvbHV0aW9uL21haWwvZGlz
cGxheS9hZGRyZXNzX2NvdW50PC9rZXk+CiAgICAgICA8YXBwbHl0bz4vYXBwcy9ldm9sdXRpb24v
bWFpbC9kaXNwbGF5L2FkZHJlc3NfY291bnQ8L2FwcGx5dG8+CmRpZmYgLU5hdXIgZXZvbHV0aW9u
LTIuOC4zLm9yaWcvbWFpbC9tYWlsLWNvbmZpZy5jIGV2b2x1dGlvbi0yLjguMy9tYWlsL21haWwt
Y29uZmlnLmMKLS0tIGV2b2x1dGlvbi0yLjguMy5vcmlnL21haWwvbWFpbC1jb25maWcuYwkyMDA3
LTAxLTI5IDEzOjAwOjAxLjAwMDAwMDAwMCArMDMwMAorKysgZXZvbHV0aW9uLTIuOC4zL21haWwv
bWFpbC1jb25maWcuYwkyMDA3LTAyLTI1IDExOjExOjUwLjAwMDAwMDAwMCArMDMwMApAQCAtMTEw
LDYgKzExMCwxMSBAQAogCWd1aW50IGFkZHJlc3NfY29tcHJlc3Nfbm90aWZ5X2lkOwkKIAlnYm9v
bGVhbiBhZGRyZXNzX2NvbXByZXNzOwkKIAlnaW50IGFkZHJlc3NfY291bnQ7CisJZ3VpbnQgbWxp
bWl0X3NpemVfbm90aWZ5X2lkOworCWd1aW50IG1saW1pdF9ub3RpZnlfaWQ7CQorCWdib29sZWFu
IG1saW1pdDsJCisJZ2ludCBtbGltaXRfc2l6ZTsKKwkKIAkKIAlHUHRyQXJyYXkgKm1pbWVfdHlw
ZXM7CiAJZ3VpbnQgbWltZV90eXBlc19ub3RpZnlfaWQ7CkBAIC0zMzksNiArMzQ0LDIwIEBACiB9
CiAKIHN0YXRpYyB2b2lkCitnY29uZl9tbGltaXRfc2l6ZV9jaGFuZ2VkIChHQ29uZkNsaWVudCAq
Y2xpZW50LCBndWludCBjbnhuX2lkLAorCQkJICAgICBHQ29uZkVudHJ5ICplbnRyeSwgZ3BvaW50
ZXIgdXNlcl9kYXRhKQoreworCWNvbmZpZy0+bWxpbWl0X3NpemUgPSBnY29uZl9jbGllbnRfZ2V0
X2ludCAoY29uZmlnLT5nY29uZiwgIi9hcHBzL2V2b2x1dGlvbi9tYWlsL2Rpc3BsYXkvbWVzc2Fn
ZV90ZXh0X3BhcnRfbGltaXQiLCBOVUxMKTsKK30KKworc3RhdGljIHZvaWQKK2djb25mX21saW1p
dF9jaGFuZ2VkIChHQ29uZkNsaWVudCAqY2xpZW50LCBndWludCBjbnhuX2lkLAorCQkJICAgICBH
Q29uZkVudHJ5ICplbnRyeSwgZ3BvaW50ZXIgdXNlcl9kYXRhKQoreworCWNvbmZpZy0+bWxpbWl0
ID0gZ2NvbmZfY2xpZW50X2dldF9ib29sIChjb25maWctPmdjb25mLCAiL2FwcHMvZXZvbHV0aW9u
L21haWwvZGlzcGxheS9mb3JjZV9tZXNzYWdlX2xpbWl0IiwgTlVMTCk7Cit9CisKK3N0YXRpYyB2
b2lkCiBnY29uZl9taW1lX3R5cGVzX2NoYW5nZWQgKEdDb25mQ2xpZW50ICpjbGllbnQsIGd1aW50
IGNueG5faWQsCiAJCQkgIEdDb25mRW50cnkgKmVudHJ5LCBncG9pbnRlciB1c2VyX2RhdGEpCiB7
CkBAIC0zNzMsNyArMzkyLDExIEBACiAJY29uZmlnLT5mb250X25vdGlmeV9pZCA9IGdjb25mX2Ns
aWVudF9ub3RpZnlfYWRkIChjb25maWctPmdjb25mLCAiL2FwcHMvZXZvbHV0aW9uL21haWwvZGlz
cGxheS9hZGRyZXNzX2NvbXByZXNzIiwKIAkJCQkJCQkgIGdjb25mX2FkZHJlc3NfY29tcHJlc3Nf
Y2hhbmdlZCwgTlVMTCwgTlVMTCwgTlVMTCk7CQkKIAljb25maWctPmZvbnRfbm90aWZ5X2lkID0g
Z2NvbmZfY2xpZW50X25vdGlmeV9hZGQgKGNvbmZpZy0+Z2NvbmYsICIvYXBwcy9ldm9sdXRpb24v
bWFpbC9kaXNwbGF5L2FkZHJlc3NfY291bnQiLAotCQkJCQkJCSAgZ2NvbmZfYWRkcmVzc19jb3Vu
dF9jaGFuZ2VkLCBOVUxMLCBOVUxMLCBOVUxMKTsJCisJCQkJCQkJICBnY29uZl9hZGRyZXNzX2Nv
dW50X2NoYW5nZWQsIE5VTEwsIE5VTEwsIE5VTEwpOworCWNvbmZpZy0+bWxpbWl0X25vdGlmeV9p
ZCA9IGdjb25mX2NsaWVudF9ub3RpZnlfYWRkIChjb25maWctPmdjb25mLCAiL2FwcHMvZXZvbHV0
aW9uL21haWwvZGlzcGxheS9mb3JjZV9tZXNzYWdlX2xpbWl0IiwKKwkJCQkJCQkgIGdjb25mX21s
aW1pdF9jaGFuZ2VkLCBOVUxMLCBOVUxMLCBOVUxMKTsJCQorCWNvbmZpZy0+bWxpbWl0X3NpemVf
bm90aWZ5X2lkID0gZ2NvbmZfY2xpZW50X25vdGlmeV9hZGQgKGNvbmZpZy0+Z2NvbmYsICIvYXBw
cy9ldm9sdXRpb24vbWFpbC9kaXNwbGF5L21lc3NhZ2VfdGV4dF9wYXJ0X2xpbWl0IiwKKwkJCQkJ
CQkgIGdjb25mX21saW1pdF9zaXplX2NoYW5nZWQsIE5VTEwsIE5VTEwsIE5VTEwpOwkKIAljb25m
aWctPnNwZWxsX25vdGlmeV9pZCA9IGdjb25mX2NsaWVudF9ub3RpZnlfYWRkIChjb25maWctPmdj
b25mLCAiL0dOT01FL1NwZWxsIiwKIAkJCQkJCQkgICBnY29uZl9zdHlsZV9jaGFuZ2VkLCBOVUxM
LCBOVUxMLCBOVUxMKTsKIAljb25maWctPm1hcmtfY2l0YXRpb25zX19ub3RpZnlfaWQgPSBnY29u
Zl9jbGllbnRfbm90aWZ5X2FkZCAoY29uZmlnLT5nY29uZiwgIi9hcHBzL2V2b2x1dGlvbi9tYWls
L2Rpc3BsYXkvbWFya19jaXRhdGlvbnMiLApAQCAtMzk3LDYgKzQyMCw4IEBACiAJY29uZmlnX2Nh
Y2hlX21pbWVfdHlwZXMgKCk7CiAJY29uZmlnLT5hZGRyZXNzX2NvbXByZXNzID0gZ2NvbmZfY2xp
ZW50X2dldF9ib29sIChjb25maWctPmdjb25mLCAiL2FwcHMvZXZvbHV0aW9uL21haWwvZGlzcGxh
eS9hZGRyZXNzX2NvbXByZXNzIiwgTlVMTCk7CiAJY29uZmlnLT5hZGRyZXNzX2NvdW50ID0gZ2Nv
bmZfY2xpZW50X2dldF9pbnQgKGNvbmZpZy0+Z2NvbmYsICIvYXBwcy9ldm9sdXRpb24vbWFpbC9k
aXNwbGF5L2FkZHJlc3NfY291bnQiLCBOVUxMKTsKKwljb25maWctPm1saW1pdCA9IGdjb25mX2Ns
aWVudF9nZXRfYm9vbCAoY29uZmlnLT5nY29uZiwgIi9hcHBzL2V2b2x1dGlvbi9tYWlsL2Rpc3Bs
YXkvZm9yY2VfbWVzc2FnZV9saW1pdCIsIE5VTEwpOworCWNvbmZpZy0+bWxpbWl0X3NpemUgPSBn
Y29uZl9jbGllbnRfZ2V0X2ludCAoY29uZmlnLT5nY29uZiwgIi9hcHBzL2V2b2x1dGlvbi9tYWls
L2Rpc3BsYXkvbWVzc2FnZV90ZXh0X3BhcnRfbGltaXQiLCBOVUxMKTsKIAljb25maWctPmFjY291
bnRzID0gZV9hY2NvdW50X2xpc3RfbmV3IChjb25maWctPmdjb25mKTsKIAljb25maWctPnNpZ25h
dHVyZXMgPSBlX3NpZ25hdHVyZV9saXN0X25ldyAoY29uZmlnLT5nY29uZik7CiB9CkBAIC01Mzgs
NiArNTYzLDE1IEBACiAJcmV0dXJuIGNvbmZpZy0+YWRkcmVzc19jb3VudDsKIH0KIAoraW50Citt
YWlsX2NvbmZpZ19nZXRfbWVzc2FnZV9saW1pdCAodm9pZCkKK3sKKwlpZiAoIWNvbmZpZy0+bWxp
bWl0KQorCQlyZXR1cm4gLTE7CisKKwlyZXR1cm4gY29uZmlnLT5tbGltaXRfc2l6ZTsJCit9CisK
IGNvbnN0IGNoYXIgKgogbWFpbF9jb25maWdfZ2V0X2xhYmVsX2NvbG9yX2J5X25hbWUgKGNvbnN0
IGNoYXIgKm5hbWUpCiB7CmRpZmYgLU5hdXIgZXZvbHV0aW9uLTIuOC4zLm9yaWcvbWFpbC9tYWls
LWNvbmZpZy5nbGFkZSBldm9sdXRpb24tMi44LjMvbWFpbC9tYWlsLWNvbmZpZy5nbGFkZQotLS0g
ZXZvbHV0aW9uLTIuOC4zLm9yaWcvbWFpbC9tYWlsLWNvbmZpZy5nbGFkZQkyMDA3LTAxLTI5IDEz
OjAwOjAxLjAwMDAwMDAwMCArMDMwMAorKysgZXZvbHV0aW9uLTIuOC4zL21haWwvbWFpbC1jb25m
aWcuZ2xhZGUJMjAwNy0wMi0yNSAxMToxMTo1MC4wMDAwMDAwMDAgKzAzMDAKQEAgLTMzNDIsNyAr
MzM0Miw3IEBACiAJCSAgICAgIDxjaGlsZD4KIAkJCTx3aWRnZXQgY2xhc3M9Ikd0a0xhYmVsIiBp
ZD0ibGFiZWw1ODMiPgogCQkJICA8cHJvcGVydHkgbmFtZT0idmlzaWJsZSI+VHJ1ZTwvcHJvcGVy
dHk+Ci0JCQkgPHByb3BlcnR5IG5hbWU9ImxhYmVsIiB0cmFuc2xhdGFibGU9InllcyI+U19lbmQg
bWVzc2FnZSByZWNlaXB0czo8L3Byb3BlcnR5PgorCQkJICA8cHJvcGVydHkgbmFtZT0ibGFiZWwi
IHRyYW5zbGF0YWJsZT0ieWVzIj5TX2VuZCBtZXNzYWdlIHJlY2VpcHRzOjwvcHJvcGVydHk+CiAJ
CQkgIDxwcm9wZXJ0eSBuYW1lPSJ1c2VfdW5kZXJsaW5lIj5UcnVlPC9wcm9wZXJ0eT4KIAkJCSAg
PHByb3BlcnR5IG5hbWU9InVzZV9tYXJrdXAiPkZhbHNlPC9wcm9wZXJ0eT4KIAkJCSAgPHByb3Bl
cnR5IG5hbWU9Imp1c3RpZnkiPkdUS19KVVNUSUZZX0xFRlQ8L3Byb3BlcnR5PgpAQCAtMzM1Miw4
ICszMzUyLDggQEAKIAkJCSAgPHByb3BlcnR5IG5hbWU9InlhbGlnbiI+MC41PC9wcm9wZXJ0eT4K
IAkJCSAgPHByb3BlcnR5IG5hbWU9InhwYWQiPjA8L3Byb3BlcnR5PgogCQkJICA8cHJvcGVydHkg
bmFtZT0ieXBhZCI+MDwvcHJvcGVydHk+Ci0JCQkgIDxwcm9wZXJ0eSBuYW1lPSJlbGxpcHNpemUi
PlBBTkdPX0VMTElQU0laRV9OT05FPC9wcm9wZXJ0eT4KIAkJCSAgPHByb3BlcnR5IG5hbWU9Im1u
ZW1vbmljX3dpZGdldCI+cmVjZWlwdF9wb2xpY3lfZHJvcGRvd248L3Byb3BlcnR5PgorCQkJICA8
cHJvcGVydHkgbmFtZT0iZWxsaXBzaXplIj5QQU5HT19FTExJUFNJWkVfTk9ORTwvcHJvcGVydHk+
CiAJCQkgIDxwcm9wZXJ0eSBuYW1lPSJ3aWR0aF9jaGFycyI+LTE8L3Byb3BlcnR5PgogCQkJICA8
cHJvcGVydHkgbmFtZT0ic2luZ2xlX2xpbmVfbW9kZSI+RmFsc2U8L3Byb3BlcnR5PgogCQkJICA8
cHJvcGVydHkgbmFtZT0iYW5nbGUiPjA8L3Byb3BlcnR5PgpAQCAtNDk2Miw2ICs0OTYyLDgyIEBA
CiAJCQkgIDwvY2hpbGQ+CiAKIAkJCSAgPGNoaWxkPgorCQkJICAgIDx3aWRnZXQgY2xhc3M9Ikd0
a0hCb3giIGlkPSJoYm94MjM0Ij4KKwkJCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ2aXNpYmxlIj5U
cnVlPC9wcm9wZXJ0eT4KKwkJCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJob21vZ2VuZW91cyI+RmFs
c2U8L3Byb3BlcnR5PgorCQkJICAgICAgPHByb3BlcnR5IG5hbWU9InNwYWNpbmciPjQ8L3Byb3Bl
cnR5PgorCisJCQkgICAgICA8Y2hpbGQ+CisJCQkJPHdpZGdldCBjbGFzcz0iR3RrQ2hlY2tCdXR0
b24iIGlkPSJtbGltaXRfY2hlY2tidXR0b24iPgorCQkJCSAgPHByb3BlcnR5IG5hbWU9InZpc2li
bGUiPlRydWU8L3Byb3BlcnR5PgorCQkJCSAgPHByb3BlcnR5IG5hbWU9ImNhbl9mb2N1cyI+VHJ1
ZTwvcHJvcGVydHk+CisJCQkJICA8cHJvcGVydHkgbmFtZT0ibGFiZWwiIHRyYW5zbGF0YWJsZT0i
eWVzIj5EbyBub3QgcmVuZGVyIHRleHQgY29udGVudHMgaW4gbWFpbHMgaWYgaXRzIHNpX3plIGV4
Y2VlZHM8L3Byb3BlcnR5PgorCQkJCSAgPHByb3BlcnR5IG5hbWU9InVzZV91bmRlcmxpbmUiPlRy
dWU8L3Byb3BlcnR5PgorCQkJCSAgPHByb3BlcnR5IG5hbWU9InJlbGllZiI+R1RLX1JFTElFRl9O
T1JNQUw8L3Byb3BlcnR5PgorCQkJCSAgPHByb3BlcnR5IG5hbWU9ImZvY3VzX29uX2NsaWNrIj5U
cnVlPC9wcm9wZXJ0eT4KKwkJCQkgIDxwcm9wZXJ0eSBuYW1lPSJhY3RpdmUiPkZhbHNlPC9wcm9w
ZXJ0eT4KKwkJCQkgIDxwcm9wZXJ0eSBuYW1lPSJpbmNvbnNpc3RlbnQiPkZhbHNlPC9wcm9wZXJ0
eT4KKwkJCQkgIDxwcm9wZXJ0eSBuYW1lPSJkcmF3X2luZGljYXRvciI+VHJ1ZTwvcHJvcGVydHk+
CisJCQkJPC93aWRnZXQ+CisJCQkJPHBhY2tpbmc+CisJCQkJICA8cHJvcGVydHkgbmFtZT0icGFk
ZGluZyI+MDwvcHJvcGVydHk+CisJCQkJICA8cHJvcGVydHkgbmFtZT0iZXhwYW5kIj5GYWxzZTwv
cHJvcGVydHk+CisJCQkJICA8cHJvcGVydHkgbmFtZT0iZmlsbCI+RmFsc2U8L3Byb3BlcnR5Pgor
CQkJCTwvcGFja2luZz4KKwkJCSAgICAgIDwvY2hpbGQ+CisKKwkJCSAgICAgIDxjaGlsZD4KKwkJ
CQk8d2lkZ2V0IGNsYXNzPSJHdGtTcGluQnV0dG9uIiBpZD0ibWxpbWl0X3NwaW4iPgorCQkJCSAg
PHByb3BlcnR5IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgorCQkJCSAgPHByb3BlcnR5
IG5hbWU9ImNhbl9mb2N1cyI+VHJ1ZTwvcHJvcGVydHk+CisJCQkJICA8cHJvcGVydHkgbmFtZT0i
Y2xpbWJfcmF0ZSI+MTwvcHJvcGVydHk+CisJCQkJICA8cHJvcGVydHkgbmFtZT0iZGlnaXRzIj4w
PC9wcm9wZXJ0eT4KKwkJCQkgIDxwcm9wZXJ0eSBuYW1lPSJudW1lcmljIj5GYWxzZTwvcHJvcGVy
dHk+CisJCQkJICA8cHJvcGVydHkgbmFtZT0idXBkYXRlX3BvbGljeSI+R1RLX1VQREFURV9BTFdB
WVM8L3Byb3BlcnR5PgorCQkJCSAgPHByb3BlcnR5IG5hbWU9InNuYXBfdG9fdGlja3MiPkZhbHNl
PC9wcm9wZXJ0eT4KKwkJCQkgIDxwcm9wZXJ0eSBuYW1lPSJ3cmFwIj5GYWxzZTwvcHJvcGVydHk+
CisJCQkJICA8cHJvcGVydHkgbmFtZT0iYWRqdXN0bWVudCI+MCAwIDMwMDAwIDEgMTAgMTA8L3By
b3BlcnR5PgorCQkJCTwvd2lkZ2V0PgorCQkJCTxwYWNraW5nPgorCQkJCSAgPHByb3BlcnR5IG5h
bWU9InBhZGRpbmciPjA8L3Byb3BlcnR5PgorCQkJCSAgPHByb3BlcnR5IG5hbWU9ImV4cGFuZCI+
RmFsc2U8L3Byb3BlcnR5PgorCQkJCSAgPHByb3BlcnR5IG5hbWU9ImZpbGwiPlRydWU8L3Byb3Bl
cnR5PgorCQkJCTwvcGFja2luZz4KKwkJCSAgICAgIDwvY2hpbGQ+CisKKwkJCSAgICAgIDxjaGls
ZD4KKwkJCQk8d2lkZ2V0IGNsYXNzPSJHdGtMYWJlbCIgaWQ9ImxhYmVsNTg1Ij4KKwkJCQkgIDxw
cm9wZXJ0eSBuYW1lPSJ2aXNpYmxlIj5UcnVlPC9wcm9wZXJ0eT4KKwkJCQkgIDxwcm9wZXJ0eSBu
YW1lPSJsYWJlbCIgdHJhbnNsYXRhYmxlPSJ5ZXMiPktCPC9wcm9wZXJ0eT4KKwkJCQkgIDxwcm9w
ZXJ0eSBuYW1lPSJ1c2VfdW5kZXJsaW5lIj5GYWxzZTwvcHJvcGVydHk+CisJCQkJICA8cHJvcGVy
dHkgbmFtZT0idXNlX21hcmt1cCI+RmFsc2U8L3Byb3BlcnR5PgorCQkJCSAgPHByb3BlcnR5IG5h
bWU9Imp1c3RpZnkiPkdUS19KVVNUSUZZX0xFRlQ8L3Byb3BlcnR5PgorCQkJCSAgPHByb3BlcnR5
IG5hbWU9IndyYXAiPkZhbHNlPC9wcm9wZXJ0eT4KKwkJCQkgIDxwcm9wZXJ0eSBuYW1lPSJzZWxl
Y3RhYmxlIj5GYWxzZTwvcHJvcGVydHk+CisJCQkJICA8cHJvcGVydHkgbmFtZT0ieGFsaWduIj4w
LjU8L3Byb3BlcnR5PgorCQkJCSAgPHByb3BlcnR5IG5hbWU9InlhbGlnbiI+MC41PC9wcm9wZXJ0
eT4KKwkJCQkgIDxwcm9wZXJ0eSBuYW1lPSJ4cGFkIj4wPC9wcm9wZXJ0eT4KKwkJCQkgIDxwcm9w
ZXJ0eSBuYW1lPSJ5cGFkIj4wPC9wcm9wZXJ0eT4KKwkJCQkgIDxwcm9wZXJ0eSBuYW1lPSJlbGxp
cHNpemUiPlBBTkdPX0VMTElQU0laRV9OT05FPC9wcm9wZXJ0eT4KKwkJCQkgIDxwcm9wZXJ0eSBu
YW1lPSJ3aWR0aF9jaGFycyI+LTE8L3Byb3BlcnR5PgorCQkJCSAgPHByb3BlcnR5IG5hbWU9InNp
bmdsZV9saW5lX21vZGUiPkZhbHNlPC9wcm9wZXJ0eT4KKwkJCQkgIDxwcm9wZXJ0eSBuYW1lPSJh
bmdsZSI+MDwvcHJvcGVydHk+CisJCQkJPC93aWRnZXQ+CisJCQkJPHBhY2tpbmc+CisJCQkJICA8
cHJvcGVydHkgbmFtZT0icGFkZGluZyI+MDwvcHJvcGVydHk+CisJCQkJICA8cHJvcGVydHkgbmFt
ZT0iZXhwYW5kIj5GYWxzZTwvcHJvcGVydHk+CisJCQkJICA8cHJvcGVydHkgbmFtZT0iZmlsbCI+
RmFsc2U8L3Byb3BlcnR5PgorCQkJCTwvcGFja2luZz4KKwkJCSAgICAgIDwvY2hpbGQ+CisJCQkg
ICAgPC93aWRnZXQ+CisJCQkgICAgPHBhY2tpbmc+CisJCQkgICAgICA8cHJvcGVydHkgbmFtZT0i
cGFkZGluZyI+MDwvcHJvcGVydHk+CisJCQkgICAgICA8cHJvcGVydHkgbmFtZT0iZXhwYW5kIj5G
YWxzZTwvcHJvcGVydHk+CisJCQkgICAgICA8cHJvcGVydHkgbmFtZT0iZmlsbCI+RmFsc2U8L3By
b3BlcnR5PgorCQkJICAgIDwvcGFja2luZz4KKwkJCSAgPC9jaGlsZD4KKworCQkJICA8Y2hpbGQ+
CiAJCQkgICAgPHdpZGdldCBjbGFzcz0iR3RrSEJveCIgaWQ9Imhib3gyMzMiPgogCQkJICAgICAg
PHByb3BlcnR5IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5PgogCQkJICAgICAgPHByb3Bl
cnR5IG5hbWU9ImhvbW9nZW5lb3VzIj5GYWxzZTwvcHJvcGVydHk+CkBAIC02NTcyLDcgKzY2NDgs
NyBAQAogCQkgICAgICA8Y2hpbGQ+CiAJCQk8d2lkZ2V0IGNsYXNzPSJHdGtMYWJlbCIgaWQ9Imxh
YmVsNTcxIj4KIAkJCSAgPHByb3BlcnR5IG5hbWU9InZpc2libGUiPlRydWU8L3Byb3BlcnR5Pgot
CQkJICA8cHJvcGVydHkgbmFtZT0ibGFiZWwiIHRyYW5zbGF0YWJsZT0ibm8iPiAgICA8L3Byb3Bl
cnR5PgorCQkJICA8cHJvcGVydHkgbmFtZT0ibGFiZWwiPiAgICA8L3Byb3BlcnR5PgogCQkJICA8
cHJvcGVydHkgbmFtZT0idXNlX3VuZGVybGluZSI+RmFsc2U8L3Byb3BlcnR5PgogCQkJICA8cHJv
cGVydHkgbmFtZT0idXNlX21hcmt1cCI+RmFsc2U8L3Byb3BlcnR5PgogCQkJICA8cHJvcGVydHkg
bmFtZT0ianVzdGlmeSI+R1RLX0pVU1RJRllfTEVGVDwvcHJvcGVydHk+CkBAIC02Njc1LDcgKzY3
NTEsNyBAQAogCQkgIDxjaGlsZD4KIAkJICAgIDx3aWRnZXQgY2xhc3M9Ikd0a0xhYmVsIiBpZD0i
bGFiZWw1NzIiPgogCQkgICAgICA8cHJvcGVydHkgbmFtZT0idmlzaWJsZSI+VHJ1ZTwvcHJvcGVy
dHk+Ci0JCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJsYWJlbCIgdHJhbnNsYXRhYmxlPSJubyI+ICAg
IDwvcHJvcGVydHk+CisJCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJsYWJlbCI+ICAgIDwvcHJvcGVy
dHk+CiAJCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ1c2VfdW5kZXJsaW5lIj5GYWxzZTwvcHJvcGVy
dHk+CiAJCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ1c2VfbWFya3VwIj5GYWxzZTwvcHJvcGVydHk+
CiAJCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJqdXN0aWZ5Ij5HVEtfSlVTVElGWV9MRUZUPC9wcm9w
ZXJ0eT4KQEAgLTY3MzEsNyArNjgwNyw3IEBACiAJCQkgIDxjaGlsZD4KIAkJCSAgICA8d2lkZ2V0
IGNsYXNzPSJHdGtMYWJlbCIgaWQ9ImxhYmVsNTc1Ij4KIAkJCSAgICAgIDxwcm9wZXJ0eSBuYW1l
PSJ2aXNpYmxlIj5UcnVlPC9wcm9wZXJ0eT4KLQkJCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJsYWJl
bCIgdHJhbnNsYXRhYmxlPSJubyI+ICAgIDwvcHJvcGVydHk+CisJCQkgICAgICA8cHJvcGVydHkg
bmFtZT0ibGFiZWwiPiAgICA8L3Byb3BlcnR5PgogCQkJICAgICAgPHByb3BlcnR5IG5hbWU9InVz
ZV91bmRlcmxpbmUiPkZhbHNlPC9wcm9wZXJ0eT4KIAkJCSAgICAgIDxwcm9wZXJ0eSBuYW1lPSJ1
c2VfbWFya3VwIj5GYWxzZTwvcHJvcGVydHk+CiAJCQkgICAgICA8cHJvcGVydHkgbmFtZT0ianVz
dGlmeSI+R1RLX0pVU1RJRllfTEVGVDwvcHJvcGVydHk+CmRpZmYgLU5hdXIgZXZvbHV0aW9uLTIu
OC4zLm9yaWcvbWFpbC9tYWlsLWNvbmZpZy5oIGV2b2x1dGlvbi0yLjguMy9tYWlsL21haWwtY29u
ZmlnLmgKLS0tIGV2b2x1dGlvbi0yLjguMy5vcmlnL21haWwvbWFpbC1jb25maWcuaAkyMDA3LTAx
LTI5IDEzOjAwOjAxLjAwMDAwMDAwMCArMDMwMAorKysgZXZvbHV0aW9uLTIuOC4zL21haWwvbWFp
bC1jb25maWcuaAkyMDA3LTAyLTI1IDExOjExOjUwLjAwMDAwMDAwMCArMDMwMApAQCAtMTM0LDYg
KzEzNCw3IEBACiB2b2lkIG1haWxfY29uZmlnX3JlbW92ZV9hY2NvdW50IChzdHJ1Y3QgX0VBY2Nv
dW50ICphY2NvdW50KTsKIHZvaWQgbWFpbF9jb25maWdfc2V0X2RlZmF1bHRfYWNjb3VudCAoc3Ry
dWN0IF9FQWNjb3VudCAqYWNjb3VudCk7CiBpbnQgbWFpbF9jb25maWdfZ2V0X2FkZHJlc3NfY291
bnQgKHZvaWQpOworaW50IG1haWxfY29uZmlnX2dldF9tZXNzYWdlX2xpbWl0ICh2b2lkKTsKIAog
dm9pZCBtYWlsX2NvbmZpZ19yZW1vdmVfYWNjb3VudF9wcm94aWVzIChzdHJ1Y3QgX0VBY2NvdW50
ICphY2NvdW50KTsKIHZvaWQgbWFpbF9jb25maWdfcHJ1bmVfcHJveGllcyAodm9pZCk7Cg==
</data>        

          </attachment>
    </bug>

</bugzilla>