<?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>32007</bug_id>
          
          <creation_ts>2003-10-25 21:22 0000</creation_ts>
          <short_desc>ucspi-tcp-0.88-r8.ebuild (Update)</short_desc>
          <delta_ts>2006-09-12 16:07:13 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>Ebuilds</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://www.netmonks.ca/gentoo/patches/ucspi-tcp-0.88-r8.ebuild</bug_file_loc>
          
          
          <priority>P2</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>slepp@netmonks.ca</reporter>
          <assigned_to>nick@capital-internet.net</assigned_to>
          <cc>chutz@gg3.net</cc>
    
    <cc>vapier@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>slepp@netmonks.ca</who>
            <bug_when>2003-10-25 21:22:39 0000</bug_when>
            <thetext>Attached are two items relating to sys-apps/ucspi-tcp.

The problem this one solves is using SSL and IPv6 at the same time. The patches
were picked through and put together to generate an SSL patch that can sit on
top of the IPv6 patch.

The first attachment will be the ebuild itself, the other is the SSL patch to
the IPv6 enabled ucspi-tcp.

Nothing else was changed from ucspi-tcp-0.88-r7.ebuild.


Reproducible: Always
Steps to Reproduce:</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>slepp@netmonks.ca</who>
            <bug_when>2003-10-25 21:25:16 0000</bug_when>
            <thetext>Created an attachment (id=19796)
ucspi-tcp-0.88-r8 (proposed) Ebuild to incorporate SSL and IPv6 simultaneously

This is identical to -r7, except it includes references to the new patch.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>slepp@netmonks.ca</who>
            <bug_when>2003-10-25 21:26:58 0000</bug_when>
            <thetext>Created an attachment (id=19797)
Applied over the ucspi-tcp-0.88-ipv6.diff13 patch, it enables SSL
simultaneously.

This patch requires the ucspi-tcp-0.88-ipv6.diff13 patch to work.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>slepp@netmonks.ca</who>
            <bug_when>2003-10-25 21:34:39 0000</bug_when>
            <thetext>Created an attachment (id=19798)
Associated ChangeLog for this proposed update.

Just adding this for completeness.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>robbat2@gentoo.org</who>
            <bug_when>2004-01-20 22:34:20 0000</bug_when>
            <thetext>now in CVS, thanks.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>robbat2@gentoo.org</who>
            <bug_when>2004-01-21 03:47:00 0000</bug_when>
            <thetext>*** Bug 38904 has been marked as a duplicate of this bug. ***</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>christophe@saout.de</who>
            <bug_when>2006-09-12 16:07:13 0000</bug_when>
            <thetext>Created an attachment (id=96842)
Working ipv6 + ssl + limits for latest 0.88-r15

Digged into the code and fixed the outstanding bugs, so ipv6 + ssl is usable again. (BTW, I fixed some other bugs in the IPv6 implementation as well)

-C can also take IPv6 adresses now like -C 2001:1234:5678::/48:10
</thetext>
          </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>19796</attachid>
            <date>2003-10-25 21:25 0000</date>
            <desc>ucspi-tcp-0.88-r8 (proposed) Ebuild to incorporate SSL and IPv6 simultaneously</desc>
            <filename>ucspi-tcp-0.88-r8.ebuild</filename>
            <type>text/plain</type>
            <data encoding="base64">IyBDb3B5cmlnaHQgMTk5OS0yMDAzIEdlbnRvbyBUZWNobm9sb2dpZXMsIEluYy4KIyBEaXN0cmli
dXRlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYy
CiMgJEhlYWRlcjogL2hvbWUvY3Zzcm9vdC9nZW50b28teDg2L3N5cy1hcHBzL3Vjc3BpLXRjcC91
Y3NwaS10Y3AtMC44OC1yNy5lYnVpbGQsdiAxLjIgMjAwMy8wOS8wNyAwMDozODo0NCBtc3RlcnJl
dCBFeHAgJAoKaW5oZXJpdCBldXRpbHMgZ2NjCgpERVNDUklQVElPTj0iQ29sbGVjdGlvbiBvZiB0
b29scyBmb3IgbWFuYWdpbmcgVU5JWCBzZXJ2aWNlcyIKSE9NRVBBR0U9Imh0dHA6Ly9jci55cC50
by91Y3NwaS10Y3AuaHRtbCIKU1JDX1VSST0iaHR0cDovL2NyLnlwLnRvLyR7UE59LyR7UH0udGFy
Lmd6CglpcHY2PyAoIGh0dHA6Ly93d3cuZmVmZS5kZS91Y3NwaS91Y3NwaS10Y3AtMC44OC1pcHY2
LmRpZmYxMy5iejIgKQoJc3NsPyAoIGh0dHA6Ly93d3cubnJnNHUuY29tL3FtYWlsL3Vjc3BpLXRj
cC1zc2wtMjAwMjA3MDUucGF0Y2guZ3ogaHR0cDovL3d3dy5uZXRtb25rcy5jYS9nZW50b28vcGF0
Y2hlcy91Y3NwaS10Y3AtMC44OC1pcHY2LXNzbC1ubTEucGF0Y2guYnoyICkKCW1pcnJvcjovL3Ft
YWlsL3Vjc3BpLXJzcy5kaWZmIgoKTElDRU5TRT0iYXMtaXMiClNMT1Q9IjAiCktFWVdPUkRTPSJ+
eDg2IH5hbWQ2NCB+c3BhcmMgfnBwYyB+YWxwaGEiCklVU0U9InNzbCBpcHY2IgoKREVQRU5EPSJ2
aXJ0dWFsL2dsaWJjCglzc2w/ICggPj1kZXYtbGlicy9vcGVuc3NsLTAuOS42ZyApIgoKc3JjX3Vu
cGFjaygpIHsKCXVucGFjayAke0F9CgljZCAke1N9CglpZiB1c2UgaXB2NjsgdGhlbgoJCWVwYXRj
aCAke1dPUktESVJ9L3Vjc3BpLXRjcC0wLjg4LWlwdjYuZGlmZjEzCiAgICAgICAgZmkKCWlmIHVz
ZSBzc2w7IHRoZW4KICAgICAgICAgIGlmIHVzZSBpcHY2IDsgdGhlbgogICAgICAgICAgICAgICAg
ZXBhdGNoICR7V09SS0RJUn0vdWNzcGktdGNwLTAuODgtaXB2Ni1zc2wtbm0xLnBhdGNoCiAgICAg
ICAgICBlbHNlCgkJZXBhdGNoICR7V09SS0RJUn0vdWNzcGktdGNwLXNzbC0yMDAyMDcwNS5wYXRj
aAogICAgICAgICAgZmkKCWZpCgllcGF0Y2ggJHtGSUxFU0RJUn0vJHtQVn0tZXJybm8ucGF0Y2gK
CWVwYXRjaCAke0RJU1RESVJ9L3Vjc3BpLXJzcy5kaWZmCgllcGF0Y2ggJHtGSUxFU0RJUn0vJHtQ
Vn0taGVhZC0xLnBhdGNoCgoJZWNobyAiJChnY2MtZ2V0Q0MpICR7Q0ZMQUdTfSIgPiBjb25mLWNj
CgllY2hvICIkKGdjYy1nZXRDQykgJHtMREZMQUdTfSIgPiBjb25mLWxkCgllY2hvICIvdXNyLyIg
PiBjb25mLWhvbWUKCgkjIGFsbG93IGxhcmdlciByZXNwb25zZXMKCXNlZCAtaSAnc3xpZiAodGV4
dC5sZW4gPiAyMDApIHRleHQubGVuID0gMjAwO3xpZiAodGV4dC5sZW4gPiA1MDApIHRleHQubGVu
ID0gNTAwO3xnJyAke1N9L3JibHNtdHBkLmMKfQoKc3JjX2NvbXBpbGUoKSB7CglwbWFrZSB8fCBk
aWUKfQoKc3JjX2luc3RhbGwoKSB7Cglkb2JpbiB0Y3BzZXJ2ZXIgdGNwcnVsZXMgdGNwcnVsZXNj
aGVjayBhcmd2MCByZWNvcmRpbyB0Y3BjbGllbnQgKlxAIHRjcGNhdCBtY29ubmVjdCBtY29ubmVj
dC1pbyBhZGRjciBkZWxjciBmaXhjcmlvIHJibHNtdHBkCglkb21hbiAqLlsxNV0KCWRvZG9jIENI
QU5HRVMgRklMRVMgUkVBRE1FIFNZU0RFUFMgVEFSR0VUUyBUT0RPIFZFUlNJT04KfQo=
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>19797</attachid>
            <date>2003-10-25 21:26 0000</date>
            <desc>Applied over the ucspi-tcp-0.88-ipv6.diff13 patch, it enables SSL simultaneously.</desc>
            <filename>ucspi-tcp-0.88-ipv6-ssl-nm1.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">ZGlmZiAtdXJ3TiB1Y3NwaS10Y3AtMC44OC1pcHY2L01ha2VmaWxlIHVjc3BpLXRjcC0wLjg4LXNz
bC1pcHY2L01ha2VmaWxlCi0tLSB1Y3NwaS10Y3AtMC44OC1pcHY2L01ha2VmaWxlCTIwMDMtMTAt
MjUgMjE6NTY6NDYuMDAwMDAwMDAwIC0wNjAwCisrKyB1Y3NwaS10Y3AtMC44OC1zc2wtaXB2Ni9N
YWtlZmlsZQkyMDAzLTEwLTI1IDIxOjU2OjEyLjAwMDAwMDAwMCAtMDYwMApAQCAtMSw1ICsxLDEz
IEBACiAjIERvbid0IGVkaXQgTWFrZWZpbGUhIFVzZSBjb25mLSogZm9yIGNvbmZpZ3VyYXRpb24u
CiAKK0RFRklORVM9LURXSVRIX1NTTAorI2FkZCAtRFdJVEhfU1NMIHRvIGVuYWJsZSBzc2wgc3Vw
cG9ydAorCisjIExJQlMgZm9yIGFkZGl0aW9uYWwgbGlicmFyaWVzIGFuZCBJTkNTIGZvciBhZGRp
dGlvbmFsIGluY2x1ZGVzCitMSUJTPS1sY3J5cHRvIC1sc3NsCisjSU5DUz0tSS91c3IvbG9jYWwv
aW5jbHVkZQorT1BFTlNTTEJJTj1vcGVuc3NsCisKIFNIRUxMPS9iaW4vc2gKIAogZGVmYXVsdDog
aXQKQEAgLTE1Myw2ICsxNjEsMTAgQEAKIAk+IGNob29zZQogCWNobW9kIDc1NSBjaG9vc2UKIAor
Y2xlYW46IFwKK1RBUkdFVFMKKwlybSAtZiBgY2F0IFRBUkdFVFNgCisKIGNvbW1hbmRzLm86IFwK
IGNvbXBpbGUgY29tbWFuZHMuYyBidWZmZXIuaCBzdHJhbGxvYy5oIGdlbl9hbGxvYy5oIHN0ci5o
IGNhc2UuaCBcCiBjb21tYW5kcy5oCkBAIC03NTUsNyArNzY3LDcgQEAKIGxvYWQgdGNwc2VydmVy
Lm8gcnVsZXMubyByZW1vdGVpbmZvNi5vIHRpbWVvdXRjb25uNi5vIGNkYi5hIGRucy5hIFwKIHRp
bWUuYSB1bml4LmEgYnl0ZS5hIHNvY2tldC5saWIKIAkuL2xvYWQgdGNwc2VydmVyIHJ1bGVzLm8g
cmVtb3RlaW5mbzYubyB0aW1lb3V0Y29ubjYubyBjZGIuYSBcCi0JZG5zLmEgdGltZS5hIHVuaXgu
YSBieXRlLmEgIGBjYXQgc29ja2V0LmxpYmAKKwlkbnMuYSB0aW1lLmEgdW5peC5hIGJ5dGUuYSAk
KExJQlMpIGBjYXQgc29ja2V0LmxpYmAKIAogdGNwc2VydmVyLm86IFwKIGNvbXBpbGUgdGNwc2Vy
dmVyLmMgdWludDE2Lmggc3RyLmggYnl0ZS5oIGZtdC5oIHNjYW4uaCBpcDQuaCBmZC5oIFwKQEAg
LTc2NCw3ICs3NzYsNyBAQAogc29ja2V0LmggdWludDE2LmggbmRlbGF5LmggcmVtb3RlaW5mby5o
IHN0cmFsbG9jLmggdWludDE2LmggcnVsZXMuaCBcCiBzdHJhbGxvYy5oIHNpZy5oIGRucy5oIHN0
cmFsbG9jLmggaW9wYXVzZS5oIHRhaWEuaCB0YWkuaCB1aW50NjQuaCBcCiB0YWlhLmggdWludDMy
LmgKLQkuL2NvbXBpbGUgdGNwc2VydmVyLmMKKwkuL2NvbXBpbGUgJChERUZJTkVTKSAkKElOQ1Mp
IHRjcHNlcnZlci5jCiAKIHRpbWUuYTogXAogbWFrZWxpYiBpb3BhdXNlLm8gdGFpX3BhY2subyB0
YWlhX2FkZC5vIHRhaWFfYXBwcm94Lm8gdGFpYV9mcmFjLm8gXApAQCAtODYxLDYgKzg3MywxOCBA
QAogCT4gd2hvQAogCWNobW9kIDc1NSB3aG9ACiAKK2NlcnQ6CisJJHtPUEVOU1NMQklOfSByZXEg
LW5ldyAteDUwOSAtbm9kZXMgXAorCS1vdXQgY2VydC5wZW0gLWRheXMgMzY2IFwKKwkta2V5b3V0
IGNlcnQucGVtCitjZXJ0LXJlcToKKwkke09QRU5TU0xCSU59IHJlcSAtbmV3IC1ub2RlcyBcCisJ
LW91dCByZXEucGVtIFwKKwkta2V5b3V0IGNlcnQucGVtCisJQGVjaG8KKwlAZWNobyAiU2VuZCBy
ZXEucGVtIHRvIHlvdXIgQ0EgdG8gb2J0YWluIHNpZ25lZF9yZXEucGVtLCBhbmQgZG86IgorCUBl
Y2hvICJjYXQgc2lnbmVkX3JlcS5wZW0gPj4gYGhlYWQgLTEgY29uZi1xbWFpbGAvY29udHJvbC9j
ZXJ0LnBlbSIKKwogc29ja2V0X2Nvbm42Lm86IFwKIGNvbXBpbGUgc29ja2V0X2Nvbm42LmMgc29j
a2V0LmggdWludDE2LmggaGF2ZWlwNi5oIGVycm9yLmggaXA2LmggXAogdWludDMyLmgKQEAgLTk2
NCw2ICs5ODgsMyBAQAogc29ja2V0X3Y2bG9vcGJhY2subzogXAogY29tcGlsZSBzb2NrZXRfdjZs
b29wYmFjay5jCiAJLi9jb21waWxlIHNvY2tldF92Nmxvb3BiYWNrLmMKLQotY2xlYW46Ci0Jcm0g
LWYgYGNhdCBUQVJHRVRTYApkaWZmIC11cndOIHVjc3BpLXRjcC0wLjg4LWlwdjYvdGNwc2VydmVy
LmMgdWNzcGktdGNwLTAuODgtc3NsLWlwdjYvdGNwc2VydmVyLmMKLS0tIHVjc3BpLXRjcC0wLjg4
LWlwdjYvdGNwc2VydmVyLmMJMjAwMy0xMC0yNSAyMTo1Njo0Ni4wMDAwMDAwMDAgLTA2MDAKKysr
IHVjc3BpLXRjcC0wLjg4LXNzbC1pcHY2L3RjcHNlcnZlci5jCTIwMDMtMTAtMjUgMjE6NTk6MDEu
MDAwMDAwMDAwIC0wNjAwCkBAIC0xLDYgKzEsNyBAQAogI2luY2x1ZGUgPHN5cy90eXBlcy5oPgog
I2luY2x1ZGUgPHN5cy9wYXJhbS5oPgogI2luY2x1ZGUgPG5ldGRiLmg+CisjaW5jbHVkZSA8b3Bl
bnNzbC9zc2wuaD4KICNpbmNsdWRlICJ1aW50MTYuaCIKICNpbmNsdWRlICJzdHIuaCIKICNpbmNs
dWRlICJieXRlLmgiCkBAIC00MCw2ICs0MSwxNCBAQAogdW5zaWduZWQgbG9uZyB0aW1lb3V0ID0g
MjY7CiB1aW50MzIgbmV0aWYgPSAwOwogCisjaWZkZWYgV0lUSF9TU0wKK2ludCBmbGFnc3NsID0g
MDsKK3N0cnVjdCBzdHJhbGxvYyBjZXJ0ZmlsZSA9IHswfTsKKyNkZWZpbmUgQ0VSVEZJTEUgIi4v
Y2VydC5wZW0iCisKK3ZvaWQgdHJhbnNsYXRlKFNTTCosIGludCwgaW50LCB1bnNpZ25lZCBpbnQp
OworI2VuZGlmCisKIHN0YXRpYyBzdHJhbGxvYyB0Y3ByZW1vdGVpbmZvOwogCiB1aW50MTYgbG9j
YWxwb3J0OwpAQCAtMjYzLDYgKzI3Miw3IEBACiAKIHZvaWQgdXNhZ2Uodm9pZCkKIHsKKyNpZm5k
ZWYgV0lUSF9TU0wKICAgc3RyZXJyX3dhcm4xKCJcCiB0Y3BzZXJ2ZXI6IHVzYWdlOiB0Y3BzZXJ2
ZXIgXAogWyAtNDYxVVhwUGhIclJvT2REcVF2IF0gXApAQCAtMjc2LDYgKzI4NiwyMiBAQAogWyAt
dCB0aW1lb3V0IF0gXAogWyAtSSBpbnRlcmZhY2UgXSBcCiBob3N0IHBvcnQgcHJvZ3JhbSIsMCk7
CisjZWxzZQorICBzdHJlcnJfd2FybjEoIlwKK3RjcHNlcnZlcjogdXNhZ2U6IHRjcHNlcnZlciBc
CitbIC00NjFVWHBQaEhyUm9PZERxUXNTdiBdIFwKK1sgLWMgbGltaXQgXSBcCitbIC14IHJ1bGVz
LmNkYiBdIFwKK1sgLUIgYmFubmVyIF0gXAorWyAtZyBnaWQgXSBcCitbIC11IHVpZCBdIFwKK1sg
LWIgYmFja2xvZyBdIFwKK1sgLWwgbG9jYWxuYW1lIF0gXAorWyAtdCB0aW1lb3V0IF0gXAorWyAt
SSBpbnRlcmZhY2UgXSBcCitbIC1uIGNlcnRmaWxlIF0gXAoraG9zdCBwb3J0IHByb2dyYW0iLDAp
OworI2VuZGlmCiAgIF9leGl0KDEwMCk7CiB9CiAKQEAgLTMyNSw4ICszNTEsMjAgQEAKICAgdW5z
aWduZWQgbG9uZyB1OwogICBpbnQgczsKICAgaW50IHQ7CisjaWZkZWYgV0lUSF9TU0wKKyAgQklP
ICpzYmlvOworICBTU0wgKnNzbDsKKyAgU1NMX0NUWCAqY3R4OworICBpbnQgcGkyY1syXSwgcGk0
Y1syXTsKIAorICBjdHggPSBOVUxMOworCisgIGlmKCFzdHJhbGxvY19jb3B5cygmY2VydGZpbGUs
IENFUlRGSUxFKSB8fCAhc3RyYWxsb2NfMCgmY2VydGZpbGUpICkKKyAgICBzdHJlcnJfZGllMngo
MTExLEZBVEFMLCJvdXQgb2YgbWVtb3J5Iik7CisgIHdoaWxlICgob3B0ID0gZ2V0b3B0KGFyZ2Ms
YXJndiwiNDZkRHZxUWhIclIxVVNzWHg6dDp1Omc6bDpiOkI6YzpJOm46cFBvTyIpKSAhPSBvcHRl
b2YpCisjZWxzZQogICB3aGlsZSAoKG9wdCA9IGdldG9wdChhcmdjLGFyZ3YsIjQ2ZER2cVFoSHJS
MVVYeDp0OnU6ZzpsOmI6QjpjOkk6cFBvTyIpKSAhPSBvcHRlb2YpCisjZW5kaWYKICAgICBzd2l0
Y2gob3B0KSB7CiAgICAgICBjYXNlICdiJzogc2Nhbl91bG9uZyhvcHRhcmcsJmJhY2tsb2cpOyBi
cmVhazsKICAgICAgIGNhc2UgJ2MnOiBzY2FuX3Vsb25nKG9wdGFyZywmbGltaXQpOyBicmVhazsK
QEAgLTM1Niw2ICszOTQsMTQgQEAKICAgICAgIGNhc2UgJzQnOiBub2lwdjYgPSAxOyBicmVhazsK
ICAgICAgIGNhc2UgJzYnOiBmb3JjZXY2ID0gMTsgYnJlYWs7CiAgICAgICBjYXNlICdsJzogbG9j
YWxob3N0ID0gb3B0YXJnOyBicmVhazsKKyNpZmRlZiBXSVRIX1NTTAorICAgICAgY2FzZSAncyc6
IGZsYWdzc2wgPSAxOyBicmVhazsKKyAgICAgIGNhc2UgJ1MnOiBmbGFnc3NsID0gMDsgYnJlYWs7
CisgICAgICBjYXNlICduJzogaWYgKCFzdHJhbGxvY19jb3B5cygmY2VydGZpbGUsIG9wdGFyZykg
fHwKKwkJICAgICFzdHJhbGxvY18wKCZjZXJ0ZmlsZSkgKQorCQkgIHN0cmVycl9kaWUyeCgxMTEs
RkFUQUwsIm91dCBvZiBtZW1vcnkiKTsKKwkJYnJlYWs7CisjZW5kaWYKICAgICAgIGRlZmF1bHQ6
IHVzYWdlKCk7CiAgICAgfQogICBhcmdjIC09IG9wdGluZDsKQEAgLTQwMCw2ICs0NDYsMjAgQEAK
ICAgICAgIG5vaXB2Nj0xOwogICB9CiAKKyAgI2lmZGVmIFdJVEhfU1NMCisgICAgaWYoZmxhZ3Nz
bCA9PSAxKSB7CisgICAgICAvKiBzZXR1cCBTU0wgY29udGV4dCAobG9hZCBrZXkgYW5kIGNlcnQg
aW50byBjdHgpICovCisgICAgICBTU0xfbGlicmFyeV9pbml0KCk7CisgICAgICBjdHg9U1NMX0NU
WF9uZXcoU1NMdjIzX3NlcnZlcl9tZXRob2QoKSk7CisgICAgICBpZiAoIWN0eCkgc3RyZXJyX2Rp
ZTJ4KDExMSxGQVRBTCwidW5hYmxlIHRvIGNyZWF0ZSBTU0wgY29udGV4dCIpOworCisgICAgICBp
ZihTU0xfQ1RYX3VzZV9SU0FQcml2YXRlS2V5X2ZpbGUoY3R4LCBjZXJ0ZmlsZS5zLCBTU0xfRklM
RVRZUEVfUEVNKSAhPSAxKQorICAgICAgICBzdHJlcnJfZGllMngoMTExLEZBVEFMLCJ1bmFibGUg
dG8gbG9hZCBSU0EgcHJpdmF0ZSBrZXkiKTsKKyAgICAgIGlmKFNTTF9DVFhfdXNlX2NlcnRpZmlj
YXRlX2ZpbGUoY3R4LCBjZXJ0ZmlsZS5zLCBTU0xfRklMRVRZUEVfUEVNKSAhPSAxKQorICAgICAg
ICBzdHJlcnJfZGllMngoMTExLEZBVEFMLCJ1bmFibGUgdG8gbG9hZCBjZXJ0aWZpY2F0ZSIpOwor
ICAgIH0KKyAgI2VuZGlmCisKICAgcyA9IHNvY2tldF90Y3A2KCk7CiAgIGlmIChzID09IC0xKQog
ICAgIHN0cmVycl9kaWUyc3lzKDExMSxGQVRBTCwidW5hYmxlIHRvIGNyZWF0ZSBzb2NrZXQ6ICIp
OwpAQCAtNDQ5LDYgKzUwOSwzOSBAQAogICAgICAgICBzaWdfdW5ibG9jayhzaWdfY2hpbGQpOwog
ICAgICAgICBzaWdfdW5jYXRjaChzaWdfdGVybSk7CiAgICAgICAgIHNpZ191bmNhdGNoKHNpZ19w
aXBlKTsKKyNpZmRlZiBXSVRIX1NTTAorCWlmIChmbGFnc3NsID09IDEpIHsKKwkgIGlmIChwaXBl
KHBpMmMpICE9IDApCisJICAgIHN0cmVycl9kaWUyc3lzKDExMSxEUk9QLCJ1bmFibGUgdG8gY3Jl
YXRlIHBpcGU6ICIpOworCSAgaWYgKHBpcGUocGk0YykgIT0gMCkKKwkgICAgc3RyZXJyX2RpZTJz
eXMoMTExLERST1AsInVuYWJsZSB0byBjcmVhdGUgcGlwZTogIik7CisJICBzd2l0Y2goZm9yaygp
KSB7CisJICAgIGNhc2UgMDoKKwkgICAgICBjbG9zZSgwKTsgY2xvc2UoMSk7CisJICAgICAgY2xv
c2UocGkyY1sxXSk7CisJICAgICAgY2xvc2UocGk0Y1swXSk7CisJICAgICAgaWYgKChmZF9tb3Zl
KDAscGkyY1swXSkgPT0gLTEpIHx8IChmZF9tb3ZlKDEscGk0Y1sxXSkgPT0gLTEpKQorCQlzdHJl
cnJfZGllMnN5cygxMTEsRFJPUCwidW5hYmxlIHRvIHNldCB1cCBkZXNjcmlwdG9yczogIik7CisJ
ICAgICAgLyogc2lnbmFscyBhcmUgYWxscmVhZHkgc2V0IGluIHRoZSBwYXJlbnQgKi8KKwkgICAg
ICBwYXRoZXhlYyhhcmd2KTsKKwkgICAgICBzdHJlcnJfZGllNHN5cygxMTEsRFJPUCwidW5hYmxl
IHRvIHJ1biAiLCphcmd2LCI6ICIpOworCSAgICBjYXNlIC0xOgorCSAgICAgIHN0cmVycl9kaWUy
c3lzKDExMSxEUk9QLCJ1bmFibGUgdG8gZm9yazogIik7CisJICAgIGRlZmF1bHQ6CisJICAgICAg
c3NsID0gU1NMX25ldyhjdHgpOworCSAgICAgIGlmICghc3NsKQorCQlzdHJlcnJfZGllMngoMTEx
LERST1AsInVuYWJsZSB0byBzZXQgdXAgU1NMIHNlc3Npb24iKTsKKwkgICAgICBzYmlvID0gQklP
X25ld19zb2NrZXQoMCxCSU9fTk9DTE9TRSk7CisJICAgICAgaWYgKCFzYmlvKQorCQlzdHJlcnJf
ZGllMngoMTExLERST1AsInVuYWJsZSB0byBzZXQgdXAgQklPIHNvY2tldCIpOworCSAgICAgIFNT
TF9zZXRfYmlvKHNzbCxzYmlvLHNiaW8pOworCSAgICAgIGNsb3NlKHBpMmNbMF0pOworCSAgICAg
IGNsb3NlKHBpNGNbMV0pOworCSAgICAgIHRyYW5zbGF0ZShzc2wsIHBpMmNbMV0sIHBpNGNbMF0s
IDM2MDApOworCSAgICAgIF9leGl0KDApOworCSAgfQorCX0KKyNlbmRpZgogICAgICAgICBwYXRo
ZXhlYyhhcmd2KTsKIAlzdHJlcnJfZGllNHN5cygxMTEsRFJPUCwidW5hYmxlIHRvIHJ1biAiLCph
cmd2LCI6ICIpOwogICAgICAgY2FzZSAtMToKQEAgLTQ1OCwzICs1NTEsMTAyIEBACiAgICAgY2xv
c2UodCk7CiAgIH0KIH0KKworI2lmZGVmIFdJVEhfU1NMCitzdGF0aWMgaW50IGFsbHdyaXRlKGlu
dCBmZCwgY2hhciAqYnVmLCBpbnQgbGVuKQoreworICBpbnQgdzsKKworICB3aGlsZSAobGVuKSB7
CisgICAgdyA9IHdyaXRlKGZkLGJ1ZixsZW4pOworICAgIGlmICh3ID09IC0xKSB7CisgICAgICBp
ZiAoZXJybm8gPT0gZXJyb3JfaW50cikgY29udGludWU7CisgICAgICByZXR1cm4gLTE7IC8qIG5v
dGUgdGhhdCBzb21lIGRhdGEgbWF5IGhhdmUgYmVlbiB3cml0dGVuICovCisgICAgfQorICAgIGlm
ICh3ID09IDApIDsgLyogbHVzZXIncyBmYXVsdCAqLworICAgIGJ1ZiArPSB3OworICAgIGxlbiAt
PSB3OworICB9CisgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50IGFsbHdyaXRlc3NsKFNTTCog
c3NsLCBjaGFyICpidWYsIGludCBsZW4pCit7CisgIGludCB3OworCisgIHdoaWxlIChsZW4pIHsK
KyAgICB3ID0gU1NMX3dyaXRlKHNzbCxidWYsbGVuKTsKKyAgICBpZiAodyA9PSAtMSkgeworICAg
ICAgaWYgKGVycm5vID09IGVycm9yX2ludHIpIGNvbnRpbnVlOworICAgICAgcmV0dXJuIC0xOyAv
KiBub3RlIHRoYXQgc29tZSBkYXRhIG1heSBoYXZlIGJlZW4gd3JpdHRlbiAqLworICAgIH0KKyAg
ICBpZiAodyA9PSAwKSA7IC8qIGx1c2VyJ3MgZmF1bHQgKi8KKyAgICBidWYgKz0gdzsKKyAgICBs
ZW4gLT0gdzsKKyAgfQorICByZXR1cm4gMDsKK30KKworY2hhciB0YnVmWzIwNDhdOworCit2b2lk
IHRyYW5zbGF0ZShTU0wqIHNzbCwgaW50IGNsZWFyb3V0LCBpbnQgY2xlYXJpbiwgdW5zaWduZWQg
aW50IGlvdGltZW91dCkKK3sKKyAgc3RydWN0IHRhaWEgbm93OworICBzdHJ1Y3QgdGFpYSBkZWFk
bGluZTsKKyAgaW9wYXVzZV9mZCBpb3BbMl07CisgIGludCBmbGFnZXhpdGFzYXA7CisgIGludCBp
b3BsOworICBpbnQgc3Nsb3V0LCBzc2xpbjsKKyAgaW50IG4sIHI7CisKKyAgc3NsaW4gPSBTU0xf
Z2V0X2ZkKHNzbCk7CisgIHNzbG91dCA9IFNTTF9nZXRfZmQoc3NsKTsKKyAgaWYgKHNzbGluID09
IC0xIHx8IHNzbG91dCA9PSAtMSkKKyAgICBzdHJlcnJfZGllMngoMTExLERST1AsInVuYWJsZSB0
byBzZXQgdXAgU1NMIGNvbm5lY3Rpb24iKTsKKyAgCisgIGZsYWdleGl0YXNhcCA9IDA7CisKKyAg
aWYgKFNTTF9hY2NlcHQoc3NsKTw9MCkKKyAgICBzdHJlcnJfZGllMngoMTExLERST1AsInVuYWJs
ZSB0byBhY2NlcHQgU1NMIGNvbm5lY3Rpb24iKTsKKworICB3aGlsZSAoIWZsYWdleGl0YXNhcCkg
eworICAgIHRhaWFfbm93KCZub3cpOworICAgIHRhaWFfdWludCgmZGVhZGxpbmUsaW90aW1lb3V0
KTsKKyAgICB0YWlhX2FkZCgmZGVhZGxpbmUsJm5vdywmZGVhZGxpbmUpOworCisgICAgLyogZmls
bCBpb3BhdXNlIHN0cnVjdCAqLworICAgIGlvcGwgPSAyOworICAgIGlvcFswXS5mZCA9IHNzbGlu
OworICAgIGlvcFswXS5ldmVudHMgPSBJT1BBVVNFX1JFQUQ7CisgICAgaW9wWzFdLmZkID0gY2xl
YXJpbjsKKyAgICBpb3BbMV0uZXZlbnRzID0gSU9QQVVTRV9SRUFEOworCisgICAgLyogZG8gaW9w
YXVzZSByZWFkICovCisgICAgaW9wYXVzZShpb3AsaW9wbCwmZGVhZGxpbmUsJm5vdyk7CisgICAg
aWYgKGlvcFswXS5yZXZlbnRzKSB7CisgICAgICAvKiBkYXRhIG9uIHNzbGluICovCisgICAgICBu
ID0gU1NMX3JlYWQoc3NsLCB0YnVmLCBzaXplb2YodGJ1ZikpOworICAgICAgaWYgKCBuIDwgMCAp
CisJc3RyZXJyX2RpZTJzeXMoMTExLERST1AsInVuYWJsZSB0byByZWFkIGZvcm0gbmV0d29yazog
Iik7CisgICAgICBpZiAoIG4gPT0gMCApCisJZmxhZ2V4aXRhc2FwID0gMTsKKyAgICAgIHIgPSBh
bGx3cml0ZShjbGVhcm91dCwgdGJ1Ziwgbik7CisgICAgICBpZiAoIHIgPCAwICkKKwlzdHJlcnJf
ZGllMnN5cygxMTEsRFJPUCwidW5hYmxlIHRvIHdyaXRlIHRvIGNsaWVudDogIik7CisgICAgfQor
ICAgIGlmIChpb3BbMV0ucmV2ZW50cykgeworICAgICAgLyogZGF0YSBvbiBjbGVhcmluICovCisg
ICAgICBuID0gcmVhZChjbGVhcmluLCB0YnVmLCBzaXplb2YodGJ1ZikpOworICAgICAgaWYgKCBu
IDwgMCApCisJc3RyZXJyX2RpZTJzeXMoMTExLERST1AsInVuYWJsZSB0byByZWFkIGZvcm0gY2xp
ZW50OiAiKTsKKyAgICAgIGlmICggbiA9PSAwICkKKwlmbGFnZXhpdGFzYXAgPSAxOworICAgICAg
ciA9IGFsbHdyaXRlc3NsKHNzbCwgdGJ1Ziwgbik7CisgICAgICBpZiAoIHIgPCAwICkKKwlzdHJl
cnJfZGllMnN5cygxMTEsRFJPUCwidW5hYmxlIHRvIHdyaXRlIHRvIG5ldHdvcms6ICIpOworICAg
IH0KKyAgICBpZiAoIWlvcFswXS5yZXZlbnRzICYmICFpb3BbMV0ucmV2ZW50cykKKyAgICAgIHN0
cmVycl9kaWUyeCgwLCBEUk9QLCJ0aW1lb3V0IHJlYWNoZWQgd2l0aG91dCBpbnB1dCIpOworICB9
Cit9CisjZW5kaWYK
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>19798</attachid>
            <date>2003-10-25 21:34 0000</date>
            <desc>Associated ChangeLog for this proposed update.</desc>
            <filename>ChangeLog</filename>
            <type>text/plain</type>
            <data encoding="base64">IyBDaGFuZ2VMb2cgZm9yIHN5cy1hcHBzL3Vjc3BpLXRjcAojIENvcHlyaWdodCAyMDAyLTIwMDMg
R2VudG9vIFRlY2hub2xvZ2llcywgSW5jLjsgRGlzdHJpYnV0ZWQgdW5kZXIgdGhlIEdQTCB2Mgoj
ICRIZWFkZXI6IC9ob21lL2N2c3Jvb3QvZ2VudG9vLXg4Ni9zeXMtYXBwcy91Y3NwaS10Y3AvQ2hh
bmdlTG9nLHYgMS4xNiAyMDAzLzA5LzAzIDE0OjUxOjIxIHZhcGllciBFeHAgJAoKKnVjc3BpLXRj
cC0wLjg4LXI4ICgyNSBPY3QgMjAwMykKCiAgMjUgT2N0IDIwMDM7IFN0ZXBoZW4gT2xlc2VuIDxz
bGVwcEBuZXRtb25rcy5jYT4gdWNzcGktdGNwLTAuODgtcjguZWJ1aWxkOgogIEFkZGVkIHN1cHBv
cnQgZm9yIFNTTCB3aGVuIHVzaW5nIElQdjYgdmlhIGEgbmV3IHBhdGNoLgoKKnVjc3BpLXRjcC0w
Ljg4LXI3ICgwMyBTZXAgMjAwMykKCiAgMDMgU2VwIDIwMDM7IE1pa2UgRnJ5c2luZ2VyIDx2YXBp
ZXJAZ2VudG9vLm9yZz4gOgogIEluc3RhbGwgbWFucGFnZXMgYW5kIGFkZCBoZWFkIC0xIHBhdGNo
LgoKKnVjc3BpLXRjcC0wLjg4LXI2ICgxMiBBdWcgMjAwMykKCiAgMDMgU2VwIDIwMDM7IE1pa2Ug
RnJ5c2luZ2VyIDx2YXBpZXJAZ2VudG9vLm9yZz4gOgogIEFkZCBoZWFkIC0xIHBhdGNoLgoKICAx
MiBBdWcgMjAwMzsgUm9iaW4gSC4gSm9obnNvbiA8cm9iYmF0MkBnZW50b28ub3JnPiB1Y3NwaS10
Y3AtMC44OC1yNi5lYnVpbGQ6CiAgQWRkIHN1cHBvcnQgZm9yIG5ld2VyIFJCTCB6b25lcyBhbmQg
Y3VzdG9tIGVycm9yIHJlc3BvbnNlcywgYWxzbyBpbmNyZWFzZSBtYXgKICByZXNwb25zZSBzaXpl
CgoqdWNzcGktdGNwLTAuODgtcjUgKDA1IE1hciAyMDAzKQoKICAwMyBTZXAgMjAwMzsgTWlrZSBG
cnlzaW5nZXIgPHZhcGllckBnZW50b28ub3JnPiA6CiAgQWRkIGhlYWQgLTEgcGF0Y2guCgogIDE2
IE1hciAyMDAzOyBXaWxsIFdvb2RzIDx3d29vZHNAZ2VudG9vLm9yZz4gdWNzcGktdGNwLTAuODgt
cjUuZWJ1aWxkOgogIEFkZGVkIGFscGhhIHRvIEtFWVdPUkRTCgogIDA1IE1hciAyMDAzOyBNaWtl
IEZyeXNpbmdlciA8dmFwaWVyQGdlbnRvby5vcmc+IDoKICBWZXJzaW9uIGJ1bXAgdG8gZml4IGds
aWJjIGVycm5vIGlzc3VlICMxNjI2Ny4KCip1Y3NwaS10Y3AtMC44OC1yNCAoMjUgU2VwIDIwMDIp
CgogIDAxIEphbiAyMDAyOyBOaWNrIEhhZGF3YXkgPHJha2VyQGdlbnRvby5vcmc+IHVjc3BpLXRj
cC0wLjg4LXI0LmVidWlsZCA6CiAgTWFya2VkIHN0YWJsZS4KCiAgMzEgRGVjIDIwMDI7IE5pY2sg
SGFkYXdheSA8cmFrZXJAZ2VudG9vLm9yZz4gdWNzcGktdGNwLTAuODgtcjQuZWJ1aWxkIDoKICBO
b3cgdXNpbmcgZXBhdGNoLiBQdXQgaW4gbG9naWMgc28geW91IGNhbiBpbnN0YWxsIGVpdGhlciB0
aGUgaXB2NgogIHBhdGNoIG9yIHRoZSBzc2wgcGF0Y2ggd2l0aCBpcHY2IHRha2luZyBwcmVmZXJl
bmNlLgoKICAyNSBTZXAgMjAwMjsgTmljayBIYWRhd2F5IDxyYWtlckBnZW50b28ub3JnPiB1Y3Nw
aS10Y3AtMC44OC1yNC5lYnVpbGQsIAogIGZpbGVzL2RpZ2VzdC11Y3NwaS10Y3AtMC44OC1yNCA6
CiAgTmV3IGlwdjYgcGF0Y2guICBJdCBzcXVhc2hlcyB0aGUgc3NsIHBhdGNoIHRob3VnaC4gOn58
IE1hc2tlZC4KCip1Y3NwaS10Y3AtMC44OC1yMyAoMDIgU2VwIDIwMDIpCgogIDA4IE9jdCAyMDAy
OyBOaWNrIEhhZGF3YXkgPHJha2VyQGdlbnRvby5vcmc+IHVjc3BpLXRjcC0wLjg4LXIzLmVidWls
ZCwKICBmaWxlcy9kaWdlc3QtdWNzcGktdGNwLTAuODgtcjMgOgogIFJlY3JlYXRlZCBkaWdlc3Qg
ZmlsZSB0byBob3BlZnVsbHkgcmVzb2x2ZSBidWcgIzgzMTQgYW5kIGFkZCBSREVQRU5ELgoKICAw
NCBTZXAgMjAwMjsgTmljayBIYWRhd2F5IDxyYWtlckBnZW50b28ub3JnPiB1Y3NwaS10Y3AtMC44
OC1yMy5lYnVpbGQgOgogIFVwZGF0ZWQgU1JDX1VSSSBzdGFuemEgdG8gc3VwcG9ydCBjb25kaXRp
b25hbCBVUkxzIGFzIHN1Z2dlc3RlZCBpbiBidWcKICAjNzQyNC4KCiAgMDIgU2VwIDIwMDI7IE5p
Y2sgSGFkYXdheSA8cmFrZXJAZ2VudG9vLm9yZz4KICB1Y3NwaS10Y3AtMC44OC1yMy5lYnVpbGQs
IGZpbGVzL2RpZ2VzdC11Y3NwaS10Y3AtMC44OC1yMyA6CiAgQWRkZWQgYSBwYXRjaCBmb3Igc3Ns
IHN1cHBvcnQgaW4gdGNwc2VydmVyLgoKKnVjc3BpLXRjcC0wLjg4LXIyICgxMiBKdWwgMjAwMikK
CiAgMTIgSnVsIDIwMDI7IEdyYW50IEdvb2R5ZWFyIDxnMmJvb2p1bUBnZW50b28ub3JnPiBDaGFu
Z2VMb2cgIDoKICBhZGRlZCBpcHY2IHBhdGNoIGlmIGlwdjYgaW4gVVNFOyB0aGFua3MgdG8gU2Fz
Y2hhIFNpbGJlIGZvciB0aGUgc3VnZ2VzdGlvbgoKKnVjc3BpLXRjcC0wLjg4LXIxICgxIEZlYiAy
MDAyKQoKICAxNCBKdWwgMjAwMjsgcGhvZW5dW3ggPHBob2VuaXhAZ2VudG9vLm9yZz4gdWNzcGkt
dGNwLTAuODgtcjEuZWJ1aWxkIDoKICBBZGRlZCBMSUNFTlNFLCBLRVlXT1JEUywgU0xPVC4KCiAg
MSBGZWIgMjAwMjsgRy5CZXZpbiA8Z2JldmluQGdlbnRvby5vcmc+IENoYW5nZUxvZyA6CiAgICBB
ZGRlZCBpbml0aWFsIENoYW5nZUxvZyB3aGljaCBzaG91bGQgYmUgdXBkYXRlZCB3aGVuZXZlciB0
aGUgcGFja2FnZSBpcwogIHVwZGF0ZWQgaW4gYW55IHdheS4gVGhpcyBjaGFuZ2Vsb2cgaXMgdGFy
Z2V0dGVkIHRvIHVzZXJzLiBUaGlzIG1lYW5zIHRoYXQgdGhlCiAgY29tbWVudHMgc2hvdWxkIHdl
bGwgZXhwbGFpbmVkIGFuZCB3cml0dGVuIGluIGNsZWFuIEVuZ2xpc2guIFRoZSBkZXRhaWxzIGFi
b3V0CiAgd3JpdGluZyBjb3JyZWN0IGNoYW5nZWxvZ3MgYXJlIGV4cGxhaW5lZCBpbiB0aGUgc2tl
bC5DaGFuZ2VMb2cgZmlsZSB3aGljaCB5b3UKICBjYW4gZmluZCBpbiB0aGUgcm9vdCBkaXJlY3Rv
cnkgb2YgdGhlIHBvcnRhZ2UgcmVwb3NpdG9yeS4K
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>96842</attachid>
            <date>2006-09-12 16:07 0000</date>
            <desc>Working ipv6 + ssl + limits for latest 0.88-r15</desc>
            <filename>0.88-ipv6-ssl-20060912.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">ZGlmZiAtTnVycCB1Y3NwaS10Y3AtMC44OC5vcmlnL0ZJTEVTIHVjc3BpLXRjcC0wLjg4L0ZJTEVT
Ci0tLSB1Y3NwaS10Y3AtMC44OC5vcmlnL0ZJTEVTCTIwMDYtMDktMTIgMTQ6MDE6MDEuMDAwMDAw
MDAwICswMjAwCisrKyB1Y3NwaS10Y3AtMC44OC9GSUxFUwkyMDA2LTA5LTEyIDE2OjQzOjQ4LjAw
MDAwMDAwMCArMDIwMApAQCAtMTY0LDYgKzE2NCw3IEBAIHN0ci5oCiBzdHJfY2hyLmMKIHN0cl9k
aWZmLmMKIHN0cl9sZW4uYworc3RyX3JjaHIuYwogc3RyX3N0YXJ0LmMKIHN0cmFsbG9jLmgKIHN0
cmFsbG9jX2NhdC5jCmRpZmYgLU51cnAgdWNzcGktdGNwLTAuODgub3JpZy9maXhjcmlvLjEgdWNz
cGktdGNwLTAuODgvZml4Y3Jpby4xCi0tLSB1Y3NwaS10Y3AtMC44OC5vcmlnL2ZpeGNyaW8uMQkx
OTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMAorKysgdWNzcGktdGNwLTAuODgvZml4
Y3Jpby4xCTIwMDYtMDktMTIgMTU6MTg6MzMuMDAwMDAwMDAwICswMjAwCkBAIC0wLDAgKzEsMTUg
QEAKKy5USCBmaXhjcmlvIDEKKy5TSCBOQU1FCitmaXhjcmlvIFwtIG1ha2Ugc3VyZSB0aGF0IHRo
ZXJlIGlzIGEgQ1IgYmVmb3JlIGVhY2ggTEYKKy5TSCBTWU5PUFNJUworLkIgZml4Y3JpbworLkkg
cHJvZ3JhbQorWworLkkgYXJnIC4uLgorXQorLlNIIERFU0NSSVBUSU9OCisuQiBmaXhjcmlvCitp
bnNlcnRzIENSIGF0IHRoZSBlbmQgb2YgZWFjaCBsaW5lIG9mIGlucHV0IHdoZXJlIGEgQ1IgaXMg
bm90IGFscmVhZHkgcHJlc2VudC4KK0l0IGRvZXMgbm90IGluc2VydCBDUiBhdCB0aGUgZW5kIG9m
IGEgcGFydGlhbCBmaW5hbCBsaW5lLgorLlNIICJTRUUgQUxTTyIKK2FkZGNyKDEpCmRpZmYgLU51
cnAgdWNzcGktdGNwLTAuODgub3JpZy9NYWtlZmlsZSB1Y3NwaS10Y3AtMC44OC9NYWtlZmlsZQot
LS0gdWNzcGktdGNwLTAuODgub3JpZy9NYWtlZmlsZQkyMDA2LTA5LTEyIDE0OjAxOjAxLjAwMDAw
MDAwMCArMDIwMAorKysgdWNzcGktdGNwLTAuODgvTWFrZWZpbGUJMjAwNi0wOS0xMiAxNjo0NDoy
NS4wMDAwMDAwMDAgKzAyMDAKQEAgLTEsMTMgKzEsMjUgQEAKICMgRG9uJ3QgZWRpdCBNYWtlZmls
ZSEgVXNlIGNvbmYtKiBmb3IgY29uZmlndXJhdGlvbi4KIAorREVGSU5FUz0tRFdJVEhfU1NMCisj
YWRkIC1EV0lUSF9TU0wgdG8gZW5hYmxlIHNzbCBzdXBwb3J0CisKKyMgTElCUyBmb3IgYWRkaXRp
b25hbCBsaWJyYXJpZXMgYW5kIElOQ1MgZm9yIGFkZGl0aW9uYWwgaW5jbHVkZXMKK0xJQlM9LWxj
cnlwdG8gLWxzc2wKKyNJTkNTPS1JL3Vzci9sb2NhbC9pbmNsdWRlCitPUEVOU1NMQklOPW9wZW5z
c2wKKwogU0hFTEw9L2Jpbi9zaAogCi1kZWZhdWx0OiBpdAorZGVmYXVsdDogaXQgbWFuCiAKIGFk
ZGNyOiBcCiBsb2FkIGFkZGNyLm8gdW5peC5hIGJ5dGUuYQogCS4vbG9hZCBhZGRjciB1bml4LmEg
Ynl0ZS5hIAogCithZGRjci4wOiBcCithZGRjci4xCisJbnJvZmYgLW1hbiBhZGRjci4xID4gYWRk
Y3IuMAorCiBhZGRjci5vOiBcCiBjb21waWxlIGFkZGNyLmMgYnVmZmVyLmggZXhpdC5oCiAJLi9j
b21waWxlIGFkZGNyLmMKQEAgLTI0LDYgKzM2LDEwIEBAIGFyZ3YwOiBcCiBsb2FkIGFyZ3YwLm8g
dW5peC5hIGJ5dGUuYQogCS4vbG9hZCBhcmd2MCB1bml4LmEgYnl0ZS5hIAogCithcmd2MC4wOiBc
Cithcmd2MC4xCisJbnJvZmYgLW1hbiBhcmd2MC4xID4gYXJndjAuMAorCiBhcmd2MC5vOiBcCiBj
b21waWxlIGFyZ3YwLmMgcGF0aGV4ZWMuaCBzdHJlcnIuaAogCS4vY29tcGlsZSBhcmd2MC5jCkBA
IC03NSwxMyArOTEsMTMgQEAgY29tcGlsZSBidWZmZXJfcHV0LmMgYnVmZmVyLmggc3RyLmggYnl0
ZQogYnl0ZS5hOiBcCiBtYWtlbGliIGJ5dGVfY2hyLm8gYnl0ZV9jb3B5Lm8gYnl0ZV9jci5vIGJ5
dGVfZGlmZi5vIGJ5dGVfcmNoci5vIFwKIGJ5dGVfemVyby5vIGNhc2VfZGlmZmIubyBjYXNlX2Rp
ZmZzLm8gZm10X3Vsb25nLm8gaXA0X2ZtdC5vIFwKLWlwNF9zY2FuLm8gc2Nhbl91bG9uZy5vIHN0
cl9jaHIubyBzdHJfZGlmZi5vIHN0cl9sZW4ubyBzdHJfc3RhcnQubyBcCitpcDRfc2Nhbi5vIHNj
YW5fdWxvbmcubyBzdHJfY2hyLm8gc3RyX2RpZmYubyBzdHJfbGVuLm8gc3RyX3JjaHIubyBzdHJf
c3RhcnQubyBcCiB1aW50MTZfcGFjay5vIHVpbnQxNl91bnBhY2subyB1aW50MzJfcGFjay5vIHVp
bnQzMl91bnBhY2subyBcCiBpcDZfZm10Lm8gc2Nhbl9pcDYubyBzY2FuX3hsb25nLm8gZm10X3hs
b25nLm8KIAkuL21ha2VsaWIgYnl0ZS5hIGJ5dGVfY2hyLm8gYnl0ZV9jb3B5Lm8gYnl0ZV9jci5v
IFwKIAlieXRlX2RpZmYubyBieXRlX3JjaHIubyBieXRlX3plcm8ubyBjYXNlX2RpZmZiLm8gXAog
CWNhc2VfZGlmZnMubyBmbXRfdWxvbmcubyBpcDRfZm10Lm8gaXA0X3NjYW4ubyBzY2FuX3Vsb25n
Lm8gXAotCXN0cl9jaHIubyBzdHJfZGlmZi5vIHN0cl9sZW4ubyBzdHJfc3RhcnQubyB1aW50MTZf
cGFjay5vIFwKKwlzdHJfY2hyLm8gc3RyX2RpZmYubyBzdHJfbGVuLm8gc3RyX3JjaHIubyBzdHJf
c3RhcnQubyB1aW50MTZfcGFjay5vIFwKIAl1aW50MTZfdW5wYWNrLm8gdWludDMyX3BhY2subyB1
aW50MzJfdW5wYWNrLm8gaXA2X2ZtdC5vIFwKIAlzY2FuX2lwNi5vIHNjYW5feGxvbmcubyBmbXRf
eGxvbmcubwogCkBAIC0xNTMsNiArMTY5LDEwIEBAIHdhcm4tYXV0by5zaCBjaG9vc2Uuc2ggY29u
Zi1ob21lCiAJPiBjaG9vc2UKIAljaG1vZCA3NTUgY2hvb3NlCiAKK2NsZWFuOiBcCitUQVJHRVRT
CisJcm0gLWYgYGNhdCBUQVJHRVRTYAorCiBjb21tYW5kcy5vOiBcCiBjb21waWxlIGNvbW1hbmRz
LmMgYnVmZmVyLmggc3RyYWxsb2MuaCBnZW5fYWxsb2MuaCBzdHIuaCBjYXNlLmggXAogY29tbWFu
ZHMuaApAQCAtMTcyLDEwICsxOTIsMTggQEAgd2Fybi1hdXRvLnNoIGRhdGVALnNoIGNvbmYtaG9t
ZQogCT4gZGF0ZUAKIAljaG1vZCA3NTUgZGF0ZUAKIAorZGF0ZUAuMDogXAorZGF0ZUAuMQorCW5y
b2ZmIC1tYW4gZGF0ZUAuMSA+IGRhdGVALjAKKwogZGVsY3I6IFwKIGxvYWQgZGVsY3IubyB1bml4
LmEgYnl0ZS5hCiAJLi9sb2FkIGRlbGNyIHVuaXguYSBieXRlLmEgCiAKK2RlbGNyLjA6IFwKK2Rl
bGNyLjEKKwlucm9mZiAtbWFuIGRlbGNyLjEgPiBkZWxjci4wCisKIGRlbGNyLm86IFwKIGNvbXBp
bGUgZGVsY3IuYyBidWZmZXIuaCBleGl0LmgKIAkuL2NvbXBpbGUgZGVsY3IuYwpAQCAtMjk2LDEw
ICszMjQsMTggQEAgd2Fybi1hdXRvLnNoIGZpbmdlckAuc2ggY29uZi1ob21lCiAJPiBmaW5nZXJA
CiAJY2htb2QgNzU1IGZpbmdlckAKIAorZmluZ2VyQC4wOiBcCitmaW5nZXJALjEKKwlucm9mZiAt
bWFuIGZpbmdlckAuMSA+IGZpbmdlckAuMAorCiBmaXhjcmlvOiBcCiBsb2FkIGZpeGNyaW8ubyB0
aW1lLmEgdW5peC5hIGJ5dGUuYQogCS4vbG9hZCBmaXhjcmlvIHRpbWUuYSB1bml4LmEgYnl0ZS5h
IAogCitmaXhjcmlvLjA6IFwKK2ZpeGNyaW8uMQorCW5yb2ZmIC1tYW4gZml4Y3Jpby4xID4gZml4
Y3Jpby4wCisKIGZpeGNyaW8ubzogXAogY29tcGlsZSBmaXhjcmlvLmMgc2lnLmggYnVmZmVyLmgg
c3RyZXJyLmggYnl0ZS5oIHJlYWR3cml0ZS5oIGV4aXQuaCBcCiBpb3BhdXNlLmggdGFpYS5oIHRh
aS5oIHVpbnQ2NC5oIHBhdGhleGVjLmgKQEAgLTM1MCw2ICszODYsMTAgQEAgd2Fybi1hdXRvLnNo
IGh0dHBALnNoIGNvbmYtaG9tZQogCT4gaHR0cEAKIAljaG1vZCA3NTUgaHR0cEAKIAoraHR0cEAu
MDogXAoraHR0cEAuMQorCW5yb2ZmIC1tYW4gaHR0cEAuMSA+IGh0dHBALjAKKwogaW5zdGFsbDog
XAogbG9hZCBpbnN0YWxsLm8gaGllci5vIGF1dG9faG9tZS5vIHVuaXguYSBieXRlLmEKIAkuL2xv
YWQgaW5zdGFsbCBoaWVyLm8gYXV0b19ob21lLm8gdW5peC5hIGJ5dGUuYSAKQEAgLTQxMyw2ICs0
NTMsMTEgQEAgd2Fybi1hdXRvLnNoIHN5c3R5cGUKIAkpID4gbWFrZWxpYgogCWNobW9kIDc1NSBt
YWtlbGliCiAKK21hbjogXAordGNwY2xpZW50LjAgdGNwc2VydmVyLjAgdGNwcnVsZXMuMCB0Y3By
dWxlc2NoZWNrLjAgdGNwLWVudmlyb24uMCBcCit3aG9ALjAgZGF0ZUAuMCBmaW5nZXJALjAgaHR0
cEAuMCB0Y3BjYXQuMCBtY29ubmVjdC4wIGZpeGNyaW8uMCBhZGRjci4wIFwKK2RlbGNyLjAgYXJn
djAuMCByZWNvcmRpby4wCisKIG1jb25uZWN0OiBcCiB3YXJuLWF1dG8uc2ggbWNvbm5lY3Quc2gg
Y29uZi1ob21lCiAJY2F0IHdhcm4tYXV0by5zaCBtY29ubmVjdC5zaCBcCkBAIC00MjksNiArNDc0
LDEwIEBAIGNvbXBpbGUgbWNvbm5lY3QtaW8uYyBzaWcuaCB3YWl0LmggZm9yay4KIHJlYWR3cml0
ZS5oIGV4aXQuaAogCS4vY29tcGlsZSBtY29ubmVjdC1pby5jCiAKK21jb25uZWN0LjA6IFwKK21j
b25uZWN0LjEKKwlucm9mZiAtbWFuIG1jb25uZWN0LjEgPiBtY29ubmVjdC4wCisKIG5kZWxheV9v
ZmYubzogXAogY29tcGlsZSBuZGVsYXlfb2ZmLmMgbmRlbGF5LmgKIAkuL2NvbXBpbGUgbmRlbGF5
X29mZi5jCkBAIC00OTksNiArNTQ4LDEwIEBAIGNvbXBpbGUgcmVjb3JkaW8uYyBzaWcuaCBidWZm
ZXIuaCBzdHJlcnIKIGV4aXQuaCBmbXQuaCBpb3BhdXNlLmggdGFpYS5oIHRhaS5oIHVpbnQ2NC5o
IHBhdGhleGVjLmgKIAkuL2NvbXBpbGUgcmVjb3JkaW8uYwogCityZWNvcmRpby4wOiBcCityZWNv
cmRpby4xCisJbnJvZmYgLW1hbiByZWNvcmRpby4xID4gcmVjb3JkaW8uMAorCiByZW1vdGVpbmZv
Lm86IFwKIGNvbXBpbGUgcmVtb3RlaW5mby5jIGZtdC5oIGJ1ZmZlci5oIHNvY2tldC5oIHVpbnQx
Ni5oIGVycm9yLmggXAogaW9wYXVzZS5oIHRhaWEuaCB0YWkuaCB1aW50NjQuaCB0aW1lb3V0Y29u
bi5oIHVpbnQxNi5oIHJlbW90ZWluZm8uaCBcCkBAIC02MTgsNiArNjcxLDEwIEBAIHN0cl9sZW4u
bzogXAogY29tcGlsZSBzdHJfbGVuLmMgc3RyLmgKIAkuL2NvbXBpbGUgc3RyX2xlbi5jCiAKK3N0
cl9yY2hyLm86IFwKK2NvbXBpbGUgc3RyX3JjaHIuYyBzdHIuaAorCS4vY29tcGlsZSBzdHJfcmNo
ci5jCisKIHN0cl9zdGFydC5vOiBcCiBjb21waWxlIHN0cl9zdGFydC5jIHN0ci5oCiAJLi9jb21w
aWxlIHN0cl9zdGFydC5jCkBAIC03MTIsNiArNzY5LDEwIEBAIHRhaWFfdWludC5vOiBcCiBjb21w
aWxlIHRhaWFfdWludC5jIHRhaWEuaCB0YWkuaCB1aW50NjQuaAogCS4vY29tcGlsZSB0YWlhX3Vp
bnQuYwogCit0Y3AtZW52aXJvbi4wOiBcCit0Y3AtZW52aXJvbi41CisJbnJvZmYgLW1hbiB0Y3At
ZW52aXJvbi41ID4gdGNwLWVudmlyb24uMAorCiB0Y3BjYXQ6IFwKIHdhcm4tYXV0by5zaCB0Y3Bj
YXQuc2ggY29uZi1ob21lCiAJY2F0IHdhcm4tYXV0by5zaCB0Y3BjYXQuc2ggXApAQCAtNzE5LDEy
ICs3ODAsMjAgQEAgd2Fybi1hdXRvLnNoIHRjcGNhdC5zaCBjb25mLWhvbWUKIAk+IHRjcGNhdAog
CWNobW9kIDc1NSB0Y3BjYXQKIAordGNwY2F0LjA6IFwKK3RjcGNhdC4xCisJbnJvZmYgLW1hbiB0
Y3BjYXQuMSA+IHRjcGNhdC4wCisgCiB0Y3BjbGllbnQ6IFwKIGxvYWQgdGNwY2xpZW50Lm8gcmVt
b3RlaW5mbzYubyBkbnMuYSB0aW1lLmEgdW5peC5hIFwKIGJ5dGUuYSBzb2NrZXQubGliIGJ5dGUu
aCB0aW1lb3V0Y29ubjYubwogCS4vbG9hZCB0Y3BjbGllbnQgcmVtb3RlaW5mbzYubyB0aW1lb3V0
Y29ubjYubyBkbnMuYSB0aW1lLmEgXAogCXVuaXguYSBieXRlLmEgIGBjYXQgc29ja2V0LmxpYmAK
IAordGNwY2xpZW50LjA6IFwKK3RjcGNsaWVudC4xCisJbnJvZmYgLW1hbiB0Y3BjbGllbnQuMSA+
IHRjcGNsaWVudC4wCisKIHRjcGNsaWVudC5vOiBcCiBjb21waWxlIHRjcGNsaWVudC5jIHNpZy5o
IGV4aXQuaCBzZ2V0b3B0Lmggc3ViZ2V0b3B0LmggdWludDE2LmggZm10LmggXAogc2Nhbi5oIHN0
ci5oIGlwNC5oIHVpbnQxNi5oIHNvY2tldC5oIHVpbnQxNi5oIGZkLmggc3RyYWxsb2MuaCBcCkBA
IC03MzcsNiArODA2LDEwIEBAIHRjcHJ1bGVzOiBcCiBsb2FkIHRjcHJ1bGVzLm8gY2RiLmEgdW5p
eC5hIGJ5dGUuYQogCS4vbG9hZCB0Y3BydWxlcyBjZGIuYSB1bml4LmEgYnl0ZS5hIAogCit0Y3By
dWxlcy4wOiBcCit0Y3BydWxlcy4xCisJbnJvZmYgLW1hbiB0Y3BydWxlcy4xID4gdGNwcnVsZXMu
MAorCiB0Y3BydWxlcy5vOiBcCiBjb21waWxlIHRjcHJ1bGVzLmMgc3RyZXJyLmggc3RyYWxsb2Mu
aCBnZW5fYWxsb2MuaCBnZXRsbi5oIGJ1ZmZlci5oIFwKIHN0cmFsbG9jLmggYnVmZmVyLmggZXhp
dC5oIGZtdC5oIGJ5dGUuaCBjZGJfbWFrZS5oIGJ1ZmZlci5oIHVpbnQzMi5oCkBAIC03NDYsNiAr
ODE5LDEwIEBAIHRjcHJ1bGVzY2hlY2s6IFwKIGxvYWQgdGNwcnVsZXNjaGVjay5vIHJ1bGVzLm8g
Y2RiLmEgdW5peC5hIGJ5dGUuYQogCS4vbG9hZCB0Y3BydWxlc2NoZWNrIHJ1bGVzLm8gY2RiLmEg
dW5peC5hIGJ5dGUuYSAKIAordGNwcnVsZXNjaGVjay4wOiBcCit0Y3BydWxlc2NoZWNrLjEKKwlu
cm9mZiAtbWFuIHRjcHJ1bGVzY2hlY2suMSA+IHRjcHJ1bGVzY2hlY2suMAorCiB0Y3BydWxlc2No
ZWNrLm86IFwKIGNvbXBpbGUgdGNwcnVsZXNjaGVjay5jIGJ5dGUuaCBidWZmZXIuaCBzdHJlcnIu
aCBlbnYuaCBydWxlcy5oIFwKIHN0cmFsbG9jLmggZ2VuX2FsbG9jLmgKQEAgLTc1NSw3ICs4MzIs
MTEgQEAgdGNwc2VydmVyOiBcCiBsb2FkIHRjcHNlcnZlci5vIHJ1bGVzLm8gcmVtb3RlaW5mbzYu
byB0aW1lb3V0Y29ubjYubyBjZGIuYSBkbnMuYSBcCiB0aW1lLmEgdW5peC5hIGJ5dGUuYSBzb2Nr
ZXQubGliCiAJLi9sb2FkIHRjcHNlcnZlciBydWxlcy5vIHJlbW90ZWluZm82Lm8gdGltZW91dGNv
bm42Lm8gY2RiLmEgXAotCWRucy5hIHRpbWUuYSB1bml4LmEgYnl0ZS5hICBgY2F0IHNvY2tldC5s
aWJgCisJZG5zLmEgdGltZS5hIHVuaXguYSBieXRlLmEgJChMSUJTKSBgY2F0IHNvY2tldC5saWJg
CisKK3RjcHNlcnZlci4wOiBcCit0Y3BzZXJ2ZXIuMQorCW5yb2ZmIC1tYW4gdGNwc2VydmVyLjEg
PiB0Y3BzZXJ2ZXIuMAogCiB0Y3BzZXJ2ZXIubzogXAogY29tcGlsZSB0Y3BzZXJ2ZXIuYyB1aW50
MTYuaCBzdHIuaCBieXRlLmggZm10Lmggc2Nhbi5oIGlwNC5oIGZkLmggXApAQCAtNzY0LDcgKzg0
NSw3IEBAIGFsbG9jLmggYnVmZmVyLmggZXJyb3IuaCBzdHJlcnIuaCBzZ2V0b3AKIHNvY2tldC5o
IHVpbnQxNi5oIG5kZWxheS5oIHJlbW90ZWluZm8uaCBzdHJhbGxvYy5oIHVpbnQxNi5oIHJ1bGVz
LmggXAogc3RyYWxsb2MuaCBzaWcuaCBkbnMuaCBzdHJhbGxvYy5oIGlvcGF1c2UuaCB0YWlhLmgg
dGFpLmggdWludDY0LmggXAogdGFpYS5oIHVpbnQzMi5oCi0JLi9jb21waWxlIHRjcHNlcnZlci5j
CisJLi9jb21waWxlICQoREVGSU5FUykgJChJTkNTKSB0Y3BzZXJ2ZXIuYwogCiB0aW1lLmE6IFwK
IG1ha2VsaWIgaW9wYXVzZS5vIHRhaV9wYWNrLm8gdGFpYV9hZGQubyB0YWlhX2FwcHJveC5vIHRh
aWFfZnJhYy5vIFwKQEAgLTk2NSw1ICsxMDQ2LDE5IEBAIHNvY2tldF92Nmxvb3BiYWNrLm86IFwK
IGNvbXBpbGUgc29ja2V0X3Y2bG9vcGJhY2suYwogCS4vY29tcGlsZSBzb2NrZXRfdjZsb29wYmFj
ay5jCiAKLWNsZWFuOgotCXJtIC1mIGBjYXQgVEFSR0VUU2AKK3dob0AuMDogXAord2hvQC4xCisJ
bnJvZmYgLW1hbiB3aG9ALjEgPiB3aG9ALjAKKworY2VydDoKKwkke09QRU5TU0xCSU59IHJlcSAt
bmV3IC14NTA5IC1ub2RlcyBcCisJLW91dCBjZXJ0LnBlbSAtZGF5cyAzNjYgXAorCS1rZXlvdXQg
Y2VydC5wZW0KKworY2VydC1yZXE6CisJJHtPUEVOU1NMQklOfSByZXEgLW5ldyAtbm9kZXMgXAor
CS1vdXQgcmVxLnBlbSBcCisJLWtleW91dCBjZXJ0LnBlbQorCUBlY2hvCisJQGVjaG8gIlNlbmQg
cmVxLnBlbSB0byB5b3VyIENBIHRvIG9idGFpbiBzaWduZWRfcmVxLnBlbSwgYW5kIGRvOiIKKwlA
ZWNobyAiY2F0IHNpZ25lZF9yZXEucGVtID4+IGBoZWFkIC0xIGNvbmYtcW1haWxgL2NvbnRyb2wv
Y2VydC5wZW0iCmRpZmYgLU51cnAgdWNzcGktdGNwLTAuODgub3JpZy9zdHJfcmNoci5jIHVjc3Bp
LXRjcC0wLjg4L3N0cl9yY2hyLmMKLS0tIHVjc3BpLXRjcC0wLjg4Lm9yaWcvc3RyX3JjaHIuYwkx
OTcwLTAxLTAxIDAxOjAwOjAwLjAwMDAwMDAwMCArMDEwMAorKysgdWNzcGktdGNwLTAuODgvc3Ry
X3JjaHIuYwkyMDA2LTA5LTEyIDE2OjQ1OjQyLjAwMDAwMDAwMCArMDIwMApAQCAtMCwwICsxLDIw
IEBACisjaW5jbHVkZSAic3RyLmgiCisKK3Vuc2lnbmVkIGludCBzdHJfcmNocihyZWdpc3RlciBj
b25zdCBjaGFyICpzLGludCBjKQoreworICByZWdpc3RlciBjaGFyIGNoOworICByZWdpc3RlciBj
aGFyICp0OworICByZWdpc3RlciBjaGFyICp1OworCisgIGNoID0gYzsKKyAgdCA9IHM7CisgIHUg
PSAwOworICBmb3IgKDs7KSB7CisgICAgaWYgKCEqdCkgYnJlYWs7IGlmICgqdCA9PSBjaCkgdSA9
IHQ7ICsrdDsKKyAgICBpZiAoISp0KSBicmVhazsgaWYgKCp0ID09IGNoKSB1ID0gdDsgKyt0Owor
ICAgIGlmICghKnQpIGJyZWFrOyBpZiAoKnQgPT0gY2gpIHUgPSB0OyArK3Q7CisgICAgaWYgKCEq
dCkgYnJlYWs7IGlmICgqdCA9PSBjaCkgdSA9IHQ7ICsrdDsKKyAgfQorICBpZiAoIXUpIHUgPSB0
OworICByZXR1cm4gdSAtIHM7Cit9CmRpZmYgLU51cnAgdWNzcGktdGNwLTAuODgub3JpZy90Y3By
dWxlcy5jIHVjc3BpLXRjcC0wLjg4L3RjcHJ1bGVzLmMKLS0tIHVjc3BpLXRjcC0wLjg4Lm9yaWcv
dGNwcnVsZXMuYwkyMDA2LTA5LTEyIDE0OjAxOjAxLjAwMDAwMDAwMCArMDIwMAorKysgdWNzcGkt
dGNwLTAuODgvdGNwcnVsZXMuYwkyMDA2LTA5LTEyIDE1OjE4OjMzLjAwMDAwMDAwMCArMDIwMApA
QCAtOTQsNiArOTQsNyBAQCBtYWluKGludCBhcmdjLGNoYXIgKiphcmd2KQogICBpbnQgbGVuOwog
ICBpbnQgZmQ7CiAgIGludCBpOworICBpbnQgZTsKICAgY2hhciBjaDsKIAogICBmbiA9IGFyZ3Zb
MV07CkBAIC0xNTEsOCArMTUyLDE2IEBAIG1haW4oaW50IGFyZ2MsY2hhciAqKmFyZ3YpCiAgICAg
d2hpbGUgKGxlbikKICAgICAgIHN3aXRjaCgqeCkgewogICAgICAgICBjYXNlICcsJzoKKwkgIGUg
PSBieXRlX2Nocih4ICsgMSxsZW4gLSAxLCcsJyk7CiAgICAgICAgICAgaSA9IGJ5dGVfY2hyKHgs
bGVuLCc9Jyk7Ci0gICAgICAgICAgaWYgKGkgPT0gbGVuKSBkaWVfYmFkKCk7CisgICAgICAgICAg
aWYgKGkgPiBlKSB7CisJICAgIGlmIChlIDwgMiB8fCB4WzFdICE9ICchJykgZGllX2JhZCgpOwor
CSAgICBpZiAoIXN0cmFsbG9jX2NhdGIoJmRhdGEsIi0iLDEpKSBub21lbSgpOworCSAgICBpZiAo
IXN0cmFsbG9jX2NhdGIoJmRhdGEseCArIDIsZSAtIDEpKSBub21lbSgpOworCSAgICBpZiAoIXN0
cmFsbG9jXzAoJmRhdGEpKSBub21lbSgpOworCSAgICB4ICs9IGUgKyAxOyBsZW4gLT0gZSArIDE7
CisJICAgIGJyZWFrOworCSAgfQogICAgICAgICAgIGlmICghc3RyYWxsb2NfY2F0YigmZGF0YSwi
KyIsMSkpIG5vbWVtKCk7CiAgICAgICAgICAgaWYgKCFzdHJhbGxvY19jYXRiKCZkYXRhLHggKyAx
LGkpKSBub21lbSgpOwogICAgICAgICAgIHggKz0gaSArIDE7IGxlbiAtPSBpICsgMTsKZGlmZiAt
TnVycCB1Y3NwaS10Y3AtMC44OC5vcmlnL3RjcHJ1bGVzY2hlY2suYyB1Y3NwaS10Y3AtMC44OC90
Y3BydWxlc2NoZWNrLmMKLS0tIHVjc3BpLXRjcC0wLjg4Lm9yaWcvdGNwcnVsZXNjaGVjay5jCTIw
MDAtMDMtMTggMTY6MTg6NDIuMDAwMDAwMDAwICswMTAwCisrKyB1Y3NwaS10Y3AtMC44OC90Y3By
dWxlc2NoZWNrLmMJMjAwNi0wOS0xMiAxNToxODozMy4wMDAwMDAwMDAgKzAyMDAKQEAgLTIyLDYg
KzIyLDExIEBAIHZvaWQgZm91bmQoY2hhciAqZGF0YSx1bnNpZ25lZCBpbnQgZGF0YWwKIAlidWZm
ZXJfcHV0cyhidWZmZXJfMSxkYXRhICsgMSk7CiAJYnVmZmVyX3B1dHMoYnVmZmVyXzEsIlxuIik7
CiAJYnJlYWs7CisgICAgICBjYXNlICctJzoKKwlidWZmZXJfcHV0cyhidWZmZXJfMSwidW5zZXQg
ZW52aXJvbm1lbnQgdmFyaWFibGUgIik7CisJYnVmZmVyX3B1dHMoYnVmZmVyXzEsZGF0YSArIDEp
OworCWJ1ZmZlcl9wdXRzKGJ1ZmZlcl8xLCJcbiIpOworCWJyZWFrOwogICAgIH0KICAgICArK25l
eHQwOwogICAgIGRhdGEgKz0gbmV4dDA7IGRhdGFsZW4gLT0gbmV4dDA7CmRpZmYgLU51cnAgdWNz
cGktdGNwLTAuODgub3JpZy90Y3BzZXJ2ZXIuYyB1Y3NwaS10Y3AtMC44OC90Y3BzZXJ2ZXIuYwot
LS0gdWNzcGktdGNwLTAuODgub3JpZy90Y3BzZXJ2ZXIuYwkyMDA2LTA5LTEyIDE0OjAxOjAxLjAw
MDAwMDAwMCArMDIwMAorKysgdWNzcGktdGNwLTAuODgvdGNwc2VydmVyLmMJMjAwNi0wOS0xMiAx
NzowMjowNS4wMDAwMDAwMDAgKzAyMDAKQEAgLTEsNiArMSw3IEBACiAjaW5jbHVkZSA8c3lzL3R5
cGVzLmg+CiAjaW5jbHVkZSA8c3lzL3BhcmFtLmg+CiAjaW5jbHVkZSA8bmV0ZGIuaD4KKyNpbmNs
dWRlIDxvcGVuc3NsL3NzbC5oPgogI2luY2x1ZGUgInVpbnQxNi5oIgogI2luY2x1ZGUgInN0ci5o
IgogI2luY2x1ZGUgImJ5dGUuaCIKQEAgLTQwLDYgKzQxLDE0IEBAIGludCBmbGFncGFyYW5vaWQg
PSAwOwogdW5zaWduZWQgbG9uZyB0aW1lb3V0ID0gMjY7CiB1aW50MzIgbmV0aWYgPSAwOwogCisj
aWZkZWYgV0lUSF9TU0wKK2ludCBmbGFnc3NsID0gMDsKK3N0cnVjdCBzdHJhbGxvYyBjZXJ0Zmls
ZSA9IHswfTsKKyNkZWZpbmUgQ0VSVEZJTEUgIi4vY2VydC5wZW0iCisKK3ZvaWQgdHJhbnNsYXRl
KFNTTCosIGludCwgaW50LCB1bnNpZ25lZCBpbnQpOworI2VuZGlmCisKIHN0YXRpYyBzdHJhbGxv
YyB0Y3ByZW1vdGVpbmZvOwogCiB1aW50MTYgbG9jYWxwb3J0OwpAQCAtMTMwLDYgKzEzOSw5IEBA
IHZvaWQgZm91bmQoY2hhciAqZGF0YSx1bnNpZ25lZCBpbnQgZGF0YWwKIAkgIGVudihkYXRhICsg
MSxkYXRhICsgMSArIHNwbGl0ICsgMSk7CiAJfQogCWJyZWFrOworICAgICAgY2FzZSAnLSc6CisJ
ZW52KGRhdGEgKyAxLCAoY2hhciAqKTApOworCWJyZWFrOwogICAgIH0KICAgICArK25leHQwOwog
ICAgIGRhdGEgKz0gbmV4dDA7IGRhdGFsZW4gLT0gbmV4dDA7CkBAIC0yNzEsMTAgKzI4MywyOCBA
QCB2b2lkIGRvaXQoaW50IHQpCiAKIHZvaWQgdXNhZ2Uodm9pZCkKIHsKKyNpZm5kZWYgV0lUSF9T
U0wKICAgc3RyZXJyX3dhcm4xKCJcCiB0Y3BzZXJ2ZXI6IHVzYWdlOiB0Y3BzZXJ2ZXIgXAogWyAt
NDYxVVhwUGhIclJvT2REcVF2IF0gXAogWyAtYyBsaW1pdCBdIFwKK1sgLUMgW2FkZHJlc3NbL2xl
bl06XWxpbWl0IF0gXAorWyAtZSBuYW1lPXZhciBdIFwKK1sgLXggcnVsZXMuY2RiIF0gXAorWyAt
QiBiYW5uZXIgXSBcCitbIC1nIGdpZCBdIFwKK1sgLXUgdWlkIF0gXAorWyAtYiBiYWNrbG9nIF0g
XAorWyAtbCBsb2NhbG5hbWUgXSBcCitbIC10IHRpbWVvdXQgXSBcCitob3N0IHBvcnQgcHJvZ3Jh
bSIsMCk7CisjZWxzZQorICBzdHJlcnJfd2FybjEoIlwKK3RjcHNlcnZlcjogdXNhZ2U6IHRjcHNl
cnZlciBcCitbIC00NjFVWHBQaEhyUm9PZERxUXNTdiBdIFwKK1sgLWMgbGltaXQgXSBcCitbIC1D
IFthZGRyZXNzWy9sZW5dOl1saW1pdCBdIFwKK1sgLWUgbmFtZT12YXIgXSBcCiBbIC14IHJ1bGVz
LmNkYiBdIFwKIFsgLUIgYmFubmVyIF0gXAogWyAtZyBnaWQgXSBcCkBAIC0yODMsNyArMzEzLDkg
QEAgdGNwc2VydmVyOiB1c2FnZTogdGNwc2VydmVyIFwKIFsgLWwgbG9jYWxuYW1lIF0gXAogWyAt
dCB0aW1lb3V0IF0gXAogWyAtSSBpbnRlcmZhY2UgXSBcCitbIC1uIGNlcnRmaWxlIF0gXAogaG9z
dCBwb3J0IHByb2dyYW0iLDApOworI2VuZGlmCiAgIF9leGl0KDEwMCk7CiB9CiAKQEAgLTMwOCwx
MiArMzQwLDExNCBAQCB2b2lkIHNpZ3Rlcm0oKQogICBfZXhpdCgwKTsKIH0KIAorc3RydWN0IGNv
bm4geworICBpbnQgcGlkOworICBjaGFyIHJlbW90ZWlwWzE2XTsKK30gKmNvbm5zOworCitzdHJ1
Y3QgaXBfbGltZWx0IHsKKyAgY2hhciBpcFsxNl07CisgIGNoYXIgbWFza1sxNl07CisgIHVuc2ln
bmVkIGxvbmcgbGltaXQ7CisgIHVuc2lnbmVkIGxvbmcgY291bnQ7Cit9OworCisjaW5jbHVkZSAi
Z2VuX2FsbG9jLmgiCisjaW5jbHVkZSAiZ2VuX2FsbG9jZGVmcy5oIgorR0VOX0FMTE9DX3R5cGVk
ZWYoaXBfbGltaXQsc3RydWN0IGlwX2xpbWVsdCxsLGxlbixhKQorR0VOX0FMTE9DX3JlYWR5cGx1
cyhpcF9saW1pdCwgc3RydWN0IGlwX2xpbWVsdCxsLGxlbixhLGksbix4LDEwLAorICBpcF9saW1p
dF9ycCkKKworaXBfbGltaXQgaXBsID0gezB9OwordW5zaWduZWQgbG9uZyBsaW1pdF9pcCA9IDA7
CisKK3ZvaWQKK2lwX2xpbWl0X2FkZChjaGFyICpzdHIpCit7CisgIHVuc2lnbmVkIGludCBuLCBs
ZW47CisgIHVuc2lnbmVkIGxvbmcgdWwgPSAwOworICBzdHJ1Y3QgaXBfbGltZWx0IGxpbTsKKwor
ICBieXRlX3plcm8oJmxpbSwgc2l6ZW9mKGxpbSkpOworICBuID0gc3RyX3JjaHIoc3RyLCAnOicp
OworICBpZiAoc3RyW25dID09ICc6JykgeworICAgIHN0cltuXSA9IDA7CisgICAgc2Nhbl91bG9u
ZyhzdHIgKyBuICsgMSwgJnVsKTsKKyAgICBsaW0ubGltaXQgPSB1bDsKKyAgICAvKiBwYXJzZSBp
cCAqLworICAgIHVsID0gMzI7CisgICAgbiA9IHN0cl9jaHIoc3RyLCAnLycpOworICAgIGlmIChz
dHJbbl0gPT0gJy8nKQorICAgICAgc2Nhbl91bG9uZyhzdHIgKyBuICsgMSwgJnVsKTsKKyAgICBp
ZiAoc2Nhbl9pcDYoc3RyLCBsaW0uaXApID09IDApCisgICAgICBzdHJlcnJfZGllMngoMTExLEZB
VEFMLCJiYWQgaXAgYWRkcmVzcyIpOworICAgIGlmIChzdHJbc3RyX2NocihzdHIsICc6JyldICE9
ICc6JykgeworICAgICAgaWYgKHVsID4gMzIpCisgICAgICAgIHN0cmVycl9kaWUyeCgxMTEsRkFU
QUwsImlwIHByZWZpeCBsZW4gPiAzMiIpOworICAgICAgdWwgKz0gOTY7CisgICAgfSBlbHNlIHsK
KyAgICAgIGlmICh1bCA+IDEyOCkKKyAgICAgICAgc3RyZXJyX2RpZTJ4KDExMSxGQVRBTCwiaXA2
IHByZWZpeCBsZW4gPiAxMjgiKTsKKyAgICB9CisgICAgZm9yIChuID0gMDsgbiA8IDE2OyBuKysp
CisgICAgICBpZiAodWwgPiA4KSB7CisJbGltLm1hc2tbbl0gPSAweGZmOworCXVsIC09IDg7Cisg
ICAgICB9IGVsc2UgeworCWxpbS5tYXNrW25dID0gMHhmZiA8PCAoOCAtIHVsKTsKKwl1bCA9IDA7
CisgICAgICB9CisgICAgaWYgKCFpcF9saW1pdF9ycCgmaXBsLDEpKQorICAgICAgc3RyZXJyX2Rp
ZTJ4KDExMSxGQVRBTCwib3V0IG9mIG1lbW9yeSIpOworICAgIGlwbC5sW2lwbC5sZW4rK10gPSBs
aW07CisgIH0gZWxzZSB7CisgICAgc2Nhbl91bG9uZyhzdHIsICZ1bCk7CisgICAgbGltaXRfaXAg
PSB1bDsKKyAgfQorfQorCitpbnQKK2lwX2xpbWl0X2NoZWNrKGNoYXIgaXBbMTZdLCBpbnQgZCkK
K3sKKyAgdW5zaWduZWQgbG9uZyBjOworICB1bnNpZ25lZCBpbnQgbDsKKyAgdW5zaWduZWQgaW50
IGk7CisKKyAgZm9yIChsID0gMDsgbCA8IGlwbC5sZW47IGwrKykgeworICAgIGZvcihpID0gMDsg
aSA8IDE2OyBpKyspCisgICAgICBpZiAoKGlwW2ldICYgaXBsLmxbbF0ubWFza1tpXSkgIT0KKyAg
ICAgICAgICAoaXBsLmxbbF0uaXBbaV0gJiBpcGwubFtsXS5tYXNrW2ldKSkKKyAgICAgICAgYnJl
YWs7CisgICAgaWYgKGkgPj0gMTYpIHsKKyAgICAgIGlmIChpcGwubFtsXS5jb3VudCArIGQgPiBp
cGwubFtsXS5saW1pdCkKKwlyZXR1cm4gMTsKKyAgICAgIGlwbC5sW2xdLmNvdW50ICs9IGQ7Cisg
ICAgICByZXR1cm4gMDsKKyAgICB9CisgIH0KKworICAvKiBnbG9iYWwgcGVyIGlwIGxpbWl0ICov
CisgIGZvciAobCA9IDAsIGM9IDA7IGwgPCBsaW1pdDsgbCsrKQorICAgIGlmICghYnl0ZV9kaWZm
KGNvbm5zW2xdLnJlbW90ZWlwLCAxNiwgaXApKQorICAgICAgYysrOworICBpZiAobGltaXRfaXAg
IT0gMCAmJiBjICsgZCA+IGxpbWl0X2lwKQorICAgIHJldHVybiAxOworCisgIHJldHVybiAwOwor
fQorCiB2b2lkIHNpZ2NobGQoKQogewogICBpbnQgd3N0YXQ7CiAgIGludCBwaWQ7Ci0gCisgIHVu
c2lnbmVkIGludCBpOworCiAgIHdoaWxlICgocGlkID0gd2FpdF9ub2hhbmcoJndzdGF0KSkgPiAw
KSB7CisgICAgZm9yIChpID0gMDsgaSA8IGxpbWl0OyBpKyspCisgICAgICBpZiAoY29ubnNbaV0u
cGlkID09IHBpZCkgeworCWlwX2xpbWl0X2NoZWNrKGNvbm5zW2ldLnJlbW90ZWlwLCAtMSk7CisJ
Ynl0ZV96ZXJvKCZjb25uc1tpXSwgc2l6ZW9mKHN0cnVjdCBjb25uKSk7CisgICAgICB9CiAgICAg
aWYgKHZlcmJvc2l0eSA+PSAyKSB7CiAgICAgICBzdHJudW1bZm10X3Vsb25nKHN0cm51bSxwaWQp
XSA9IDA7CiAgICAgICBzdHJudW0yW2ZtdF91bG9uZyhzdHJudW0yLHdzdGF0KV0gPSAwOwpAQCAt
MzMwLDE0ICs0NjQsMzIgQEAgbWFpbihpbnQgYXJnYyxjaGFyICoqYXJndikKICAgaW50IG9wdDsK
ICAgc3RydWN0IHNlcnZlbnQgKnNlOwogICBjaGFyICp4OworICBjaGFyICppcGxpbWVudjsKKyAg
aW50IGZsYWdpcGxpbTsKICAgdW5zaWduZWQgbG9uZyB1OwogICBpbnQgczsKICAgaW50IHQ7CiAK
KyAgdW5zaWduZWQgaW50IGk7CisgIGludCBwaWQ7CisjaWZkZWYgV0lUSF9TU0wKKyAgQklPICpz
YmlvOworICBTU0wgKnNzbDsKKyAgU1NMX0NUWCAqY3R4OworICBpbnQgcGkyY1syXSwgcGk0Y1sy
XTsKKworICBjdHggPSBOVUxMOworCisgIGlmICghc3RyYWxsb2NfY29weXMoJmNlcnRmaWxlLCBD
RVJURklMRSkgfHwgIXN0cmFsbG9jXzAoJmNlcnRmaWxlKSApCisgICAgc3RyZXJyX2RpZTJ4KDEx
MSxGQVRBTCwib3V0IG9mIG1lbW9yeSIpOworICB3aGlsZSAoKG9wdCA9IGdldG9wdChhcmdjLGFy
Z3YsIjQ2ZER2cVFoSHJSc1MxVVh4OnQ6dTpnOmw6YjpCOmM6STpDOmU6bjpwUG9PIikpICE9IG9w
dGVvZikKKyNlbHNlCiAgIHdoaWxlICgob3B0ID0gZ2V0b3B0KGFyZ2MsYXJndiwiNDZkRHZxUWhI
clIxVVh4OnQ6dTpnOmw6YjpCOmM6STpwUG9PIikpICE9IG9wdGVvZikKKyNlbmRpZgogICAgIHN3
aXRjaChvcHQpIHsKICAgICAgIGNhc2UgJ2InOiBzY2FuX3Vsb25nKG9wdGFyZywmYmFja2xvZyk7
IGJyZWFrOwogICAgICAgY2FzZSAnYyc6IHNjYW5fdWxvbmcob3B0YXJnLCZsaW1pdCk7IGJyZWFr
OworICAgICAgY2FzZSAnQyc6IGlwX2xpbWl0X2FkZChvcHRhcmcpOyBicmVhazsKICAgICAgIGNh
c2UgJ1gnOiBmbGFnYWxsb3dub3J1bGVzID0gMTsgYnJlYWs7CiAgICAgICBjYXNlICd4JzogZm5y
dWxlcyA9IG9wdGFyZzsgYnJlYWs7CiAgICAgICBjYXNlICdCJzogYmFubmVyID0gb3B0YXJnOyBi
cmVhazsKQEAgLTM2NCw2ICs1MTYsMTggQEAgbWFpbihpbnQgYXJnYyxjaGFyICoqYXJndikKICAg
ICAgIGNhc2UgJzQnOiBub2lwdjYgPSAxOyBicmVhazsKICAgICAgIGNhc2UgJzYnOiBmb3JjZXY2
ID0gMTsgYnJlYWs7CiAgICAgICBjYXNlICdsJzogbG9jYWxob3N0ID0gb3B0YXJnOyBicmVhazsK
KyAgICAgIGNhc2UgJ2UnOiBpcGxpbWVudiA9IG9wdGFyZzsKKwkJaWYgKGlwbGltZW52W3N0cl9j
aHIoaXBsaW1lbnYsICc9JyldICE9ICc9JykKKwkJICBzdHJlcnJfZGllMngoMTAwLEZBVEFMLCAi
bm8gJz0nIGluIGlwIGxpbWl0IGVudi12YXIiKTsKKwkJYnJlYWs7CisjaWZkZWYgV0lUSF9TU0wK
KyAgICAgIGNhc2UgJ3MnOiBmbGFnc3NsID0gMTsgYnJlYWs7CisgICAgICBjYXNlICdTJzogZmxh
Z3NzbCA9IDA7IGJyZWFrOworICAgICAgY2FzZSAnbic6IGlmICghc3RyYWxsb2NfY29weXMoJmNl
cnRmaWxlLCBvcHRhcmcpIHx8CisJCSAgICAhc3RyYWxsb2NfMCgmY2VydGZpbGUpICkKKwkJICBz
dHJlcnJfZGllMngoMTExLEZBVEFMLCJvdXQgb2YgbWVtb3J5Iik7CisJCWJyZWFrOworI2VuZGlm
CiAgICAgICBkZWZhdWx0OiB1c2FnZSgpOwogICAgIH0KICAgYXJnYyAtPSBvcHRpbmQ7CkBAIC0z
NzEsNiArNTM1LDE1IEBAIG1haW4oaW50IGFyZ2MsY2hhciAqKmFyZ3YpCiAKICAgaWYgKCF2ZXJi
b3NpdHkpCiAgICAgYnVmZmVyXzItPmZkID0gLTE7CisKKyAgaWYgKGxpbWl0ID09IDApCisgICAg
c3RyZXJyX2RpZTJ4KDEwMCxGQVRBTCwibGltaXQgbWF5IG5vdCBiZSBzZXQgdG8gMCIpOworICBp
ZiAobGltaXQgPiA2NTAwMCkKKyAgICBzdHJlcnJfZGllMngoMTAwLEZBVEFMLCJsaW1pdCB3YXkg
dG8gaGlnaCIpOworICBjb25ucyA9IChzdHJ1Y3QgY29ubiAqKWFsbG9jKGxpbWl0ICogc2l6ZW9m
KHN0cnVjdCBjb25uKSk7CisgIGlmICghY29ubnMpCisgICAgc3RyZXJyX2RpZTJ4KDExMSxGQVRB
TCwib3V0IG9mIG1lbW9yeSIpOworICBieXRlX3plcm8oY29ubnMsIGxpbWl0ICogc2l6ZW9mKHN0
cnVjdCBjb25uKSk7CiAgCiAgIGhvc3RuYW1lID0gKmFyZ3YrKzsKICAgaWYgKCFob3N0bmFtZSkg
dXNhZ2UoKTsKQEAgLTQwOCw2ICs1ODEsMjUgQEAgbWFpbihpbnQgYXJnYyxjaGFyICoqYXJndikK
ICAgICAgIG5vaXB2Nj0xOwogICB9CiAKKyNpZmRlZiBXSVRIX1NTTAorICBpZiAoZmxhZ3NzbCA9
PSAxKSB7CisgICAgLyogc2V0dXAgU1NMIGNvbnRleHQgKGxvYWQga2V5IGFuZCBjZXJ0IGludG8g
Y3R4KSAqLworICAgIFNTTF9saWJyYXJ5X2luaXQoKTsKKyAgICBjdHg9U1NMX0NUWF9uZXcoU1NM
djIzX3NlcnZlcl9tZXRob2QoKSk7CisgICAgaWYgKCFjdHgpIHN0cmVycl9kaWUyeCgxMTEsRkFU
QUwsInVuYWJsZSB0byBjcmVhdGUgU1NMIGNvbnRleHQiKTsKKworICAgIC8qIHNldCBwcmVmZXJl
ZCBjaXBoZXJzICovCisgICAgaWYgKGVudl9nZXQoIlNTTF9DSVBIRVIiKSkKKyAgICAgIGlmIChT
U0xfQ1RYX3NldF9jaXBoZXJfbGlzdChjdHgsIGVudl9nZXQoIlNTTF9DSVBIRVIiKSkgPT0gMCkK
KwlzdHJlcnJfZGllMngoMTExLEZBVEFMLCJ1bmFibGUgdG8gc2V0IGNpcGhlciBsaXN0Iik7CisK
KyAgICBpZihTU0xfQ1RYX3VzZV9SU0FQcml2YXRlS2V5X2ZpbGUoY3R4LCBjZXJ0ZmlsZS5zLCBT
U0xfRklMRVRZUEVfUEVNKSAhPSAxKQorICAgICAgc3RyZXJyX2RpZTJ4KDExMSxGQVRBTCwidW5h
YmxlIHRvIGxvYWQgUlNBIHByaXZhdGUga2V5Iik7CisgICAgaWYoU1NMX0NUWF91c2VfY2VydGlm
aWNhdGVfY2hhaW5fZmlsZShjdHgsIGNlcnRmaWxlLnMpICE9IDEpCisgICAgICBzdHJlcnJfZGll
MngoMTExLEZBVEFMLCJ1bmFibGUgdG8gbG9hZCBjZXJ0aWZpY2F0ZSIpOworICB9CisjZW5kaWYK
KwogICBzID0gc29ja2V0X3RjcDYoKTsKICAgaWYgKHMgPT0gLTEpCiAgICAgc3RyZXJyX2RpZTJz
eXMoMTExLEZBVEFMLCJ1bmFibGUgdG8gY3JlYXRlIHNvY2tldDogIik7CkBAIC00NDYsOSArNjM4
LDM0IEBAIG1haW4oaW50IGFyZ2MsY2hhciAqKmFyZ3YpCiAKICAgICBpZiAodCA9PSAtMSkgY29u
dGludWU7CiAgICAgKytudW1jaGlsZHJlbjsgcHJpbnRzdGF0dXMoKTsKKworICAgIC8qIHBlciBp
cCBoYW5kbGluZyAqLworICAgIGZsYWdpcGxpbSA9IDA7CisgICAgaWYgKGlwX2xpbWl0X2NoZWNr
KHJlbW90ZWlwLCAxKSkgeworICAgICAgaWYgKCFmb3JjZXY2ICYmIGlwNl9pc3Y0bWFwcGVkKHJl
bW90ZWlwKSkKKwlyZW1vdGVpcHN0cltpcDRfZm10KHJlbW90ZWlwc3RyLHJlbW90ZWlwKzEyKV0g
PSAwOworICAgICAgZWxzZQorCXJlbW90ZWlwc3RyW2lwNl9mbXQocmVtb3RlaXBzdHIscmVtb3Rl
aXApXSA9IDA7CisgICAgICBpZiAoaXBsaW1lbnYpIHsKKyAgICAgICAgc3RyZXJyX3dhcm40KERS
T1AsInRvbyBtYW55IGNvbm5lY3Rpb25zIGZyb20gIixyZW1vdGVpcHN0ciwKKwkgICAgIiBvbmx5
IGZsYWdnZWQiLDApOworCWZsYWdpcGxpbSA9IDE7CisgICAgICB9IGVsc2UgeworICAgICAgICBz
dHJlcnJfd2FybjMoRFJPUCwidG9vIG1hbnkgY29ubmVjdGlvbnMgZnJvbSAiLHJlbW90ZWlwc3Ry
LDApOworICAgICAgICAtLW51bWNoaWxkcmVuOyBwcmludHN0YXR1cygpOworICAgICAgICBjbG9z
ZSh0KTsKKyAgICAgICAgY29udGludWU7CisgICAgICB9CisgICAgfQogIAotICAgIHN3aXRjaChm
b3JrKCkpIHsKKyAgICBzd2l0Y2gocGlkID0gZm9yaygpKSB7CiAgICAgICBjYXNlIDA6CisJaWYg
KGZsYWdpcGxpbSkgeworICAgICAgICAgIGludCBzcGxpdDsKKyAgICAgIAkgIHNwbGl0ID0gc3Ry
X2NocihpcGxpbWVudiwnPScpOworCSAgaXBsaW1lbnZbc3BsaXRdID0gMDsKKwkgIGVudihpcGxp
bWVudixpcGxpbWVudiArIHNwbGl0ICsgMSk7CisJfQogICAgICAgICBjbG9zZShzKTsKICAgICAg
ICAgZG9pdCh0KTsKICAgICAgICAgaWYgKChmZF9tb3ZlKDAsdCkgPT0gLTEpIHx8IChmZF9jb3B5
KDEsMCkgPT0gLTEpKQpAQCAtNDU3LDEyICs2NzQsMTU5IEBAIG1haW4oaW50IGFyZ2MsY2hhciAq
KmFyZ3YpCiAgICAgICAgIHNpZ191bmJsb2NrKHNpZ19jaGlsZCk7CiAgICAgICAgIHNpZ191bmNh
dGNoKHNpZ190ZXJtKTsKICAgICAgICAgc2lnX3VuY2F0Y2goc2lnX3BpcGUpOworI2lmZGVmIFdJ
VEhfU1NMCisJaWYgKGZsYWdzc2wgPT0gMSkgeworCSAgaWYgKHBpcGUocGkyYykgIT0gMCkKKwkg
ICAgc3RyZXJyX2RpZTJzeXMoMTExLERST1AsInVuYWJsZSB0byBjcmVhdGUgcGlwZTogIik7CisJ
ICBpZiAocGlwZShwaTRjKSAhPSAwKQorCSAgICBzdHJlcnJfZGllMnN5cygxMTEsRFJPUCwidW5h
YmxlIHRvIGNyZWF0ZSBwaXBlOiAiKTsKKwkgIHN3aXRjaChmb3JrKCkpIHsKKwkgICAgY2FzZSAw
OgorCSAgICAgIGNsb3NlKDApOyBjbG9zZSgxKTsKKwkgICAgICBjbG9zZShwaTJjWzFdKTsKKwkg
ICAgICBjbG9zZShwaTRjWzBdKTsKKwkgICAgICBpZiAoKGZkX21vdmUoMCxwaTJjWzBdKSA9PSAt
MSkgfHwgKGZkX21vdmUoMSxwaTRjWzFdKSA9PSAtMSkpCisJCXN0cmVycl9kaWUyc3lzKDExMSxE
Uk9QLCJ1bmFibGUgdG8gc2V0IHVwIGRlc2NyaXB0b3JzOiAiKTsKKwkgICAgICAvKiBzaWduYWxz
IGFyZSBhbGxyZWFkeSBzZXQgaW4gdGhlIHBhcmVudCAqLworCSAgICAgIHBhdGhleGVjKGFyZ3Yp
OworCSAgICAgIHN0cmVycl9kaWU0c3lzKDExMSxEUk9QLCJ1bmFibGUgdG8gcnVuICIsKmFyZ3Ys
IjogIik7CisJICAgIGNhc2UgLTE6CisJICAgICAgc3RyZXJyX2RpZTJzeXMoMTExLERST1AsInVu
YWJsZSB0byBmb3JrOiAiKTsKKwkgICAgZGVmYXVsdDoKKwkgICAgICBzc2wgPSBTU0xfbmV3KGN0
eCk7CisJICAgICAgaWYgKCFzc2wpCisJCXN0cmVycl9kaWUyeCgxMTEsRFJPUCwidW5hYmxlIHRv
IHNldCB1cCBTU0wgc2Vzc2lvbiIpOworCSAgICAgIHNiaW8gPSBCSU9fbmV3X3NvY2tldCgwLEJJ
T19OT0NMT1NFKTsKKwkgICAgICBpZiAoIXNiaW8pCisJCXN0cmVycl9kaWUyeCgxMTEsRFJPUCwi
dW5hYmxlIHRvIHNldCB1cCBCSU8gc29ja2V0Iik7CisJICAgICAgU1NMX3NldF9iaW8oc3NsLHNi
aW8sc2Jpbyk7CisJICAgICAgY2xvc2UocGkyY1swXSk7CisJICAgICAgY2xvc2UocGk0Y1sxXSk7
CisJICAgICAgdHJhbnNsYXRlKHNzbCwgcGkyY1sxXSwgcGk0Y1swXSwgMzYwMCk7CisJICAgICAg
X2V4aXQoMCk7CisJICB9CisJfQorI2VuZGlmCiAgICAgICAgIHBhdGhleGVjKGFyZ3YpOwogCXN0
cmVycl9kaWU0c3lzKDExMSxEUk9QLCJ1bmFibGUgdG8gcnVuICIsKmFyZ3YsIjogIik7CiAgICAg
ICBjYXNlIC0xOgogICAgICAgICBzdHJlcnJfd2FybjIoRFJPUCwidW5hYmxlIHRvIGZvcms6ICIs
JnN0cmVycl9zeXMpOwogICAgICAgICAtLW51bWNoaWxkcmVuOyBwcmludHN0YXR1cygpOworCWJy
ZWFrOworICAgICAgZGVmYXVsdDoKKwlmb3IgKGkgPSAwOyBpIDwgbGltaXQ7IGkrKykKKwkgIGlm
IChjb25uc1tpXS5waWQgPT0gMCkgeworCSAgICBjb25uc1tpXS5waWQgPSBwaWQ7CisJICAgIGJ5
dGVfY29weShjb25uc1tpXS5yZW1vdGVpcCwgMTYsIHJlbW90ZWlwKTsKKwkgICAgYnJlYWs7CisJ
ICB9CiAgICAgfQogICAgIGNsb3NlKHQpOwogICB9CiB9CisKKyNpZmRlZiBXSVRIX1NTTAorc3Rh
dGljIGludCBhbGx3cml0ZShpbnQgZmQsIGNoYXIgKmJ1ZiwgaW50IGxlbikKK3sKKyAgaW50IHc7
CisKKyAgd2hpbGUgKGxlbikgeworICAgIHcgPSB3cml0ZShmZCxidWYsbGVuKTsKKyAgICBpZiAo
dyA9PSAtMSkgeworICAgICAgaWYgKGVycm5vID09IGVycm9yX2ludHIpIGNvbnRpbnVlOworICAg
ICAgcmV0dXJuIC0xOyAvKiBub3RlIHRoYXQgc29tZSBkYXRhIG1heSBoYXZlIGJlZW4gd3JpdHRl
biAqLworICAgIH0KKyAgICBpZiAodyA9PSAwKSA7IC8qIGx1c2VyJ3MgZmF1bHQgKi8KKyAgICBi
dWYgKz0gdzsKKyAgICBsZW4gLT0gdzsKKyAgfQorICByZXR1cm4gMDsKK30KKworc3RhdGljIGlu
dCBhbGx3cml0ZXNzbChTU0wqIHNzbCwgY2hhciAqYnVmLCBpbnQgbGVuKQoreworICBpbnQgdzsK
KworICB3aGlsZSAobGVuKSB7CisgICAgdyA9IFNTTF93cml0ZShzc2wsYnVmLGxlbik7CisgICAg
aWYgKHcgPT0gLTEpIHsKKyAgICAgIGlmIChlcnJubyA9PSBlcnJvcl9pbnRyKSBjb250aW51ZTsK
KyAgICAgIHJldHVybiAtMTsgLyogbm90ZSB0aGF0IHNvbWUgZGF0YSBtYXkgaGF2ZSBiZWVuIHdy
aXR0ZW4gKi8KKyAgICB9CisgICAgaWYgKHcgPT0gMCkgOyAvKiBsdXNlcidzIGZhdWx0ICovCisg
ICAgYnVmICs9IHc7CisgICAgbGVuIC09IHc7CisgIH0KKyAgcmV0dXJuIDA7Cit9CisKK2NoYXIg
dGJ1ZlsyMDQ4XTsKKwordm9pZCB0cmFuc2xhdGUoU1NMKiBzc2wsIGludCBjbGVhcm91dCwgaW50
IGNsZWFyaW4sIHVuc2lnbmVkIGludCBpb3RpbWVvdXQpCit7CisgIHN0cnVjdCB0YWlhIG5vdzsK
KyAgc3RydWN0IHRhaWEgZGVhZGxpbmU7CisgIGlvcGF1c2VfZmQgaW9wWzJdOworICBpbnQgZmxh
Z2V4aXRhc2FwOworICBpbnQgaW9wbDsKKyAgaW50IHNzbG91dCwgc3NsaW47CisgIGludCBuLCBy
OworCisgIHNzbGluID0gU1NMX2dldF9mZChzc2wpOworICBzc2xvdXQgPSBTU0xfZ2V0X2ZkKHNz
bCk7CisgIGlmIChzc2xpbiA9PSAtMSB8fCBzc2xvdXQgPT0gLTEpCisgICAgc3RyZXJyX2RpZTJ4
KDExMSxEUk9QLCJ1bmFibGUgdG8gc2V0IHVwIFNTTCBjb25uZWN0aW9uIik7CisgIAorICBmbGFn
ZXhpdGFzYXAgPSAwOworCisgIGlmIChTU0xfYWNjZXB0KHNzbCk8PTApCisgICAgc3RyZXJyX2Rp
ZTJ4KDExMSxEUk9QLCJ1bmFibGUgdG8gYWNjZXB0IFNTTCBjb25uZWN0aW9uIik7CisKKyAgd2hp
bGUgKCFmbGFnZXhpdGFzYXApIHsKKyAgICB0YWlhX25vdygmbm93KTsKKyAgICB0YWlhX3VpbnQo
JmRlYWRsaW5lLGlvdGltZW91dCk7CisgICAgdGFpYV9hZGQoJmRlYWRsaW5lLCZub3csJmRlYWRs
aW5lKTsKKworICAgIC8qIGZpbGwgaW9wYXVzZSBzdHJ1Y3QgKi8KKyAgICBpb3BsID0gMjsKKyAg
ICBpb3BbMF0uZmQgPSBzc2xpbjsKKyAgICBpb3BbMF0uZXZlbnRzID0gSU9QQVVTRV9SRUFEOwor
ICAgIGlvcFsxXS5mZCA9IGNsZWFyaW47CisgICAgaW9wWzFdLmV2ZW50cyA9IElPUEFVU0VfUkVB
RDsKKworICAgIC8qIGRvIGlvcGF1c2UgcmVhZCAqLworICAgIGlvcGF1c2UoaW9wLGlvcGwsJmRl
YWRsaW5lLCZub3cpOworICAgIGlmIChpb3BbMF0ucmV2ZW50cykgeworICAgICAgZG8geworICAg
ICAgICAvKiBkYXRhIG9uIHNzbGluICovCisgICAgICAgIG4gPSBTU0xfcmVhZChzc2wsIHRidWYs
IHNpemVvZih0YnVmKSk7CisgICAgICAgIGlmICggbiA8IDAgKQorCSAgc3RyZXJyX2RpZTJzeXMo
MTExLERST1AsInVuYWJsZSB0byByZWFkIGZvcm0gbmV0d29yazogIik7CisgICAgICAgIGlmICgg
biA9PSAwICkKKwkgIGZsYWdleGl0YXNhcCA9IDE7CisgICAgICAgIHIgPSBhbGx3cml0ZShjbGVh
cm91dCwgdGJ1Ziwgbik7CisgICAgICAgIGlmICggciA8IDAgKQorCSAgc3RyZXJyX2RpZTJzeXMo
MTExLERST1AsInVuYWJsZSB0byB3cml0ZSB0byBjbGllbnQ6ICIpOworCS8qCisJICogaWYgdGhl
IGRhdGEgcGF5bG9hZCB3YXMgbG9uZ2VyIHRoYW4gc2l6ZW9mKHRidWYpIHRoZW4gU1NMIHdpbGwg
aGF2ZQorCSAqIGJ5dGVzIHByb2Nlc3NlZCBhbmQgcGVuZGluZy4gV2UgbmVlZCB0byBwaWNrIHRo
ZW0gdXAgYW5kIHdyaXRlIHRoZW0KKwkgKiB0byBjbGVhcm91dC4KKwkgKi8KKyAgICAgIH0gd2hp
bGUgKFNTTF9wZW5kaW5nKHNzbCkpOworICAgIH0KKyAgICBpZiAoaW9wWzFdLnJldmVudHMpIHsK
KyAgICAgIC8qIGRhdGEgb24gY2xlYXJpbiAqLworICAgICAgbiA9IHJlYWQoY2xlYXJpbiwgdGJ1
Ziwgc2l6ZW9mKHRidWYpKTsKKyAgICAgIGlmICggbiA8IDAgKQorCXN0cmVycl9kaWUyc3lzKDEx
MSxEUk9QLCJ1bmFibGUgdG8gcmVhZCBmb3JtIGNsaWVudDogIik7CisgICAgICBpZiAoIG4gPT0g
MCApCisJZmxhZ2V4aXRhc2FwID0gMTsKKyAgICAgIHIgPSBhbGx3cml0ZXNzbChzc2wsIHRidWYs
IG4pOworICAgICAgaWYgKCByIDwgMCApCisJc3RyZXJyX2RpZTJzeXMoMTExLERST1AsInVuYWJs
ZSB0byB3cml0ZSB0byBuZXR3b3JrOiAiKTsKKyAgICB9CisgICAgaWYgKCFpb3BbMF0ucmV2ZW50
cyAmJiAhaW9wWzFdLnJldmVudHMpCisgICAgICBzdHJlcnJfZGllMngoMCwgRFJPUCwidGltZW91
dCByZWFjaGVkIHdpdGhvdXQgaW5wdXQiKTsKKyAgfQorfQorI2VuZGlmCg==
</data>        

          </attachment>
    </bug>

</bugzilla>