<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>6828</bug_id>
          
          <creation_ts>2006-01-25 23:09:51 -0800</creation_ts>
          <short_desc>traversal layout tests leak 534 nodes</short_desc>
          <delta_ts>2019-02-06 09:04:10 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Maciej Stachowiak">mjs</reporter>
          <assigned_to name="Maciej Stachowiak">mjs</assigned_to>
          <cc>cdumez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>29987</commentid>
    <comment_count>0</comment_count>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2006-01-25 23:09:51 -0800</bug_when>
    <thetext>The traversal directory of LayoutTests leaks 534 nodes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30072</commentid>
    <comment_count>1</comment_count>
      <attachid>5983</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2006-01-26 04:15:37 -0800</bug_when>
    <thetext>Created attachment 5983
fix for the three independent causes of leakage

I found three separate bugs that each could cause the whole document to be leaked whenever traversal classes are used.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30073</commentid>
    <comment_count>2</comment_count>
      <attachid>5983</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2006-01-26 04:17:36 -0800</bug_when>
    <thetext>Comment on attachment 5983
fix for the three independent causes of leakage

oops, an extra bit slipped in here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30074</commentid>
    <comment_count>3</comment_count>
      <attachid>5984</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2006-01-26 04:18:21 -0800</bug_when>
    <thetext>Created attachment 5984
same thing, no extra bits</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30128</commentid>
    <comment_count>4</comment_count>
      <attachid>5984</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2006-01-26 12:04:55 -0800</bug_when>
    <thetext>Comment on attachment 5984
same thing, no extra bits

r=me, pending delivery of shiny nickle</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1503116</commentid>
    <comment_count>5</comment_count>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2019-02-06 09:04:10 -0800</bug_when>
    <thetext>Mass moving XML DOM bugs to the &quot;DOM&quot; Component.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>5983</attachid>
            <date>2006-01-26 04:15:37 -0800</date>
            <delta_ts>2006-01-26 04:18:21 -0800</delta_ts>
            <desc>fix for the three independent causes of leakage</desc>
            <filename>traversal-node-leaks.patch.txt</filename>
            <type>text/plain</type>
            <size>14193</size>
            <attacher name="Maciej Stachowiak">mjs</attacher>
            
              <data encoding="base64">SW5kZXg6IGtodG1sL2RvbS9kb20yX3RyYXZlcnNhbC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGtodG1sL2Rv
bS9kb20yX3RyYXZlcnNhbC5oCShyZXZpc2lvbiAxMjM5MikKKysrIGtodG1sL2RvbS9kb20yX3Ry
YXZlcnNhbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOCw2ICszOCw3IEBAIGNsYXNzIE5vZGVGaWx0
ZXJDb25kaXRpb24gOiBwdWJsaWMgU2hhcmUKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5Ob2RlRmls
dGVyQ29uZGl0aW9uKCkgeyB9CiAgICAgdmlydHVhbCBzaG9ydCBhY2NlcHROb2RlKE5vZGVJbXBs
KikgY29uc3Q7CisgICAgdmlydHVhbCB2b2lkIG1hcmsoKSB7fTsKIH07CiAKIC8qKgpJbmRleDog
a2h0bWwveG1sL2RvbTJfdHJhdmVyc2FsaW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0ga2h0bWwveG1s
L2RvbTJfdHJhdmVyc2FsaW1wbC5jcHAJKHJldmlzaW9uIDEyMzkyKQorKysga2h0bWwveG1sL2Rv
bTJfdHJhdmVyc2FsaW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMyLDE0ICszMiw2IEBAIG5h
bWVzcGFjZSBET00gewogTm9kZUZpbHRlckltcGw6Ok5vZGVGaWx0ZXJJbXBsKE5vZGVGaWx0ZXJD
b25kaXRpb24gKmNvbmRpdGlvbikKICAgICA6IG1fY29uZGl0aW9uKGNvbmRpdGlvbikKIHsKLSAg
ICBpZiAobV9jb25kaXRpb24pCi0gICAgICAgIG1fY29uZGl0aW9uLT5yZWYoKTsKLX0KLQotTm9k
ZUZpbHRlckltcGw6On5Ob2RlRmlsdGVySW1wbCgpCi17Ci0gICAgaWYgKG1fY29uZGl0aW9uKQot
ICAgICAgICBtX2NvbmRpdGlvbi0+ZGVyZWYoKTsKIH0KIAogc2hvcnQgTm9kZUZpbHRlckltcGw6
OmFjY2VwdE5vZGUoTm9kZUltcGwgKm5vZGUpIGNvbnN0CkBAIC01MSwyMCArNDMsMTUgQEAgc2hv
cnQgTm9kZUZpbHRlckltcGw6OmFjY2VwdE5vZGUoTm9kZUltcAogLy8gLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogVHJhdmVy
c2FsSW1wbDo6VHJhdmVyc2FsSW1wbChOb2RlSW1wbCAqcm9vdE5vZGUsIGludCB3aGF0VG9TaG93
LCBOb2RlRmlsdGVySW1wbCAqbm9kZUZpbHRlciwgYm9vbCBleHBhbmRFbnRpdHlSZWZlcmVuY2Vz
KQotICAgIDogbV9yb290KHJvb3ROb2RlKSwgbV93aGF0VG9TaG93KHdoYXRUb1Nob3cpLCBtX2Zp
bHRlcihub2RlRmlsdGVyKSwgbV9leHBhbmRFbnRpdHlSZWZlcmVuY2VzKGV4cGFuZEVudGl0eVJl
ZmVyZW5jZXMpCisgICAgOiBtX3Jvb3Qocm9vdE5vZGUpCisgICAgLCBtX3doYXRUb1Nob3cod2hh
dFRvU2hvdykKKyAgICAsIG1fZmlsdGVyKG5vZGVGaWx0ZXIpCisgICAgLCBtX2V4cGFuZEVudGl0
eVJlZmVyZW5jZXMoZXhwYW5kRW50aXR5UmVmZXJlbmNlcykKIHsKLSAgICBpZiAocm9vdCgpKQot
ICAgICAgICByb290KCktPnJlZigpOwotICAgIGlmIChmaWx0ZXIoKSkKLSAgICAgICAgZmlsdGVy
KCktPnJlZigpOwogfQogCiBUcmF2ZXJzYWxJbXBsOjp+VHJhdmVyc2FsSW1wbCgpCiB7Ci0gICAg
aWYgKHJvb3QoKSkKLSAgICAgICAgcm9vdCgpLT5kZXJlZigpOwotICAgIGlmIChmaWx0ZXIoKSkK
LSAgICAgICAgZmlsdGVyKCktPmRlcmVmKCk7CiB9CiAKIHNob3J0IFRyYXZlcnNhbEltcGw6OmFj
Y2VwdE5vZGUoTm9kZUltcGwgKm5vZGUpIGNvbnN0CkBAIC04MSwyNSArNjgsMTkgQEAgc2hvcnQg
VHJhdmVyc2FsSW1wbDo6YWNjZXB0Tm9kZShOb2RlSW1wbAogLy8gLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogTm9kZUl0ZXJh
dG9ySW1wbDo6Tm9kZUl0ZXJhdG9ySW1wbChOb2RlSW1wbCAqcm9vdE5vZGUsIGludCB3aGF0VG9T
aG93LCBOb2RlRmlsdGVySW1wbCAqZmlsdGVyLCBib29sIGV4cGFuZEVudGl0eVJlZmVyZW5jZXMp
Ci0gICAgOlRyYXZlcnNhbEltcGwocm9vdE5vZGUsIHdoYXRUb1Nob3csIGZpbHRlciwgZXhwYW5k
RW50aXR5UmVmZXJlbmNlcyksIG1fcmVmZXJlbmNlTm9kZSgwKSwgbV9iZWZvcmVSZWZlcmVuY2VO
b2RlKHRydWUpLCBtX2RldGFjaGVkKGZhbHNlKSwgbV9kb2MoMCkKKyAgICA6IFRyYXZlcnNhbElt
cGwocm9vdE5vZGUsIHdoYXRUb1Nob3csIGZpbHRlciwgZXhwYW5kRW50aXR5UmVmZXJlbmNlcykK
KyAgICAsIG1fYmVmb3JlUmVmZXJlbmNlTm9kZSh0cnVlKQorICAgICwgbV9kZXRhY2hlZChmYWxz
ZSkKKyAgICAsIG1fZG9jKHJvb3ROb2RlID8gcm9vdE5vZGUtPmdldERvY3VtZW50KCkgOiAwKQog
ewotICAgIGlmIChyb290KCkpIHsKLSAgICAgICAgc2V0RG9jdW1lbnQocm9vdCgpLT5nZXREb2N1
bWVudCgpKTsKLSAgICAgICAgaWYgKGRvY3VtZW50KCkpIHsKLSAgICAgICAgICAgIGRvY3VtZW50
KCktPmF0dGFjaE5vZGVJdGVyYXRvcih0aGlzKTsKLSAgICAgICAgICAgIGRvY3VtZW50KCktPnJl
ZigpOwotICAgICAgICB9Ci0gICAgfQorICAgIGlmIChkb2N1bWVudCgpKQorICAgICAgICBkb2N1
bWVudCgpLT5hdHRhY2hOb2RlSXRlcmF0b3IodGhpcyk7CiB9CiAKIE5vZGVJdGVyYXRvckltcGw6
On5Ob2RlSXRlcmF0b3JJbXBsKCkKIHsKLSAgICBpZiAocmVmZXJlbmNlTm9kZSgpKQotICAgICAg
ICByZWZlcmVuY2VOb2RlKCktPmRlcmVmKCk7Ci0gICAgaWYgKGRvY3VtZW50KCkpIHsKKyAgICBp
ZiAoZG9jdW1lbnQoKSkKICAgICAgICAgZG9jdW1lbnQoKS0+ZGV0YWNoTm9kZUl0ZXJhdG9yKHRo
aXMpOwotICAgICAgICBkb2N1bWVudCgpLT5kZXJlZigpOwotICAgIH0KIH0KIAogTm9kZUltcGwg
Kk5vZGVJdGVyYXRvckltcGw6OmZpbmROZXh0Tm9kZShOb2RlSW1wbCAqbm9kZSkgY29uc3QKQEAg
LTE2MiwyOCArMTQzLDcgQEAgdm9pZCBOb2RlSXRlcmF0b3JJbXBsOjpkZXRhY2goaW50ICYvKmV4
YwogCiB2b2lkIE5vZGVJdGVyYXRvckltcGw6OnNldFJlZmVyZW5jZU5vZGUoTm9kZUltcGwgKm5v
ZGUpCiB7Ci0gICAgaWYgKG5vZGUgPT0gbV9yZWZlcmVuY2VOb2RlKQotICAgICAgICByZXR1cm47
Ci0gICAgCi0gICAgTm9kZUltcGwgKm9sZCA9IG1fcmVmZXJlbmNlTm9kZTsKICAgICBtX3JlZmVy
ZW5jZU5vZGUgPSBub2RlOwotICAgIGlmIChtX3JlZmVyZW5jZU5vZGUpCi0gICAgICAgIG1fcmVm
ZXJlbmNlTm9kZS0+cmVmKCk7Ci0gICAgaWYgKG9sZCkKLSAgICAgICAgb2xkLT5kZXJlZigpOwot
fQotCi12b2lkIE5vZGVJdGVyYXRvckltcGw6OnNldERvY3VtZW50KERvY3VtZW50SW1wbCAqZG9j
KQotewotICAgIGlmIChkb2MgPT0gbV9kb2MpCi0gICAgICAgIHJldHVybjsKLSAgICAKLSAgICBE
b2N1bWVudEltcGwgKm9sZCA9IG1fZG9jOwotICAgIG1fZG9jID0gZG9jOwotICAgIGlmIChtX2Rv
YykKLSAgICAgICAgbV9kb2MtPnJlZigpOwotICAgIGlmIChvbGQpCi0gICAgICAgIG9sZC0+ZGVy
ZWYoKTsKIH0KIAogdm9pZCBOb2RlSXRlcmF0b3JJbXBsOjpub3RpZnlCZWZvcmVOb2RlUmVtb3Zh
bChOb2RlSW1wbCAqcmVtb3ZlZE5vZGUpCkBAIC0yNTcsMTYgKzIxNyw5IEBAIHZvaWQgTm9kZUl0
ZXJhdG9ySW1wbDo6bm90aWZ5QmVmb3JlTm9kZVIKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIFRyZWVXYWxrZXJJbXBs
OjpUcmVlV2Fsa2VySW1wbChOb2RlSW1wbCAqcm9vdE5vZGUsIGludCB3aGF0VG9TaG93LCBOb2Rl
RmlsdGVySW1wbCAqZmlsdGVyLCBib29sIGV4cGFuZEVudGl0eVJlZmVyZW5jZXMpCi0gICAgOiBU
cmF2ZXJzYWxJbXBsKHJvb3ROb2RlLCB3aGF0VG9TaG93LCBmaWx0ZXIsIGV4cGFuZEVudGl0eVJl
ZmVyZW5jZXMpLCBtX2N1cnJlbnQocm9vdE5vZGUpCisgICAgOiBUcmF2ZXJzYWxJbXBsKHJvb3RO
b2RlLCB3aGF0VG9TaG93LCBmaWx0ZXIsIGV4cGFuZEVudGl0eVJlZmVyZW5jZXMpCisgICAgLCBt
X2N1cnJlbnQocm9vdE5vZGUpCiB7Ci0gICAgaWYgKGN1cnJlbnROb2RlKCkpCi0gICAgICAgIGN1
cnJlbnROb2RlKCktPnJlZigpOwotfQotCi1UcmVlV2Fsa2VySW1wbDo6flRyZWVXYWxrZXJJbXBs
KCkKLXsKLSAgICBpZiAoY3VycmVudE5vZGUoKSkKLSAgICAgICAgY3VycmVudE5vZGUoKS0+ZGVy
ZWYoKTsKIH0KIAogdm9pZCBUcmVlV2Fsa2VySW1wbDo6c2V0Q3VycmVudE5vZGUoTm9kZUltcGwg
Km5vZGUsIGludCAmZXhjZXB0aW9uY29kZSkKQEAgLTI3NiwxNSArMjI5LDcgQEAgdm9pZCBUcmVl
V2Fsa2VySW1wbDo6c2V0Q3VycmVudE5vZGUoTm9kZQogICAgICAgICByZXR1cm47CiAgICAgfQog
Ci0gICAgaWYgKG5vZGUgPT0gbV9jdXJyZW50KQotICAgICAgICByZXR1cm47Ci0gICAgCi0gICAg
Tm9kZUltcGwgKm9sZCA9IG1fY3VycmVudDsKICAgICBtX2N1cnJlbnQgPSBub2RlOwotICAgIGlm
IChtX2N1cnJlbnQpCi0gICAgICAgIG1fY3VycmVudC0+cmVmKCk7Ci0gICAgaWYgKG9sZCkKLSAg
ICAgICAgb2xkLT5kZXJlZigpOwogfQogCiB2b2lkIFRyZWVXYWxrZXJJbXBsOjpzZXRDdXJyZW50
Tm9kZShOb2RlSW1wbCAqbm9kZSkKSW5kZXg6IGtodG1sL3htbC9kb20yX3RyYXZlcnNhbGltcGwu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBraHRtbC94bWwvZG9tMl90cmF2ZXJzYWxpbXBsLmgJKHJldmlzaW9u
IDEyMzkyKQorKysga2h0bWwveG1sL2RvbTJfdHJhdmVyc2FsaW1wbC5oCSh3b3JraW5nIGNvcHkp
CkBAIC0zOCwyNiArMzgsMjcgQEAgY2xhc3MgTm9kZUZpbHRlckltcGwgOiBwdWJsaWMgU2hhcmVk
PE5vZAogewogcHVibGljOgogICAgIE5vZGVGaWx0ZXJJbXBsKE5vZGVGaWx0ZXJDb25kaXRpb24g
Kik7Ci0gICAgfk5vZGVGaWx0ZXJJbXBsKCk7CiAgICAgCiAgICAgc2hvcnQgYWNjZXB0Tm9kZShO
b2RlSW1wbCAqKSBjb25zdDsKICAgICAKKyAgICB2b2lkIG1hcmsoKSB7IG1fY29uZGl0aW9uLT5t
YXJrKCk7IH07CisKIHByaXZhdGU6CiAgICAgTm9kZUZpbHRlckltcGwoY29uc3QgTm9kZUZpbHRl
ckltcGwgJik7CiAgICAgTm9kZUZpbHRlckltcGwgJm9wZXJhdG9yPShjb25zdCBOb2RlRmlsdGVy
SW1wbCAmKTsKIAotICAgIE5vZGVGaWx0ZXJDb25kaXRpb24gKm1fY29uZGl0aW9uOworICAgIFJl
ZlB0cjxOb2RlRmlsdGVyQ29uZGl0aW9uPiBtX2NvbmRpdGlvbjsKIH07CiAKIGNsYXNzIFRyYXZl
cnNhbEltcGwgOiBwdWJsaWMgU2hhcmVkPFRyYXZlcnNhbEltcGw+CiB7CiBwdWJsaWM6CiAgICAg
VHJhdmVyc2FsSW1wbChOb2RlSW1wbCAqLCBpbnQgd2hhdFRvU2hvdywgTm9kZUZpbHRlckltcGwg
KiwgYm9vbCBleHBhbmRFbnRpdHlSZWZlcmVuY2VzKTsKLSAgICB+VHJhdmVyc2FsSW1wbCgpOwor
ICAgIHZpcnR1YWwgflRyYXZlcnNhbEltcGwoKTsKIAotICAgIE5vZGVJbXBsICpyb290KCkgY29u
c3QgeyByZXR1cm4gbV9yb290OyB9CisgICAgTm9kZUltcGwgKnJvb3QoKSBjb25zdCB7IHJldHVy
biBtX3Jvb3QuZ2V0KCk7IH0KICAgICB1bnNpZ25lZCB3aGF0VG9TaG93KCkgY29uc3QgeyByZXR1
cm4gbV93aGF0VG9TaG93OyB9Ci0gICAgTm9kZUZpbHRlckltcGwgKmZpbHRlcigpIGNvbnN0IHsg
cmV0dXJuIG1fZmlsdGVyOyB9CisgICAgTm9kZUZpbHRlckltcGwgKmZpbHRlcigpIGNvbnN0IHsg
cmV0dXJuIG1fZmlsdGVyLmdldCgpOyB9CiAgICAgYm9vbCBleHBhbmRFbnRpdHlSZWZlcmVuY2Vz
KCkgY29uc3QgeyByZXR1cm4gbV9leHBhbmRFbnRpdHlSZWZlcmVuY2VzOyB9CiAKICAgICBzaG9y
dCBhY2NlcHROb2RlKE5vZGVJbXBsICopIGNvbnN0OwpAQCAtNjYsOSArNjcsOSBAQCBwcml2YXRl
OgogICAgIFRyYXZlcnNhbEltcGwoY29uc3QgVHJhdmVyc2FsSW1wbCAmKTsKICAgICBUcmF2ZXJz
YWxJbXBsICZvcGVyYXRvcj0oY29uc3QgVHJhdmVyc2FsSW1wbCAmKTsKICAgICAKLSAgICBOb2Rl
SW1wbCAqbV9yb290OworICAgIFJlZlB0cjxOb2RlSW1wbD4gbV9yb290OwogICAgIGludCBtX3do
YXRUb1Nob3c7Ci0gICAgTm9kZUZpbHRlckltcGwgKm1fZmlsdGVyOworICAgIFJlZlB0cjxOb2Rl
RmlsdGVySW1wbD4gbV9maWx0ZXI7CiAgICAgYm9vbCBtX2V4cGFuZEVudGl0eVJlZmVyZW5jZXM7
CiB9OwogCkBAIC04Miw3ICs4Myw3IEBAIHB1YmxpYzoKICAgICBOb2RlSW1wbCAqcHJldmlvdXNO
b2RlKGludCAmZXhjZXB0aW9uY29kZSk7CiAgICAgdm9pZCBkZXRhY2goaW50ICZleGNlcHRpb25j
b2RlKTsKIAotICAgIE5vZGVJbXBsICpyZWZlcmVuY2VOb2RlKCkgY29uc3QgeyByZXR1cm4gbV9y
ZWZlcmVuY2VOb2RlOyB9CisgICAgTm9kZUltcGwgKnJlZmVyZW5jZU5vZGUoKSBjb25zdCB7IHJl
dHVybiBtX3JlZmVyZW5jZU5vZGUuZ2V0KCk7IH0KICAgICBib29sIHBvaW50ZXJCZWZvcmVSZWZl
cmVuY2VOb2RlKCkgY29uc3QgeyByZXR1cm4gbV9iZWZvcmVSZWZlcmVuY2VOb2RlOyB9CiAKICAg
ICAvKioKQEAgLTEwMCwyNCArMTAxLDIyIEBAIHByaXZhdGU6CiAgICAgdm9pZCBzZXRQb2ludGVy
QmVmb3JlUmVmZXJlbmNlTm9kZShib29sIGZsYWc9dHJ1ZSkgeyBtX2JlZm9yZVJlZmVyZW5jZU5v
ZGUgPSBmbGFnOyB9CiAgICAgYm9vbCBkZXRhY2hlZCgpIGNvbnN0IHsgcmV0dXJuIG1fZGV0YWNo
ZWQ7IH0KICAgICB2b2lkIHNldERldGFjaGVkKGJvb2wgZmxhZz10cnVlKSB7IG1fZGV0YWNoZWQg
PSBmbGFnOyB9Ci0gICAgRG9jdW1lbnRJbXBsICogZG9jdW1lbnQoKSBjb25zdCB7IHJldHVybiBt
X2RvYzsgfQotICAgIHZvaWQgc2V0RG9jdW1lbnQoRG9jdW1lbnRJbXBsICopOworICAgIERvY3Vt
ZW50SW1wbCAqIGRvY3VtZW50KCkgY29uc3QgeyByZXR1cm4gbV9kb2MuZ2V0KCk7IH0KICAgICBO
b2RlSW1wbCAqZmluZE5leHROb2RlKE5vZGVJbXBsICopIGNvbnN0OwogICAgIE5vZGVJbXBsICpm
aW5kUHJldmlvdXNOb2RlKE5vZGVJbXBsICopIGNvbnN0OwogCi0gICAgTm9kZUltcGwgKm1fcmVm
ZXJlbmNlTm9kZTsKKyAgICBSZWZQdHI8Tm9kZUltcGw+IG1fcmVmZXJlbmNlTm9kZTsKICAgICBi
b29sIG1fYmVmb3JlUmVmZXJlbmNlTm9kZTsKICAgICBib29sIG1fZGV0YWNoZWQ7Ci0gICAgRG9j
dW1lbnRJbXBsICptX2RvYzsKKyAgICBSZWZQdHI8RG9jdW1lbnRJbXBsPiBtX2RvYzsKIH07CiAK
IGNsYXNzIFRyZWVXYWxrZXJJbXBsIDogcHVibGljIFRyYXZlcnNhbEltcGwKIHsKIHB1YmxpYzoK
ICAgICBUcmVlV2Fsa2VySW1wbChOb2RlSW1wbCAqLCBpbnQgd2hhdFRvU2hvdywgTm9kZUZpbHRl
ckltcGwgKiwgYm9vbCBleHBhbmRFbnRpdHlSZWZlcmVuY2VzKTsKLSAgICB+VHJlZVdhbGtlcklt
cGwoKTsKIAotICAgIE5vZGVJbXBsICpjdXJyZW50Tm9kZSgpIGNvbnN0IHsgcmV0dXJuIG1fY3Vy
cmVudDsgfQorICAgIE5vZGVJbXBsICpjdXJyZW50Tm9kZSgpIGNvbnN0IHsgcmV0dXJuIG1fY3Vy
cmVudC5nZXQoKTsgfQogICAgIHZvaWQgc2V0Q3VycmVudE5vZGUoTm9kZUltcGwgKiwgaW50ICZl
eGNlcHRpb25jb2RlKTsKIAogICAgIE5vZGVJbXBsICpwYXJlbnROb2RlKCk7CkBAIC0xMzcsNyAr
MTM2LDcgQEAgcHJpdmF0ZToKICAgICAKICAgICBib29sIGFuY2VzdG9yUmVqZWN0ZWQoY29uc3Qg
Tm9kZUltcGwgKikgY29uc3Q7CiAgICAgCi0gICAgTm9kZUltcGwgKm1fY3VycmVudDsKKyAgICBS
ZWZQdHI8Tm9kZUltcGw+IG1fY3VycmVudDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlCkluZGV4OiBr
aHRtbC9lY21hL2tqc190cmF2ZXJzYWwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGtodG1sL2VjbWEva2pz
X3RyYXZlcnNhbC5jcHAJKHJldmlzaW9uIDEyMzkyKQorKysga2h0bWwvZWNtYS9ranNfdHJhdmVy
c2FsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUsNiArNjUsMTIgQEAgRE9NTm9kZUl0ZXJhdG9y
Ojp+RE9NTm9kZUl0ZXJhdG9yKCkKICAgU2NyaXB0SW50ZXJwcmV0ZXI6OmZvcmdldERPTU9iamVj
dChtX2ltcGwuZ2V0KCkpOwogfQogCit2b2lkIERPTU5vZGVJdGVyYXRvcjo6bWFyaygpCit7Cisg
ICAgbV9pbXBsLT5maWx0ZXIoKS0+bWFyaygpOworICAgIERPTU9iamVjdDo6bWFyaygpOworfQor
CiBib29sIERPTU5vZGVJdGVyYXRvcjo6Z2V0T3duUHJvcGVydHlTbG90KEV4ZWNTdGF0ZSAqZXhl
YywgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lLCBQcm9wZXJ0eVNsb3QmIHNsb3QpCiB7
CiAgIHJldHVybiBnZXRTdGF0aWNWYWx1ZVNsb3Q8RE9NTm9kZUl0ZXJhdG9yLCBET01PYmplY3Q+
KGV4ZWMsICZET01Ob2RlSXRlcmF0b3JUYWJsZSwgdGhpcywgcHJvcGVydHlOYW1lLCBzbG90KTsK
QEAgLTE3OCw2ICsxODQsMTIgQEAgRE9NTm9kZUZpbHRlcjo6fkRPTU5vZGVGaWx0ZXIoKQogICBT
Y3JpcHRJbnRlcnByZXRlcjo6Zm9yZ2V0RE9NT2JqZWN0KG1faW1wbC5nZXQoKSk7CiB9CiAKK3Zv
aWQgRE9NTm9kZUZpbHRlcjo6bWFyaygpCit7CisgICAgbV9pbXBsLT5tYXJrKCk7CisgICAgRE9N
T2JqZWN0OjptYXJrKCk7Cit9CisKIEpTVmFsdWUgKkRPTU5vZGVGaWx0ZXJQcm90b0Z1bmM6OmNh
bGxBc0Z1bmN0aW9uKEV4ZWNTdGF0ZSAqZXhlYywgSlNPYmplY3QgKnRoaXNPYmosIGNvbnN0IExp
c3QgJmFyZ3MpCiB7CiAgIGlmICghdGhpc09iai0+aW5oZXJpdHMoJktKUzo6RE9NTm9kZUZpbHRl
cjo6aW5mbykpCkBAIC0yMzgsNiArMjUwLDEyIEBAIERPTVRyZWVXYWxrZXI6On5ET01UcmVlV2Fs
a2VyKCkKICAgU2NyaXB0SW50ZXJwcmV0ZXI6OmZvcmdldERPTU9iamVjdChtX2ltcGwuZ2V0KCkp
OwogfQogCit2b2lkIERPTVRyZWVXYWxrZXI6Om1hcmsoKQoreworICAgIG1faW1wbC0+ZmlsdGVy
KCktPm1hcmsoKTsKKyAgICBET01PYmplY3Q6Om1hcmsoKTsKK30KKwogYm9vbCBET01UcmVlV2Fs
a2VyOjpnZXRPd25Qcm9wZXJ0eVNsb3QoRXhlY1N0YXRlICpleGVjLCBjb25zdCBJZGVudGlmaWVy
JiBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKICAgcmV0dXJuIGdldFN0YXRp
Y1ZhbHVlU2xvdDxET01UcmVlV2Fsa2VyLCBET01PYmplY3Q+KGV4ZWMsICZET01UcmVlV2Fsa2Vy
VGFibGUsIHRoaXMsIHByb3BlcnR5TmFtZSwgc2xvdCk7CkBAIC0zMDUsOCArMzIzLDE0IEBAIEpT
VmFsdWUgKmdldERPTVRyZWVXYWxrZXIoRXhlY1N0YXRlICpleGUKIAogLy8gLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLQogCi1KU05vZGVGaWx0ZXJDb25kaXRpb246OkpTTm9kZUZpbHRlckNvbmRpdGlvbihKU09i
amVjdCAqIF9maWx0ZXIpIDogZmlsdGVyKCBfZmlsdGVyICkKK0pTTm9kZUZpbHRlckNvbmRpdGlv
bjo6SlNOb2RlRmlsdGVyQ29uZGl0aW9uKEpTT2JqZWN0ICogX2ZpbHRlcikKKyAgICA6IGZpbHRl
ciggX2ZpbHRlciApCit7Cit9CisKK3ZvaWQgSlNOb2RlRmlsdGVyQ29uZGl0aW9uOjptYXJrKCkK
IHsKKyAgICBmaWx0ZXItPm1hcmsoKTsKIH0KIAogc2hvcnQgSlNOb2RlRmlsdGVyQ29uZGl0aW9u
OjphY2NlcHROb2RlKE5vZGVJbXBsKiBmaWx0ZXJOb2RlKSBjb25zdApJbmRleDoga2h0bWwvZWNt
YS9ranNfdHJhdmVyc2FsLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0ga2h0bWwvZWNtYS9ranNfdHJhdmVyc2Fs
LmgJKHJldmlzaW9uIDEyMzkyKQorKysga2h0bWwvZWNtYS9ranNfdHJhdmVyc2FsLmgJKHdvcmtp
bmcgY29weSkKQEAgLTM3LDYgKzM3LDcgQEAgbmFtZXNwYWNlIEtKUyB7CiAgIHB1YmxpYzoKICAg
ICBET01Ob2RlSXRlcmF0b3IoRXhlY1N0YXRlICpleGVjLCBET006Ok5vZGVJdGVyYXRvckltcGwg
Km5pKTsKICAgICB+RE9NTm9kZUl0ZXJhdG9yKCk7CisgICAgdmlydHVhbCB2b2lkIG1hcmsoKTsK
ICAgICB2aXJ0dWFsIGJvb2wgZ2V0T3duUHJvcGVydHlTbG90KEV4ZWNTdGF0ZSAqLCBjb25zdCBJ
ZGVudGlmaWVyJiwgUHJvcGVydHlTbG90Jik7CiAgICAgSlNWYWx1ZSAqZ2V0VmFsdWVQcm9wZXJ0
eShFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tlbikgY29uc3Q7CiAgICAgLy8gbm8gcHV0IC0gYWxs
IHJlYWQtb25seQpAQCAtNjQsNiArNjUsNyBAQCBuYW1lc3BhY2UgS0pTIHsKICAgcHVibGljOgog
ICAgIERPTU5vZGVGaWx0ZXIoRXhlY1N0YXRlICpleGVjLCBET006Ok5vZGVGaWx0ZXJJbXBsICpu
Zik7CiAgICAgfkRPTU5vZGVGaWx0ZXIoKTsKKyAgICB2aXJ0dWFsIHZvaWQgbWFyaygpOwogICAg
IC8vIG5vIHB1dCAtIGFsbCByZWFkLW9ubHkKICAgICB2aXJ0dWFsIGNvbnN0IENsYXNzSW5mbyog
Y2xhc3NJbmZvKCkgY29uc3QgeyByZXR1cm4gJmluZm87IH0KICAgICBzdGF0aWMgY29uc3QgQ2xh
c3NJbmZvIGluZm87CkBAIC03Nyw2ICs3OSw3IEBAIG5hbWVzcGFjZSBLSlMgewogICBwdWJsaWM6
CiAgICAgRE9NVHJlZVdhbGtlcihFeGVjU3RhdGUgKmV4ZWMsIERPTTo6VHJlZVdhbGtlckltcGwg
KnR3KTsKICAgICB+RE9NVHJlZVdhbGtlcigpOworICAgIHZpcnR1YWwgdm9pZCBtYXJrKCk7CiAg
ICAgdmlydHVhbCBib29sIGdldE93blByb3BlcnR5U2xvdChFeGVjU3RhdGUgKiwgY29uc3QgSWRl
bnRpZmllciYsIFByb3BlcnR5U2xvdCYgc2xvdCk7CiAgICAgSlNWYWx1ZSAqZ2V0VmFsdWVQcm9w
ZXJ0eShFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tlbikgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lk
IHB1dChFeGVjU3RhdGUgKmV4ZWMsIGNvbnN0IElkZW50aWZpZXIgJnByb3BlcnR5TmFtZSwgSlNW
YWx1ZSAqdmFsdWUsIGludCBhdHRyID0gTm9uZSk7CkBAIC0xMDIsOCArMTA1LDkgQEAgbmFtZXNw
YWNlIEtKUyB7CiAgICAgSlNOb2RlRmlsdGVyQ29uZGl0aW9uKEpTT2JqZWN0ICogX2ZpbHRlcik7
CiAgICAgdmlydHVhbCB+SlNOb2RlRmlsdGVyQ29uZGl0aW9uKCkge30KICAgICB2aXJ0dWFsIHNo
b3J0IGFjY2VwdE5vZGUoRE9NOjpOb2RlSW1wbCopIGNvbnN0OworICAgIHZpcnR1YWwgdm9pZCBt
YXJrKCk7CiAgIHByb3RlY3RlZDoKLSAgICBQcm90ZWN0ZWRQdHI8SlNPYmplY3Q+IGZpbHRlcjsK
KyAgICBKU09iamVjdCAqZmlsdGVyOwogICB9OwogCiB9IC8vIG5hbWVzcGFjZQpJbmRleDogQ2hh
bmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIENoYW5nZUxvZwkocmV2aXNpb24gMTIzOTIpCisrKyBDaGFu
Z2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw1MiBAQAorMjAwNi0wMS0yNiAgTWFjaWVq
IFN0YWNob3dpYWsgIDxtanNAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIC0gZml4ZWQgYSBjb3VwbGUgaHVuZHJlZCBub2RlIGxlYWtz
IG9uIHRoZSB0cmF2ZXJzYWwgbGF5b3V0IHRlc3RzCisgICAgICAgIGh0dHA6Ly9idWd6aWxsYS5v
cGVuZGFyd2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjgyOAorCisgICAgICAgIFRoZXJlIHdlcmUg
dGhyZWUgYmFzaWMgcHJvYmxlbXMgaGVyZSwgYW55IG9uZSBvZiB3aGljaCB3YXMgZW5vdWdoCisg
ICAgICAgIHRvIGNhdXNlIHRoZSBsZWFrLgorICAgICAgICAKKyAgICAgICAgMSkgSWYgdGhlIGZp
bHRlciBmdW5jdGlvbiBmb3IgYSBOb2RlRmlsdGVyLCBOb2RlSXRlcmF0b3Igb3IgVHJlZVdhbGtl
cgorICAgICAgICBoYWQgdGhhdCBvYmplY3QgaW4gc2NvcGUsIGl0IHdvdWxkIGNhdXNlIGEgR0Mg
cmVmZXJlbmNlIGN5Y2xlLiBJIGZpeGVkCisgICAgICAgIHRoaXMgYnkgbWFraW5nIHRoZXNlIEpT
IGZ1bmN0aW9ucyBnZXQgbWFya2VkIGJ5IHRoZSBjb3JyZXNwb25kaW5nIEpTIG9iamVjdCwKKyAg
ICAgICAgYXMgZm9yIFhNTEh0dHBSZXF1ZXN0LgorICAgICAgICAKKyAgICAgICAgMikgVGhlIFRy
YXZlcnNhbEltcGwgY2xhc3MgdGhhdCdzIGEgYmFzZSBjbGFzcyBmb3IgTm9kZUl0ZXJhdG9ySW1w
bCBhbmQgCisgICAgICAgIFRyZWVXYWxrZXJJbXBsIGRpZCBub3QgaGF2ZSBhIHZpcnR1YWwgZGVz
dHJ1Y3RvciwgbGVhZGluZyB0aGUgU2hhcmVkCisgICAgICAgIHRlbXBsYXRlIHRvIGNhbGwgdGhl
IGJhc2UgY2xhc3MgZGVzdHJ1Y3RvciBvbiBkZXJlZi4KKyAgICAgICAgCisgICAgICAgIDMpIHJl
Zi9kZXJlZiBvbiB0aGUgZG9jdW1lbnQgd2VyZSBtaXNtYXRjaGVkLCBJIGZpeGVkIGFsbCB0aGF0
IHNvcnQgb2Ygbm9uc2Vuc2UKKyAgICAgICAgYnkgdXNpbmcgUmVmUHRyIGluc3RlYWQgb2YgbWFu
dWFsIHJlZi9kZXJlZi4KKyAgICAgICAgCisgICAgICAgICoga2h0bWwvZG9tL2RvbTJfdHJhdmVy
c2FsLmg6CisgICAgICAgIChET006Ok5vZGVGaWx0ZXJDb25kaXRpb246Om1hcmspOiBBZGQgbm8t
b3AgdmlydHVhbCBtYXJrIG1ldGhvZCwgSlMgc3ViY2xhc3MKKyAgICAgICAgd2lsbCBkbyBzb21l
dGhpbmcgdXNlZnVsIGhlcmUuCisgICAgICAgICoga2h0bWwvZWNtYS9ranNfdHJhdmVyc2FsLmNw
cDoKKyAgICAgICAgKEtKUzo6RE9NTm9kZUl0ZXJhdG9yOjptYXJrKTogTWFyayB0aGUgRE9NLWxl
dmVsIGZpbHRlci4KKyAgICAgICAgKEtKUzo6RE9NTm9kZUZpbHRlcjo6bWFyayk6IGRpdHRvCisg
ICAgICAgIChLSlM6OkRPTVRyZWVXYWxrZXI6Om1hcmspOiBkaXR0bworICAgICAgICAoS0pTOjpK
U05vZGVGaWx0ZXJDb25kaXRpb246OkpTTm9kZUZpbHRlckNvbmRpdGlvbik6IHJlZm9ybWF0dGVk
LgorICAgICAgICAoS0pTOjpKU05vZGVGaWx0ZXJDb25kaXRpb246Om1hcmspOiBNYXJrIHRoZSBm
aWx0ZXIgZnVuY3Rpb24uCisgICAgICAgICoga2h0bWwvZWNtYS9ranNfdHJhdmVyc2FsLmg6Cisg
ICAgICAgICoga2h0bWwveG1sL2RvbTJfdHJhdmVyc2FsaW1wbC5jcHA6CisgICAgICAgIChET006
Ok5vZGVGaWx0ZXJJbXBsOjpOb2RlRmlsdGVySW1wbCk6IGRpbGlnZW50bHkgYXBwbGllZCBSZWZQ
dHIKKyAgICAgICAgKERPTTo6VHJhdmVyc2FsSW1wbDo6VHJhdmVyc2FsSW1wbCk6IGRpdHRvCisg
ICAgICAgIChET006OlRyYXZlcnNhbEltcGw6On5UcmF2ZXJzYWxJbXBsKTogZGl0dG8KKyAgICAg
ICAgKERPTTo6Tm9kZUl0ZXJhdG9ySW1wbDo6Tm9kZUl0ZXJhdG9ySW1wbCk6IGRpdHRvCisgICAg
ICAgIChET006Ok5vZGVJdGVyYXRvckltcGw6On5Ob2RlSXRlcmF0b3JJbXBsKTogZGl0dG8KKyAg
ICAgICAgKERPTTo6Tm9kZUl0ZXJhdG9ySW1wbDo6c2V0UmVmZXJlbmNlTm9kZSk6IGRpdHRvCisg
ICAgICAgIChET006OlRyZWVXYWxrZXJJbXBsOjpUcmVlV2Fsa2VySW1wbCk6IGRpdHRvCisgICAg
ICAgIChET006OlRyZWVXYWxrZXJJbXBsOjpzZXRDdXJyZW50Tm9kZSk6IGRpdHRvCisgICAgICAg
ICoga2h0bWwveG1sL2RvbTJfdHJhdmVyc2FsaW1wbC5oOgorICAgICAgICAoRE9NOjpOb2RlRmls
dGVySW1wbDo6bWFyayk6IGNhbGwgbWFyaygpIG9uIHRoZSBjb2RpdGlvbgorICAgICAgICAoRE9N
OjpUcmF2ZXJzYWxJbXBsOjpyb290KTogVXNlIC5nZXQoKQorICAgICAgICAoRE9NOjpUcmF2ZXJz
YWxJbXBsOjpmaWx0ZXIpOiBkaXR0bworICAgICAgICAoRE9NOjpOb2RlSXRlcmF0b3JJbXBsOjpy
ZWZlcmVuY2VOb2RlKTogZGl0dG8KKyAgICAgICAgKERPTTo6Tm9kZUl0ZXJhdG9ySW1wbDo6ZG9j
dW1lbnQpOiBkaXR0bworICAgICAgICAoRE9NOjpUcmVlV2Fsa2VySW1wbDo6Y3VycmVudE5vZGUp
OiBkaXR0bworCiAyMDA2LTAxLTI2ICBFcmljIFNlaWRlbCAgPGVzZWlkZWxAYXBwbGUuY29tPgog
CiAgICAgICAgIEZpeGVzIHhjb2RlIHByb2plY3QgdG8gYmV0dGVyIG5vdGljZSB3aGVuIGdlbmVy
YXRlZCBmaWxlcyBjaGFuZ2UuCkluZGV4OiBrd3EvS1dRUGFnZVN0YXRlLm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIGt3cS9LV1FQYWdlU3RhdGUubW0JKHJldmlzaW9uIDEyMzkyKQorKysga3dxL0tXUVBhZ2VT
dGF0ZS5tbQkod29ya2luZyBjb3B5KQpAQCAtODgsNiArODgsOCBAQCB1c2luZyBuYW1lc3BhY2Ug
S0pTOwogCiAgICAgZGVsZXRlIHBhdXNlZFRpbWVvdXRzOwogICAgIHBhdXNlZFRpbWVvdXRzID0g
MDsKKworICAgIENvbGxlY3Rvcjo6Y29sbGVjdCgpOwogfQogCiAtICh2b2lkKWludmFsaWRhdGUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>5984</attachid>
            <date>2006-01-26 04:18:21 -0800</date>
            <delta_ts>2006-01-26 12:04:55 -0800</delta_ts>
            <desc>same thing, no extra bits</desc>
            <filename>traversal-node-leaks.patch.txt</filename>
            <type>text/plain</type>
            <size>13870</size>
            <attacher name="Maciej Stachowiak">mjs</attacher>
            
              <data encoding="base64">SW5kZXg6IGtodG1sL2RvbS9kb20yX3RyYXZlcnNhbC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGtodG1sL2Rv
bS9kb20yX3RyYXZlcnNhbC5oCShyZXZpc2lvbiAxMjM5MikKKysrIGtodG1sL2RvbS9kb20yX3Ry
YXZlcnNhbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOCw2ICszOCw3IEBAIGNsYXNzIE5vZGVGaWx0
ZXJDb25kaXRpb24gOiBwdWJsaWMgU2hhcmUKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5Ob2RlRmls
dGVyQ29uZGl0aW9uKCkgeyB9CiAgICAgdmlydHVhbCBzaG9ydCBhY2NlcHROb2RlKE5vZGVJbXBs
KikgY29uc3Q7CisgICAgdmlydHVhbCB2b2lkIG1hcmsoKSB7fTsKIH07CiAKIC8qKgpJbmRleDog
a2h0bWwveG1sL2RvbTJfdHJhdmVyc2FsaW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0ga2h0bWwveG1s
L2RvbTJfdHJhdmVyc2FsaW1wbC5jcHAJKHJldmlzaW9uIDEyMzkyKQorKysga2h0bWwveG1sL2Rv
bTJfdHJhdmVyc2FsaW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMyLDE0ICszMiw2IEBAIG5h
bWVzcGFjZSBET00gewogTm9kZUZpbHRlckltcGw6Ok5vZGVGaWx0ZXJJbXBsKE5vZGVGaWx0ZXJD
b25kaXRpb24gKmNvbmRpdGlvbikKICAgICA6IG1fY29uZGl0aW9uKGNvbmRpdGlvbikKIHsKLSAg
ICBpZiAobV9jb25kaXRpb24pCi0gICAgICAgIG1fY29uZGl0aW9uLT5yZWYoKTsKLX0KLQotTm9k
ZUZpbHRlckltcGw6On5Ob2RlRmlsdGVySW1wbCgpCi17Ci0gICAgaWYgKG1fY29uZGl0aW9uKQot
ICAgICAgICBtX2NvbmRpdGlvbi0+ZGVyZWYoKTsKIH0KIAogc2hvcnQgTm9kZUZpbHRlckltcGw6
OmFjY2VwdE5vZGUoTm9kZUltcGwgKm5vZGUpIGNvbnN0CkBAIC01MSwyMCArNDMsMTUgQEAgc2hv
cnQgTm9kZUZpbHRlckltcGw6OmFjY2VwdE5vZGUoTm9kZUltcAogLy8gLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogVHJhdmVy
c2FsSW1wbDo6VHJhdmVyc2FsSW1wbChOb2RlSW1wbCAqcm9vdE5vZGUsIGludCB3aGF0VG9TaG93
LCBOb2RlRmlsdGVySW1wbCAqbm9kZUZpbHRlciwgYm9vbCBleHBhbmRFbnRpdHlSZWZlcmVuY2Vz
KQotICAgIDogbV9yb290KHJvb3ROb2RlKSwgbV93aGF0VG9TaG93KHdoYXRUb1Nob3cpLCBtX2Zp
bHRlcihub2RlRmlsdGVyKSwgbV9leHBhbmRFbnRpdHlSZWZlcmVuY2VzKGV4cGFuZEVudGl0eVJl
ZmVyZW5jZXMpCisgICAgOiBtX3Jvb3Qocm9vdE5vZGUpCisgICAgLCBtX3doYXRUb1Nob3cod2hh
dFRvU2hvdykKKyAgICAsIG1fZmlsdGVyKG5vZGVGaWx0ZXIpCisgICAgLCBtX2V4cGFuZEVudGl0
eVJlZmVyZW5jZXMoZXhwYW5kRW50aXR5UmVmZXJlbmNlcykKIHsKLSAgICBpZiAocm9vdCgpKQot
ICAgICAgICByb290KCktPnJlZigpOwotICAgIGlmIChmaWx0ZXIoKSkKLSAgICAgICAgZmlsdGVy
KCktPnJlZigpOwogfQogCiBUcmF2ZXJzYWxJbXBsOjp+VHJhdmVyc2FsSW1wbCgpCiB7Ci0gICAg
aWYgKHJvb3QoKSkKLSAgICAgICAgcm9vdCgpLT5kZXJlZigpOwotICAgIGlmIChmaWx0ZXIoKSkK
LSAgICAgICAgZmlsdGVyKCktPmRlcmVmKCk7CiB9CiAKIHNob3J0IFRyYXZlcnNhbEltcGw6OmFj
Y2VwdE5vZGUoTm9kZUltcGwgKm5vZGUpIGNvbnN0CkBAIC04MSwyNSArNjgsMTkgQEAgc2hvcnQg
VHJhdmVyc2FsSW1wbDo6YWNjZXB0Tm9kZShOb2RlSW1wbAogLy8gLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogTm9kZUl0ZXJh
dG9ySW1wbDo6Tm9kZUl0ZXJhdG9ySW1wbChOb2RlSW1wbCAqcm9vdE5vZGUsIGludCB3aGF0VG9T
aG93LCBOb2RlRmlsdGVySW1wbCAqZmlsdGVyLCBib29sIGV4cGFuZEVudGl0eVJlZmVyZW5jZXMp
Ci0gICAgOlRyYXZlcnNhbEltcGwocm9vdE5vZGUsIHdoYXRUb1Nob3csIGZpbHRlciwgZXhwYW5k
RW50aXR5UmVmZXJlbmNlcyksIG1fcmVmZXJlbmNlTm9kZSgwKSwgbV9iZWZvcmVSZWZlcmVuY2VO
b2RlKHRydWUpLCBtX2RldGFjaGVkKGZhbHNlKSwgbV9kb2MoMCkKKyAgICA6IFRyYXZlcnNhbElt
cGwocm9vdE5vZGUsIHdoYXRUb1Nob3csIGZpbHRlciwgZXhwYW5kRW50aXR5UmVmZXJlbmNlcykK
KyAgICAsIG1fYmVmb3JlUmVmZXJlbmNlTm9kZSh0cnVlKQorICAgICwgbV9kZXRhY2hlZChmYWxz
ZSkKKyAgICAsIG1fZG9jKHJvb3ROb2RlID8gcm9vdE5vZGUtPmdldERvY3VtZW50KCkgOiAwKQog
ewotICAgIGlmIChyb290KCkpIHsKLSAgICAgICAgc2V0RG9jdW1lbnQocm9vdCgpLT5nZXREb2N1
bWVudCgpKTsKLSAgICAgICAgaWYgKGRvY3VtZW50KCkpIHsKLSAgICAgICAgICAgIGRvY3VtZW50
KCktPmF0dGFjaE5vZGVJdGVyYXRvcih0aGlzKTsKLSAgICAgICAgICAgIGRvY3VtZW50KCktPnJl
ZigpOwotICAgICAgICB9Ci0gICAgfQorICAgIGlmIChkb2N1bWVudCgpKQorICAgICAgICBkb2N1
bWVudCgpLT5hdHRhY2hOb2RlSXRlcmF0b3IodGhpcyk7CiB9CiAKIE5vZGVJdGVyYXRvckltcGw6
On5Ob2RlSXRlcmF0b3JJbXBsKCkKIHsKLSAgICBpZiAocmVmZXJlbmNlTm9kZSgpKQotICAgICAg
ICByZWZlcmVuY2VOb2RlKCktPmRlcmVmKCk7Ci0gICAgaWYgKGRvY3VtZW50KCkpIHsKKyAgICBp
ZiAoZG9jdW1lbnQoKSkKICAgICAgICAgZG9jdW1lbnQoKS0+ZGV0YWNoTm9kZUl0ZXJhdG9yKHRo
aXMpOwotICAgICAgICBkb2N1bWVudCgpLT5kZXJlZigpOwotICAgIH0KIH0KIAogTm9kZUltcGwg
Kk5vZGVJdGVyYXRvckltcGw6OmZpbmROZXh0Tm9kZShOb2RlSW1wbCAqbm9kZSkgY29uc3QKQEAg
LTE2MiwyOCArMTQzLDcgQEAgdm9pZCBOb2RlSXRlcmF0b3JJbXBsOjpkZXRhY2goaW50ICYvKmV4
YwogCiB2b2lkIE5vZGVJdGVyYXRvckltcGw6OnNldFJlZmVyZW5jZU5vZGUoTm9kZUltcGwgKm5v
ZGUpCiB7Ci0gICAgaWYgKG5vZGUgPT0gbV9yZWZlcmVuY2VOb2RlKQotICAgICAgICByZXR1cm47
Ci0gICAgCi0gICAgTm9kZUltcGwgKm9sZCA9IG1fcmVmZXJlbmNlTm9kZTsKICAgICBtX3JlZmVy
ZW5jZU5vZGUgPSBub2RlOwotICAgIGlmIChtX3JlZmVyZW5jZU5vZGUpCi0gICAgICAgIG1fcmVm
ZXJlbmNlTm9kZS0+cmVmKCk7Ci0gICAgaWYgKG9sZCkKLSAgICAgICAgb2xkLT5kZXJlZigpOwot
fQotCi12b2lkIE5vZGVJdGVyYXRvckltcGw6OnNldERvY3VtZW50KERvY3VtZW50SW1wbCAqZG9j
KQotewotICAgIGlmIChkb2MgPT0gbV9kb2MpCi0gICAgICAgIHJldHVybjsKLSAgICAKLSAgICBE
b2N1bWVudEltcGwgKm9sZCA9IG1fZG9jOwotICAgIG1fZG9jID0gZG9jOwotICAgIGlmIChtX2Rv
YykKLSAgICAgICAgbV9kb2MtPnJlZigpOwotICAgIGlmIChvbGQpCi0gICAgICAgIG9sZC0+ZGVy
ZWYoKTsKIH0KIAogdm9pZCBOb2RlSXRlcmF0b3JJbXBsOjpub3RpZnlCZWZvcmVOb2RlUmVtb3Zh
bChOb2RlSW1wbCAqcmVtb3ZlZE5vZGUpCkBAIC0yNTcsMTYgKzIxNyw5IEBAIHZvaWQgTm9kZUl0
ZXJhdG9ySW1wbDo6bm90aWZ5QmVmb3JlTm9kZVIKIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIFRyZWVXYWxrZXJJbXBs
OjpUcmVlV2Fsa2VySW1wbChOb2RlSW1wbCAqcm9vdE5vZGUsIGludCB3aGF0VG9TaG93LCBOb2Rl
RmlsdGVySW1wbCAqZmlsdGVyLCBib29sIGV4cGFuZEVudGl0eVJlZmVyZW5jZXMpCi0gICAgOiBU
cmF2ZXJzYWxJbXBsKHJvb3ROb2RlLCB3aGF0VG9TaG93LCBmaWx0ZXIsIGV4cGFuZEVudGl0eVJl
ZmVyZW5jZXMpLCBtX2N1cnJlbnQocm9vdE5vZGUpCisgICAgOiBUcmF2ZXJzYWxJbXBsKHJvb3RO
b2RlLCB3aGF0VG9TaG93LCBmaWx0ZXIsIGV4cGFuZEVudGl0eVJlZmVyZW5jZXMpCisgICAgLCBt
X2N1cnJlbnQocm9vdE5vZGUpCiB7Ci0gICAgaWYgKGN1cnJlbnROb2RlKCkpCi0gICAgICAgIGN1
cnJlbnROb2RlKCktPnJlZigpOwotfQotCi1UcmVlV2Fsa2VySW1wbDo6flRyZWVXYWxrZXJJbXBs
KCkKLXsKLSAgICBpZiAoY3VycmVudE5vZGUoKSkKLSAgICAgICAgY3VycmVudE5vZGUoKS0+ZGVy
ZWYoKTsKIH0KIAogdm9pZCBUcmVlV2Fsa2VySW1wbDo6c2V0Q3VycmVudE5vZGUoTm9kZUltcGwg
Km5vZGUsIGludCAmZXhjZXB0aW9uY29kZSkKQEAgLTI3NiwxNSArMjI5LDcgQEAgdm9pZCBUcmVl
V2Fsa2VySW1wbDo6c2V0Q3VycmVudE5vZGUoTm9kZQogICAgICAgICByZXR1cm47CiAgICAgfQog
Ci0gICAgaWYgKG5vZGUgPT0gbV9jdXJyZW50KQotICAgICAgICByZXR1cm47Ci0gICAgCi0gICAg
Tm9kZUltcGwgKm9sZCA9IG1fY3VycmVudDsKICAgICBtX2N1cnJlbnQgPSBub2RlOwotICAgIGlm
IChtX2N1cnJlbnQpCi0gICAgICAgIG1fY3VycmVudC0+cmVmKCk7Ci0gICAgaWYgKG9sZCkKLSAg
ICAgICAgb2xkLT5kZXJlZigpOwogfQogCiB2b2lkIFRyZWVXYWxrZXJJbXBsOjpzZXRDdXJyZW50
Tm9kZShOb2RlSW1wbCAqbm9kZSkKSW5kZXg6IGtodG1sL3htbC9kb20yX3RyYXZlcnNhbGltcGwu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBraHRtbC94bWwvZG9tMl90cmF2ZXJzYWxpbXBsLmgJKHJldmlzaW9u
IDEyMzkyKQorKysga2h0bWwveG1sL2RvbTJfdHJhdmVyc2FsaW1wbC5oCSh3b3JraW5nIGNvcHkp
CkBAIC0zOCwyNiArMzgsMjcgQEAgY2xhc3MgTm9kZUZpbHRlckltcGwgOiBwdWJsaWMgU2hhcmVk
PE5vZAogewogcHVibGljOgogICAgIE5vZGVGaWx0ZXJJbXBsKE5vZGVGaWx0ZXJDb25kaXRpb24g
Kik7Ci0gICAgfk5vZGVGaWx0ZXJJbXBsKCk7CiAgICAgCiAgICAgc2hvcnQgYWNjZXB0Tm9kZShO
b2RlSW1wbCAqKSBjb25zdDsKICAgICAKKyAgICB2b2lkIG1hcmsoKSB7IG1fY29uZGl0aW9uLT5t
YXJrKCk7IH07CisKIHByaXZhdGU6CiAgICAgTm9kZUZpbHRlckltcGwoY29uc3QgTm9kZUZpbHRl
ckltcGwgJik7CiAgICAgTm9kZUZpbHRlckltcGwgJm9wZXJhdG9yPShjb25zdCBOb2RlRmlsdGVy
SW1wbCAmKTsKIAotICAgIE5vZGVGaWx0ZXJDb25kaXRpb24gKm1fY29uZGl0aW9uOworICAgIFJl
ZlB0cjxOb2RlRmlsdGVyQ29uZGl0aW9uPiBtX2NvbmRpdGlvbjsKIH07CiAKIGNsYXNzIFRyYXZl
cnNhbEltcGwgOiBwdWJsaWMgU2hhcmVkPFRyYXZlcnNhbEltcGw+CiB7CiBwdWJsaWM6CiAgICAg
VHJhdmVyc2FsSW1wbChOb2RlSW1wbCAqLCBpbnQgd2hhdFRvU2hvdywgTm9kZUZpbHRlckltcGwg
KiwgYm9vbCBleHBhbmRFbnRpdHlSZWZlcmVuY2VzKTsKLSAgICB+VHJhdmVyc2FsSW1wbCgpOwor
ICAgIHZpcnR1YWwgflRyYXZlcnNhbEltcGwoKTsKIAotICAgIE5vZGVJbXBsICpyb290KCkgY29u
c3QgeyByZXR1cm4gbV9yb290OyB9CisgICAgTm9kZUltcGwgKnJvb3QoKSBjb25zdCB7IHJldHVy
biBtX3Jvb3QuZ2V0KCk7IH0KICAgICB1bnNpZ25lZCB3aGF0VG9TaG93KCkgY29uc3QgeyByZXR1
cm4gbV93aGF0VG9TaG93OyB9Ci0gICAgTm9kZUZpbHRlckltcGwgKmZpbHRlcigpIGNvbnN0IHsg
cmV0dXJuIG1fZmlsdGVyOyB9CisgICAgTm9kZUZpbHRlckltcGwgKmZpbHRlcigpIGNvbnN0IHsg
cmV0dXJuIG1fZmlsdGVyLmdldCgpOyB9CiAgICAgYm9vbCBleHBhbmRFbnRpdHlSZWZlcmVuY2Vz
KCkgY29uc3QgeyByZXR1cm4gbV9leHBhbmRFbnRpdHlSZWZlcmVuY2VzOyB9CiAKICAgICBzaG9y
dCBhY2NlcHROb2RlKE5vZGVJbXBsICopIGNvbnN0OwpAQCAtNjYsOSArNjcsOSBAQCBwcml2YXRl
OgogICAgIFRyYXZlcnNhbEltcGwoY29uc3QgVHJhdmVyc2FsSW1wbCAmKTsKICAgICBUcmF2ZXJz
YWxJbXBsICZvcGVyYXRvcj0oY29uc3QgVHJhdmVyc2FsSW1wbCAmKTsKICAgICAKLSAgICBOb2Rl
SW1wbCAqbV9yb290OworICAgIFJlZlB0cjxOb2RlSW1wbD4gbV9yb290OwogICAgIGludCBtX3do
YXRUb1Nob3c7Ci0gICAgTm9kZUZpbHRlckltcGwgKm1fZmlsdGVyOworICAgIFJlZlB0cjxOb2Rl
RmlsdGVySW1wbD4gbV9maWx0ZXI7CiAgICAgYm9vbCBtX2V4cGFuZEVudGl0eVJlZmVyZW5jZXM7
CiB9OwogCkBAIC04Miw3ICs4Myw3IEBAIHB1YmxpYzoKICAgICBOb2RlSW1wbCAqcHJldmlvdXNO
b2RlKGludCAmZXhjZXB0aW9uY29kZSk7CiAgICAgdm9pZCBkZXRhY2goaW50ICZleGNlcHRpb25j
b2RlKTsKIAotICAgIE5vZGVJbXBsICpyZWZlcmVuY2VOb2RlKCkgY29uc3QgeyByZXR1cm4gbV9y
ZWZlcmVuY2VOb2RlOyB9CisgICAgTm9kZUltcGwgKnJlZmVyZW5jZU5vZGUoKSBjb25zdCB7IHJl
dHVybiBtX3JlZmVyZW5jZU5vZGUuZ2V0KCk7IH0KICAgICBib29sIHBvaW50ZXJCZWZvcmVSZWZl
cmVuY2VOb2RlKCkgY29uc3QgeyByZXR1cm4gbV9iZWZvcmVSZWZlcmVuY2VOb2RlOyB9CiAKICAg
ICAvKioKQEAgLTEwMCwyNCArMTAxLDIyIEBAIHByaXZhdGU6CiAgICAgdm9pZCBzZXRQb2ludGVy
QmVmb3JlUmVmZXJlbmNlTm9kZShib29sIGZsYWc9dHJ1ZSkgeyBtX2JlZm9yZVJlZmVyZW5jZU5v
ZGUgPSBmbGFnOyB9CiAgICAgYm9vbCBkZXRhY2hlZCgpIGNvbnN0IHsgcmV0dXJuIG1fZGV0YWNo
ZWQ7IH0KICAgICB2b2lkIHNldERldGFjaGVkKGJvb2wgZmxhZz10cnVlKSB7IG1fZGV0YWNoZWQg
PSBmbGFnOyB9Ci0gICAgRG9jdW1lbnRJbXBsICogZG9jdW1lbnQoKSBjb25zdCB7IHJldHVybiBt
X2RvYzsgfQotICAgIHZvaWQgc2V0RG9jdW1lbnQoRG9jdW1lbnRJbXBsICopOworICAgIERvY3Vt
ZW50SW1wbCAqIGRvY3VtZW50KCkgY29uc3QgeyByZXR1cm4gbV9kb2MuZ2V0KCk7IH0KICAgICBO
b2RlSW1wbCAqZmluZE5leHROb2RlKE5vZGVJbXBsICopIGNvbnN0OwogICAgIE5vZGVJbXBsICpm
aW5kUHJldmlvdXNOb2RlKE5vZGVJbXBsICopIGNvbnN0OwogCi0gICAgTm9kZUltcGwgKm1fcmVm
ZXJlbmNlTm9kZTsKKyAgICBSZWZQdHI8Tm9kZUltcGw+IG1fcmVmZXJlbmNlTm9kZTsKICAgICBi
b29sIG1fYmVmb3JlUmVmZXJlbmNlTm9kZTsKICAgICBib29sIG1fZGV0YWNoZWQ7Ci0gICAgRG9j
dW1lbnRJbXBsICptX2RvYzsKKyAgICBSZWZQdHI8RG9jdW1lbnRJbXBsPiBtX2RvYzsKIH07CiAK
IGNsYXNzIFRyZWVXYWxrZXJJbXBsIDogcHVibGljIFRyYXZlcnNhbEltcGwKIHsKIHB1YmxpYzoK
ICAgICBUcmVlV2Fsa2VySW1wbChOb2RlSW1wbCAqLCBpbnQgd2hhdFRvU2hvdywgTm9kZUZpbHRl
ckltcGwgKiwgYm9vbCBleHBhbmRFbnRpdHlSZWZlcmVuY2VzKTsKLSAgICB+VHJlZVdhbGtlcklt
cGwoKTsKIAotICAgIE5vZGVJbXBsICpjdXJyZW50Tm9kZSgpIGNvbnN0IHsgcmV0dXJuIG1fY3Vy
cmVudDsgfQorICAgIE5vZGVJbXBsICpjdXJyZW50Tm9kZSgpIGNvbnN0IHsgcmV0dXJuIG1fY3Vy
cmVudC5nZXQoKTsgfQogICAgIHZvaWQgc2V0Q3VycmVudE5vZGUoTm9kZUltcGwgKiwgaW50ICZl
eGNlcHRpb25jb2RlKTsKIAogICAgIE5vZGVJbXBsICpwYXJlbnROb2RlKCk7CkBAIC0xMzcsNyAr
MTM2LDcgQEAgcHJpdmF0ZToKICAgICAKICAgICBib29sIGFuY2VzdG9yUmVqZWN0ZWQoY29uc3Qg
Tm9kZUltcGwgKikgY29uc3Q7CiAgICAgCi0gICAgTm9kZUltcGwgKm1fY3VycmVudDsKKyAgICBS
ZWZQdHI8Tm9kZUltcGw+IG1fY3VycmVudDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlCkluZGV4OiBr
aHRtbC9lY21hL2tqc190cmF2ZXJzYWwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGtodG1sL2VjbWEva2pz
X3RyYXZlcnNhbC5jcHAJKHJldmlzaW9uIDEyMzkyKQorKysga2h0bWwvZWNtYS9ranNfdHJhdmVy
c2FsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjUsNiArNjUsMTIgQEAgRE9NTm9kZUl0ZXJhdG9y
Ojp+RE9NTm9kZUl0ZXJhdG9yKCkKICAgU2NyaXB0SW50ZXJwcmV0ZXI6OmZvcmdldERPTU9iamVj
dChtX2ltcGwuZ2V0KCkpOwogfQogCit2b2lkIERPTU5vZGVJdGVyYXRvcjo6bWFyaygpCit7Cisg
ICAgbV9pbXBsLT5maWx0ZXIoKS0+bWFyaygpOworICAgIERPTU9iamVjdDo6bWFyaygpOworfQor
CiBib29sIERPTU5vZGVJdGVyYXRvcjo6Z2V0T3duUHJvcGVydHlTbG90KEV4ZWNTdGF0ZSAqZXhl
YywgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1lLCBQcm9wZXJ0eVNsb3QmIHNsb3QpCiB7
CiAgIHJldHVybiBnZXRTdGF0aWNWYWx1ZVNsb3Q8RE9NTm9kZUl0ZXJhdG9yLCBET01PYmplY3Q+
KGV4ZWMsICZET01Ob2RlSXRlcmF0b3JUYWJsZSwgdGhpcywgcHJvcGVydHlOYW1lLCBzbG90KTsK
QEAgLTE3OCw2ICsxODQsMTIgQEAgRE9NTm9kZUZpbHRlcjo6fkRPTU5vZGVGaWx0ZXIoKQogICBT
Y3JpcHRJbnRlcnByZXRlcjo6Zm9yZ2V0RE9NT2JqZWN0KG1faW1wbC5nZXQoKSk7CiB9CiAKK3Zv
aWQgRE9NTm9kZUZpbHRlcjo6bWFyaygpCit7CisgICAgbV9pbXBsLT5tYXJrKCk7CisgICAgRE9N
T2JqZWN0OjptYXJrKCk7Cit9CisKIEpTVmFsdWUgKkRPTU5vZGVGaWx0ZXJQcm90b0Z1bmM6OmNh
bGxBc0Z1bmN0aW9uKEV4ZWNTdGF0ZSAqZXhlYywgSlNPYmplY3QgKnRoaXNPYmosIGNvbnN0IExp
c3QgJmFyZ3MpCiB7CiAgIGlmICghdGhpc09iai0+aW5oZXJpdHMoJktKUzo6RE9NTm9kZUZpbHRl
cjo6aW5mbykpCkBAIC0yMzgsNiArMjUwLDEyIEBAIERPTVRyZWVXYWxrZXI6On5ET01UcmVlV2Fs
a2VyKCkKICAgU2NyaXB0SW50ZXJwcmV0ZXI6OmZvcmdldERPTU9iamVjdChtX2ltcGwuZ2V0KCkp
OwogfQogCit2b2lkIERPTVRyZWVXYWxrZXI6Om1hcmsoKQoreworICAgIG1faW1wbC0+ZmlsdGVy
KCktPm1hcmsoKTsKKyAgICBET01PYmplY3Q6Om1hcmsoKTsKK30KKwogYm9vbCBET01UcmVlV2Fs
a2VyOjpnZXRPd25Qcm9wZXJ0eVNsb3QoRXhlY1N0YXRlICpleGVjLCBjb25zdCBJZGVudGlmaWVy
JiBwcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYgc2xvdCkKIHsKICAgcmV0dXJuIGdldFN0YXRp
Y1ZhbHVlU2xvdDxET01UcmVlV2Fsa2VyLCBET01PYmplY3Q+KGV4ZWMsICZET01UcmVlV2Fsa2Vy
VGFibGUsIHRoaXMsIHByb3BlcnR5TmFtZSwgc2xvdCk7CkBAIC0zMDUsOCArMzIzLDE0IEBAIEpT
VmFsdWUgKmdldERPTVRyZWVXYWxrZXIoRXhlY1N0YXRlICpleGUKIAogLy8gLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLQogCi1KU05vZGVGaWx0ZXJDb25kaXRpb246OkpTTm9kZUZpbHRlckNvbmRpdGlvbihKU09i
amVjdCAqIF9maWx0ZXIpIDogZmlsdGVyKCBfZmlsdGVyICkKK0pTTm9kZUZpbHRlckNvbmRpdGlv
bjo6SlNOb2RlRmlsdGVyQ29uZGl0aW9uKEpTT2JqZWN0ICogX2ZpbHRlcikKKyAgICA6IGZpbHRl
ciggX2ZpbHRlciApCit7Cit9CisKK3ZvaWQgSlNOb2RlRmlsdGVyQ29uZGl0aW9uOjptYXJrKCkK
IHsKKyAgICBmaWx0ZXItPm1hcmsoKTsKIH0KIAogc2hvcnQgSlNOb2RlRmlsdGVyQ29uZGl0aW9u
OjphY2NlcHROb2RlKE5vZGVJbXBsKiBmaWx0ZXJOb2RlKSBjb25zdApJbmRleDoga2h0bWwvZWNt
YS9ranNfdHJhdmVyc2FsLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0ga2h0bWwvZWNtYS9ranNfdHJhdmVyc2Fs
LmgJKHJldmlzaW9uIDEyMzkyKQorKysga2h0bWwvZWNtYS9ranNfdHJhdmVyc2FsLmgJKHdvcmtp
bmcgY29weSkKQEAgLTM3LDYgKzM3LDcgQEAgbmFtZXNwYWNlIEtKUyB7CiAgIHB1YmxpYzoKICAg
ICBET01Ob2RlSXRlcmF0b3IoRXhlY1N0YXRlICpleGVjLCBET006Ok5vZGVJdGVyYXRvckltcGwg
Km5pKTsKICAgICB+RE9NTm9kZUl0ZXJhdG9yKCk7CisgICAgdmlydHVhbCB2b2lkIG1hcmsoKTsK
ICAgICB2aXJ0dWFsIGJvb2wgZ2V0T3duUHJvcGVydHlTbG90KEV4ZWNTdGF0ZSAqLCBjb25zdCBJ
ZGVudGlmaWVyJiwgUHJvcGVydHlTbG90Jik7CiAgICAgSlNWYWx1ZSAqZ2V0VmFsdWVQcm9wZXJ0
eShFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tlbikgY29uc3Q7CiAgICAgLy8gbm8gcHV0IC0gYWxs
IHJlYWQtb25seQpAQCAtNjQsNiArNjUsNyBAQCBuYW1lc3BhY2UgS0pTIHsKICAgcHVibGljOgog
ICAgIERPTU5vZGVGaWx0ZXIoRXhlY1N0YXRlICpleGVjLCBET006Ok5vZGVGaWx0ZXJJbXBsICpu
Zik7CiAgICAgfkRPTU5vZGVGaWx0ZXIoKTsKKyAgICB2aXJ0dWFsIHZvaWQgbWFyaygpOwogICAg
IC8vIG5vIHB1dCAtIGFsbCByZWFkLW9ubHkKICAgICB2aXJ0dWFsIGNvbnN0IENsYXNzSW5mbyog
Y2xhc3NJbmZvKCkgY29uc3QgeyByZXR1cm4gJmluZm87IH0KICAgICBzdGF0aWMgY29uc3QgQ2xh
c3NJbmZvIGluZm87CkBAIC03Nyw2ICs3OSw3IEBAIG5hbWVzcGFjZSBLSlMgewogICBwdWJsaWM6
CiAgICAgRE9NVHJlZVdhbGtlcihFeGVjU3RhdGUgKmV4ZWMsIERPTTo6VHJlZVdhbGtlckltcGwg
KnR3KTsKICAgICB+RE9NVHJlZVdhbGtlcigpOworICAgIHZpcnR1YWwgdm9pZCBtYXJrKCk7CiAg
ICAgdmlydHVhbCBib29sIGdldE93blByb3BlcnR5U2xvdChFeGVjU3RhdGUgKiwgY29uc3QgSWRl
bnRpZmllciYsIFByb3BlcnR5U2xvdCYgc2xvdCk7CiAgICAgSlNWYWx1ZSAqZ2V0VmFsdWVQcm9w
ZXJ0eShFeGVjU3RhdGUgKmV4ZWMsIGludCB0b2tlbikgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lk
IHB1dChFeGVjU3RhdGUgKmV4ZWMsIGNvbnN0IElkZW50aWZpZXIgJnByb3BlcnR5TmFtZSwgSlNW
YWx1ZSAqdmFsdWUsIGludCBhdHRyID0gTm9uZSk7CkBAIC0xMDIsOCArMTA1LDkgQEAgbmFtZXNw
YWNlIEtKUyB7CiAgICAgSlNOb2RlRmlsdGVyQ29uZGl0aW9uKEpTT2JqZWN0ICogX2ZpbHRlcik7
CiAgICAgdmlydHVhbCB+SlNOb2RlRmlsdGVyQ29uZGl0aW9uKCkge30KICAgICB2aXJ0dWFsIHNo
b3J0IGFjY2VwdE5vZGUoRE9NOjpOb2RlSW1wbCopIGNvbnN0OworICAgIHZpcnR1YWwgdm9pZCBt
YXJrKCk7CiAgIHByb3RlY3RlZDoKLSAgICBQcm90ZWN0ZWRQdHI8SlNPYmplY3Q+IGZpbHRlcjsK
KyAgICBKU09iamVjdCAqZmlsdGVyOwogICB9OwogCiB9IC8vIG5hbWVzcGFjZQpJbmRleDogQ2hh
bmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIENoYW5nZUxvZwkocmV2aXNpb24gMTIzOTIpCisrKyBDaGFu
Z2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw1MiBAQAorMjAwNi0wMS0yNiAgTWFjaWVq
IFN0YWNob3dpYWsgIDxtanNAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIC0gZml4ZWQgYSBjb3VwbGUgaHVuZHJlZCBub2RlIGxlYWtz
IG9uIHRoZSB0cmF2ZXJzYWwgbGF5b3V0IHRlc3RzCisgICAgICAgIGh0dHA6Ly9idWd6aWxsYS5v
cGVuZGFyd2luLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjgyOAorCisgICAgICAgIFRoZXJlIHdlcmUg
dGhyZWUgYmFzaWMgcHJvYmxlbXMgaGVyZSwgYW55IG9uZSBvZiB3aGljaCB3YXMgZW5vdWdoCisg
ICAgICAgIHRvIGNhdXNlIHRoZSBsZWFrLgorICAgICAgICAKKyAgICAgICAgMSkgSWYgdGhlIGZp
bHRlciBmdW5jdGlvbiBmb3IgYSBOb2RlRmlsdGVyLCBOb2RlSXRlcmF0b3Igb3IgVHJlZVdhbGtl
cgorICAgICAgICBoYWQgdGhhdCBvYmplY3QgaW4gc2NvcGUsIGl0IHdvdWxkIGNhdXNlIGEgR0Mg
cmVmZXJlbmNlIGN5Y2xlLiBJIGZpeGVkCisgICAgICAgIHRoaXMgYnkgbWFraW5nIHRoZXNlIEpT
IGZ1bmN0aW9ucyBnZXQgbWFya2VkIGJ5IHRoZSBjb3JyZXNwb25kaW5nIEpTIG9iamVjdCwKKyAg
ICAgICAgYXMgZm9yIFhNTEh0dHBSZXF1ZXN0LgorICAgICAgICAKKyAgICAgICAgMikgVGhlIFRy
YXZlcnNhbEltcGwgY2xhc3MgdGhhdCdzIGEgYmFzZSBjbGFzcyBmb3IgTm9kZUl0ZXJhdG9ySW1w
bCBhbmQgCisgICAgICAgIFRyZWVXYWxrZXJJbXBsIGRpZCBub3QgaGF2ZSBhIHZpcnR1YWwgZGVz
dHJ1Y3RvciwgbGVhZGluZyB0aGUgU2hhcmVkCisgICAgICAgIHRlbXBsYXRlIHRvIGNhbGwgdGhl
IGJhc2UgY2xhc3MgZGVzdHJ1Y3RvciBvbiBkZXJlZi4KKyAgICAgICAgCisgICAgICAgIDMpIHJl
Zi9kZXJlZiBvbiB0aGUgZG9jdW1lbnQgd2VyZSBtaXNtYXRjaGVkLCBJIGZpeGVkIGFsbCB0aGF0
IHNvcnQgb2Ygbm9uc2Vuc2UKKyAgICAgICAgYnkgdXNpbmcgUmVmUHRyIGluc3RlYWQgb2YgbWFu
dWFsIHJlZi9kZXJlZi4KKyAgICAgICAgCisgICAgICAgICoga2h0bWwvZG9tL2RvbTJfdHJhdmVy
c2FsLmg6CisgICAgICAgIChET006Ok5vZGVGaWx0ZXJDb25kaXRpb246Om1hcmspOiBBZGQgbm8t
b3AgdmlydHVhbCBtYXJrIG1ldGhvZCwgSlMgc3ViY2xhc3MKKyAgICAgICAgd2lsbCBkbyBzb21l
dGhpbmcgdXNlZnVsIGhlcmUuCisgICAgICAgICoga2h0bWwvZWNtYS9ranNfdHJhdmVyc2FsLmNw
cDoKKyAgICAgICAgKEtKUzo6RE9NTm9kZUl0ZXJhdG9yOjptYXJrKTogTWFyayB0aGUgRE9NLWxl
dmVsIGZpbHRlci4KKyAgICAgICAgKEtKUzo6RE9NTm9kZUZpbHRlcjo6bWFyayk6IGRpdHRvCisg
ICAgICAgIChLSlM6OkRPTVRyZWVXYWxrZXI6Om1hcmspOiBkaXR0bworICAgICAgICAoS0pTOjpK
U05vZGVGaWx0ZXJDb25kaXRpb246OkpTTm9kZUZpbHRlckNvbmRpdGlvbik6IHJlZm9ybWF0dGVk
LgorICAgICAgICAoS0pTOjpKU05vZGVGaWx0ZXJDb25kaXRpb246Om1hcmspOiBNYXJrIHRoZSBm
aWx0ZXIgZnVuY3Rpb24uCisgICAgICAgICoga2h0bWwvZWNtYS9ranNfdHJhdmVyc2FsLmg6Cisg
ICAgICAgICoga2h0bWwveG1sL2RvbTJfdHJhdmVyc2FsaW1wbC5jcHA6CisgICAgICAgIChET006
Ok5vZGVGaWx0ZXJJbXBsOjpOb2RlRmlsdGVySW1wbCk6IGRpbGlnZW50bHkgYXBwbGllZCBSZWZQ
dHIKKyAgICAgICAgKERPTTo6VHJhdmVyc2FsSW1wbDo6VHJhdmVyc2FsSW1wbCk6IGRpdHRvCisg
ICAgICAgIChET006OlRyYXZlcnNhbEltcGw6On5UcmF2ZXJzYWxJbXBsKTogZGl0dG8KKyAgICAg
ICAgKERPTTo6Tm9kZUl0ZXJhdG9ySW1wbDo6Tm9kZUl0ZXJhdG9ySW1wbCk6IGRpdHRvCisgICAg
ICAgIChET006Ok5vZGVJdGVyYXRvckltcGw6On5Ob2RlSXRlcmF0b3JJbXBsKTogZGl0dG8KKyAg
ICAgICAgKERPTTo6Tm9kZUl0ZXJhdG9ySW1wbDo6c2V0UmVmZXJlbmNlTm9kZSk6IGRpdHRvCisg
ICAgICAgIChET006OlRyZWVXYWxrZXJJbXBsOjpUcmVlV2Fsa2VySW1wbCk6IGRpdHRvCisgICAg
ICAgIChET006OlRyZWVXYWxrZXJJbXBsOjpzZXRDdXJyZW50Tm9kZSk6IGRpdHRvCisgICAgICAg
ICoga2h0bWwveG1sL2RvbTJfdHJhdmVyc2FsaW1wbC5oOgorICAgICAgICAoRE9NOjpOb2RlRmls
dGVySW1wbDo6bWFyayk6IGNhbGwgbWFyaygpIG9uIHRoZSBjb2RpdGlvbgorICAgICAgICAoRE9N
OjpUcmF2ZXJzYWxJbXBsOjpyb290KTogVXNlIC5nZXQoKQorICAgICAgICAoRE9NOjpUcmF2ZXJz
YWxJbXBsOjpmaWx0ZXIpOiBkaXR0bworICAgICAgICAoRE9NOjpOb2RlSXRlcmF0b3JJbXBsOjpy
ZWZlcmVuY2VOb2RlKTogZGl0dG8KKyAgICAgICAgKERPTTo6Tm9kZUl0ZXJhdG9ySW1wbDo6ZG9j
dW1lbnQpOiBkaXR0bworICAgICAgICAoRE9NOjpUcmVlV2Fsa2VySW1wbDo6Y3VycmVudE5vZGUp
OiBkaXR0bworCiAyMDA2LTAxLTI2ICBFcmljIFNlaWRlbCAgPGVzZWlkZWxAYXBwbGUuY29tPgog
CiAgICAgICAgIEZpeGVzIHhjb2RlIHByb2plY3QgdG8gYmV0dGVyIG5vdGljZSB3aGVuIGdlbmVy
YXRlZCBmaWxlcyBjaGFuZ2UuCg==
</data>
<flag name="review"
          id="1412"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>