<?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>180959</bug_id>
          
          <creation_ts>2017-12-18 16:46:47 -0800</creation_ts>
          <short_desc>Handle Fetch should wait for the service worker&apos;s state to become activated</short_desc>
          <delta_ts>2017-12-19 13:23:37 -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>Service Workers</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=180990</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Cris Neckar">cdn</assigned_to>
          <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>jbedard</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1382982</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-12-18 16:46:47 -0800</bug_when>
    <thetext>Handle Fetch should wait for the service worker&apos;s state to become activated when it is currently activating.

Specification:
- https://w3c.github.io/ServiceWorker/#on-fetch-request-algorithm (Step 16)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382994</commentid>
    <comment_count>1</comment_count>
      <attachid>329715</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-12-18 17:24:24 -0800</bug_when>
    <thetext>Created attachment 329715
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383045</commentid>
    <comment_count>2</comment_count>
      <attachid>329732</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-12-18 20:29:50 -0800</bug_when>
    <thetext>Created attachment 329732
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383178</commentid>
    <comment_count>3</comment_count>
      <attachid>329732</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2017-12-19 10:40:42 -0800</bug_when>
    <thetext>Comment on attachment 329732
Patch

So we keep the pending fetch in storage process until service worker is active.
Another option would be to send the fetch to the service worker process and wait there, but this is probably less safe?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383179</commentid>
    <comment_count>4</comment_count>
      <attachid>329732</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-19 10:42:41 -0800</bug_when>
    <thetext>Comment on attachment 329732
Patch

Rejecting attachment 329732 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-01&apos;, &apos;apply-attachment&apos;, &apos;--no-update&apos;, &apos;--non-interactive&apos;, 329732, &apos;--port=mac&apos;]&quot; exit_code: 2 cwd: /Volumes/Data/EWS/WebKit

Last 500 characters of output:
8.
1 out of 1 hunk FAILED -- saving rejects to file Source/WebKit/StorageProcess/ServiceWorker/WebSWServerConnection.cpp.rej
patching file LayoutTests/imported/w3c/ChangeLog
Hunk #1 succeeded at 1 with fuzz 3.
patching file LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-waits-for-activate.https-expected.txt

Failed to run &quot;[u&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply&apos;, &apos;--force&apos;, &apos;--reviewer&apos;, u&apos;Youenn Fablet&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

Full output: http://webkit-queues.webkit.org/results/5754744</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383182</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-12-19 10:45:57 -0800</bug_when>
    <thetext>(In reply to youenn fablet from comment #3)
&gt; Comment on attachment 329732 [details]
&gt; Patch
&gt; 
&gt; So we keep the pending fetch in storage process until service worker is
&gt; active.
&gt; Another option would be to send the fetch to the service worker process and
&gt; wait there, but this is probably less safe?

The spec says to first wait for activated and then call runServiceWorker, which is why I put the check there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383194</commentid>
    <comment_count>6</comment_count>
      <attachid>329777</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-12-19 11:12:28 -0800</bug_when>
    <thetext>Created attachment 329777
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383209</commentid>
    <comment_count>7</comment_count>
      <attachid>329781</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-12-19 11:48:34 -0800</bug_when>
    <thetext>Created attachment 329781
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383218</commentid>
    <comment_count>8</comment_count>
      <attachid>329789</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2017-12-19 12:12:10 -0800</bug_when>
    <thetext>Created attachment 329789
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383250</commentid>
    <comment_count>9</comment_count>
      <attachid>329789</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-19 13:22:25 -0800</bug_when>
    <thetext>Comment on attachment 329789
Patch

Clearing flags on attachment: 329789

Committed r226136: &lt;https://trac.webkit.org/changeset/226136&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383251</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-12-19 13:22:27 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1383253</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-12-19 13:23:37 -0800</bug_when>
    <thetext>&lt;rdar://problem/36139197&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329715</attachid>
            <date>2017-12-18 17:24:24 -0800</date>
            <delta_ts>2017-12-18 20:29:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180959-20171218172423.patch</filename>
            <type>text/plain</type>
            <size>11638</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MDgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTcxNzViZTZjNzJhYTAz
MWViNjdlNmM4MTMyZjJhZTgyNzNkZTg3My4uM2UwYzcxYzA2MzRiMGE1OThmMGU2OWE3MWJkNjY3
ZTg2NmE0YjI1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE3LTEyLTE4ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIEZldGNoIHNob3Vs
ZCB3YWl0IGZvciB0aGUgc2VydmljZSB3b3JrZXIncyBzdGF0ZSB0byBiZWNvbWUgYWN0aXZhdGVk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA5NTkK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBIYW5kbGUg
RmV0Y2ggc2hvdWxkIHdhaXQgZm9yIHRoZSBzZXJ2aWNlIHdvcmtlcidzIHN0YXRlIHRvIGJlY29t
ZSBhY3RpdmF0ZWQgd2hlbgorICAgICAgICBpdCBpcyBjdXJyZW50bHkgYWN0aXZhdGluZy4KKwor
ICAgICAgICBTcGVjaWZpY2F0aW9uOgorICAgICAgICAtIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9T
ZXJ2aWNlV29ya2VyLyNvbi1mZXRjaC1yZXF1ZXN0LWFsZ29yaXRobSAoU3RlcCAxNikKKworICAg
ICAgICBObyBuZXcgdGVzdHMsIHJlYmFzZWxpbmVkIGV4aXN0aW5nIHRlc3QuCisKKyAgICAgICAg
KiB3b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlNXU2VydmVyV29ya2VyOjp+U1dTZXJ2ZXJXb3JrZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6U1dTZXJ2ZXJXb3JrZXI6OndoZW5BY3RpdmF0ZWQpOgorICAgICAgICAoV2ViQ29yZTo6U1dT
ZXJ2ZXJXb3JrZXI6OnNldFN0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyV29ya2Vy
OjpjYWxsV2hlbkFjdGl2YXRlZEhhbmRsZXIpOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9z
ZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaDoKKwogMjAxNy0xMi0xOCAgRGVhbiBKYWNrc29uICA8ZGlu
b0BhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBzb21lIGZ1bmN0aW9ucyBpbiBHcmFwaGljc0Nv
bnRleHRDRyB1c2UgY2FsbF9vbmNlIGZvciBzdGF0aWNzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGFmYmIyZTI4YWFk
MWU3ZTRmMjBlNDZjYWYyMTE4NDg2ZDA4NGQ5OGUuLjMxNzZkNWFkNjBlNjJlNzkxNDExOTFhMzg2
N2ViZDM1MTgyMmI4NzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTctMTItMTggIENo
cmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBIYW5kbGUgRmV0Y2ggc2hv
dWxkIHdhaXQgZm9yIHRoZSBzZXJ2aWNlIHdvcmtlcidzIHN0YXRlIHRvIGJlY29tZSBhY3RpdmF0
ZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDk1
OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEhhbmRs
ZSBGZXRjaCBzaG91bGQgd2FpdCBmb3IgdGhlIHNlcnZpY2Ugd29ya2VyJ3Mgc3RhdGUgdG8gYmVj
b21lIGFjdGl2YXRlZCB3aGVuCisgICAgICAgIGl0IGlzIGN1cnJlbnRseSBhY3RpdmF0aW5nLgor
CisgICAgICAgIFNwZWNpZmljYXRpb246CisgICAgICAgIC0gaHR0cHM6Ly93M2MuZ2l0aHViLmlv
L1NlcnZpY2VXb3JrZXIvI29uLWZldGNoLXJlcXVlc3QtYWxnb3JpdGhtIChTdGVwIDE2KQorCisg
ICAgICAgICogU3RvcmFnZVByb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rp
b24uY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJTV1NlcnZlckNvbm5lY3Rpb246OnN0YXJ0RmV0
Y2gpOgorCiAyMDE3LTEyLTE4ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgog
CiAgICAgICAgIFttYWNPUywgaU9TXSBBZGQgbmV3IG1hY2ggbG9va3VwIHBvcnQgZm9yIENvcmVN
ZWRpYSByZW1vdGUgY29udHJvbApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9z
ZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L3NlcnZlci9TV1NlcnZlci5oCmluZGV4IDQ4MWJkZTZiZGQ2ZGY0NGQyY2U2MjZlM2M2MzJkMjgy
YjMxMDcyODAuLmY3NmNiOTQzNTBjNWEwZTAzYzUyZWE1YTRlN2Y2YWE5NWNjYmE5NmMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmgKQEAg
LTQ2LDYgKzQ2LDcgQEAKICNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KICNp
bmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAjaW5jbHVkZSA8d3RmL1VuaXF1ZVJlZi5oPgorI2lu
Y2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNzQsNiAr
NzUsOCBAQCBwdWJsaWM6CiAgICAgICAgIHVzaW5nIElkZW50aWZpZXIgPSBTV1NlcnZlckNvbm5l
Y3Rpb25JZGVudGlmaWVyOwogICAgICAgICBJZGVudGlmaWVyIGlkZW50aWZpZXIoKSBjb25zdCB7
IHJldHVybiBtX2lkZW50aWZpZXI7IH0KIAorICAgICAgICBhdXRvJiB3ZWFrUHRyRmFjdG9yeSgp
IHsgcmV0dXJuIG1fd2Vha0ZhY3Rvcnk7IH0KKwogICAgICAgICBXRUJDT1JFX0VYUE9SVCB2b2lk
IGRpZFJlc29sdmVSZWdpc3RyYXRpb25Qcm9taXNlKGNvbnN0IFNlcnZpY2VXb3JrZXJSZWdpc3Ry
YXRpb25LZXkmKTsKICAgICAgICAgU1dTZXJ2ZXJSZWdpc3RyYXRpb24qIGRvUmVnaXN0cmF0aW9u
TWF0Y2hpbmcoY29uc3QgU2VjdXJpdHlPcmlnaW5EYXRhJiB0b3BPcmlnaW4sIGNvbnN0IFVSTCYg
Y2xpZW50VVJMKSB7IHJldHVybiBtX3NlcnZlci5kb1JlZ2lzdHJhdGlvbk1hdGNoaW5nKHRvcE9y
aWdpbiwgY2xpZW50VVJMKTsgfQogICAgICAgICB2b2lkIHJlc29sdmVSZWdpc3RyYXRpb25SZWFk
eVJlcXVlc3RzKFNXU2VydmVyUmVnaXN0cmF0aW9uJik7CkBAIC0xMTMsNiArMTE2LDcgQEAgcHVi
bGljOgogCiAgICAgICAgIFNXU2VydmVyJiBtX3NlcnZlcjsKICAgICAgICAgSWRlbnRpZmllciBt
X2lkZW50aWZpZXI7CisgICAgICAgIFdlYWtQdHJGYWN0b3J5PENvbm5lY3Rpb24+IG1fd2Vha0Zh
Y3Rvcnk7CiAgICAgICAgIFZlY3RvcjxSZWdpc3RyYXRpb25SZWFkeVJlcXVlc3Q+IG1fcmVnaXN0
cmF0aW9uUmVhZHlSZXF1ZXN0czsKICAgICB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3BwCmluZGV4IDFhNTc1
YmU2OWMwNzVkMDM3ZGIwNDg3OTUzNDZhMmE3ODc5MmYyNzQuLmY4ZWUyZGVkMjA1NWNmMDdkZTIx
YjFlZTFlZjA0YmQwOGMxYTc1OGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMv
c2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dv
cmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3BwCkBAIC01OCw2ICs1OCw4IEBA
IFNXU2VydmVyV29ya2VyOjpTV1NlcnZlcldvcmtlcihTV1NlcnZlciYgc2VydmVyLCBTV1NlcnZl
clJlZ2lzdHJhdGlvbiYgcmVnaXN0cmF0CiAKIFNXU2VydmVyV29ya2VyOjp+U1dTZXJ2ZXJXb3Jr
ZXIoKQogeworICAgIGNhbGxXaGVuQWN0aXZhdGVkSGFuZGxlcihmYWxzZSk7CisKICAgICBhdXRv
IHRha2VuID0gYWxsV29ya2VycygpLnRha2UoaWRlbnRpZmllcigpKTsKICAgICBBU1NFUlRfVU5V
U0VEKHRha2VuLCB0YWtlbiA9PSB0aGlzKTsKIH0KQEAgLTE1Miw2ICsxNTQsMzAgQEAgdm9pZCBT
V1NlcnZlcldvcmtlcjo6c2V0SGFzUGVuZGluZ0V2ZW50cyhib29sIGhhc1BlbmRpbmdFdmVudHMp
CiAgICAgcmVnaXN0cmF0aW9uLT50cnlBY3RpdmF0ZSgpOwogfQogCit2b2lkIFNXU2VydmVyV29y
a2VyOjp3aGVuQWN0aXZhdGVkKFdURjo6RnVuY3Rpb248dm9pZChib29sKT4mJiBoYW5kbGVyKQor
eworICAgIGlmIChzdGF0ZSgpID09IFNlcnZpY2VXb3JrZXJTdGF0ZTo6QWN0aXZhdGVkKSB7Cisg
ICAgICAgIGhhbmRsZXIodHJ1ZSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgbV93aGVu
QWN0aXZhdGVkSGFuZGxlcnMuYXBwZW5kKFdURk1vdmUoaGFuZGxlcikpOworfQorCit2b2lkIFNX
U2VydmVyV29ya2VyOjpzZXRTdGF0ZShTZXJ2aWNlV29ya2VyU3RhdGUgc3RhdGUpCit7CisgICAg
bV9kYXRhLnN0YXRlID0gc3RhdGU7CisKKyAgICBpZiAoc3RhdGUgPT0gU2VydmljZVdvcmtlclN0
YXRlOjpBY3RpdmF0ZWQgfHwgc3RhdGUgPT0gU2VydmljZVdvcmtlclN0YXRlOjpSZWR1bmRhbnQp
CisgICAgICAgIGNhbGxXaGVuQWN0aXZhdGVkSGFuZGxlcihzdGF0ZSA9PSBTZXJ2aWNlV29ya2Vy
U3RhdGU6OkFjdGl2YXRlZCk7Cit9CisKK3ZvaWQgU1dTZXJ2ZXJXb3JrZXI6OmNhbGxXaGVuQWN0
aXZhdGVkSGFuZGxlcihib29sIHN1Y2Nlc3MpCit7CisgICAgYXV0byB3aGVuQWN0aXZhdGVkSGFu
ZGxlcnMgPSBXVEZNb3ZlKG1fd2hlbkFjdGl2YXRlZEhhbmRsZXJzKTsKKyAgICBmb3IgKGF1dG8m
IGhhbmRsZXIgOiB3aGVuQWN0aXZhdGVkSGFuZGxlcnMpCisgICAgICAgIGhhbmRsZXIoc3VjY2Vz
cyk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShTRVJW
SUNFX1dPUktFUikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9z
ZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9z
ZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaAppbmRleCBlMTI3NWMwMDExZmEzNTMwNDk3MjAyODA5Yzk1
ZDBkYjNkNTA1ZjJjLi4zOGMxMTI5ZDljNWUwNGNiMjdkY2NkMGIzZDNiMGIwNjU3Yzg5MWE2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVy
V29ya2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1Nl
cnZlcldvcmtlci5oCkBAIC01OSw2ICs1OSw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgdGVybWlu
YXRlKCk7CiAKKyAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHdoZW5BY3RpdmF0ZWQoV1RGOjpGdW5j
dGlvbjx2b2lkKGJvb2wpPiYmKTsKKwogICAgIGVudW0gY2xhc3MgU3RhdGUgewogICAgICAgICBS
dW5uaW5nLAogICAgICAgICBUZXJtaW5hdGluZywKQEAgLTc4LDcgKzgwLDcgQEAgcHVibGljOgog
ICAgIFNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbklkZW50aWZpZXIgY29udGV4dENvbm5lY3Rp
b25JZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9jb250ZXh0Q29ubmVjdGlvbklkZW50aWZp
ZXI7IH0KIAogICAgIFNlcnZpY2VXb3JrZXJTdGF0ZSBzdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1f
ZGF0YS5zdGF0ZTsgfQotICAgIHZvaWQgc2V0U3RhdGUoU2VydmljZVdvcmtlclN0YXRlIHN0YXRl
KSB7IG1fZGF0YS5zdGF0ZSA9IHN0YXRlOyB9CisgICAgdm9pZCBzZXRTdGF0ZShTZXJ2aWNlV29y
a2VyU3RhdGUpOwogCiAgICAgYm9vbCBoYXNQZW5kaW5nRXZlbnRzKCkgY29uc3QgeyByZXR1cm4g
bV9oYXNQZW5kaW5nRXZlbnRzOyB9CiAgICAgdm9pZCBzZXRIYXNQZW5kaW5nRXZlbnRzKGJvb2wp
OwpAQCAtMTA0LDYgKzEwNiw4IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgU1dTZXJ2ZXJXb3Jr
ZXIoU1dTZXJ2ZXImLCBTV1NlcnZlclJlZ2lzdHJhdGlvbiYsIFNXU2VydmVyVG9Db250ZXh0Q29u
bmVjdGlvbklkZW50aWZpZXIsIGNvbnN0IFVSTCYsIGNvbnN0IFN0cmluZyYgc2NyaXB0LCBXb3Jr
ZXJUeXBlLCBTZXJ2aWNlV29ya2VySWRlbnRpZmllcik7CiAKKyAgICB2b2lkIGNhbGxXaGVuQWN0
aXZhdGVkSGFuZGxlcihib29sIHN1Y2Nlc3MpOworCiAgICAgU1dTZXJ2ZXImIG1fc2VydmVyOwog
ICAgIFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25LZXkgbV9yZWdpc3RyYXRpb25LZXk7CiAgICAg
U1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uSWRlbnRpZmllciBtX2NvbnRleHRDb25uZWN0aW9u
SWRlbnRpZmllcjsKQEAgLTExMyw2ICsxMTcsNyBAQCBwcml2YXRlOgogICAgIFN0YXRlIG1fc3Rh
dGUgeyBTdGF0ZTo6Tm90UnVubmluZyB9OwogICAgIG11dGFibGUgc3RkOjpvcHRpb25hbDxDbGll
bnRPcmlnaW4+IG1fb3JpZ2luOwogICAgIGJvb2wgbV9pc1NraXBXYWl0aW5nRmxhZ1NldCB7IGZh
bHNlIH07CisgICAgVmVjdG9yPFdURjo6RnVuY3Rpb248dm9pZChib29sKT4+IG1fd2hlbkFjdGl2
YXRlZEhhbmRsZXJzOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29u
bmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L1N0b3JhZ2VQcm9jZXNzL1NlcnZpY2VXb3JrZXIv
V2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcAppbmRleCBiMjRiZjA3OGZjYWJiNDg2MjQwNGYyMzBm
YWNhMjA3ODIxNmYyZDk3Li5iMWE4NzkxZDQyZTViNDNmMmVjMDI4NTM3ZDI4MWQ0MzJmYmRhMDBl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1N0b3JhZ2VQcm9jZXNzL1NlcnZpY2VXb3JrZXIv
V2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1N0b3JhZ2VQcm9j
ZXNzL1NlcnZpY2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcApAQCAtMTI4LDEzICsx
MjgsMzYgQEAgdm9pZCBXZWJTV1NlcnZlckNvbm5lY3Rpb246OnVwZGF0ZVdvcmtlclN0YXRlSW5D
bGllbnQoU2VydmljZVdvcmtlcklkZW50aWZpZXIgd28KIAogdm9pZCBXZWJTV1NlcnZlckNvbm5l
Y3Rpb246OnN0YXJ0RmV0Y2godWludDY0X3QgZmV0Y2hJZGVudGlmaWVyLCBTZXJ2aWNlV29ya2Vy
SWRlbnRpZmllciBzZXJ2aWNlV29ya2VySWRlbnRpZmllciwgUmVzb3VyY2VSZXF1ZXN0JiYgcmVx
dWVzdCwgRmV0Y2hPcHRpb25zJiYgb3B0aW9ucywgSVBDOjpGb3JtRGF0YVJlZmVyZW5jZSYmIGZv
cm1EYXRhKQogewotICAgIC8vIEl0J3MgcG9zc2libGUgdGhpcyBzcGVjaWZpYyB3b3JrZXIgY2Fu
bm90IGJlIHJlLXJ1biAoZS5nLiBpdHMgcmVnaXN0cmF0aW9uIGhhcyBiZWVuIHJlbW92ZWQpCi0g
ICAgc2VydmVyKCkucnVuU2VydmljZVdvcmtlcklmTmVjZXNzYXJ5KHNlcnZpY2VXb3JrZXJJZGVu
dGlmaWVyLCBbY29udGVudENvbm5lY3Rpb24gPSBtX2NvbnRlbnRDb25uZWN0aW9uLmNvcHlSZWYo
KSwgY29ubmVjdGlvbklkZW50aWZpZXIgPSBpZGVudGlmaWVyKCksIGZldGNoSWRlbnRpZmllciwg
c2VydmljZVdvcmtlcklkZW50aWZpZXIgPSBzZXJ2aWNlV29ya2VySWRlbnRpZmllciwgcmVxdWVz
dCA9IFdURk1vdmUocmVxdWVzdCksIG9wdGlvbnMgPSBXVEZNb3ZlKG9wdGlvbnMpLCBmb3JtRGF0
YSA9IFdURk1vdmUoZm9ybURhdGEpXShib29sIHN1Y2Nlc3MsIGF1dG8mIGNvbnRleHRDb25uZWN0
aW9uKSB7Ci0gICAgICAgIGlmIChzdWNjZXNzKQotICAgICAgICAgICAgc2VuZFRvQ29udGV4dFBy
b2Nlc3MoY29udGV4dENvbm5lY3Rpb24sIE1lc3NhZ2VzOjpXZWJTV0NvbnRleHRNYW5hZ2VyQ29u
bmVjdGlvbjo6U3RhcnRGZXRjaCB7IGNvbm5lY3Rpb25JZGVudGlmaWVyLCBmZXRjaElkZW50aWZp
ZXIsIHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCByZXF1ZXN0LCBvcHRpb25zLCBmb3JtRGF0YSB9
KTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgY29udGVudENvbm5lY3Rpb24tPnNlbmQoTWVz
c2FnZXM6OlNlcnZpY2VXb3JrZXJDbGllbnRGZXRjaDo6RGlkTm90SGFuZGxlIHsgfSwgZmV0Y2hJ
ZGVudGlmaWVyKTsKLSAgICB9KTsKKyAgICBhdXRvKiB3b3JrZXIgPSBzZXJ2ZXIoKS53b3JrZXJC
eUlEKHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKTsKKyAgICBpZiAoIXdvcmtlcikgeworICAgICAg
ICBtX2NvbnRlbnRDb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpTZXJ2aWNlV29ya2VyQ2xpZW50
RmV0Y2g6OkRpZE5vdEhhbmRsZSB7IH0sIGZldGNoSWRlbnRpZmllcik7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisKKyAgICBhdXRvIHJ1blNlcnZlcldvcmtlckFuZFN0YXJ0RmV0Y2ggPSBbd2Vh
a1RoaXMgPSBtYWtlV2Vha1B0cih0aGlzKSwgdGhpcywgZmV0Y2hJZGVudGlmaWVyLCBzZXJ2aWNl
V29ya2VySWRlbnRpZmllciwgcmVxdWVzdCA9IFdURk1vdmUocmVxdWVzdCksIG9wdGlvbnMgPSBX
VEZNb3ZlKG9wdGlvbnMpLCBmb3JtRGF0YSA9IFdURk1vdmUoZm9ybURhdGEpXShib29sIHN1Y2Nl
c3MpIG11dGFibGUgeworICAgICAgICBpZiAoIXdlYWtUaGlzKQorICAgICAgICAgICAgcmV0dXJu
OworCisgICAgICAgIGlmICghc3VjY2VzcykgeworICAgICAgICAgICAgbV9jb250ZW50Q29ubmVj
dGlvbi0+c2VuZChNZXNzYWdlczo6U2VydmljZVdvcmtlckNsaWVudEZldGNoOjpEaWROb3RIYW5k
bGUgeyB9LCBmZXRjaElkZW50aWZpZXIpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9
CisKKyAgICAgICAgc2VydmVyKCkucnVuU2VydmljZVdvcmtlcklmTmVjZXNzYXJ5KHNlcnZpY2VX
b3JrZXJJZGVudGlmaWVyLCBbd2Vha1RoaXMsIHRoaXMsIGZldGNoSWRlbnRpZmllciwgc2Vydmlj
ZVdvcmtlcklkZW50aWZpZXIsIHJlcXVlc3QgPSBXVEZNb3ZlKHJlcXVlc3QpLCBvcHRpb25zID0g
V1RGTW92ZShvcHRpb25zKSwgZm9ybURhdGEgPSBXVEZNb3ZlKGZvcm1EYXRhKV0oYm9vbCBzdWNj
ZXNzLCBhdXRvJiBjb250ZXh0Q29ubmVjdGlvbikgeworICAgICAgICAgICAgaWYgKCF3ZWFrVGhp
cykKKyAgICAgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgICAgIGlmIChzdWNjZXNzKQor
ICAgICAgICAgICAgICAgIHNlbmRUb0NvbnRleHRQcm9jZXNzKGNvbnRleHRDb25uZWN0aW9uLCBN
ZXNzYWdlczo6V2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb246OlN0YXJ0RmV0Y2ggeyBpZGVu
dGlmaWVyKCksIGZldGNoSWRlbnRpZmllciwgc2VydmljZVdvcmtlcklkZW50aWZpZXIsIHJlcXVl
c3QsIG9wdGlvbnMsIGZvcm1EYXRhIH0pOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgIG1fY29udGVudENvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6OlNlcnZpY2VXb3JrZXJDbGll
bnRGZXRjaDo6RGlkTm90SGFuZGxlIHsgfSwgZmV0Y2hJZGVudGlmaWVyKTsKKyAgICAgICAgfSk7
CisgICAgfTsKKworICAgIGlmICh3b3JrZXItPnN0YXRlKCkgPT0gU2VydmljZVdvcmtlclN0YXRl
OjpBY3RpdmF0aW5nKQorICAgICAgICB3b3JrZXItPndoZW5BY3RpdmF0ZWQoV1RGTW92ZShydW5T
ZXJ2ZXJXb3JrZXJBbmRTdGFydEZldGNoKSk7CisgICAgZWxzZQorICAgICAgICBydW5TZXJ2ZXJX
b3JrZXJBbmRTdGFydEZldGNoKHRydWUpOwogfQogCiB2b2lkIFdlYlNXU2VydmVyQ29ubmVjdGlv
bjo6cG9zdE1lc3NhZ2VUb1NlcnZpY2VXb3JrZXIoU2VydmljZVdvcmtlcklkZW50aWZpZXIgZGVz
dGluYXRpb25JZGVudGlmaWVyLCBJUEM6OkRhdGFSZWZlcmVuY2UmJiBtZXNzYWdlLCBjb25zdCBT
ZXJ2aWNlV29ya2VyT3JDbGllbnRJZGVudGlmaWVyJiBzb3VyY2VJZGVudGlmaWVyKQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5kZXggN2M3M2VjNDJjM2UxNTFlOTYyNzZlYTJiZjY2ZjY5
ZjgzZjUxNGZiNS4uNTk5ZGQwMmYwZDgzMDk3NmJlNGQ5NWEzYmQzOTg1ODM3NDYxMjJjZSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTctMTItMTgg
IENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBIYW5kbGUgRmV0Y2gg
c2hvdWxkIHdhaXQgZm9yIHRoZSBzZXJ2aWNlIHdvcmtlcidzIHN0YXRlIHRvIGJlY29tZSBhY3Rp
dmF0ZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4
MDk1OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJl
YmFzZWxpbmUgV1BUIHRlc3QgdGhhdCBpcyBub3cgcGFzc2luZy4KKworICAgICAgICAqIHdlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtd2FpdHMt
Zm9yLWFjdGl2YXRlLmh0dHBzLWV4cGVjdGVkLnR4dDoKKwogMjAxNy0xMi0xOCAgQ2hyaXMgRHVt
ZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIEV4dGVuZGFibGVNZXNzYWdlRXZlbnQu
ZGF0YSBzaG91bGQgcmV0dXJuIHRoZSB2YWx1ZSBpdCB3YXMgaW5pdGlhbGl6ZWQgdG8KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXdhaXRzLWZvci1hY3RpdmF0ZS5odHRwcy1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC13YWl0cy1mb3ItYWN0aXZhdGUu
aHR0cHMtZXhwZWN0ZWQudHh0CmluZGV4IDU0NjM1ODEwN2U5MzUwMWI3ZTE3OGVlOTBhN2VhMDIz
M2I4ZjM0Y2EuLmQ3ZmJiYjIzMThiMWY5ODlhNDZhZDY0M2VkZDkyOGViZDVhNWU4M2QgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXdhaXRzLWZvci1hY3RpdmF0ZS5odHRwcy1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtd2FpdHMtZm9yLWFjdGl2
YXRlLmh0dHBzLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDMgQEAKIAotCi1GQUlMIEZldGNoIGV2
ZW50cyBzaG91bGQgd2FpdCBmb3IgdGhlIGFjdGl2YXRlIGV2ZW50IHRvIGNvbXBsZXRlLiBhc3Nl
cnRfdW5yZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogYXNzZXJ0X2VxdWFsczogZnJhbWUg
c2hvdWxkIG5vdCBiZSBsb2FkZWQgZXhwZWN0ZWQgKHVuZGVmaW5lZCkgdW5kZWZpbmVkIGJ1dCBn
b3QgKG9iamVjdCkgRWxlbWVudCBub2RlIDxpZnJhbWUgY2xhc3M9InRlc3QtaWZyYW1lIiBzcmM9
InJlc291cmNlcy9mZXRjaC13YWl0cy1mby4uLiBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKK1BB
U1MgRmV0Y2ggZXZlbnRzIHNob3VsZCB3YWl0IGZvciB0aGUgYWN0aXZhdGUgZXZlbnQgdG8gY29t
cGxldGUuIAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329732</attachid>
            <date>2017-12-18 20:29:50 -0800</date>
            <delta_ts>2017-12-19 11:12:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180959-20171218202949.patch</filename>
            <type>text/plain</type>
            <size>11746</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MDk0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWI3NTcyZTFjYTM3MjFm
MTYyMjNiODQ2ODQzODU2MWZhYTdiMjAzYy4uNzUzNmU1MTMxNzdkZWM1YjEzMmRkNjUwNDczMzk0
MTIwOTI2YjFkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE3LTEyLTE4ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIEZldGNoIHNob3Vs
ZCB3YWl0IGZvciB0aGUgc2VydmljZSB3b3JrZXIncyBzdGF0ZSB0byBiZWNvbWUgYWN0aXZhdGVk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA5NTkK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBIYW5kbGUg
RmV0Y2ggc2hvdWxkIHdhaXQgZm9yIHRoZSBzZXJ2aWNlIHdvcmtlcidzIHN0YXRlIHRvIGJlY29t
ZSBhY3RpdmF0ZWQgd2hlbgorICAgICAgICBpdCBpcyBjdXJyZW50bHkgYWN0aXZhdGluZy4KKwor
ICAgICAgICBTcGVjaWZpY2F0aW9uOgorICAgICAgICAtIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9T
ZXJ2aWNlV29ya2VyLyNvbi1mZXRjaC1yZXF1ZXN0LWFsZ29yaXRobSAoU3RlcCAxNikKKworICAg
ICAgICBObyBuZXcgdGVzdHMsIHJlYmFzZWxpbmVkIGV4aXN0aW5nIHRlc3QuCisKKyAgICAgICAg
KiB3b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlNXU2VydmVyV29ya2VyOjp+U1dTZXJ2ZXJXb3JrZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6U1dTZXJ2ZXJXb3JrZXI6OndoZW5BY3RpdmF0ZWQpOgorICAgICAgICAoV2ViQ29yZTo6U1dT
ZXJ2ZXJXb3JrZXI6OnNldFN0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlNXU2VydmVyV29ya2Vy
OjpjYWxsV2hlbkFjdGl2YXRlZEhhbmRsZXIpOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9z
ZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaDoKKwogMjAxNy0xMi0xOCAgVGltb3RoeSBIYXRjaGVyICA8
dGltb3RoeUBoYXRjaGVyLm5hbWU+CiAKICAgICAgICAgW0dUS11bV1BFXSBDb25kaXRpb25hbGl6
ZSBsaWJUQVNOMSB1c2UgYmVoaW5kIEVOQUJMRV9TVUJUTEVfQ1JZUFRPIGluIHRoZSBDTWFrZSBm
aWxlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZwppbmRleCA2ZThjMTQ0OWFhMTcwNGIyZDg5MGMyYWUwMjA0ZWM2NDI5Yzc3Y2Ez
Li5jNjhjYWI3MmU1ZTZlMzJkYjA3ODEyZGRiZjcyNTIyMzRjNjAzZGVkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE5IEBACisyMDE3LTEyLTE4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+
CisKKyAgICAgICAgSGFuZGxlIEZldGNoIHNob3VsZCB3YWl0IGZvciB0aGUgc2VydmljZSB3b3Jr
ZXIncyBzdGF0ZSB0byBiZWNvbWUgYWN0aXZhdGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA5NTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBIYW5kbGUgRmV0Y2ggc2hvdWxkIHdhaXQgZm9yIHRoZSBz
ZXJ2aWNlIHdvcmtlcidzIHN0YXRlIHRvIGJlY29tZSBhY3RpdmF0ZWQgd2hlbgorICAgICAgICBp
dCBpcyBjdXJyZW50bHkgYWN0aXZhdGluZy4KKworICAgICAgICBTcGVjaWZpY2F0aW9uOgorICAg
ICAgICAtIGh0dHBzOi8vdzNjLmdpdGh1Yi5pby9TZXJ2aWNlV29ya2VyLyNvbi1mZXRjaC1yZXF1
ZXN0LWFsZ29yaXRobSAoU3RlcCAxNikKKworICAgICAgICAqIFN0b3JhZ2VQcm9jZXNzL1NlcnZp
Y2VXb3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
U1dTZXJ2ZXJDb25uZWN0aW9uOjpzdGFydEZldGNoKToKKwogMjAxNy0xMi0xOCAgQnJhZHkgRWlk
c29uICA8YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGFiaWxpdHkgdG8gQVBJIHRl
c3QgU2VydmljZSBXb3JrZXJzIHZpYSBhIGN1c3RvbSBwcm90b2NvbC4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaAppbmRleCA0ODFiZGU2YmRk
NmRmNDRkMmNlNjI2ZTNjNjMyZDI4MmIzMTA3MjgwLi5mNzZjYjk0MzUwYzVhMGUwM2M1MmVhNWE0
ZTdmNmFhOTVjY2JhOTZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZp
Y2Uvc2VydmVyL1NXU2VydmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L3NlcnZlci9TV1NlcnZlci5oCkBAIC00Niw2ICs0Niw3IEBACiAjaW5jbHVkZSA8d3RmL1RocmVh
ZFNhZmVSZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgogI2luY2x1ZGUg
PHd0Zi9VbmlxdWVSZWYuaD4KKyNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKQEAgLTc0LDYgKzc1LDggQEAgcHVibGljOgogICAgICAgICB1c2luZyBJZGVu
dGlmaWVyID0gU1dTZXJ2ZXJDb25uZWN0aW9uSWRlbnRpZmllcjsKICAgICAgICAgSWRlbnRpZmll
ciBpZGVudGlmaWVyKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKKyAgICAgICAg
YXV0byYgd2Vha1B0ckZhY3RvcnkoKSB7IHJldHVybiBtX3dlYWtGYWN0b3J5OyB9CisKICAgICAg
ICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBkaWRSZXNvbHZlUmVnaXN0cmF0aW9uUHJvbWlzZShjb25z
dCBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5Jik7CiAgICAgICAgIFNXU2VydmVyUmVnaXN0
cmF0aW9uKiBkb1JlZ2lzdHJhdGlvbk1hdGNoaW5nKGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYg
dG9wT3JpZ2luLCBjb25zdCBVUkwmIGNsaWVudFVSTCkgeyByZXR1cm4gbV9zZXJ2ZXIuZG9SZWdp
c3RyYXRpb25NYXRjaGluZyh0b3BPcmlnaW4sIGNsaWVudFVSTCk7IH0KICAgICAgICAgdm9pZCBy
ZXNvbHZlUmVnaXN0cmF0aW9uUmVhZHlSZXF1ZXN0cyhTV1NlcnZlclJlZ2lzdHJhdGlvbiYpOwpA
QCAtMTEzLDYgKzExNiw3IEBAIHB1YmxpYzoKIAogICAgICAgICBTV1NlcnZlciYgbV9zZXJ2ZXI7
CiAgICAgICAgIElkZW50aWZpZXIgbV9pZGVudGlmaWVyOworICAgICAgICBXZWFrUHRyRmFjdG9y
eTxDb25uZWN0aW9uPiBtX3dlYWtGYWN0b3J5OwogICAgICAgICBWZWN0b3I8UmVnaXN0cmF0aW9u
UmVhZHlSZXF1ZXN0PiBtX3JlZ2lzdHJhdGlvblJlYWR5UmVxdWVzdHM7CiAgICAgfTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldv
cmtlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVy
V29ya2VyLmNwcAppbmRleCAxYTU3NWJlNjljMDc1ZDAzN2RiMDQ4Nzk1MzQ2YTJhNzg3OTJmMjc0
Li5mOGVlMmRlZDIwNTVjZjA3ZGUyMWIxZWUxZWYwNGJkMDhjMWE3NThkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2Vy
LmNwcApAQCAtNTgsNiArNTgsOCBAQCBTV1NlcnZlcldvcmtlcjo6U1dTZXJ2ZXJXb3JrZXIoU1dT
ZXJ2ZXImIHNlcnZlciwgU1dTZXJ2ZXJSZWdpc3RyYXRpb24mIHJlZ2lzdHJhdAogCiBTV1NlcnZl
cldvcmtlcjo6flNXU2VydmVyV29ya2VyKCkKIHsKKyAgICBjYWxsV2hlbkFjdGl2YXRlZEhhbmRs
ZXIoZmFsc2UpOworCiAgICAgYXV0byB0YWtlbiA9IGFsbFdvcmtlcnMoKS50YWtlKGlkZW50aWZp
ZXIoKSk7CiAgICAgQVNTRVJUX1VOVVNFRCh0YWtlbiwgdGFrZW4gPT0gdGhpcyk7CiB9CkBAIC0x
NTIsNiArMTU0LDMwIEBAIHZvaWQgU1dTZXJ2ZXJXb3JrZXI6OnNldEhhc1BlbmRpbmdFdmVudHMo
Ym9vbCBoYXNQZW5kaW5nRXZlbnRzKQogICAgIHJlZ2lzdHJhdGlvbi0+dHJ5QWN0aXZhdGUoKTsK
IH0KIAordm9pZCBTV1NlcnZlcldvcmtlcjo6d2hlbkFjdGl2YXRlZChXVEY6OkZ1bmN0aW9uPHZv
aWQoYm9vbCk+JiYgaGFuZGxlcikKK3sKKyAgICBpZiAoc3RhdGUoKSA9PSBTZXJ2aWNlV29ya2Vy
U3RhdGU6OkFjdGl2YXRlZCkgeworICAgICAgICBoYW5kbGVyKHRydWUpOworICAgICAgICByZXR1
cm47CisgICAgfQorICAgIG1fd2hlbkFjdGl2YXRlZEhhbmRsZXJzLmFwcGVuZChXVEZNb3ZlKGhh
bmRsZXIpKTsKK30KKwordm9pZCBTV1NlcnZlcldvcmtlcjo6c2V0U3RhdGUoU2VydmljZVdvcmtl
clN0YXRlIHN0YXRlKQoreworICAgIG1fZGF0YS5zdGF0ZSA9IHN0YXRlOworCisgICAgaWYgKHN0
YXRlID09IFNlcnZpY2VXb3JrZXJTdGF0ZTo6QWN0aXZhdGVkIHx8IHN0YXRlID09IFNlcnZpY2VX
b3JrZXJTdGF0ZTo6UmVkdW5kYW50KQorICAgICAgICBjYWxsV2hlbkFjdGl2YXRlZEhhbmRsZXIo
c3RhdGUgPT0gU2VydmljZVdvcmtlclN0YXRlOjpBY3RpdmF0ZWQpOworfQorCit2b2lkIFNXU2Vy
dmVyV29ya2VyOjpjYWxsV2hlbkFjdGl2YXRlZEhhbmRsZXIoYm9vbCBzdWNjZXNzKQoreworICAg
IGF1dG8gd2hlbkFjdGl2YXRlZEhhbmRsZXJzID0gV1RGTW92ZShtX3doZW5BY3RpdmF0ZWRIYW5k
bGVycyk7CisgICAgZm9yIChhdXRvJiBoYW5kbGVyIDogd2hlbkFjdGl2YXRlZEhhbmRsZXJzKQor
ICAgICAgICBoYW5kbGVyKHN1Y2Nlc3MpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAK
ICNlbmRpZiAvLyBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmggYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmgKaW5kZXggZTEyNzVj
MDAxMWZhMzUzMDQ5NzIwMjgwOWM5NWQwZGIzZDUwNWYyYy4uMzhjMTEyOWQ5YzVlMDRjYjI3ZGNj
ZDBiM2QzYjBiMDY1N2M4OTFhNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9z
ZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaApAQCAtNTksNiArNTksOCBAQCBwdWJs
aWM6CiAKICAgICB2b2lkIHRlcm1pbmF0ZSgpOwogCisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB3
aGVuQWN0aXZhdGVkKFdURjo6RnVuY3Rpb248dm9pZChib29sKT4mJik7CisKICAgICBlbnVtIGNs
YXNzIFN0YXRlIHsKICAgICAgICAgUnVubmluZywKICAgICAgICAgVGVybWluYXRpbmcsCkBAIC03
OCw3ICs4MCw3IEBAIHB1YmxpYzoKICAgICBTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb25JZGVu
dGlmaWVyIGNvbnRleHRDb25uZWN0aW9uSWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fY29u
dGV4dENvbm5lY3Rpb25JZGVudGlmaWVyOyB9CiAKICAgICBTZXJ2aWNlV29ya2VyU3RhdGUgc3Rh
dGUoKSBjb25zdCB7IHJldHVybiBtX2RhdGEuc3RhdGU7IH0KLSAgICB2b2lkIHNldFN0YXRlKFNl
cnZpY2VXb3JrZXJTdGF0ZSBzdGF0ZSkgeyBtX2RhdGEuc3RhdGUgPSBzdGF0ZTsgfQorICAgIHZv
aWQgc2V0U3RhdGUoU2VydmljZVdvcmtlclN0YXRlKTsKIAogICAgIGJvb2wgaGFzUGVuZGluZ0V2
ZW50cygpIGNvbnN0IHsgcmV0dXJuIG1faGFzUGVuZGluZ0V2ZW50czsgfQogICAgIHZvaWQgc2V0
SGFzUGVuZGluZ0V2ZW50cyhib29sKTsKQEAgLTEwNCw2ICsxMDYsOCBAQCBwdWJsaWM6CiBwcml2
YXRlOgogICAgIFNXU2VydmVyV29ya2VyKFNXU2VydmVyJiwgU1dTZXJ2ZXJSZWdpc3RyYXRpb24m
LCBTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb25JZGVudGlmaWVyLCBjb25zdCBVUkwmLCBjb25z
dCBTdHJpbmcmIHNjcmlwdCwgV29ya2VyVHlwZSwgU2VydmljZVdvcmtlcklkZW50aWZpZXIpOwog
CisgICAgdm9pZCBjYWxsV2hlbkFjdGl2YXRlZEhhbmRsZXIoYm9vbCBzdWNjZXNzKTsKKwogICAg
IFNXU2VydmVyJiBtX3NlcnZlcjsKICAgICBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5IG1f
cmVnaXN0cmF0aW9uS2V5OwogICAgIFNXU2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbklkZW50aWZp
ZXIgbV9jb250ZXh0Q29ubmVjdGlvbklkZW50aWZpZXI7CkBAIC0xMTMsNiArMTE3LDcgQEAgcHJp
dmF0ZToKICAgICBTdGF0ZSBtX3N0YXRlIHsgU3RhdGU6Ok5vdFJ1bm5pbmcgfTsKICAgICBtdXRh
YmxlIHN0ZDo6b3B0aW9uYWw8Q2xpZW50T3JpZ2luPiBtX29yaWdpbjsKICAgICBib29sIG1faXNT
a2lwV2FpdGluZ0ZsYWdTZXQgeyBmYWxzZSB9OworICAgIFZlY3RvcjxXVEY6OkZ1bmN0aW9uPHZv
aWQoYm9vbCk+PiBtX3doZW5BY3RpdmF0ZWRIYW5kbGVyczsKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU3RvcmFnZVByb2Nlc3MvU2Vydmlj
ZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9TdG9yYWdl
UHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAKaW5kZXggYjI0
YmYwNzhmY2FiYjQ4NjI0MDRmMjMwZmFjYTIwNzgyMTZmMmQ5Ny4uNjFmNzhkNGIxZDAwMGIyN2Zk
ZDgyNmJjMTYwNjc5NmYxMTUxMjhjMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TdG9yYWdl
UHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291
cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVj
dGlvbi5jcHAKQEAgLTEyOCwxMyArMTI4LDM2IEBAIHZvaWQgV2ViU1dTZXJ2ZXJDb25uZWN0aW9u
Ojp1cGRhdGVXb3JrZXJTdGF0ZUluQ2xpZW50KFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIHdvCiAK
IHZvaWQgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjpzdGFydEZldGNoKHVpbnQ2NF90IGZldGNoSWRl
bnRpZmllciwgU2VydmljZVdvcmtlcklkZW50aWZpZXIgc2VydmljZVdvcmtlcklkZW50aWZpZXIs
IFJlc291cmNlUmVxdWVzdCYmIHJlcXVlc3QsIEZldGNoT3B0aW9ucyYmIG9wdGlvbnMsIElQQzo6
Rm9ybURhdGFSZWZlcmVuY2UmJiBmb3JtRGF0YSkKIHsKLSAgICAvLyBJdCdzIHBvc3NpYmxlIHRo
aXMgc3BlY2lmaWMgd29ya2VyIGNhbm5vdCBiZSByZS1ydW4gKGUuZy4gaXRzIHJlZ2lzdHJhdGlv
biBoYXMgYmVlbiByZW1vdmVkKQotICAgIHNlcnZlcigpLnJ1blNlcnZpY2VXb3JrZXJJZk5lY2Vz
c2FyeShzZXJ2aWNlV29ya2VySWRlbnRpZmllciwgW2NvbnRlbnRDb25uZWN0aW9uID0gbV9jb250
ZW50Q29ubmVjdGlvbi5jb3B5UmVmKCksIGNvbm5lY3Rpb25JZGVudGlmaWVyID0gaWRlbnRpZmll
cigpLCBmZXRjaElkZW50aWZpZXIsIHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyID0gc2VydmljZVdv
cmtlcklkZW50aWZpZXIsIHJlcXVlc3QgPSBXVEZNb3ZlKHJlcXVlc3QpLCBvcHRpb25zID0gV1RG
TW92ZShvcHRpb25zKSwgZm9ybURhdGEgPSBXVEZNb3ZlKGZvcm1EYXRhKV0oYm9vbCBzdWNjZXNz
LCBhdXRvJiBjb250ZXh0Q29ubmVjdGlvbikgewotICAgICAgICBpZiAoc3VjY2VzcykKLSAgICAg
ICAgICAgIHNlbmRUb0NvbnRleHRQcm9jZXNzKGNvbnRleHRDb25uZWN0aW9uLCBNZXNzYWdlczo6
V2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb246OlN0YXJ0RmV0Y2ggeyBjb25uZWN0aW9uSWRl
bnRpZmllciwgZmV0Y2hJZGVudGlmaWVyLCBzZXJ2aWNlV29ya2VySWRlbnRpZmllciwgcmVxdWVz
dCwgb3B0aW9ucywgZm9ybURhdGEgfSk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIGNvbnRl
bnRDb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpTZXJ2aWNlV29ya2VyQ2xpZW50RmV0Y2g6OkRp
ZE5vdEhhbmRsZSB7IH0sIGZldGNoSWRlbnRpZmllcik7Ci0gICAgfSk7CisgICAgYXV0byogd29y
a2VyID0gc2VydmVyKCkud29ya2VyQnlJRChzZXJ2aWNlV29ya2VySWRlbnRpZmllcik7CisgICAg
aWYgKCF3b3JrZXIpIHsKKyAgICAgICAgbV9jb250ZW50Q29ubmVjdGlvbi0+c2VuZChNZXNzYWdl
czo6U2VydmljZVdvcmtlckNsaWVudEZldGNoOjpEaWROb3RIYW5kbGUgeyB9LCBmZXRjaElkZW50
aWZpZXIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgYXV0byBydW5TZXJ2ZXJXb3Jr
ZXJBbmRTdGFydEZldGNoID0gW3dlYWtUaGlzID0gbWFrZVdlYWtQdHIodGhpcyksIHRoaXMsIGZl
dGNoSWRlbnRpZmllciwgc2VydmljZVdvcmtlcklkZW50aWZpZXIsIHJlcXVlc3QgPSBXVEZNb3Zl
KHJlcXVlc3QpLCBvcHRpb25zID0gV1RGTW92ZShvcHRpb25zKSwgZm9ybURhdGEgPSBXVEZNb3Zl
KGZvcm1EYXRhKV0oYm9vbCBzdWNjZXNzKSBtdXRhYmxlIHsKKyAgICAgICAgaWYgKCF3ZWFrVGhp
cykKKyAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICBpZiAoIXN1Y2Nlc3MpIHsKKyAgICAg
ICAgICAgIG1fY29udGVudENvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6OlNlcnZpY2VXb3JrZXJD
bGllbnRGZXRjaDo6RGlkTm90SGFuZGxlIHsgfSwgZmV0Y2hJZGVudGlmaWVyKTsKKyAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIHNlcnZlcigpLnJ1blNlcnZpY2VXb3Jr
ZXJJZk5lY2Vzc2FyeShzZXJ2aWNlV29ya2VySWRlbnRpZmllciwgW3dlYWtUaGlzID0gV1RGTW92
ZSh3ZWFrVGhpcyksIHRoaXMsIGZldGNoSWRlbnRpZmllciwgc2VydmljZVdvcmtlcklkZW50aWZp
ZXIsIHJlcXVlc3QgPSBXVEZNb3ZlKHJlcXVlc3QpLCBvcHRpb25zID0gV1RGTW92ZShvcHRpb25z
KSwgZm9ybURhdGEgPSBXVEZNb3ZlKGZvcm1EYXRhKV0oYm9vbCBzdWNjZXNzLCBhdXRvJiBjb250
ZXh0Q29ubmVjdGlvbikgeworICAgICAgICAgICAgaWYgKCF3ZWFrVGhpcykKKyAgICAgICAgICAg
ICAgICByZXR1cm47CisKKyAgICAgICAgICAgIGlmIChzdWNjZXNzKQorICAgICAgICAgICAgICAg
IHNlbmRUb0NvbnRleHRQcm9jZXNzKGNvbnRleHRDb25uZWN0aW9uLCBNZXNzYWdlczo6V2ViU1dD
b250ZXh0TWFuYWdlckNvbm5lY3Rpb246OlN0YXJ0RmV0Y2ggeyBpZGVudGlmaWVyKCksIGZldGNo
SWRlbnRpZmllciwgc2VydmljZVdvcmtlcklkZW50aWZpZXIsIHJlcXVlc3QsIG9wdGlvbnMsIGZv
cm1EYXRhIH0pOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIG1fY29udGVudENv
bm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6OlNlcnZpY2VXb3JrZXJDbGllbnRGZXRjaDo6RGlkTm90
SGFuZGxlIHsgfSwgZmV0Y2hJZGVudGlmaWVyKTsKKyAgICAgICAgfSk7CisgICAgfTsKKworICAg
IGlmICh3b3JrZXItPnN0YXRlKCkgPT0gU2VydmljZVdvcmtlclN0YXRlOjpBY3RpdmF0aW5nKQor
ICAgICAgICB3b3JrZXItPndoZW5BY3RpdmF0ZWQoV1RGTW92ZShydW5TZXJ2ZXJXb3JrZXJBbmRT
dGFydEZldGNoKSk7CisgICAgZWxzZQorICAgICAgICBydW5TZXJ2ZXJXb3JrZXJBbmRTdGFydEZl
dGNoKHRydWUpOwogfQogCiB2b2lkIFdlYlNXU2VydmVyQ29ubmVjdGlvbjo6cG9zdE1lc3NhZ2VU
b1NlcnZpY2VXb3JrZXIoU2VydmljZVdvcmtlcklkZW50aWZpZXIgZGVzdGluYXRpb25JZGVudGlm
aWVyLCBJUEM6OkRhdGFSZWZlcmVuY2UmJiBtZXNzYWdlLCBjb25zdCBTZXJ2aWNlV29ya2VyT3JD
bGllbnRJZGVudGlmaWVyJiBzb3VyY2VJZGVudGlmaWVyKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKaW5kZXggNjVkYWVkMDNkY2RmMmRhMDRmOGY2MmFmOGI3YTViOGY5MTRkNzYxMC4uZWFi
ZDlmMzZlMTA1OTYwMDllYjRkNTk2OGY0YTc1ODRmYzk1ZDY1YyAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93
M2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTctMTItMTggIENocmlzIER1bWV6ICA8
Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBIYW5kbGUgRmV0Y2ggc2hvdWxkIHdhaXQgZm9y
IHRoZSBzZXJ2aWNlIHdvcmtlcidzIHN0YXRlIHRvIGJlY29tZSBhY3RpdmF0ZWQKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDk1OQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlYmFzZWxpbmUgV1BUIHRl
c3QgdGhhdCBpcyBub3cgcGFzc2luZy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtd2FpdHMtZm9yLWFjdGl2YXRlLmh0
dHBzLWV4cGVjdGVkLnR4dDoKKwogMjAxNy0xMi0xOCAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBw
bGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJlYmFzZWxpbmUgaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0cmF0
aW9uLXNlY3VyaXR5LWVycm9yLmh0dHBzLmh0bWwgYWZ0ZXIgcjIyNjA4Ny4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXdhaXRzLWZvci1hY3RpdmF0ZS5odHRwcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC13YWl0cy1mb3ItYWN0aXZhdGUuaHR0cHMt
ZXhwZWN0ZWQudHh0CmluZGV4IDU0NjM1ODEwN2U5MzUwMWI3ZTE3OGVlOTBhN2VhMDIzM2I4ZjM0
Y2EuLmQ3ZmJiYjIzMThiMWY5ODlhNDZhZDY0M2VkZDkyOGViZDVhNWU4M2QgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3Jr
ZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXdhaXRzLWZvci1hY3RpdmF0ZS5odHRwcy1leHBlY3Rl
ZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtd2FpdHMtZm9yLWFjdGl2YXRlLmh0
dHBzLWV4cGVjdGVkLnR4dApAQCAtMSw0ICsxLDMgQEAKIAotCi1GQUlMIEZldGNoIGV2ZW50cyBz
aG91bGQgd2FpdCBmb3IgdGhlIGFjdGl2YXRlIGV2ZW50IHRvIGNvbXBsZXRlLiBhc3NlcnRfdW5y
ZWFjaGVkOiB1bmV4cGVjdGVkIHJlamVjdGlvbjogYXNzZXJ0X2VxdWFsczogZnJhbWUgc2hvdWxk
IG5vdCBiZSBsb2FkZWQgZXhwZWN0ZWQgKHVuZGVmaW5lZCkgdW5kZWZpbmVkIGJ1dCBnb3QgKG9i
amVjdCkgRWxlbWVudCBub2RlIDxpZnJhbWUgY2xhc3M9InRlc3QtaWZyYW1lIiBzcmM9InJlc291
cmNlcy9mZXRjaC13YWl0cy1mby4uLiBSZWFjaGVkIHVucmVhY2hhYmxlIGNvZGUKK1BBU1MgRmV0
Y2ggZXZlbnRzIHNob3VsZCB3YWl0IGZvciB0aGUgYWN0aXZhdGUgZXZlbnQgdG8gY29tcGxldGUu
IAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329777</attachid>
            <date>2017-12-19 11:12:28 -0800</date>
            <delta_ts>2017-12-19 11:48:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180959-20171219111228.patch</filename>
            <type>text/plain</type>
            <size>11958</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MTI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGQzODgwZjlkYWVjOThk
YjE4NDM0MmJlY2ZjMjUxODkwN2IwNzdjYy4uMTFiNTEwZGYyNTFkNjAzMDIyOTk5MDgxNzNmNWQ2
NzFmNmZmOTkyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE3LTEyLTE4ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIEZldGNoIHNob3Vs
ZCB3YWl0IGZvciB0aGUgc2VydmljZSB3b3JrZXIncyBzdGF0ZSB0byBiZWNvbWUgYWN0aXZhdGVk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA5NTkK
KworICAgICAgICBSZXZpZXdlZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAgIEhhbmRsZSBG
ZXRjaCBzaG91bGQgd2FpdCBmb3IgdGhlIHNlcnZpY2Ugd29ya2VyJ3Mgc3RhdGUgdG8gYmVjb21l
IGFjdGl2YXRlZCB3aGVuCisgICAgICAgIGl0IGlzIGN1cnJlbnRseSBhY3RpdmF0aW5nLgorCisg
ICAgICAgIFNwZWNpZmljYXRpb246CisgICAgICAgIC0gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL1Nl
cnZpY2VXb3JrZXIvI29uLWZldGNoLXJlcXVlc3QtYWxnb3JpdGhtIChTdGVwIDE2KQorCisgICAg
ICAgIE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdC4KKworICAgICAgICAq
IHdvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U1dTZXJ2ZXJXb3JrZXI6On5TV1NlcnZlcldvcmtlcik6CisgICAgICAgIChXZWJDb3Jl
OjpTV1NlcnZlcldvcmtlcjo6d2hlbkFjdGl2YXRlZCk6CisgICAgICAgIChXZWJDb3JlOjpTV1Nl
cnZlcldvcmtlcjo6c2V0U3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXI6
OmNhbGxXaGVuQWN0aXZhdGVkSGFuZGxlcik6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3Nl
cnZlci9TV1NlcnZlcldvcmtlci5oOgorCiAyMDE3LTEyLTE5ICBaYWxhbiBCdWp0YXMgIDx6YWxh
bkBhcHBsZS5jb20+CiAKICAgICAgICAgW1JlbmRlclRyZWVCdWlsZGVyXSBNb3ZlIGZpbmRpbmct
dGhlLXBhcmVudC9jcmVhdGluZy13cmFwcGVyIGxvZ2ljIGZyb20gUmVuZGVyVGFibGVSb3c6OmFk
ZENoaWxkIHRvIFJlbmRlclRyZWVCdWlsZGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDcyYWNiNzFkZTY5OTU5ZjNl
ODllMDUwYWViNWIzZDE2YTQyODkzMjMuLmU3YTBhMGQ5NGM3YWI1NDIyNjE0NjgwODkzM2JhM2Q4
YTEyMGU2MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTctMTItMTggIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBIYW5kbGUgRmV0Y2ggc2hvdWxkIHdh
aXQgZm9yIHRoZSBzZXJ2aWNlIHdvcmtlcidzIHN0YXRlIHRvIGJlY29tZSBhY3RpdmF0ZWQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDk1OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IFlvdWVubiBGYWJsZXQuCisKKyAgICAgICAgSGFuZGxlIEZldGNo
IHNob3VsZCB3YWl0IGZvciB0aGUgc2VydmljZSB3b3JrZXIncyBzdGF0ZSB0byBiZWNvbWUgYWN0
aXZhdGVkIHdoZW4KKyAgICAgICAgaXQgaXMgY3VycmVudGx5IGFjdGl2YXRpbmcuCisKKyAgICAg
ICAgU3BlY2lmaWNhdGlvbjoKKyAgICAgICAgLSBodHRwczovL3czYy5naXRodWIuaW8vU2Vydmlj
ZVdvcmtlci8jb24tZmV0Y2gtcmVxdWVzdC1hbGdvcml0aG0gKFN0ZXAgMTYpCisKKyAgICAgICAg
KiBTdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHA6
CisgICAgICAgIChXZWJLaXQ6OldlYlNXU2VydmVyQ29ubmVjdGlvbjo6c3RhcnRGZXRjaCk6CisK
IDIwMTctMTItMTkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAg
IFNlcnZpY2UgV29ya2VyIHNob3VsZCBub3QgY2xlYW4gSFRUUCBoZWFkZXJzIGFkZGVkIGJ5IHRo
ZSBhcHBsaWNhdGlvbiBvciBieSBmZXRjaCBzcGVjaWZpY2F0aW9uIGJlZm9yZSBzZXJ2aWNlIHdv
cmtlciBpbnRlcmNlcHRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9z
ZXJ2ZXIvU1dTZXJ2ZXIuaAppbmRleCA0ODFiZGU2YmRkNmRmNDRkMmNlNjI2ZTNjNjMyZDI4MmIz
MTA3MjgwLi5mNzZjYjk0MzUwYzVhMGUwM2M1MmVhNWE0ZTdmNmFhOTVjY2JhOTZjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oCkBAIC00
Niw2ICs0Niw3IEBACiAjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CiAjaW5j
bHVkZSA8d3RmL1RocmVhZGluZy5oPgogI2luY2x1ZGUgPHd0Zi9VbmlxdWVSZWYuaD4KKyNpbmNs
dWRlIDx3dGYvV2Vha1B0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTc0LDYgKzc1
LDggQEAgcHVibGljOgogICAgICAgICB1c2luZyBJZGVudGlmaWVyID0gU1dTZXJ2ZXJDb25uZWN0
aW9uSWRlbnRpZmllcjsKICAgICAgICAgSWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyBy
ZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKKyAgICAgICAgYXV0byYgd2Vha1B0ckZhY3RvcnkoKSB7
IHJldHVybiBtX3dlYWtGYWN0b3J5OyB9CisKICAgICAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBk
aWRSZXNvbHZlUmVnaXN0cmF0aW9uUHJvbWlzZShjb25zdCBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0
aW9uS2V5Jik7CiAgICAgICAgIFNXU2VydmVyUmVnaXN0cmF0aW9uKiBkb1JlZ2lzdHJhdGlvbk1h
dGNoaW5nKGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNs
aWVudFVSTCkgeyByZXR1cm4gbV9zZXJ2ZXIuZG9SZWdpc3RyYXRpb25NYXRjaGluZyh0b3BPcmln
aW4sIGNsaWVudFVSTCk7IH0KICAgICAgICAgdm9pZCByZXNvbHZlUmVnaXN0cmF0aW9uUmVhZHlS
ZXF1ZXN0cyhTV1NlcnZlclJlZ2lzdHJhdGlvbiYpOwpAQCAtMTEzLDYgKzExNiw3IEBAIHB1Ymxp
YzoKIAogICAgICAgICBTV1NlcnZlciYgbV9zZXJ2ZXI7CiAgICAgICAgIElkZW50aWZpZXIgbV9p
ZGVudGlmaWVyOworICAgICAgICBXZWFrUHRyRmFjdG9yeTxDb25uZWN0aW9uPiBtX3dlYWtGYWN0
b3J5OwogICAgICAgICBWZWN0b3I8UmVnaXN0cmF0aW9uUmVhZHlSZXF1ZXN0PiBtX3JlZ2lzdHJh
dGlvblJlYWR5UmVxdWVzdHM7CiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAppbmRleCAxYTU3NWJl
NjljMDc1ZDAzN2RiMDQ4Nzk1MzQ2YTJhNzg3OTJmMjc0Li5mOGVlMmRlZDIwNTVjZjA3ZGUyMWIx
ZWUxZWYwNGJkMDhjMWE3NThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcApAQCAtNTgsNiArNTgsOCBAQCBT
V1NlcnZlcldvcmtlcjo6U1dTZXJ2ZXJXb3JrZXIoU1dTZXJ2ZXImIHNlcnZlciwgU1dTZXJ2ZXJS
ZWdpc3RyYXRpb24mIHJlZ2lzdHJhdAogCiBTV1NlcnZlcldvcmtlcjo6flNXU2VydmVyV29ya2Vy
KCkKIHsKKyAgICBjYWxsV2hlbkFjdGl2YXRlZEhhbmRsZXIoZmFsc2UpOworCiAgICAgYXV0byB0
YWtlbiA9IGFsbFdvcmtlcnMoKS50YWtlKGlkZW50aWZpZXIoKSk7CiAgICAgQVNTRVJUX1VOVVNF
RCh0YWtlbiwgdGFrZW4gPT0gdGhpcyk7CiB9CkBAIC0xNTIsNiArMTU0LDMwIEBAIHZvaWQgU1dT
ZXJ2ZXJXb3JrZXI6OnNldEhhc1BlbmRpbmdFdmVudHMoYm9vbCBoYXNQZW5kaW5nRXZlbnRzKQog
ICAgIHJlZ2lzdHJhdGlvbi0+dHJ5QWN0aXZhdGUoKTsKIH0KIAordm9pZCBTV1NlcnZlcldvcmtl
cjo6d2hlbkFjdGl2YXRlZChXVEY6OkZ1bmN0aW9uPHZvaWQoYm9vbCk+JiYgaGFuZGxlcikKK3sK
KyAgICBpZiAoc3RhdGUoKSA9PSBTZXJ2aWNlV29ya2VyU3RhdGU6OkFjdGl2YXRlZCkgeworICAg
ICAgICBoYW5kbGVyKHRydWUpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIG1fd2hlbkFj
dGl2YXRlZEhhbmRsZXJzLmFwcGVuZChXVEZNb3ZlKGhhbmRsZXIpKTsKK30KKwordm9pZCBTV1Nl
cnZlcldvcmtlcjo6c2V0U3RhdGUoU2VydmljZVdvcmtlclN0YXRlIHN0YXRlKQoreworICAgIG1f
ZGF0YS5zdGF0ZSA9IHN0YXRlOworCisgICAgaWYgKHN0YXRlID09IFNlcnZpY2VXb3JrZXJTdGF0
ZTo6QWN0aXZhdGVkIHx8IHN0YXRlID09IFNlcnZpY2VXb3JrZXJTdGF0ZTo6UmVkdW5kYW50KQor
ICAgICAgICBjYWxsV2hlbkFjdGl2YXRlZEhhbmRsZXIoc3RhdGUgPT0gU2VydmljZVdvcmtlclN0
YXRlOjpBY3RpdmF0ZWQpOworfQorCit2b2lkIFNXU2VydmVyV29ya2VyOjpjYWxsV2hlbkFjdGl2
YXRlZEhhbmRsZXIoYm9vbCBzdWNjZXNzKQoreworICAgIGF1dG8gd2hlbkFjdGl2YXRlZEhhbmRs
ZXJzID0gV1RGTW92ZShtX3doZW5BY3RpdmF0ZWRIYW5kbGVycyk7CisgICAgZm9yIChhdXRvJiBo
YW5kbGVyIDogd2hlbkFjdGl2YXRlZEhhbmRsZXJzKQorICAgICAgICBoYW5kbGVyKHN1Y2Nlc3Mp
OworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoU0VSVklD
RV9XT1JLRVIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2Vy
dmVyL1NXU2VydmVyV29ya2VyLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2Vy
dmVyL1NXU2VydmVyV29ya2VyLmgKaW5kZXggZTEyNzVjMDAxMWZhMzUzMDQ5NzIwMjgwOWM5NWQw
ZGIzZDUwNWYyYy4uMzhjMTEyOWQ5YzVlMDRjYjI3ZGNjZDBiM2QzYjBiMDY1N2M4OTFhNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldv
cmtlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2
ZXJXb3JrZXIuaApAQCAtNTksNiArNTksOCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHRlcm1pbmF0
ZSgpOwogCisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB3aGVuQWN0aXZhdGVkKFdURjo6RnVuY3Rp
b248dm9pZChib29sKT4mJik7CisKICAgICBlbnVtIGNsYXNzIFN0YXRlIHsKICAgICAgICAgUnVu
bmluZywKICAgICAgICAgVGVybWluYXRpbmcsCkBAIC03OCw3ICs4MCw3IEBAIHB1YmxpYzoKICAg
ICBTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb25JZGVudGlmaWVyIGNvbnRleHRDb25uZWN0aW9u
SWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fY29udGV4dENvbm5lY3Rpb25JZGVudGlmaWVy
OyB9CiAKICAgICBTZXJ2aWNlV29ya2VyU3RhdGUgc3RhdGUoKSBjb25zdCB7IHJldHVybiBtX2Rh
dGEuc3RhdGU7IH0KLSAgICB2b2lkIHNldFN0YXRlKFNlcnZpY2VXb3JrZXJTdGF0ZSBzdGF0ZSkg
eyBtX2RhdGEuc3RhdGUgPSBzdGF0ZTsgfQorICAgIHZvaWQgc2V0U3RhdGUoU2VydmljZVdvcmtl
clN0YXRlKTsKIAogICAgIGJvb2wgaGFzUGVuZGluZ0V2ZW50cygpIGNvbnN0IHsgcmV0dXJuIG1f
aGFzUGVuZGluZ0V2ZW50czsgfQogICAgIHZvaWQgc2V0SGFzUGVuZGluZ0V2ZW50cyhib29sKTsK
QEAgLTEwNCw2ICsxMDYsOCBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIFNXU2VydmVyV29ya2Vy
KFNXU2VydmVyJiwgU1dTZXJ2ZXJSZWdpc3RyYXRpb24mLCBTV1NlcnZlclRvQ29udGV4dENvbm5l
Y3Rpb25JZGVudGlmaWVyLCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIHNjcmlwdCwgV29ya2Vy
VHlwZSwgU2VydmljZVdvcmtlcklkZW50aWZpZXIpOwogCisgICAgdm9pZCBjYWxsV2hlbkFjdGl2
YXRlZEhhbmRsZXIoYm9vbCBzdWNjZXNzKTsKKwogICAgIFNXU2VydmVyJiBtX3NlcnZlcjsKICAg
ICBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5IG1fcmVnaXN0cmF0aW9uS2V5OwogICAgIFNX
U2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbklkZW50aWZpZXIgbV9jb250ZXh0Q29ubmVjdGlvbklk
ZW50aWZpZXI7CkBAIC0xMTMsNiArMTE3LDcgQEAgcHJpdmF0ZToKICAgICBTdGF0ZSBtX3N0YXRl
IHsgU3RhdGU6Ok5vdFJ1bm5pbmcgfTsKICAgICBtdXRhYmxlIHN0ZDo6b3B0aW9uYWw8Q2xpZW50
T3JpZ2luPiBtX29yaWdpbjsKICAgICBib29sIG1faXNTa2lwV2FpdGluZ0ZsYWdTZXQgeyBmYWxz
ZSB9OworICAgIFZlY3RvcjxXVEY6OkZ1bmN0aW9uPHZvaWQoYm9vbCk+PiBtX3doZW5BY3RpdmF0
ZWRIYW5kbGVyczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvU3RvcmFnZVByb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5l
Y3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dl
YlNXU2VydmVyQ29ubmVjdGlvbi5jcHAKaW5kZXggNmRkZTcyZDQwZWI0ZmQ0NzUxZDU2MWM3ZTg3
NjQ4YWYzOWFkNjZjMS4uNDliNzYzOTNlYTY5ZjFiYjQ2ZGQzOGM2NmRkZjhiYTQ2NmM1OGQyZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dl
YlNXU2VydmVyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vz
cy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAKQEAgLTEyOCwxMyArMTI4
LDM2IEBAIHZvaWQgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjp1cGRhdGVXb3JrZXJTdGF0ZUluQ2xp
ZW50KFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIHdvCiAKIHZvaWQgV2ViU1dTZXJ2ZXJDb25uZWN0
aW9uOjpzdGFydEZldGNoKHVpbnQ2NF90IGZldGNoSWRlbnRpZmllciwgU2VydmljZVdvcmtlcklk
ZW50aWZpZXIgc2VydmljZVdvcmtlcklkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVl
c3QsIEZldGNoT3B0aW9ucyYmIG9wdGlvbnMsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2UmJiBmb3Jt
RGF0YSwgU3RyaW5nJiYgcmVmZXJyZXIpCiB7Ci0gICAgLy8gSXQncyBwb3NzaWJsZSB0aGlzIHNw
ZWNpZmljIHdvcmtlciBjYW5ub3QgYmUgcmUtcnVuIChlLmcuIGl0cyByZWdpc3RyYXRpb24gaGFz
IGJlZW4gcmVtb3ZlZCkKLSAgICBzZXJ2ZXIoKS5ydW5TZXJ2aWNlV29ya2VySWZOZWNlc3Nhcnko
c2VydmljZVdvcmtlcklkZW50aWZpZXIsIFtjb250ZW50Q29ubmVjdGlvbiA9IG1fY29udGVudENv
bm5lY3Rpb24uY29weVJlZigpLCBjb25uZWN0aW9uSWRlbnRpZmllciA9IGlkZW50aWZpZXIoKSwg
ZmV0Y2hJZGVudGlmaWVyLCBzZXJ2aWNlV29ya2VySWRlbnRpZmllciA9IHNlcnZpY2VXb3JrZXJJ
ZGVudGlmaWVyLCByZXF1ZXN0ID0gV1RGTW92ZShyZXF1ZXN0KSwgb3B0aW9ucyA9IFdURk1vdmUo
b3B0aW9ucyksIGZvcm1EYXRhID0gV1RGTW92ZShmb3JtRGF0YSksIHJlZmVycmVyID0gV1RGTW92
ZShyZWZlcnJlcildKGJvb2wgc3VjY2VzcywgYXV0byYgY29udGV4dENvbm5lY3Rpb24pIHsKLSAg
ICAgICAgaWYgKHN1Y2Nlc3MpCi0gICAgICAgICAgICBzZW5kVG9Db250ZXh0UHJvY2Vzcyhjb250
ZXh0Q29ubmVjdGlvbiwgTWVzc2FnZXM6OldlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uOjpT
dGFydEZldGNoIHsgY29ubmVjdGlvbklkZW50aWZpZXIsIGZldGNoSWRlbnRpZmllciwgc2Vydmlj
ZVdvcmtlcklkZW50aWZpZXIsIHJlcXVlc3QsIG9wdGlvbnMsIGZvcm1EYXRhLCByZWZlcnJlciB9
KTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgY29udGVudENvbm5lY3Rpb24tPnNlbmQoTWVz
c2FnZXM6OlNlcnZpY2VXb3JrZXJDbGllbnRGZXRjaDo6RGlkTm90SGFuZGxlIHsgfSwgZmV0Y2hJ
ZGVudGlmaWVyKTsKLSAgICB9KTsKKyAgICBhdXRvKiB3b3JrZXIgPSBzZXJ2ZXIoKS53b3JrZXJC
eUlEKHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKTsKKyAgICBpZiAoIXdvcmtlcikgeworICAgICAg
ICBtX2NvbnRlbnRDb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpTZXJ2aWNlV29ya2VyQ2xpZW50
RmV0Y2g6OkRpZE5vdEhhbmRsZSB7IH0sIGZldGNoSWRlbnRpZmllcik7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisKKyAgICBhdXRvIHJ1blNlcnZlcldvcmtlckFuZFN0YXJ0RmV0Y2ggPSBbd2Vh
a1RoaXMgPSBtYWtlV2Vha1B0cih0aGlzKSwgdGhpcywgZmV0Y2hJZGVudGlmaWVyLCBzZXJ2aWNl
V29ya2VySWRlbnRpZmllciwgcmVxdWVzdCA9IFdURk1vdmUocmVxdWVzdCksIG9wdGlvbnMgPSBX
VEZNb3ZlKG9wdGlvbnMpLCBmb3JtRGF0YSA9IFdURk1vdmUoZm9ybURhdGEpLCByZWZlcnJlciA9
IFdURk1vdmUocmVmZXJyZXIpXShib29sIHN1Y2Nlc3MpIG11dGFibGUgeworICAgICAgICBpZiAo
IXdlYWtUaGlzKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIGlmICghc3VjY2Vzcykg
eworICAgICAgICAgICAgbV9jb250ZW50Q29ubmVjdGlvbi0+c2VuZChNZXNzYWdlczo6U2Vydmlj
ZVdvcmtlckNsaWVudEZldGNoOjpEaWROb3RIYW5kbGUgeyB9LCBmZXRjaElkZW50aWZpZXIpOwor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgc2VydmVyKCkucnVuU2Vy
dmljZVdvcmtlcklmTmVjZXNzYXJ5KHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBbd2Vha1RoaXMg
PSBXVEZNb3ZlKHdlYWtUaGlzKSwgdGhpcywgZmV0Y2hJZGVudGlmaWVyLCBzZXJ2aWNlV29ya2Vy
SWRlbnRpZmllciwgcmVxdWVzdCA9IFdURk1vdmUocmVxdWVzdCksIG9wdGlvbnMgPSBXVEZNb3Zl
KG9wdGlvbnMpLCBmb3JtRGF0YSA9IFdURk1vdmUoZm9ybURhdGEpLCByZWZlcnJlciA9IFdURk1v
dmUocmVmZXJyZXIpXShib29sIHN1Y2Nlc3MsIGF1dG8mIGNvbnRleHRDb25uZWN0aW9uKSB7Cisg
ICAgICAgICAgICBpZiAoIXdlYWtUaGlzKQorICAgICAgICAgICAgICAgIHJldHVybjsKKworICAg
ICAgICAgICAgaWYgKHN1Y2Nlc3MpCisgICAgICAgICAgICAgICAgc2VuZFRvQ29udGV4dFByb2Nl
c3MoY29udGV4dENvbm5lY3Rpb24sIE1lc3NhZ2VzOjpXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVj
dGlvbjo6U3RhcnRGZXRjaCB7IGlkZW50aWZpZXIoKSwgZmV0Y2hJZGVudGlmaWVyLCBzZXJ2aWNl
V29ya2VySWRlbnRpZmllciwgcmVxdWVzdCwgb3B0aW9ucywgZm9ybURhdGFpLCByZWZlcnJlciB9
KTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBtX2NvbnRlbnRDb25uZWN0aW9u
LT5zZW5kKE1lc3NhZ2VzOjpTZXJ2aWNlV29ya2VyQ2xpZW50RmV0Y2g6OkRpZE5vdEhhbmRsZSB7
IH0sIGZldGNoSWRlbnRpZmllcik7CisgICAgICAgIH0pOworICAgIH07CisKKyAgICBpZiAod29y
a2VyLT5zdGF0ZSgpID09IFNlcnZpY2VXb3JrZXJTdGF0ZTo6QWN0aXZhdGluZykKKyAgICAgICAg
d29ya2VyLT53aGVuQWN0aXZhdGVkKFdURk1vdmUocnVuU2VydmVyV29ya2VyQW5kU3RhcnRGZXRj
aCkpOworICAgIGVsc2UKKyAgICAgICAgcnVuU2VydmVyV29ya2VyQW5kU3RhcnRGZXRjaCh0cnVl
KTsKIH0KIAogdm9pZCBXZWJTV1NlcnZlckNvbm5lY3Rpb246OnBvc3RNZXNzYWdlVG9TZXJ2aWNl
V29ya2VyKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGRlc3RpbmF0aW9uSWRlbnRpZmllciwgSVBD
OjpEYXRhUmVmZXJlbmNlJiYgbWVzc2FnZSwgY29uc3QgU2VydmljZVdvcmtlck9yQ2xpZW50SWRl
bnRpZmllciYgc291cmNlSWRlbnRpZmllcikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmlu
ZGV4IDE3MjkwYzRmY2MzY2FmOTZkYjgzMDUwYjEyNGI4ZWJmZmQzMmI4MDguLjg1ZGZmODU1NjEw
OTRlNjU4OGIzMzY0MGI2MzA0YTk1NGM2MWJjMWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE3LTEyLTE4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIEZldGNoIHNob3VsZCB3YWl0IGZvciB0aGUgc2Vy
dmljZSB3b3JrZXIncyBzdGF0ZSB0byBiZWNvbWUgYWN0aXZhdGVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA5NTkKKworICAgICAgICBSZXZpZXdl
ZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAgIFJlYmFzZWxpbmUgV1BUIHRlc3QgdGhhdCBp
cyBub3cgcGFzc2luZy4KKworICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdv
cmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtd2FpdHMtZm9yLWFjdGl2YXRlLmh0dHBzLWV4cGVj
dGVkLnR4dDoKKwogMjAxNy0xMi0xOSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+
CiAKICAgICAgICAgU2VydmljZSBXb3JrZXIgc2hvdWxkIG5vdCBjbGVhbiBIVFRQIGhlYWRlcnMg
YWRkZWQgYnkgdGhlIGFwcGxpY2F0aW9uIG9yIGJ5IGZldGNoIHNwZWNpZmljYXRpb24gYmVmb3Jl
IHNlcnZpY2Ugd29ya2VyIGludGVyY2VwdGlvbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvZmV0Y2gtd2FpdHMtZm9yLWFjdGl2YXRlLmh0dHBzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2ZldGNoLXdhaXRzLWZvci1hY3RpdmF0ZS5odHRwcy1leHBlY3RlZC50eHQKaW5k
ZXggNTQ2MzU4MTA3ZTkzNTAxYjdlMTc4ZWU5MGE3ZWEwMjMzYjhmMzRjYS4uZDdmYmJiMjMxOGIx
Zjk4OWE0NmFkNjQzZWRkOTI4ZWJkNWE1ZTgzZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvZmV0Y2gtd2FpdHMtZm9yLWFjdGl2YXRlLmh0dHBzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9mZXRjaC13YWl0cy1mb3ItYWN0aXZhdGUuaHR0cHMtZXhwZWN0ZWQudHh0
CkBAIC0xLDQgKzEsMyBAQAogCi0KLUZBSUwgRmV0Y2ggZXZlbnRzIHNob3VsZCB3YWl0IGZvciB0
aGUgYWN0aXZhdGUgZXZlbnQgdG8gY29tcGxldGUuIGFzc2VydF91bnJlYWNoZWQ6IHVuZXhwZWN0
ZWQgcmVqZWN0aW9uOiBhc3NlcnRfZXF1YWxzOiBmcmFtZSBzaG91bGQgbm90IGJlIGxvYWRlZCBl
eHBlY3RlZCAodW5kZWZpbmVkKSB1bmRlZmluZWQgYnV0IGdvdCAob2JqZWN0KSBFbGVtZW50IG5v
ZGUgPGlmcmFtZSBjbGFzcz0idGVzdC1pZnJhbWUiIHNyYz0icmVzb3VyY2VzL2ZldGNoLXdhaXRz
LWZvLi4uIFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBGZXRjaCBldmVudHMgc2hvdWxk
IHdhaXQgZm9yIHRoZSBhY3RpdmF0ZSBldmVudCB0byBjb21wbGV0ZS4gCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329781</attachid>
            <date>2017-12-19 11:48:34 -0800</date>
            <delta_ts>2017-12-19 12:12:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180959-20171219114833.patch</filename>
            <type>text/plain</type>
            <size>11957</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MTI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGQzODgwZjlkYWVjOThk
YjE4NDM0MmJlY2ZjMjUxODkwN2IwNzdjYy4uMTFiNTEwZGYyNTFkNjAzMDIyOTk5MDgxNzNmNWQ2
NzFmNmZmOTkyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE3LTEyLTE4ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIEZldGNoIHNob3Vs
ZCB3YWl0IGZvciB0aGUgc2VydmljZSB3b3JrZXIncyBzdGF0ZSB0byBiZWNvbWUgYWN0aXZhdGVk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA5NTkK
KworICAgICAgICBSZXZpZXdlZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAgIEhhbmRsZSBG
ZXRjaCBzaG91bGQgd2FpdCBmb3IgdGhlIHNlcnZpY2Ugd29ya2VyJ3Mgc3RhdGUgdG8gYmVjb21l
IGFjdGl2YXRlZCB3aGVuCisgICAgICAgIGl0IGlzIGN1cnJlbnRseSBhY3RpdmF0aW5nLgorCisg
ICAgICAgIFNwZWNpZmljYXRpb246CisgICAgICAgIC0gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL1Nl
cnZpY2VXb3JrZXIvI29uLWZldGNoLXJlcXVlc3QtYWxnb3JpdGhtIChTdGVwIDE2KQorCisgICAg
ICAgIE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdC4KKworICAgICAgICAq
IHdvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U1dTZXJ2ZXJXb3JrZXI6On5TV1NlcnZlcldvcmtlcik6CisgICAgICAgIChXZWJDb3Jl
OjpTV1NlcnZlcldvcmtlcjo6d2hlbkFjdGl2YXRlZCk6CisgICAgICAgIChXZWJDb3JlOjpTV1Nl
cnZlcldvcmtlcjo6c2V0U3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXI6
OmNhbGxXaGVuQWN0aXZhdGVkSGFuZGxlcik6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3Nl
cnZlci9TV1NlcnZlcldvcmtlci5oOgorCiAyMDE3LTEyLTE5ICBaYWxhbiBCdWp0YXMgIDx6YWxh
bkBhcHBsZS5jb20+CiAKICAgICAgICAgW1JlbmRlclRyZWVCdWlsZGVyXSBNb3ZlIGZpbmRpbmct
dGhlLXBhcmVudC9jcmVhdGluZy13cmFwcGVyIGxvZ2ljIGZyb20gUmVuZGVyVGFibGVSb3c6OmFk
ZENoaWxkIHRvIFJlbmRlclRyZWVCdWlsZGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDcyYWNiNzFkZTY5OTU5ZjNl
ODllMDUwYWViNWIzZDE2YTQyODkzMjMuLmU3YTBhMGQ5NGM3YWI1NDIyNjE0NjgwODkzM2JhM2Q4
YTEyMGU2MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTctMTItMTggIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KKworICAgICAgICBIYW5kbGUgRmV0Y2ggc2hvdWxkIHdh
aXQgZm9yIHRoZSBzZXJ2aWNlIHdvcmtlcidzIHN0YXRlIHRvIGJlY29tZSBhY3RpdmF0ZWQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDk1OQorCisg
ICAgICAgIFJldmlld2VkIGJ5IFlvdWVubiBGYWJsZXQuCisKKyAgICAgICAgSGFuZGxlIEZldGNo
IHNob3VsZCB3YWl0IGZvciB0aGUgc2VydmljZSB3b3JrZXIncyBzdGF0ZSB0byBiZWNvbWUgYWN0
aXZhdGVkIHdoZW4KKyAgICAgICAgaXQgaXMgY3VycmVudGx5IGFjdGl2YXRpbmcuCisKKyAgICAg
ICAgU3BlY2lmaWNhdGlvbjoKKyAgICAgICAgLSBodHRwczovL3czYy5naXRodWIuaW8vU2Vydmlj
ZVdvcmtlci8jb24tZmV0Y2gtcmVxdWVzdC1hbGdvcml0aG0gKFN0ZXAgMTYpCisKKyAgICAgICAg
KiBTdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHA6
CisgICAgICAgIChXZWJLaXQ6OldlYlNXU2VydmVyQ29ubmVjdGlvbjo6c3RhcnRGZXRjaCk6CisK
IDIwMTctMTItMTkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAg
IFNlcnZpY2UgV29ya2VyIHNob3VsZCBub3QgY2xlYW4gSFRUUCBoZWFkZXJzIGFkZGVkIGJ5IHRo
ZSBhcHBsaWNhdGlvbiBvciBieSBmZXRjaCBzcGVjaWZpY2F0aW9uIGJlZm9yZSBzZXJ2aWNlIHdv
cmtlciBpbnRlcmNlcHRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9z
ZXJ2ZXIvU1dTZXJ2ZXIuaAppbmRleCA0ODFiZGU2YmRkNmRmNDRkMmNlNjI2ZTNjNjMyZDI4MmIz
MTA3MjgwLi5mNzZjYjk0MzUwYzVhMGUwM2M1MmVhNWE0ZTdmNmFhOTVjY2JhOTZjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlci5oCkBAIC00
Niw2ICs0Niw3IEBACiAjaW5jbHVkZSA8d3RmL1RocmVhZFNhZmVSZWZDb3VudGVkLmg+CiAjaW5j
bHVkZSA8d3RmL1RocmVhZGluZy5oPgogI2luY2x1ZGUgPHd0Zi9VbmlxdWVSZWYuaD4KKyNpbmNs
dWRlIDx3dGYvV2Vha1B0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTc0LDYgKzc1
LDggQEAgcHVibGljOgogICAgICAgICB1c2luZyBJZGVudGlmaWVyID0gU1dTZXJ2ZXJDb25uZWN0
aW9uSWRlbnRpZmllcjsKICAgICAgICAgSWRlbnRpZmllciBpZGVudGlmaWVyKCkgY29uc3QgeyBy
ZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKKyAgICAgICAgYXV0byYgd2Vha1B0ckZhY3RvcnkoKSB7
IHJldHVybiBtX3dlYWtGYWN0b3J5OyB9CisKICAgICAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBk
aWRSZXNvbHZlUmVnaXN0cmF0aW9uUHJvbWlzZShjb25zdCBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0
aW9uS2V5Jik7CiAgICAgICAgIFNXU2VydmVyUmVnaXN0cmF0aW9uKiBkb1JlZ2lzdHJhdGlvbk1h
dGNoaW5nKGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgdG9wT3JpZ2luLCBjb25zdCBVUkwmIGNs
aWVudFVSTCkgeyByZXR1cm4gbV9zZXJ2ZXIuZG9SZWdpc3RyYXRpb25NYXRjaGluZyh0b3BPcmln
aW4sIGNsaWVudFVSTCk7IH0KICAgICAgICAgdm9pZCByZXNvbHZlUmVnaXN0cmF0aW9uUmVhZHlS
ZXF1ZXN0cyhTV1NlcnZlclJlZ2lzdHJhdGlvbiYpOwpAQCAtMTEzLDYgKzExNiw3IEBAIHB1Ymxp
YzoKIAogICAgICAgICBTV1NlcnZlciYgbV9zZXJ2ZXI7CiAgICAgICAgIElkZW50aWZpZXIgbV9p
ZGVudGlmaWVyOworICAgICAgICBXZWFrUHRyRmFjdG9yeTxDb25uZWN0aW9uPiBtX3dlYWtGYWN0
b3J5OwogICAgICAgICBWZWN0b3I8UmVnaXN0cmF0aW9uUmVhZHlSZXF1ZXN0PiBtX3JlZ2lzdHJh
dGlvblJlYWR5UmVxdWVzdHM7CiAgICAgfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
d29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAppbmRleCAxYTU3NWJl
NjljMDc1ZDAzN2RiMDQ4Nzk1MzQ2YTJhNzg3OTJmMjc0Li5mOGVlMmRlZDIwNTVjZjA3ZGUyMWIx
ZWUxZWYwNGJkMDhjMWE3NThkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3Jr
ZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmNwcApAQCAtNTgsNiArNTgsOCBAQCBT
V1NlcnZlcldvcmtlcjo6U1dTZXJ2ZXJXb3JrZXIoU1dTZXJ2ZXImIHNlcnZlciwgU1dTZXJ2ZXJS
ZWdpc3RyYXRpb24mIHJlZ2lzdHJhdAogCiBTV1NlcnZlcldvcmtlcjo6flNXU2VydmVyV29ya2Vy
KCkKIHsKKyAgICBjYWxsV2hlbkFjdGl2YXRlZEhhbmRsZXIoZmFsc2UpOworCiAgICAgYXV0byB0
YWtlbiA9IGFsbFdvcmtlcnMoKS50YWtlKGlkZW50aWZpZXIoKSk7CiAgICAgQVNTRVJUX1VOVVNF
RCh0YWtlbiwgdGFrZW4gPT0gdGhpcyk7CiB9CkBAIC0xNTIsNiArMTU0LDMwIEBAIHZvaWQgU1dT
ZXJ2ZXJXb3JrZXI6OnNldEhhc1BlbmRpbmdFdmVudHMoYm9vbCBoYXNQZW5kaW5nRXZlbnRzKQog
ICAgIHJlZ2lzdHJhdGlvbi0+dHJ5QWN0aXZhdGUoKTsKIH0KIAordm9pZCBTV1NlcnZlcldvcmtl
cjo6d2hlbkFjdGl2YXRlZChXVEY6OkZ1bmN0aW9uPHZvaWQoYm9vbCk+JiYgaGFuZGxlcikKK3sK
KyAgICBpZiAoc3RhdGUoKSA9PSBTZXJ2aWNlV29ya2VyU3RhdGU6OkFjdGl2YXRlZCkgeworICAg
ICAgICBoYW5kbGVyKHRydWUpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIG1fd2hlbkFj
dGl2YXRlZEhhbmRsZXJzLmFwcGVuZChXVEZNb3ZlKGhhbmRsZXIpKTsKK30KKwordm9pZCBTV1Nl
cnZlcldvcmtlcjo6c2V0U3RhdGUoU2VydmljZVdvcmtlclN0YXRlIHN0YXRlKQoreworICAgIG1f
ZGF0YS5zdGF0ZSA9IHN0YXRlOworCisgICAgaWYgKHN0YXRlID09IFNlcnZpY2VXb3JrZXJTdGF0
ZTo6QWN0aXZhdGVkIHx8IHN0YXRlID09IFNlcnZpY2VXb3JrZXJTdGF0ZTo6UmVkdW5kYW50KQor
ICAgICAgICBjYWxsV2hlbkFjdGl2YXRlZEhhbmRsZXIoc3RhdGUgPT0gU2VydmljZVdvcmtlclN0
YXRlOjpBY3RpdmF0ZWQpOworfQorCit2b2lkIFNXU2VydmVyV29ya2VyOjpjYWxsV2hlbkFjdGl2
YXRlZEhhbmRsZXIoYm9vbCBzdWNjZXNzKQoreworICAgIGF1dG8gd2hlbkFjdGl2YXRlZEhhbmRs
ZXJzID0gV1RGTW92ZShtX3doZW5BY3RpdmF0ZWRIYW5kbGVycyk7CisgICAgZm9yIChhdXRvJiBo
YW5kbGVyIDogd2hlbkFjdGl2YXRlZEhhbmRsZXJzKQorICAgICAgICBoYW5kbGVyKHN1Y2Nlc3Mp
OworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoU0VSVklD
RV9XT1JLRVIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2Vy
dmVyL1NXU2VydmVyV29ya2VyLmggYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2Vy
dmVyL1NXU2VydmVyV29ya2VyLmgKaW5kZXggZTEyNzVjMDAxMWZhMzUzMDQ5NzIwMjgwOWM5NWQw
ZGIzZDUwNWYyYy4uMzhjMTEyOWQ5YzVlMDRjYjI3ZGNjZDBiM2QzYjBiMDY1N2M4OTFhNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldv
cmtlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2
ZXJXb3JrZXIuaApAQCAtNTksNiArNTksOCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHRlcm1pbmF0
ZSgpOwogCisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCB3aGVuQWN0aXZhdGVkKFdURjo6RnVuY3Rp
b248dm9pZChib29sKT4mJik7CisKICAgICBlbnVtIGNsYXNzIFN0YXRlIHsKICAgICAgICAgUnVu
bmluZywKICAgICAgICAgVGVybWluYXRpbmcsCkBAIC03OCw3ICs4MCw3IEBAIHB1YmxpYzoKICAg
ICBTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb25JZGVudGlmaWVyIGNvbnRleHRDb25uZWN0aW9u
SWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fY29udGV4dENvbm5lY3Rpb25JZGVudGlmaWVy
OyB9CiAKICAgICBTZXJ2aWNlV29ya2VyU3RhdGUgc3RhdGUoKSBjb25zdCB7IHJldHVybiBtX2Rh
dGEuc3RhdGU7IH0KLSAgICB2b2lkIHNldFN0YXRlKFNlcnZpY2VXb3JrZXJTdGF0ZSBzdGF0ZSkg
eyBtX2RhdGEuc3RhdGUgPSBzdGF0ZTsgfQorICAgIHZvaWQgc2V0U3RhdGUoU2VydmljZVdvcmtl
clN0YXRlKTsKIAogICAgIGJvb2wgaGFzUGVuZGluZ0V2ZW50cygpIGNvbnN0IHsgcmV0dXJuIG1f
aGFzUGVuZGluZ0V2ZW50czsgfQogICAgIHZvaWQgc2V0SGFzUGVuZGluZ0V2ZW50cyhib29sKTsK
QEAgLTEwNCw2ICsxMDYsOCBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIFNXU2VydmVyV29ya2Vy
KFNXU2VydmVyJiwgU1dTZXJ2ZXJSZWdpc3RyYXRpb24mLCBTV1NlcnZlclRvQ29udGV4dENvbm5l
Y3Rpb25JZGVudGlmaWVyLCBjb25zdCBVUkwmLCBjb25zdCBTdHJpbmcmIHNjcmlwdCwgV29ya2Vy
VHlwZSwgU2VydmljZVdvcmtlcklkZW50aWZpZXIpOwogCisgICAgdm9pZCBjYWxsV2hlbkFjdGl2
YXRlZEhhbmRsZXIoYm9vbCBzdWNjZXNzKTsKKwogICAgIFNXU2VydmVyJiBtX3NlcnZlcjsKICAg
ICBTZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uS2V5IG1fcmVnaXN0cmF0aW9uS2V5OwogICAgIFNX
U2VydmVyVG9Db250ZXh0Q29ubmVjdGlvbklkZW50aWZpZXIgbV9jb250ZXh0Q29ubmVjdGlvbklk
ZW50aWZpZXI7CkBAIC0xMTMsNiArMTE3LDcgQEAgcHJpdmF0ZToKICAgICBTdGF0ZSBtX3N0YXRl
IHsgU3RhdGU6Ok5vdFJ1bm5pbmcgfTsKICAgICBtdXRhYmxlIHN0ZDo6b3B0aW9uYWw8Q2xpZW50
T3JpZ2luPiBtX29yaWdpbjsKICAgICBib29sIG1faXNTa2lwV2FpdGluZ0ZsYWdTZXQgeyBmYWxz
ZSB9OworICAgIFZlY3RvcjxXVEY6OkZ1bmN0aW9uPHZvaWQoYm9vbCk+PiBtX3doZW5BY3RpdmF0
ZWRIYW5kbGVyczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvU3RvcmFnZVByb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5l
Y3Rpb24uY3BwIGIvU291cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dl
YlNXU2VydmVyQ29ubmVjdGlvbi5jcHAKaW5kZXggNmRkZTcyZDQwZWI0ZmQ0NzUxZDU2MWM3ZTg3
NjQ4YWYzOWFkNjZjMS4uZjNhMjIyNDhmN2IzMWZhNzUxMGVlM2Y3YzM5NTE0MDhlYzYwOWEwMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vzcy9TZXJ2aWNlV29ya2VyL1dl
YlNXU2VydmVyQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TdG9yYWdlUHJvY2Vz
cy9TZXJ2aWNlV29ya2VyL1dlYlNXU2VydmVyQ29ubmVjdGlvbi5jcHAKQEAgLTEyOCwxMyArMTI4
LDM2IEBAIHZvaWQgV2ViU1dTZXJ2ZXJDb25uZWN0aW9uOjp1cGRhdGVXb3JrZXJTdGF0ZUluQ2xp
ZW50KFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIHdvCiAKIHZvaWQgV2ViU1dTZXJ2ZXJDb25uZWN0
aW9uOjpzdGFydEZldGNoKHVpbnQ2NF90IGZldGNoSWRlbnRpZmllciwgU2VydmljZVdvcmtlcklk
ZW50aWZpZXIgc2VydmljZVdvcmtlcklkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYmIHJlcXVl
c3QsIEZldGNoT3B0aW9ucyYmIG9wdGlvbnMsIElQQzo6Rm9ybURhdGFSZWZlcmVuY2UmJiBmb3Jt
RGF0YSwgU3RyaW5nJiYgcmVmZXJyZXIpCiB7Ci0gICAgLy8gSXQncyBwb3NzaWJsZSB0aGlzIHNw
ZWNpZmljIHdvcmtlciBjYW5ub3QgYmUgcmUtcnVuIChlLmcuIGl0cyByZWdpc3RyYXRpb24gaGFz
IGJlZW4gcmVtb3ZlZCkKLSAgICBzZXJ2ZXIoKS5ydW5TZXJ2aWNlV29ya2VySWZOZWNlc3Nhcnko
c2VydmljZVdvcmtlcklkZW50aWZpZXIsIFtjb250ZW50Q29ubmVjdGlvbiA9IG1fY29udGVudENv
bm5lY3Rpb24uY29weVJlZigpLCBjb25uZWN0aW9uSWRlbnRpZmllciA9IGlkZW50aWZpZXIoKSwg
ZmV0Y2hJZGVudGlmaWVyLCBzZXJ2aWNlV29ya2VySWRlbnRpZmllciA9IHNlcnZpY2VXb3JrZXJJ
ZGVudGlmaWVyLCByZXF1ZXN0ID0gV1RGTW92ZShyZXF1ZXN0KSwgb3B0aW9ucyA9IFdURk1vdmUo
b3B0aW9ucyksIGZvcm1EYXRhID0gV1RGTW92ZShmb3JtRGF0YSksIHJlZmVycmVyID0gV1RGTW92
ZShyZWZlcnJlcildKGJvb2wgc3VjY2VzcywgYXV0byYgY29udGV4dENvbm5lY3Rpb24pIHsKLSAg
ICAgICAgaWYgKHN1Y2Nlc3MpCi0gICAgICAgICAgICBzZW5kVG9Db250ZXh0UHJvY2Vzcyhjb250
ZXh0Q29ubmVjdGlvbiwgTWVzc2FnZXM6OldlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uOjpT
dGFydEZldGNoIHsgY29ubmVjdGlvbklkZW50aWZpZXIsIGZldGNoSWRlbnRpZmllciwgc2Vydmlj
ZVdvcmtlcklkZW50aWZpZXIsIHJlcXVlc3QsIG9wdGlvbnMsIGZvcm1EYXRhLCByZWZlcnJlciB9
KTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgY29udGVudENvbm5lY3Rpb24tPnNlbmQoTWVz
c2FnZXM6OlNlcnZpY2VXb3JrZXJDbGllbnRGZXRjaDo6RGlkTm90SGFuZGxlIHsgfSwgZmV0Y2hJ
ZGVudGlmaWVyKTsKLSAgICB9KTsKKyAgICBhdXRvKiB3b3JrZXIgPSBzZXJ2ZXIoKS53b3JrZXJC
eUlEKHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKTsKKyAgICBpZiAoIXdvcmtlcikgeworICAgICAg
ICBtX2NvbnRlbnRDb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpTZXJ2aWNlV29ya2VyQ2xpZW50
RmV0Y2g6OkRpZE5vdEhhbmRsZSB7IH0sIGZldGNoSWRlbnRpZmllcik7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisKKyAgICBhdXRvIHJ1blNlcnZlcldvcmtlckFuZFN0YXJ0RmV0Y2ggPSBbd2Vh
a1RoaXMgPSBtYWtlV2Vha1B0cih0aGlzKSwgdGhpcywgZmV0Y2hJZGVudGlmaWVyLCBzZXJ2aWNl
V29ya2VySWRlbnRpZmllciwgcmVxdWVzdCA9IFdURk1vdmUocmVxdWVzdCksIG9wdGlvbnMgPSBX
VEZNb3ZlKG9wdGlvbnMpLCBmb3JtRGF0YSA9IFdURk1vdmUoZm9ybURhdGEpLCByZWZlcnJlciA9
IFdURk1vdmUocmVmZXJyZXIpXShib29sIHN1Y2Nlc3MpIG11dGFibGUgeworICAgICAgICBpZiAo
IXdlYWtUaGlzKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIGlmICghc3VjY2Vzcykg
eworICAgICAgICAgICAgbV9jb250ZW50Q29ubmVjdGlvbi0+c2VuZChNZXNzYWdlczo6U2Vydmlj
ZVdvcmtlckNsaWVudEZldGNoOjpEaWROb3RIYW5kbGUgeyB9LCBmZXRjaElkZW50aWZpZXIpOwor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgc2VydmVyKCkucnVuU2Vy
dmljZVdvcmtlcklmTmVjZXNzYXJ5KHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBbd2Vha1RoaXMg
PSBXVEZNb3ZlKHdlYWtUaGlzKSwgdGhpcywgZmV0Y2hJZGVudGlmaWVyLCBzZXJ2aWNlV29ya2Vy
SWRlbnRpZmllciwgcmVxdWVzdCA9IFdURk1vdmUocmVxdWVzdCksIG9wdGlvbnMgPSBXVEZNb3Zl
KG9wdGlvbnMpLCBmb3JtRGF0YSA9IFdURk1vdmUoZm9ybURhdGEpLCByZWZlcnJlciA9IFdURk1v
dmUocmVmZXJyZXIpXShib29sIHN1Y2Nlc3MsIGF1dG8mIGNvbnRleHRDb25uZWN0aW9uKSB7Cisg
ICAgICAgICAgICBpZiAoIXdlYWtUaGlzKQorICAgICAgICAgICAgICAgIHJldHVybjsKKworICAg
ICAgICAgICAgaWYgKHN1Y2Nlc3MpCisgICAgICAgICAgICAgICAgc2VuZFRvQ29udGV4dFByb2Nl
c3MoY29udGV4dENvbm5lY3Rpb24sIE1lc3NhZ2VzOjpXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVj
dGlvbjo6U3RhcnRGZXRjaCB7IGlkZW50aWZpZXIoKSwgZmV0Y2hJZGVudGlmaWVyLCBzZXJ2aWNl
V29ya2VySWRlbnRpZmllciwgcmVxdWVzdCwgb3B0aW9ucywgZm9ybURhdGEsIHJlZmVycmVyIH0p
OworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIG1fY29udGVudENvbm5lY3Rpb24t
PnNlbmQoTWVzc2FnZXM6OlNlcnZpY2VXb3JrZXJDbGllbnRGZXRjaDo6RGlkTm90SGFuZGxlIHsg
fSwgZmV0Y2hJZGVudGlmaWVyKTsKKyAgICAgICAgfSk7CisgICAgfTsKKworICAgIGlmICh3b3Jr
ZXItPnN0YXRlKCkgPT0gU2VydmljZVdvcmtlclN0YXRlOjpBY3RpdmF0aW5nKQorICAgICAgICB3
b3JrZXItPndoZW5BY3RpdmF0ZWQoV1RGTW92ZShydW5TZXJ2ZXJXb3JrZXJBbmRTdGFydEZldGNo
KSk7CisgICAgZWxzZQorICAgICAgICBydW5TZXJ2ZXJXb3JrZXJBbmRTdGFydEZldGNoKHRydWUp
OwogfQogCiB2b2lkIFdlYlNXU2VydmVyQ29ubmVjdGlvbjo6cG9zdE1lc3NhZ2VUb1NlcnZpY2VX
b3JrZXIoU2VydmljZVdvcmtlcklkZW50aWZpZXIgZGVzdGluYXRpb25JZGVudGlmaWVyLCBJUEM6
OkRhdGFSZWZlcmVuY2UmJiBtZXNzYWdlLCBjb25zdCBTZXJ2aWNlV29ya2VyT3JDbGllbnRJZGVu
dGlmaWVyJiBzb3VyY2VJZGVudGlmaWVyKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0
ZWQvdzNjL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKaW5k
ZXggMTcyOTBjNGZjYzNjYWY5NmRiODMwNTBiMTI0YjhlYmZmZDMyYjgwOC4uODVkZmY4NTU2MTA5
NGU2NTg4YjMzNjQwYjYzMDRhOTU0YzYxYmMxZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1w
b3J0ZWQvdzNjL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTctMTItMTggIENocmlzIER1bWV6ICA8Y2R1bWV6QGFw
cGxlLmNvbT4KKworICAgICAgICBIYW5kbGUgRmV0Y2ggc2hvdWxkIHdhaXQgZm9yIHRoZSBzZXJ2
aWNlIHdvcmtlcidzIHN0YXRlIHRvIGJlY29tZSBhY3RpdmF0ZWQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDk1OQorCisgICAgICAgIFJldmlld2Vk
IGJ5IFlvdWVubiBGYWJsZXQuCisKKyAgICAgICAgUmViYXNlbGluZSBXUFQgdGVzdCB0aGF0IGlz
IG5vdyBwYXNzaW5nLgorCisgICAgICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29y
a2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC13YWl0cy1mb3ItYWN0aXZhdGUuaHR0cHMtZXhwZWN0
ZWQudHh0OgorCiAyMDE3LTEyLTE5ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4K
IAogICAgICAgICBTZXJ2aWNlIFdvcmtlciBzaG91bGQgbm90IGNsZWFuIEhUVFAgaGVhZGVycyBh
ZGRlZCBieSB0aGUgYXBwbGljYXRpb24gb3IgYnkgZmV0Y2ggc3BlY2lmaWNhdGlvbiBiZWZvcmUg
c2VydmljZSB3b3JrZXIgaW50ZXJjZXB0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9mZXRjaC13YWl0cy1mb3ItYWN0aXZhdGUuaHR0cHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vydmlj
ZS13b3JrZXIvZmV0Y2gtd2FpdHMtZm9yLWFjdGl2YXRlLmh0dHBzLWV4cGVjdGVkLnR4dAppbmRl
eCA1NDYzNTgxMDdlOTM1MDFiN2UxNzhlZTkwYTdlYTAyMzNiOGYzNGNhLi5kN2ZiYmIyMzE4YjFm
OTg5YTQ2YWQ2NDNlZGQ5MjhlYmQ1YTVlODNkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9mZXRjaC13YWl0cy1mb3ItYWN0aXZhdGUuaHR0cHMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2ZldGNoLXdhaXRzLWZvci1hY3RpdmF0ZS5odHRwcy1leHBlY3RlZC50eHQK
QEAgLTEsNCArMSwzIEBACiAKLQotRkFJTCBGZXRjaCBldmVudHMgc2hvdWxkIHdhaXQgZm9yIHRo
ZSBhY3RpdmF0ZSBldmVudCB0byBjb21wbGV0ZS4gYXNzZXJ0X3VucmVhY2hlZDogdW5leHBlY3Rl
ZCByZWplY3Rpb246IGFzc2VydF9lcXVhbHM6IGZyYW1lIHNob3VsZCBub3QgYmUgbG9hZGVkIGV4
cGVjdGVkICh1bmRlZmluZWQpIHVuZGVmaW5lZCBidXQgZ290IChvYmplY3QpIEVsZW1lbnQgbm9k
ZSA8aWZyYW1lIGNsYXNzPSJ0ZXN0LWlmcmFtZSIgc3JjPSJyZXNvdXJjZXMvZmV0Y2gtd2FpdHMt
Zm8uLi4gUmVhY2hlZCB1bnJlYWNoYWJsZSBjb2RlCitQQVNTIEZldGNoIGV2ZW50cyBzaG91bGQg
d2FpdCBmb3IgdGhlIGFjdGl2YXRlIGV2ZW50IHRvIGNvbXBsZXRlLiAKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>329789</attachid>
            <date>2017-12-19 12:12:10 -0800</date>
            <delta_ts>2017-12-19 13:22:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180959-20171219121210.patch</filename>
            <type>text/plain</type>
            <size>11922</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI2MTM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTBlOWQxZGVjNjkyZTU5
YzYzMmViM2YwNDFmMjhlMTkyYjkyOGNlNi4uYzdhNDE5ZDJiY2E1MzAzODU4ODc2NjdjOTYyNGM3
MGQ2MDY1ZTMwMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE3LTEyLTE4ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIEZldGNoIHNob3Vs
ZCB3YWl0IGZvciB0aGUgc2VydmljZSB3b3JrZXIncyBzdGF0ZSB0byBiZWNvbWUgYWN0aXZhdGVk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA5NTkK
KworICAgICAgICBSZXZpZXdlZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAgIEhhbmRsZSBG
ZXRjaCBzaG91bGQgd2FpdCBmb3IgdGhlIHNlcnZpY2Ugd29ya2VyJ3Mgc3RhdGUgdG8gYmVjb21l
IGFjdGl2YXRlZCB3aGVuCisgICAgICAgIGl0IGlzIGN1cnJlbnRseSBhY3RpdmF0aW5nLgorCisg
ICAgICAgIFNwZWNpZmljYXRpb246CisgICAgICAgIC0gaHR0cHM6Ly93M2MuZ2l0aHViLmlvL1Nl
cnZpY2VXb3JrZXIvI29uLWZldGNoLXJlcXVlc3QtYWxnb3JpdGhtIChTdGVwIDE2KQorCisgICAg
ICAgIE5vIG5ldyB0ZXN0cywgcmViYXNlbGluZWQgZXhpc3RpbmcgdGVzdC4KKworICAgICAgICAq
IHdvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U1dTZXJ2ZXJXb3JrZXI6On5TV1NlcnZlcldvcmtlcik6CisgICAgICAgIChXZWJDb3Jl
OjpTV1NlcnZlcldvcmtlcjo6d2hlbkFjdGl2YXRlZCk6CisgICAgICAgIChXZWJDb3JlOjpTV1Nl
cnZlcldvcmtlcjo6c2V0U3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6U1dTZXJ2ZXJXb3JrZXI6
OmNhbGxXaGVuQWN0aXZhdGVkSGFuZGxlcik6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL3Nl
cnZlci9TV1NlcnZlcldvcmtlci5oOgorCiAyMDE3LTEyLTE5ICBZdXN1a2UgU3V6dWtpICA8dXRh
dGFuZS50ZWFAZ21haWwuY29tPgogCiAgICAgICAgIFtZQVJSXSBZYXJyIHNob3VsZCByZXR1cm4g
RXJyb3JDb2RlIGluc3RlYWQgb2YgZXJyb3IgbWVzc2FnZXMgKGNvbnN0IGNoYXIqKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpp
bmRleCA3MmFjYjcxZGU2OTk1OWYzZTg5ZTA1MGFlYjViM2QxNmE0Mjg5MzIzLi5lN2EwYTBkOTRj
N2FiNTQyMjYxNDY4MDg5MzNiYTNkOGExMjBlNjEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBA
CisyMDE3LTEyLTE4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAg
SGFuZGxlIEZldGNoIHNob3VsZCB3YWl0IGZvciB0aGUgc2VydmljZSB3b3JrZXIncyBzdGF0ZSB0
byBiZWNvbWUgYWN0aXZhdGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xODA5NTkKKworICAgICAgICBSZXZpZXdlZCBieSBZb3Vlbm4gRmFibGV0Lgor
CisgICAgICAgIEhhbmRsZSBGZXRjaCBzaG91bGQgd2FpdCBmb3IgdGhlIHNlcnZpY2Ugd29ya2Vy
J3Mgc3RhdGUgdG8gYmVjb21lIGFjdGl2YXRlZCB3aGVuCisgICAgICAgIGl0IGlzIGN1cnJlbnRs
eSBhY3RpdmF0aW5nLgorCisgICAgICAgIFNwZWNpZmljYXRpb246CisgICAgICAgIC0gaHR0cHM6
Ly93M2MuZ2l0aHViLmlvL1NlcnZpY2VXb3JrZXIvI29uLWZldGNoLXJlcXVlc3QtYWxnb3JpdGht
IChTdGVwIDE2KQorCisgICAgICAgICogU3RvcmFnZVByb2Nlc3MvU2VydmljZVdvcmtlci9XZWJT
V1NlcnZlckNvbm5lY3Rpb24uY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJTV1NlcnZlckNvbm5l
Y3Rpb246OnN0YXJ0RmV0Y2gpOgorCiAyMDE3LTEyLTE5ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5u
QGFwcGxlLmNvbT4KIAogICAgICAgICBTZXJ2aWNlIFdvcmtlciBzaG91bGQgbm90IGNsZWFuIEhU
VFAgaGVhZGVycyBhZGRlZCBieSB0aGUgYXBwbGljYXRpb24gb3IgYnkgZmV0Y2ggc3BlY2lmaWNh
dGlvbiBiZWZvcmUgc2VydmljZSB3b3JrZXIgaW50ZXJjZXB0aW9uCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmggYi9Tb3VyY2UvV2Vi
Q29yZS93b3JrZXJzL3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyLmgKaW5kZXggNDgxYmRlNmJkZDZk
ZjQ0ZDJjZTYyNmUzYzYzMmQyODJiMzEwNzI4MC4uZjc2Y2I5NDM1MGM1YTBlMDNjNTJlYTVhNGU3
ZjZhYTk1Y2NiYTk2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNl
L3NlcnZlci9TV1NlcnZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9z
ZXJ2ZXIvU1dTZXJ2ZXIuaApAQCAtNDYsNiArNDYsNyBAQAogI2luY2x1ZGUgPHd0Zi9UaHJlYWRT
YWZlUmVmQ291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KICNpbmNsdWRlIDx3
dGYvVW5pcXVlUmVmLmg+CisjaW5jbHVkZSA8d3RmL1dlYWtQdHIuaD4KIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCkBAIC03NCw2ICs3NSw4IEBAIHB1YmxpYzoKICAgICAgICAgdXNpbmcgSWRlbnRp
ZmllciA9IFNXU2VydmVyQ29ubmVjdGlvbklkZW50aWZpZXI7CiAgICAgICAgIElkZW50aWZpZXIg
aWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJuIG1faWRlbnRpZmllcjsgfQogCisgICAgICAgIGF1
dG8mIHdlYWtQdHJGYWN0b3J5KCkgeyByZXR1cm4gbV93ZWFrRmFjdG9yeTsgfQorCiAgICAgICAg
IFdFQkNPUkVfRVhQT1JUIHZvaWQgZGlkUmVzb2x2ZVJlZ2lzdHJhdGlvblByb21pc2UoY29uc3Qg
U2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbktleSYpOwogICAgICAgICBTV1NlcnZlclJlZ2lzdHJh
dGlvbiogZG9SZWdpc3RyYXRpb25NYXRjaGluZyhjb25zdCBTZWN1cml0eU9yaWdpbkRhdGEmIHRv
cE9yaWdpbiwgY29uc3QgVVJMJiBjbGllbnRVUkwpIHsgcmV0dXJuIG1fc2VydmVyLmRvUmVnaXN0
cmF0aW9uTWF0Y2hpbmcodG9wT3JpZ2luLCBjbGllbnRVUkwpOyB9CiAgICAgICAgIHZvaWQgcmVz
b2x2ZVJlZ2lzdHJhdGlvblJlYWR5UmVxdWVzdHMoU1dTZXJ2ZXJSZWdpc3RyYXRpb24mKTsKQEAg
LTExMyw2ICsxMTYsNyBAQCBwdWJsaWM6CiAKICAgICAgICAgU1dTZXJ2ZXImIG1fc2VydmVyOwog
ICAgICAgICBJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKKyAgICAgICAgV2Vha1B0ckZhY3Rvcnk8
Q29ubmVjdGlvbj4gbV93ZWFrRmFjdG9yeTsKICAgICAgICAgVmVjdG9yPFJlZ2lzdHJhdGlvblJl
YWR5UmVxdWVzdD4gbV9yZWdpc3RyYXRpb25SZWFkeVJlcXVlc3RzOwogICAgIH07CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3Jr
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldv
cmtlci5jcHAKaW5kZXggMWE1NzViZTY5YzA3NWQwMzdkYjA0ODc5NTM0NmEyYTc4NzkyZjI3NC4u
ZjhlZTJkZWQyMDU1Y2YwN2RlMjFiMWVlMWVmMDRiZDA4YzFhNzU4ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5j
cHAKQEAgLTU4LDYgKzU4LDggQEAgU1dTZXJ2ZXJXb3JrZXI6OlNXU2VydmVyV29ya2VyKFNXU2Vy
dmVyJiBzZXJ2ZXIsIFNXU2VydmVyUmVnaXN0cmF0aW9uJiByZWdpc3RyYXQKIAogU1dTZXJ2ZXJX
b3JrZXI6On5TV1NlcnZlcldvcmtlcigpCiB7CisgICAgY2FsbFdoZW5BY3RpdmF0ZWRIYW5kbGVy
KGZhbHNlKTsKKwogICAgIGF1dG8gdGFrZW4gPSBhbGxXb3JrZXJzKCkudGFrZShpZGVudGlmaWVy
KCkpOwogICAgIEFTU0VSVF9VTlVTRUQodGFrZW4sIHRha2VuID09IHRoaXMpOwogfQpAQCAtMTUy
LDYgKzE1NCwzMCBAQCB2b2lkIFNXU2VydmVyV29ya2VyOjpzZXRIYXNQZW5kaW5nRXZlbnRzKGJv
b2wgaGFzUGVuZGluZ0V2ZW50cykKICAgICByZWdpc3RyYXRpb24tPnRyeUFjdGl2YXRlKCk7CiB9
CiAKK3ZvaWQgU1dTZXJ2ZXJXb3JrZXI6OndoZW5BY3RpdmF0ZWQoV1RGOjpGdW5jdGlvbjx2b2lk
KGJvb2wpPiYmIGhhbmRsZXIpCit7CisgICAgaWYgKHN0YXRlKCkgPT0gU2VydmljZVdvcmtlclN0
YXRlOjpBY3RpdmF0ZWQpIHsKKyAgICAgICAgaGFuZGxlcih0cnVlKTsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKyAgICBtX3doZW5BY3RpdmF0ZWRIYW5kbGVycy5hcHBlbmQoV1RGTW92ZShoYW5k
bGVyKSk7Cit9CisKK3ZvaWQgU1dTZXJ2ZXJXb3JrZXI6OnNldFN0YXRlKFNlcnZpY2VXb3JrZXJT
dGF0ZSBzdGF0ZSkKK3sKKyAgICBtX2RhdGEuc3RhdGUgPSBzdGF0ZTsKKworICAgIGlmIChzdGF0
ZSA9PSBTZXJ2aWNlV29ya2VyU3RhdGU6OkFjdGl2YXRlZCB8fCBzdGF0ZSA9PSBTZXJ2aWNlV29y
a2VyU3RhdGU6OlJlZHVuZGFudCkKKyAgICAgICAgY2FsbFdoZW5BY3RpdmF0ZWRIYW5kbGVyKHN0
YXRlID09IFNlcnZpY2VXb3JrZXJTdGF0ZTo6QWN0aXZhdGVkKTsKK30KKwordm9pZCBTV1NlcnZl
cldvcmtlcjo6Y2FsbFdoZW5BY3RpdmF0ZWRIYW5kbGVyKGJvb2wgc3VjY2VzcykKK3sKKyAgICBh
dXRvIHdoZW5BY3RpdmF0ZWRIYW5kbGVycyA9IFdURk1vdmUobV93aGVuQWN0aXZhdGVkSGFuZGxl
cnMpOworICAgIGZvciAoYXV0byYgaGFuZGxlciA6IHdoZW5BY3RpdmF0ZWRIYW5kbGVycykKKyAg
ICAgICAgaGFuZGxlcihzdWNjZXNzKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAj
ZW5kaWYgLy8gRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oIGIvU291cmNlL1dlYkNv
cmUvd29ya2Vycy9zZXJ2aWNlL3NlcnZlci9TV1NlcnZlcldvcmtlci5oCmluZGV4IGUxMjc1YzAw
MTFmYTM1MzA0OTcyMDI4MDljOTVkMGRiM2Q1MDVmMmMuLjM4YzExMjlkOWM1ZTA0Y2IyN2RjY2Qw
YjNkM2IwYjA2NTdjODkxYTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2Vy
dmljZS9zZXJ2ZXIvU1dTZXJ2ZXJXb3JrZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS93b3JrZXJz
L3NlcnZpY2Uvc2VydmVyL1NXU2VydmVyV29ya2VyLmgKQEAgLTU5LDYgKzU5LDggQEAgcHVibGlj
OgogCiAgICAgdm9pZCB0ZXJtaW5hdGUoKTsKIAorICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgd2hl
bkFjdGl2YXRlZChXVEY6OkZ1bmN0aW9uPHZvaWQoYm9vbCk+JiYpOworCiAgICAgZW51bSBjbGFz
cyBTdGF0ZSB7CiAgICAgICAgIFJ1bm5pbmcsCiAgICAgICAgIFRlcm1pbmF0aW5nLApAQCAtNzgs
NyArODAsNyBAQCBwdWJsaWM6CiAgICAgU1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uSWRlbnRp
ZmllciBjb250ZXh0Q29ubmVjdGlvbklkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2NvbnRl
eHRDb25uZWN0aW9uSWRlbnRpZmllcjsgfQogCiAgICAgU2VydmljZVdvcmtlclN0YXRlIHN0YXRl
KCkgY29uc3QgeyByZXR1cm4gbV9kYXRhLnN0YXRlOyB9Ci0gICAgdm9pZCBzZXRTdGF0ZShTZXJ2
aWNlV29ya2VyU3RhdGUgc3RhdGUpIHsgbV9kYXRhLnN0YXRlID0gc3RhdGU7IH0KKyAgICB2b2lk
IHNldFN0YXRlKFNlcnZpY2VXb3JrZXJTdGF0ZSk7CiAKICAgICBib29sIGhhc1BlbmRpbmdFdmVu
dHMoKSBjb25zdCB7IHJldHVybiBtX2hhc1BlbmRpbmdFdmVudHM7IH0KICAgICB2b2lkIHNldEhh
c1BlbmRpbmdFdmVudHMoYm9vbCk7CkBAIC0xMDQsNiArMTA2LDggQEAgcHVibGljOgogcHJpdmF0
ZToKICAgICBTV1NlcnZlcldvcmtlcihTV1NlcnZlciYsIFNXU2VydmVyUmVnaXN0cmF0aW9uJiwg
U1dTZXJ2ZXJUb0NvbnRleHRDb25uZWN0aW9uSWRlbnRpZmllciwgY29uc3QgVVJMJiwgY29uc3Qg
U3RyaW5nJiBzY3JpcHQsIFdvcmtlclR5cGUsIFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyKTsKIAor
ICAgIHZvaWQgY2FsbFdoZW5BY3RpdmF0ZWRIYW5kbGVyKGJvb2wgc3VjY2Vzcyk7CisKICAgICBT
V1NlcnZlciYgbV9zZXJ2ZXI7CiAgICAgU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbktleSBtX3Jl
Z2lzdHJhdGlvbktleTsKICAgICBTV1NlcnZlclRvQ29udGV4dENvbm5lY3Rpb25JZGVudGlmaWVy
IG1fY29udGV4dENvbm5lY3Rpb25JZGVudGlmaWVyOwpAQCAtMTEzLDYgKzExNyw3IEBAIHByaXZh
dGU6CiAgICAgU3RhdGUgbV9zdGF0ZSB7IFN0YXRlOjpOb3RSdW5uaW5nIH07CiAgICAgbXV0YWJs
ZSBzdGQ6Om9wdGlvbmFsPENsaWVudE9yaWdpbj4gbV9vcmlnaW47CiAgICAgYm9vbCBtX2lzU2tp
cFdhaXRpbmdGbGFnU2V0IHsgZmFsc2UgfTsKKyAgICBWZWN0b3I8V1RGOjpGdW5jdGlvbjx2b2lk
KGJvb2wpPj4gbV93aGVuQWN0aXZhdGVkSGFuZGxlcnM7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1N0b3JhZ2VQcm9jZXNzL1NlcnZpY2VX
b3JrZXIvV2ViU1dTZXJ2ZXJDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQvU3RvcmFnZVBy
b2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwCmluZGV4IDZkZGU3
MmQ0MGViNGZkNDc1MWQ1NjFjN2U4NzY0OGFmMzlhZDY2YzEuLmYzYTIyMjQ4ZjdiMzFmYTc1MTBl
ZTNmN2MzOTUxNDA4ZWM2MDlhMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU3RvcmFnZVBy
b2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rpb24uY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvU3RvcmFnZVByb2Nlc3MvU2VydmljZVdvcmtlci9XZWJTV1NlcnZlckNvbm5lY3Rp
b24uY3BwCkBAIC0xMjgsMTMgKzEyOCwzNiBAQCB2b2lkIFdlYlNXU2VydmVyQ29ubmVjdGlvbjo6
dXBkYXRlV29ya2VyU3RhdGVJbkNsaWVudChTZXJ2aWNlV29ya2VySWRlbnRpZmllciB3bwogCiB2
b2lkIFdlYlNXU2VydmVyQ29ubmVjdGlvbjo6c3RhcnRGZXRjaCh1aW50NjRfdCBmZXRjaElkZW50
aWZpZXIsIFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBS
ZXNvdXJjZVJlcXVlc3QmJiByZXF1ZXN0LCBGZXRjaE9wdGlvbnMmJiBvcHRpb25zLCBJUEM6OkZv
cm1EYXRhUmVmZXJlbmNlJiYgZm9ybURhdGEsIFN0cmluZyYmIHJlZmVycmVyKQogewotICAgIC8v
IEl0J3MgcG9zc2libGUgdGhpcyBzcGVjaWZpYyB3b3JrZXIgY2Fubm90IGJlIHJlLXJ1biAoZS5n
LiBpdHMgcmVnaXN0cmF0aW9uIGhhcyBiZWVuIHJlbW92ZWQpCi0gICAgc2VydmVyKCkucnVuU2Vy
dmljZVdvcmtlcklmTmVjZXNzYXJ5KHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCBbY29udGVudENv
bm5lY3Rpb24gPSBtX2NvbnRlbnRDb25uZWN0aW9uLmNvcHlSZWYoKSwgY29ubmVjdGlvbklkZW50
aWZpZXIgPSBpZGVudGlmaWVyKCksIGZldGNoSWRlbnRpZmllciwgc2VydmljZVdvcmtlcklkZW50
aWZpZXIgPSBzZXJ2aWNlV29ya2VySWRlbnRpZmllciwgcmVxdWVzdCA9IFdURk1vdmUocmVxdWVz
dCksIG9wdGlvbnMgPSBXVEZNb3ZlKG9wdGlvbnMpLCBmb3JtRGF0YSA9IFdURk1vdmUoZm9ybURh
dGEpLCByZWZlcnJlciA9IFdURk1vdmUocmVmZXJyZXIpXShib29sIHN1Y2Nlc3MsIGF1dG8mIGNv
bnRleHRDb25uZWN0aW9uKSB7Ci0gICAgICAgIGlmIChzdWNjZXNzKQotICAgICAgICAgICAgc2Vu
ZFRvQ29udGV4dFByb2Nlc3MoY29udGV4dENvbm5lY3Rpb24sIE1lc3NhZ2VzOjpXZWJTV0NvbnRl
eHRNYW5hZ2VyQ29ubmVjdGlvbjo6U3RhcnRGZXRjaCB7IGNvbm5lY3Rpb25JZGVudGlmaWVyLCBm
ZXRjaElkZW50aWZpZXIsIHNlcnZpY2VXb3JrZXJJZGVudGlmaWVyLCByZXF1ZXN0LCBvcHRpb25z
LCBmb3JtRGF0YSwgcmVmZXJyZXIgfSk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIGNvbnRl
bnRDb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpTZXJ2aWNlV29ya2VyQ2xpZW50RmV0Y2g6OkRp
ZE5vdEhhbmRsZSB7IH0sIGZldGNoSWRlbnRpZmllcik7Ci0gICAgfSk7CisgICAgYXV0byogd29y
a2VyID0gc2VydmVyKCkud29ya2VyQnlJRChzZXJ2aWNlV29ya2VySWRlbnRpZmllcik7CisgICAg
aWYgKCF3b3JrZXIpIHsKKyAgICAgICAgbV9jb250ZW50Q29ubmVjdGlvbi0+c2VuZChNZXNzYWdl
czo6U2VydmljZVdvcmtlckNsaWVudEZldGNoOjpEaWROb3RIYW5kbGUgeyB9LCBmZXRjaElkZW50
aWZpZXIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgYXV0byBydW5TZXJ2ZXJXb3Jr
ZXJBbmRTdGFydEZldGNoID0gW3dlYWtUaGlzID0gbWFrZVdlYWtQdHIodGhpcyksIHRoaXMsIGZl
dGNoSWRlbnRpZmllciwgc2VydmljZVdvcmtlcklkZW50aWZpZXIsIHJlcXVlc3QgPSBXVEZNb3Zl
KHJlcXVlc3QpLCBvcHRpb25zID0gV1RGTW92ZShvcHRpb25zKSwgZm9ybURhdGEgPSBXVEZNb3Zl
KGZvcm1EYXRhKSwgcmVmZXJyZXIgPSBXVEZNb3ZlKHJlZmVycmVyKV0oYm9vbCBzdWNjZXNzKSBt
dXRhYmxlIHsKKyAgICAgICAgaWYgKCF3ZWFrVGhpcykKKyAgICAgICAgICAgIHJldHVybjsKKwor
ICAgICAgICBpZiAoIXN1Y2Nlc3MpIHsKKyAgICAgICAgICAgIG1fY29udGVudENvbm5lY3Rpb24t
PnNlbmQoTWVzc2FnZXM6OlNlcnZpY2VXb3JrZXJDbGllbnRGZXRjaDo6RGlkTm90SGFuZGxlIHsg
fSwgZmV0Y2hJZGVudGlmaWVyKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisg
ICAgICAgIHNlcnZlcigpLnJ1blNlcnZpY2VXb3JrZXJJZk5lY2Vzc2FyeShzZXJ2aWNlV29ya2Vy
SWRlbnRpZmllciwgW3dlYWtUaGlzID0gV1RGTW92ZSh3ZWFrVGhpcyksIHRoaXMsIGZldGNoSWRl
bnRpZmllciwgc2VydmljZVdvcmtlcklkZW50aWZpZXIsIHJlcXVlc3QgPSBXVEZNb3ZlKHJlcXVl
c3QpLCBvcHRpb25zID0gV1RGTW92ZShvcHRpb25zKSwgZm9ybURhdGEgPSBXVEZNb3ZlKGZvcm1E
YXRhKSwgcmVmZXJyZXIgPSBXVEZNb3ZlKHJlZmVycmVyKV0oYm9vbCBzdWNjZXNzLCBhdXRvJiBj
b250ZXh0Q29ubmVjdGlvbikgeworICAgICAgICAgICAgaWYgKCF3ZWFrVGhpcykKKyAgICAgICAg
ICAgICAgICByZXR1cm47CisKKyAgICAgICAgICAgIGlmIChzdWNjZXNzKQorICAgICAgICAgICAg
ICAgIHNlbmRUb0NvbnRleHRQcm9jZXNzKGNvbnRleHRDb25uZWN0aW9uLCBNZXNzYWdlczo6V2Vi
U1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb246OlN0YXJ0RmV0Y2ggeyBpZGVudGlmaWVyKCksIGZl
dGNoSWRlbnRpZmllciwgc2VydmljZVdvcmtlcklkZW50aWZpZXIsIHJlcXVlc3QsIG9wdGlvbnMs
IGZvcm1EYXRhLCByZWZlcnJlciB9KTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAg
ICBtX2NvbnRlbnRDb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpTZXJ2aWNlV29ya2VyQ2xpZW50
RmV0Y2g6OkRpZE5vdEhhbmRsZSB7IH0sIGZldGNoSWRlbnRpZmllcik7CisgICAgICAgIH0pOwor
ICAgIH07CisKKyAgICBpZiAod29ya2VyLT5zdGF0ZSgpID09IFNlcnZpY2VXb3JrZXJTdGF0ZTo6
QWN0aXZhdGluZykKKyAgICAgICAgd29ya2VyLT53aGVuQWN0aXZhdGVkKFdURk1vdmUocnVuU2Vy
dmVyV29ya2VyQW5kU3RhcnRGZXRjaCkpOworICAgIGVsc2UKKyAgICAgICAgcnVuU2VydmVyV29y
a2VyQW5kU3RhcnRGZXRjaCh0cnVlKTsKIH0KIAogdm9pZCBXZWJTV1NlcnZlckNvbm5lY3Rpb246
OnBvc3RNZXNzYWdlVG9TZXJ2aWNlV29ya2VyKFNlcnZpY2VXb3JrZXJJZGVudGlmaWVyIGRlc3Rp
bmF0aW9uSWRlbnRpZmllciwgSVBDOjpEYXRhUmVmZXJlbmNlJiYgbWVzc2FnZSwgY29uc3QgU2Vy
dmljZVdvcmtlck9yQ2xpZW50SWRlbnRpZmllciYgc291cmNlSWRlbnRpZmllcikKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nCmluZGV4IDE3MjkwYzRmY2MzY2FmOTZkYjgzMDUwYjEyNGI4ZWJm
ZmQzMmI4MDguLjg1ZGZmODU1NjEwOTRlNjU4OGIzMzY0MGI2MzA0YTk1NGM2MWJjMWQgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE3LTEyLTE4ICBD
aHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgSGFuZGxlIEZldGNoIHNo
b3VsZCB3YWl0IGZvciB0aGUgc2VydmljZSB3b3JrZXIncyBzdGF0ZSB0byBiZWNvbWUgYWN0aXZh
dGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODA5
NTkKKworICAgICAgICBSZXZpZXdlZCBieSBZb3Vlbm4gRmFibGV0LgorCisgICAgICAgIFJlYmFz
ZWxpbmUgV1BUIHRlc3QgdGhhdCBpcyBub3cgcGFzc2luZy4KKworICAgICAgICAqIHdlYi1wbGF0
Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtd2FpdHMtZm9y
LWFjdGl2YXRlLmh0dHBzLWV4cGVjdGVkLnR4dDoKKwogMjAxNy0xMi0xOSAgWW91ZW5uIEZhYmxl
dCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgU2VydmljZSBXb3JrZXIgc2hvdWxkIG5v
dCBjbGVhbiBIVFRQIGhlYWRlcnMgYWRkZWQgYnkgdGhlIGFwcGxpY2F0aW9uIG9yIGJ5IGZldGNo
IHNwZWNpZmljYXRpb24gYmVmb3JlIHNlcnZpY2Ugd29ya2VyIGludGVyY2VwdGlvbgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtd2FpdHMtZm9yLWFjdGl2YXRlLmh0dHBzLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
c2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXdhaXRzLWZvci1hY3RpdmF0ZS5o
dHRwcy1leHBlY3RlZC50eHQKaW5kZXggNTQ2MzU4MTA3ZTkzNTAxYjdlMTc4ZWU5MGE3ZWEwMjMz
YjhmMzRjYS4uZDdmYmJiMjMxOGIxZjk4OWE0NmFkNjQzZWRkOTI4ZWJkNWE1ZTgzZCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNl
LXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtd2FpdHMtZm9yLWFjdGl2YXRlLmh0dHBzLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC13YWl0cy1mb3ItYWN0aXZh
dGUuaHR0cHMtZXhwZWN0ZWQudHh0CkBAIC0xLDQgKzEsMyBAQAogCi0KLUZBSUwgRmV0Y2ggZXZl
bnRzIHNob3VsZCB3YWl0IGZvciB0aGUgYWN0aXZhdGUgZXZlbnQgdG8gY29tcGxldGUuIGFzc2Vy
dF91bnJlYWNoZWQ6IHVuZXhwZWN0ZWQgcmVqZWN0aW9uOiBhc3NlcnRfZXF1YWxzOiBmcmFtZSBz
aG91bGQgbm90IGJlIGxvYWRlZCBleHBlY3RlZCAodW5kZWZpbmVkKSB1bmRlZmluZWQgYnV0IGdv
dCAob2JqZWN0KSBFbGVtZW50IG5vZGUgPGlmcmFtZSBjbGFzcz0idGVzdC1pZnJhbWUiIHNyYz0i
cmVzb3VyY2VzL2ZldGNoLXdhaXRzLWZvLi4uIFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFT
UyBGZXRjaCBldmVudHMgc2hvdWxkIHdhaXQgZm9yIHRoZSBhY3RpdmF0ZSBldmVudCB0byBjb21w
bGV0ZS4gCiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>