<?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>141235</bug_id>
          
          <creation_ts>2015-02-03 23:39:17 -0800</creation_ts>
          <short_desc>Tests don&apos;t work on some bots: Failed to stop wptwk</short_desc>
          <delta_ts>2015-02-21 12:22:29 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P1</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>glenn</cc>
    
    <cc>rniwa</cc>
    
    <cc>youennf</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1066758</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-02-03 23:39:17 -0800</bug_when>
    <thetext>I see tests fail on multiple bots tonight:

https://build.webkit.org/builders/Apple%20Mavericks%20Release%20WK2%20(Tests)/builds/11276
https://build.webkit.org/builders/Apple%20Mavericks%20Debug%20WK2%20(Tests)/builds/9271

ServerError: Failed to stop wptwk: please go to web platform test server log file to get the PID list</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1066768</commentid>
    <comment_count>1</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-02-04 00:26:02 -0800</bug_when>
    <thetext>OK.
I will mark as failed the two tests so that it does not disturb the bots and will investigate this further.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1066839</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-02-04 09:45:55 -0800</bug_when>
    <thetext>The bots are still completely broken - it&apos;s not just the two tests, it&apos;s an exception in run-webkit-tests that blocks reporting any results at all.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1066895</commentid>
    <comment_count>3</comment_count>
      <attachid>246043</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-02-04 13:04:30 -0800</bug_when>
    <thetext>Created attachment 246043
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1066899</commentid>
    <comment_count>4</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-02-04 13:45:09 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Created attachment 246043 [details]
&gt; Patch

This patch fixes the issue that broke the bots (uncaught exception).

The underlying issue is that run-webkit-tests is not always able to stop the wpt server properly. Reasons are unclear to me.

To make things more robust, this patch kills not only the launcher process but also all server processes. This should allow clean restarting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1067092</commentid>
    <comment_count>5</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-02-05 07:39:50 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #3)
&gt; &gt; Created attachment 246043 [details]
&gt; &gt; Patch
&gt; 
&gt; The underlying issue is that run-webkit-tests is not always able to stop the
&gt; wpt server properly. Reasons are unclear to me.

I looked at the logs.
The bots stopped in the middle of layout test runs.
My previous patch was not handling the recovery correctly :(
The uploaded fix for bug 141235 should handle that issue, and probably a bit more.
 
It may be interesting to do &quot;ps -A | grep python&quot; on one or both of the corrupted bots when they do not run any task.
There may be 4 or 5 python processes remaining, with ids close one to the others. It might be best to kill them or restart the bots.

The current patch should be able to cleanly kill such processes in the case of a layout test run failure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1069400</commentid>
    <comment_count>6</comment_count>
      <attachid>246640</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-02-16 03:09:36 -0800</bug_when>
    <thetext>Created attachment 246640
Adding unit tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070619</commentid>
    <comment_count>7</comment_count>
      <attachid>246640</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2015-02-19 23:38:49 -0800</bug_when>
    <thetext>Comment on attachment 246640
Adding unit tests

View in context: https://bugs.webkit.org/attachment.cgi?id=246640&amp;action=review

Looks sane to me.

&gt; Tools/ChangeLog:9
&gt; +        Added killing of server subprocesses if still running.

Just say &quot;kill the server wpt subprocess &quot; in stop().

&gt; Tools/Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:67
&gt; +        self._servers_file = self._filesystem.join(self._runtime_path, &apos;%s_servers.json&apos; % (self._name))

Can&apos;t we just create a temporary file instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070620</commentid>
    <comment_count>8</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-02-19 23:44:50 -0800</bug_when>
    <thetext>Thanks for the review.

&gt; &gt; Tools/ChangeLog:9
&gt; &gt; +        Added killing of server subprocesses if still running.
&gt; 
&gt; Just say &quot;kill the server wpt subprocess &quot; in stop().

OK

&gt; &gt; Tools/Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:67
&gt; &gt; +        self._servers_file = self._filesystem.join(self._runtime_path, &apos;%s_servers.json&apos; % (self._name))
&gt; 
&gt; Can&apos;t we just create a temporary file instead?

self._runtime_path is a temp dir in which one can find the pid file for apache server or wpt server launcher.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070980</commentid>
    <comment_count>9</comment_count>
      <attachid>247051</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2015-02-21 11:30:13 -0800</bug_when>
    <thetext>Created attachment 247051
Updated changelog</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070990</commentid>
    <comment_count>10</comment_count>
      <attachid>247051</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-02-21 12:22:22 -0800</bug_when>
    <thetext>Comment on attachment 247051
Updated changelog

Clearing flags on attachment: 247051

Committed r180480: &lt;http://trac.webkit.org/changeset/180480&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070991</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-02-21 12:22:29 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>246043</attachid>
            <date>2015-02-04 13:04:30 -0800</date>
            <delta_ts>2015-02-16 03:09:27 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141235-20150204220428.patch</filename>
            <type>text/plain</type>
            <size>8611</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc5NjIxCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggODYzZWFmZWM4NmEyZjg2MDg3OTBjMzQ5ZGIzMGZkYTk3
ODI4YjBjYS4uMjNhZDM2OGUzYmQ4MTMzMjg2YjE3ZDA2YWNmYjE5N2FlYmYwMTY1ZCAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIy
IEBACisyMDE1LTAyLTA0ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24u
ZnI+CisKKyAgICAgICAgVGVzdHMgZG9uJ3Qgd29yayBvbiBzb21lIGJvdHM6IEZhaWxlZCB0byBz
dG9wIHdwdHdrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNDEyMzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBBZGRlZCBsb2dnaW5nIG9mIHNlcnZlciBzdWJwcm9jZXNzZXMgaW4gbGF1bmNoZXIgc2NyaXB0
LgorICAgICAgICBBZGRlZCBraWxsaW5nIG9mIHNlcnZlciBzdWJwcm9jZXNzZXMgaWYgbGF1bmNo
ZXIgcHJvY2VzcyBjYW5ub3Qgc3RvcCBub3JtYWxseS4KKyAgICAgICAgUmVkZWZpbmVkIHNlcnZl
ciBzdG9wIHRvIGNhdGNoIGFsbCBleGNlcHRpb25zIHNvIHRoYXQgdGhleSBkbyBub3QgYnJlYWsg
dGhlIHJ1bnMuCisgICAgICAgIFJlbW92ZWQgZW1wdHkgX19pbml0LnB5X18gZmlsZSBjcmVhdGlv
biBhcyBpbXBvcnRlciBub3cgZW5zdXJlcyB0aGVzZSBmaWxlcyBjYW5ub3QgYmUgZW1wdHkgYW55
bW9yZS4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMv
d2ViX3BsYXRmb3JtX3Rlc3RfbGF1bmNoZXIucHk6CisgICAgICAgIChtYWluKToKKyAgICAgICAg
KiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dlYl9wbGF0Zm9ybV90ZXN0
X3NlcnZlci5weToKKyAgICAgICAgKFdlYlBsYXRmb3JtVGVzdFNlcnZlci5fX2luaXRfXyk6Cisg
ICAgICAgIChXZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIuc3RvcCk6CisgICAgICAgIChXZWJQbGF0Zm9y
bVRlc3RTZXJ2ZXIuX3N0b3BfcnVubmluZ19zZXJ2ZXIpOgorCiAyMDE1LTAyLTA0ICBBbGV4ZXkg
UHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgogCiAgICAgICAgIHJ1bi13ZWJraXQtdGVzdHMg
ZG9lc24ndCBhbHdheXMgY2FwdHVyZSBBU2FuIHZpb2xhdGlvbiByZXBvcnRzCmRpZmYgLS1naXQg
YS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dlYl9wbGF0Zm9y
bV90ZXN0X2xhdW5jaGVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
c2VydmVycy93ZWJfcGxhdGZvcm1fdGVzdF9sYXVuY2hlci5weQppbmRleCAzZjI2NmUxM2UyMjQ2
NTQ5NzBkZDMwODQwNjE2MGI4YzQyMTQ1ZjQ2Li41YjY0YWE1NWYyYTA3ODhjYzM0ZTZkZDA4OWEx
YzE2OTlkY2ZiMWQ1IDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9zZXJ2ZXJzL3dlYl9wbGF0Zm9ybV90ZXN0X2xhdW5jaGVyLnB5CisrKyBiL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3RfbGF1
bmNoZXIucHkKQEAgLTIsNiArMiw3IEBACiAjIGh0dHA6Ly93d3cudzMub3JnL0NvbnNvcnRpdW0v
TGVnYWwvMjAwOC8wMy1ic2QtbGljZW5zZS5odG1sCiAKIGltcG9ydCBpbXAKK2ltcG9ydCBqc29u
CiBpbXBvcnQgbG9nZ2luZwogaW1wb3J0IG9zCiBpbXBvcnQgc3lzCkBAIC05LDE4ICsxMCw2IEBA
IGltcG9ydCBzeXMKIGxvZ2dlciA9IGxvZ2dpbmcuZ2V0TG9nZ2VyKCd3ZWItcGxhdGZvcm0tdGVz
dC1sYXVuY2hlcicpCiBsb2dnaW5nLmJhc2ljQ29uZmlnKGxldmVsPWxvZ2dpbmcuREVCVUcpCiAK
LQotZGVmIGNyZWF0ZV93cHRfZW1wdHlfZmlsZV9pZl9uZWVkZWQocmVsYXRpdmVfcGF0aCk6Ci0g
ICAgZmlsZV9wYXRoID0gb3MucGF0aC5qb2luKG9zLmdldGN3ZCgpLCBvcy5wYXRoLnNlcC5qb2lu
KHJlbGF0aXZlX3BhdGgpKQotICAgIGlmIG5vdCBvcy5wYXRoLmlzZmlsZShmaWxlX3BhdGgpOgot
ICAgICAgICBsb2dnZXIud2FybmluZyhmaWxlX3BhdGggKyAnIGlzIG5vdCBwcmVzZW50LCBjcmVh
dGluZyBpdCBhcyBlbXB0eSBmaWxlJykKLSAgICAgICAgb3BlbihmaWxlX3BhdGgsICdhJykuY2xv
c2UoKQotCi0jRklYTUU6IEhhbmRsZSBlbXB0eSBmaWxlcyBhdCBpbXBvcnRlci9hdXRvLWluc3Rh
bGxlciBsZXZlbC4KLWNyZWF0ZV93cHRfZW1wdHlfZmlsZV9pZl9uZWVkZWQoWyd0b29scycsICdf
X2luaXRfXy5weSddKQotY3JlYXRlX3dwdF9lbXB0eV9maWxlX2lmX25lZWRlZChbJ3Rvb2xzJywg
J3NjcmlwdHMnLCAnX19pbml0X18ucHknXSkKLWNyZWF0ZV93cHRfZW1wdHlfZmlsZV9pZl9uZWVk
ZWQoWyd0b29scycsICd3ZWJkcml2ZXInLCAnd2ViZHJpdmVyJywgJ19faW5pdF9fLnB5J10pCi0K
IHRyeToKICAgICBzeXMucGF0aC5pbnNlcnQoMCwgb3MuZ2V0Y3dkKCkpCiAgICAgaW1wb3J0IHNl
cnZlIGFzIFdlYlBsYXRmb3JtVGVzdFNlcnZlcgpAQCAtMzgsMTMgKzI3LDE5IEBAIGRlZiBtYWlu
KGFyZ3YsIHN0ZG91dCwgc3RkZXJyKToKICAgICBjb25maWcgPSBXZWJQbGF0Zm9ybVRlc3RTZXJ2
ZXIubG9hZF9jb25maWcoImNvbmZpZy5kZWZhdWx0Lmpzb24iLCAiY29uZmlnLmpzb24iKQogICAg
IFdlYlBsYXRmb3JtVGVzdFNlcnZlci5zZXR1cF9sb2dnZXIoY29uZmlnWyJsb2dfbGV2ZWwiXSkK
ICAgICBzc2xfZW52ID0gV2ViUGxhdGZvcm1UZXN0U2VydmVyLmdldF9zc2xfZW52aXJvbm1lbnQo
Y29uZmlnKQorICAgIGxvZ2dlZF9zZXJ2ZXJzID0gW10KICAgICB3aXRoIFdlYlBsYXRmb3JtVGVz
dFNlcnZlci5nZXRfc3NsX2Vudmlyb25tZW50KGNvbmZpZykgYXMgc3NsX2VudjoKICAgICAgICAg
Y29uZmlnXywgc3RhcnRlZF9zZXJ2ZXJzID0gV2ViUGxhdGZvcm1UZXN0U2VydmVyLnN0YXJ0KGNv
bmZpZywgc3NsX2VudikKIAogICAgICAgICBmb3IgcHJvdG9jb2wsIHNlcnZlcnMgaW4gc3RhcnRl
ZF9zZXJ2ZXJzLml0ZW1zKCk6CiAgICAgICAgICAgICBmb3IgcG9ydCwgcHJvY2VzcyBpbiBzZXJ2
ZXJzOgorICAgICAgICAgICAgICAgIGxvZ2dlZF9zZXJ2ZXJzLmFwcGVuZCh7InByb3RvY29sIjog
cHJvdG9jb2wsICJwb3J0IjogcG9ydCwgInBpZCI6IHByb2Nlc3MucHJvYy5waWR9KQogICAgICAg
ICAgICAgICAgIGxvZ2dlci5pbmZvKCIlcywgcG9ydDolZCwgcGlkOiVkIiAlIChwcm90b2NvbCwg
cG9ydCwgcHJvY2Vzcy5wcm9jLnBpZCkpCiAKKyAgICAjIFdyaXRlIHBpZHMgaW4gYSBmaWxlIGlu
IGNhc2UgYWJydXB0IHNodXRkb3duIGlzIG5lZWRlZAorICAgIHdpdGggb3Blbihhcmd2WzBdLCAi
d2IiKSBhcyBzZXJ2ZXJzX2ZpbGU6CisgICAgICAgIGpzb24uZHVtcChsb2dnZWRfc2VydmVycywg
c2VydmVyc19maWxlKQorCiAgICAgc3lzLnN0ZGluLnJlYWQoMSkKIAogCmRpZmYgLS1naXQgYS9U
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dlYl9wbGF0Zm9ybV90
ZXN0X3NlcnZlci5weSBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZl
cnMvd2ViX3BsYXRmb3JtX3Rlc3Rfc2VydmVyLnB5CmluZGV4IDc2YzIzZGFlMDMwNTFhZWJhMDIy
MTE4YzAxOWM2NWM3OTg4ZThmOGQuLmVjZTk1NDFhZTVlOWUzOWYzNGUwNWQxMTk2YWRjNjYyOTRl
OWZiOTIgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3Nl
cnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3Rfc2VydmVyLnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3Rfc2VydmVyLnB5CkBA
IC02NCw2ICs2NCw4IEBAIGNsYXNzIFdlYlBsYXRmb3JtVGVzdFNlcnZlcihodHRwX3NlcnZlcl9i
YXNlLkh0dHBTZXJ2ZXJCYXNlKToKICAgICAgICAgc2VsZi5fcGlkX2ZpbGUgPSBwaWRmaWxlCiAg
ICAgICAgIGlmIG5vdCBzZWxmLl9waWRfZmlsZToKICAgICAgICAgICAgIHNlbGYuX3BpZF9maWxl
ID0gc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYuX3J1bnRpbWVfcGF0aCwgJyVzLnBpZCcgJSBz
ZWxmLl9uYW1lKQorICAgICAgICBzZWxmLl9zZXJ2ZXJzX2ZpbGUgPSBzZWxmLl9maWxlc3lzdGVt
LmpvaW4oc2VsZi5fcnVudGltZV9wYXRoLCAnJXNfc2VydmVycy5qc29uJyAlIChzZWxmLl9uYW1l
KSkKKwogICAgICAgICBzZWxmLl9zdGRvdXRfZGF0YSA9IE5vbmUKICAgICAgICAgc2VsZi5fc3Rk
ZXJyX2RhdGEgPSBOb25lCiAgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0gPSBwb3J0X29iai5ob3N0
LmZpbGVzeXN0ZW0KQEAgLTczLDcgKzc1LDcgQEAgY2xhc3MgV2ViUGxhdGZvcm1UZXN0U2VydmVy
KGh0dHBfc2VydmVyX2Jhc2UuSHR0cFNlcnZlckJhc2UpOgogICAgICAgICBzZWxmLl9yZXNvdXJj
ZXNfZmlsZXNfdG9fY29weSA9IFsndGVzdGhhcm5lc3MuanMnLCAndGVzdGhhcm5lc3MuY3NzJywg
J3Rlc3RoYXJuZXNzcmVwb3J0LmpzJ10KIAogICAgICAgICBjdXJyZW50X2Rpcl9wYXRoID0gc2Vs
Zi5fZmlsZXN5c3RlbS5hYnNwYXRoKHNlbGYuX2ZpbGVzeXN0ZW0uc3BsaXQoX19maWxlX18pWzBd
KQotICAgICAgICBzZWxmLl9zdGFydF9jbWQgPSBbInB5dGhvbiIsIHNlbGYuX2ZpbGVzeXN0ZW0u
am9pbihjdXJyZW50X2Rpcl9wYXRoLCAid2ViX3BsYXRmb3JtX3Rlc3RfbGF1bmNoZXIucHkiKV0K
KyAgICAgICAgc2VsZi5fc3RhcnRfY21kID0gWyJweXRob24iLCBzZWxmLl9maWxlc3lzdGVtLmpv
aW4oY3VycmVudF9kaXJfcGF0aCwgIndlYl9wbGF0Zm9ybV90ZXN0X2xhdW5jaGVyLnB5IiksIHNl
bGYuX3NlcnZlcnNfZmlsZV0KICAgICAgICAgc2VsZi5fZG9jX3Jvb3RfcGF0aCA9IHBvcnRfb2Jq
LnBhdGhfZnJvbV93ZWJraXRfYmFzZSgiTGF5b3V0VGVzdHMiLCBzZWxmLl9kb2Nfcm9vdCkKIAog
ICAgIGRlZiBfaW5zdGFsbF9tb2R1bGVzKHNlbGYpOgpAQCAtMTI4LDYgKzEzMCwxMyBAQCBjbGFz
cyBXZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIoaHR0cF9zZXJ2ZXJfYmFzZS5IdHRwU2VydmVyQmFzZSk6
CiAKICAgICAgICAgcmV0dXJuIHNlbGYuX3Byb2Nlc3MucGlkCiAKKyAgICBkZWYgc3RvcChzZWxm
KToKKyAgICAgICAgdHJ5OgorICAgICAgICAgICAgc2VsZi5fc3RvcF9ydW5uaW5nX3NlcnZlcigp
CisgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24sIGU6CisgICAgICAgICAgICBfbG9nLndhcm5pbmco
J0dvdCBleGNlcHRpb24gd2hpbGUgdHJ5aW5nIHRvIHN0b3Agc2VydmVyICVzJyAlIChzZWxmLl9u
YW1lKSkKKyAgICAgICAgICAgIF9sb2cud2FybmluZyhlKQorCiAgICAgZGVmIF9zdG9wX3J1bm5p
bmdfc2VydmVyKHNlbGYpOgogICAgICAgICBfbG9nLmRlYnVnKCdTdG9wcGluZyAlcyBzZXJ2ZXIn
ICUgKHNlbGYuX25hbWUpKQogICAgICAgICBzZWxmLl9jbGVhbl93ZWJraXRfdGVzdF9maWxlcygp
CkBAIC0xMzksNiArMTQ4LDIzIEBAIGNsYXNzIFdlYlBsYXRmb3JtVGVzdFNlcnZlcihodHRwX3Nl
cnZlcl9iYXNlLkh0dHBTZXJ2ZXJCYXNlKToKICAgICAgICAgaWYgc2VsZi5fd3NvdXQ6CiAgICAg
ICAgICAgICBzZWxmLl93c291dC5jbG9zZSgpCiAgICAgICAgICAgICBzZWxmLl93c291dCA9IE5v
bmUKLSAgICAgICAgaWYgc2VsZi5fZXhlY3V0aXZlLmNoZWNrX3J1bm5pbmdfcGlkKHNlbGYuX3Bp
ZCk6Ci0gICAgICAgICAgICByYWlzZSBodHRwX3NlcnZlcl9iYXNlLlNlcnZlckVycm9yKCdGYWls
ZWQgdG8gc3RvcCAlczogcGxlYXNlIGdvIHRvIHdlYiBwbGF0Zm9ybSB0ZXN0IHNlcnZlciBsb2cg
ZmlsZSB0byBnZXQgdGhlIFBJRCBsaXN0JyAlIChzZWxmLl9uYW1lKSkKLSAgICAgICAgc2VsZi5f
ZmlsZXN5c3RlbS5yZW1vdmUoc2VsZi5fcGlkX2ZpbGUpCisKKyAgICAgICAgcnVubmluZ19waWRz
ID0gc2VsZi5fZXhlY3V0aXZlLnJ1bm5pbmdfcGlkcygpCisgICAgICAgIGlmIHNlbGYuX3BpZCBp
biBydW5uaW5nX3BpZHM6CisgICAgICAgICAgICBfbG9nLndhcm5pbmcoJ0Nhbm5vdCBzdG9wICVz
IHNlcnZlciBub3JtYWxseS4nICUgKHNlbGYuX25hbWUpKQorICAgICAgICAgICAgX2xvZy53YXJu
aW5nKCdLaWxsaW5nIHNlcnZlciBsYXVuY2hlciBwcm9jZXNzIChwaWQ6ICVkKS4nICUgKHNlbGYu
X3BpZCkpCisgICAgICAgICAgICBzZWxmLl9leGVjdXRpdmUua2lsbF9wcm9jZXNzKHNlbGYuX3Bp
ZCkKKworICAgICAgICBpZiBzZWxmLl9maWxlc3lzdGVtLmV4aXN0cyhzZWxmLl9waWRfZmlsZSk6
CisgICAgICAgICAgICBzZWxmLl9maWxlc3lzdGVtLnJlbW92ZShzZWxmLl9waWRfZmlsZSkKKwor
ICAgICAgICBpZiBzZWxmLl9maWxlc3lzdGVtLmV4aXN0cyhzZWxmLl9zZXJ2ZXJzX2ZpbGUpOgor
ICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAgICAgIGpzb25fZGF0YSA9IHNlbGYuX2ZpbGVz
eXN0ZW0ucmVhZF90ZXh0X2ZpbGUoc2VsZi5fc2VydmVyc19maWxlKQorICAgICAgICAgICAgICAg
IHN0YXJ0ZWRfc2VydmVycyA9IGpzb24ubG9hZHMoanNvbl9kYXRhKQorICAgICAgICAgICAgICAg
IGZvciBzZXJ2ZXIgaW4gc3RhcnRlZF9zZXJ2ZXJzOgorICAgICAgICAgICAgICAgICAgICBpZiBz
ZXJ2ZXJbJ3BpZCddIGluIHJ1bm5pbmdfcGlkczoKKyAgICAgICAgICAgICAgICAgICAgICAgIF9s
b2cud2FybmluZygnS2lsbGluZyAgc2VydmVyIHByb2Nlc3MgKHByb3RvY29sOiAlcyAsIHBvcnQ6
ICVkLCBwaWQ6ICVkKS4nICUgKHNlcnZlclsncHJvdG9jb2wnXSwgc2VydmVyWydwb3J0J10sIHNl
cnZlclsncGlkJ10pKQorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fZXhlY3V0aXZlLmtp
bGxfcHJvY2VzcyhzZXJ2ZXJbJ3BpZCddKQorICAgICAgICAgICAgZmluYWxseToKKyAgICAgICAg
ICAgICAgICBzZWxmLl9maWxlc3lzdGVtLnJlbW92ZShzZWxmLl9zZXJ2ZXJzX2ZpbGUpCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5k
ZXggYmJlYjViZWY2ZGEzMmYzYTgxN2E2OWFmMjU4OWJlNTk0OThkOTg5Ny4uOGY1MDM4NTFjZjNk
NWM1NzdhODRlYmZkMzkzOWIyNzJjMWI3Nzc5ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE1
LTAyLTA0ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24uZnI+CisKKyAg
ICAgICAgVGVzdHMgZG9uJ3Qgd29yayBvbiBzb21lIGJvdHM6IEZhaWxlZCB0byBzdG9wIHdwdHdr
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDEyMzUK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RF
eHBlY3RhdGlvbnM6IE1hcmtpbmcgd2ViLXBsYXRmb3JtLXRlc3RzIGFzIGZhaWxlZCBvciBwYXNz
ZWQgdW50aWwgd3B0IHNlcnZlciBwcm92ZXMgdG8gYmUgc3RhYmxlLgorCiAyMDE1LTAyLTA0ICBK
ZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtXZWJBdWRpb10gQXVk
aW9CdWZmZXJTb3VyY2VOb2RlcyBzaG91bGQgYWNjdXJhdGVseSBwbGF5IGJhY2t3YXJkcyBpZiBn
aXZlbiBhIG5lZ2F0aXZlIHBsYXliYWNrUmF0ZS4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL1Rl
c3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDg1NzUw
M2RiMTNhMmJmMzlkMmNkNjIwYzMzMTI0NzA1M2U0YWY4YjIuLjE3Zjg4MWFmMTI2MWIwZjJkYTc0
MmFkOTk1NjczMzRlOTMxZDc0M2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL1Rlc3RFeHBlY3Rh
dGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjM1LDggKzIzNSw5
IEBAIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaW1hZ2VzIFsgU2tpcCBdCiBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Rvb2xzIFsgU2tpcCBdCiAKICMgVzNDIGRvbXBh
cnNpbmcgdGVzdCBzdWl0ZQotIyBCdWcgMTQxMjM1OiBUZXN0cyBtYXJrZWQgYXMgU2tpcCB1bnRp
bCBiZWluZyBhYmxlIHRvIHJlbGF1bmNoIHdwdCBzZXJ2ZXIgcHJvcGVybHkKLWltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMgWyBTa2lwIF0KKyMgVGVzdHMgbWFya2VkIGFzIHBhc3Mgb3Ig
ZmFpbCB1bnRpbCB3cHQgc2VydmVyIHByb3ZlcyB0byBiZSBzdGFibGUgZW5vdWdoCitpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2RvbXBhcnNpbmcvRE9NUGFyc2VyLXBhcnNlRnJvbVN0
cmluZy1odG1sLmh0bWwgWyBQYXNzIEZhaWx1cmUgXQoraW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9kb21wYXJzaW5nL2luc2VydC1hZGphY2VudC5odG1sIFsgUGFzcyBGYWlsdXJlIF0K
IAogIyBJbXBvcnRlZCBXM0MgY2FudmFzIGZhaWxlZCB0ZXN0cwogd2Via2l0Lm9yZy9iLzEzODY3
NiBpbXBvcnRlZC93M2MvY2FudmFzLzJkLnBhdHRlcm4uaW1hZ2UubnVsbC5odG1sIFsgRmFpbHVy
ZSBdCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>246640</attachid>
            <date>2015-02-16 03:09:36 -0800</date>
            <delta_ts>2015-02-21 11:29:44 -0800</delta_ts>
            <desc>Adding unit tests</desc>
            <filename>bug-141235-20150216120931.patch</filename>
            <type>text/plain</type>
            <size>12831</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwMTI2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMDYyZTYyYWRhZGIzNmJkODUwMTVlNzg2ZjFjNzUzYmVi
MTQzNzJhZi4uMTJlYWMxNzkyNjllYzc5MDljZWQwYzZkMDJkMWVlODJkZjcyNDMwYiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMw
IEBACisyMDE1LTAyLTE2ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24u
ZnI+CisKKyAgICAgICAgVGVzdHMgZG9uJ3Qgd29yayBvbiBzb21lIGJvdHM6IEZhaWxlZCB0byBz
dG9wIHdwdHdrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNDEyMzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBBZGRlZCBsb2dnaW5nIG9mIHNlcnZlciBzdWJwcm9jZXNzZXMgaW4gbGF1bmNoZXIgc2NyaXB0
LgorICAgICAgICBBZGRlZCBraWxsaW5nIG9mIHNlcnZlciBzdWJwcm9jZXNzZXMgaWYgc3RpbGwg
cnVubmluZy4KKyAgICAgICAgUmVkZWZpbmVkIHNlcnZlciBzdG9wIHRvIGFsd2F5cyB0cnkga2ls
bGluZyBzZXJ2ZXIgc3VicHJvY2Vzc2VzLgorCisgICAgICAgIFJlbW92ZWQgZW1wdHkgX19pbml0
LnB5X18gZmlsZSBjcmVhdGlvbiBhcyBpbXBvcnRlciBub3cgZW5zdXJlcyB0aGVzZSBmaWxlcyBj
YW5ub3QgYmUgZW1wdHkgYW55bW9yZS4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3RfbGF1bmNoZXIucHk6CisgICAgICAg
IChtYWluKTogUmVtb3ZlZCBlbXB0eSBfX2luaXQucHlfXyBmaWxlIGNyZWF0aW9uIGFzIGltcG9y
dGVyIG5vdyBlbnN1cmVzIHRoZXNlIGZpbGVzIGNhbm5vdCBiZSBlbXB0eSBhbnltb3JlLiBBZGRl
ZCBsb2dnaW5nIGluIGEgZmlsZSBvZiBzZXJ2ZXIgc3VicHJvY2Vzc2VzIHRvIGNsZWFuIHRoZW0g
aW4gY2FzZSBvZiBhYm5vcm1hbCBzaHV0ZG93bi4gCisgICAgICAgICogU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvc2VydmVycy93ZWJfcGxhdGZvcm1fdGVzdF9zZXJ2ZXIucHk6CisgICAg
ICAgIChXZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIuX19pbml0X18pOgorICAgICAgICAoV2ViUGxhdGZv
cm1UZXN0U2VydmVyLl9zdG9wX3J1bm5pbmdfc3Vic2VydmVycyk6IEtpbGwgc2VydmVyIHN1YnBy
b2Nlc3NlcyBiYXNlZCBvbiBmaWxlIGNyZWF0ZWQgYnkgd3B0IGxhdW5jaGVyLgorICAgICAgICAo
V2ViUGxhdGZvcm1UZXN0U2VydmVyKToKKyAgICAgICAgKFdlYlBsYXRmb3JtVGVzdFNlcnZlci5z
dG9wKTogT3ZlcnJpZGVuIHRvIGVuc3VyZSBraWxsaW5nIHN1YnByb2Nlc3NlcyBpbiBjYXNlIG9m
IG9ycGhhbmVkIHByb2Nlc3MuCisgICAgICAgIChXZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIuX3N0b3Bf
cnVubmluZ19zZXJ2ZXIpOiBLaWxsaW5nIG9mIHdwdCBsYXVuY2hlciBwcm9jZXNzIGFmdGVyIHJl
Z3VsYXIgc2h1dGRvd24uIAorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3Rfc2VydmVyX3VuaXR0ZXN0LnB5OgorICAgICAgICAo
VGVzdFdlYlBsYXRmb3JtVGVzdFNlcnZlci50ZXN0X3NlcnZlcl9jbG9zZXNfcHJldmlvdXNseV9z
cGF3bmVkX2luc3RhbmNlKTogUmV3b3JrZWQgdGhlIHRlc3QgdG8gY2FsbCBzdGFydC9zdG9wIHdp
dGggYW4gZXhpc3RpbmcgcGlkIGZpbGUuCisgICAgICAgIChUZXN0V2ViUGxhdGZvcm1UZXN0U2Vy
dmVyLnRlc3RfaW1wb3J0X3dlYl9wbGF0Zm9ybV90ZXN0X21vZHVsZXMpOiBObyBjaGFuZ2UuCisg
ICAgICAgIChUZXN0V2ViUGxhdGZvcm1UZXN0U2VydmVyKToKKyAgICAgICAgKFRlc3RXZWJQbGF0
Zm9ybVRlc3RTZXJ2ZXIudGVzdF9jb3JydXB0ZWRfc3Vic2VydmVyX2ZpbGVzKTogQ2hlY2tlZCB0
aGF0IHNlcnZlciBzdWJwcm9jZXNzIGNsZWFuaW5nIGRvZXMgbm90IHRocm93IGluIGNhc2Ugb2Yg
YmFkIHNlcnZlciBwaWQgZmlsZS4KKwogMjAxNS0wMi0xNCAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8
b3NzeUB3ZWJraXQub3JnPgogCiAgICAgICAgIFtidWlsZGJvdF0gRW5hYmxlIHJ1bi1hcGktdGVz
dHMgb24gcmVsZWFzZSBNYWMgYm90cwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9sYXlvdXRfdGVzdHMvc2VydmVycy93ZWJfcGxhdGZvcm1fdGVzdF9sYXVuY2hlci5weSBiL1Rv
b2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rl
c3RfbGF1bmNoZXIucHkKaW5kZXggM2YyNjZlMTNlMjI0NjU0OTcwZGQzMDg0MDYxNjBiOGM0MjE0
NWY0Ni4uNWI2NGFhNTVmMmEwNzg4Y2MzNGU2ZGQwODlhMWMxNjk5ZGNmYjFkNSAxMDA3NTUKLS0t
IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy93ZWJfcGxhdGZv
cm1fdGVzdF9sYXVuY2hlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9zZXJ2ZXJzL3dlYl9wbGF0Zm9ybV90ZXN0X2xhdW5jaGVyLnB5CkBAIC0yLDYgKzIsNyBA
QAogIyBodHRwOi8vd3d3LnczLm9yZy9Db25zb3J0aXVtL0xlZ2FsLzIwMDgvMDMtYnNkLWxpY2Vu
c2UuaHRtbAogCiBpbXBvcnQgaW1wCitpbXBvcnQganNvbgogaW1wb3J0IGxvZ2dpbmcKIGltcG9y
dCBvcwogaW1wb3J0IHN5cwpAQCAtOSwxOCArMTAsNiBAQCBpbXBvcnQgc3lzCiBsb2dnZXIgPSBs
b2dnaW5nLmdldExvZ2dlcignd2ViLXBsYXRmb3JtLXRlc3QtbGF1bmNoZXInKQogbG9nZ2luZy5i
YXNpY0NvbmZpZyhsZXZlbD1sb2dnaW5nLkRFQlVHKQogCi0KLWRlZiBjcmVhdGVfd3B0X2VtcHR5
X2ZpbGVfaWZfbmVlZGVkKHJlbGF0aXZlX3BhdGgpOgotICAgIGZpbGVfcGF0aCA9IG9zLnBhdGgu
am9pbihvcy5nZXRjd2QoKSwgb3MucGF0aC5zZXAuam9pbihyZWxhdGl2ZV9wYXRoKSkKLSAgICBp
ZiBub3Qgb3MucGF0aC5pc2ZpbGUoZmlsZV9wYXRoKToKLSAgICAgICAgbG9nZ2VyLndhcm5pbmco
ZmlsZV9wYXRoICsgJyBpcyBub3QgcHJlc2VudCwgY3JlYXRpbmcgaXQgYXMgZW1wdHkgZmlsZScp
Ci0gICAgICAgIG9wZW4oZmlsZV9wYXRoLCAnYScpLmNsb3NlKCkKLQotI0ZJWE1FOiBIYW5kbGUg
ZW1wdHkgZmlsZXMgYXQgaW1wb3J0ZXIvYXV0by1pbnN0YWxsZXIgbGV2ZWwuCi1jcmVhdGVfd3B0
X2VtcHR5X2ZpbGVfaWZfbmVlZGVkKFsndG9vbHMnLCAnX19pbml0X18ucHknXSkKLWNyZWF0ZV93
cHRfZW1wdHlfZmlsZV9pZl9uZWVkZWQoWyd0b29scycsICdzY3JpcHRzJywgJ19faW5pdF9fLnB5
J10pCi1jcmVhdGVfd3B0X2VtcHR5X2ZpbGVfaWZfbmVlZGVkKFsndG9vbHMnLCAnd2ViZHJpdmVy
JywgJ3dlYmRyaXZlcicsICdfX2luaXRfXy5weSddKQotCiB0cnk6CiAgICAgc3lzLnBhdGguaW5z
ZXJ0KDAsIG9zLmdldGN3ZCgpKQogICAgIGltcG9ydCBzZXJ2ZSBhcyBXZWJQbGF0Zm9ybVRlc3RT
ZXJ2ZXIKQEAgLTM4LDEzICsyNywxOSBAQCBkZWYgbWFpbihhcmd2LCBzdGRvdXQsIHN0ZGVycik6
CiAgICAgY29uZmlnID0gV2ViUGxhdGZvcm1UZXN0U2VydmVyLmxvYWRfY29uZmlnKCJjb25maWcu
ZGVmYXVsdC5qc29uIiwgImNvbmZpZy5qc29uIikKICAgICBXZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIu
c2V0dXBfbG9nZ2VyKGNvbmZpZ1sibG9nX2xldmVsIl0pCiAgICAgc3NsX2VudiA9IFdlYlBsYXRm
b3JtVGVzdFNlcnZlci5nZXRfc3NsX2Vudmlyb25tZW50KGNvbmZpZykKKyAgICBsb2dnZWRfc2Vy
dmVycyA9IFtdCiAgICAgd2l0aCBXZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIuZ2V0X3NzbF9lbnZpcm9u
bWVudChjb25maWcpIGFzIHNzbF9lbnY6CiAgICAgICAgIGNvbmZpZ18sIHN0YXJ0ZWRfc2VydmVy
cyA9IFdlYlBsYXRmb3JtVGVzdFNlcnZlci5zdGFydChjb25maWcsIHNzbF9lbnYpCiAKICAgICAg
ICAgZm9yIHByb3RvY29sLCBzZXJ2ZXJzIGluIHN0YXJ0ZWRfc2VydmVycy5pdGVtcygpOgogICAg
ICAgICAgICAgZm9yIHBvcnQsIHByb2Nlc3MgaW4gc2VydmVyczoKKyAgICAgICAgICAgICAgICBs
b2dnZWRfc2VydmVycy5hcHBlbmQoeyJwcm90b2NvbCI6IHByb3RvY29sLCAicG9ydCI6IHBvcnQs
ICJwaWQiOiBwcm9jZXNzLnByb2MucGlkfSkKICAgICAgICAgICAgICAgICBsb2dnZXIuaW5mbygi
JXMsIHBvcnQ6JWQsIHBpZDolZCIgJSAocHJvdG9jb2wsIHBvcnQsIHByb2Nlc3MucHJvYy5waWQp
KQogCisgICAgIyBXcml0ZSBwaWRzIGluIGEgZmlsZSBpbiBjYXNlIGFicnVwdCBzaHV0ZG93biBp
cyBuZWVkZWQKKyAgICB3aXRoIG9wZW4oYXJndlswXSwgIndiIikgYXMgc2VydmVyc19maWxlOgor
ICAgICAgICBqc29uLmR1bXAobG9nZ2VkX3NlcnZlcnMsIHNlcnZlcnNfZmlsZSkKKwogICAgIHN5
cy5zdGRpbi5yZWFkKDEpCiAKIApkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9s
YXlvdXRfdGVzdHMvc2VydmVycy93ZWJfcGxhdGZvcm1fdGVzdF9zZXJ2ZXIucHkgYi9Ub29scy9T
Y3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dlYl9wbGF0Zm9ybV90ZXN0X3Nl
cnZlci5weQppbmRleCA3NmMyM2RhZTAzMDUxYWViYTAyMjExOGMwMTljNjVjNzk4OGU4ZjhkLi4z
MzJjM2MzMmY3MWZlMjhmZDAyOGY4YzViOWU1ZWMxMTRlYjY1MGYzIDEwMDc1NQotLS0gYS9Ub29s
cy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dlYl9wbGF0Zm9ybV90ZXN0
X3NlcnZlci5weQorKysgYi9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2
ZXJzL3dlYl9wbGF0Zm9ybV90ZXN0X3NlcnZlci5weQpAQCAtNjQsNiArNjQsOCBAQCBjbGFzcyBX
ZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIoaHR0cF9zZXJ2ZXJfYmFzZS5IdHRwU2VydmVyQmFzZSk6CiAg
ICAgICAgIHNlbGYuX3BpZF9maWxlID0gcGlkZmlsZQogICAgICAgICBpZiBub3Qgc2VsZi5fcGlk
X2ZpbGU6CiAgICAgICAgICAgICBzZWxmLl9waWRfZmlsZSA9IHNlbGYuX2ZpbGVzeXN0ZW0uam9p
bihzZWxmLl9ydW50aW1lX3BhdGgsICclcy5waWQnICUgc2VsZi5fbmFtZSkKKyAgICAgICAgc2Vs
Zi5fc2VydmVyc19maWxlID0gc2VsZi5fZmlsZXN5c3RlbS5qb2luKHNlbGYuX3J1bnRpbWVfcGF0
aCwgJyVzX3NlcnZlcnMuanNvbicgJSAoc2VsZi5fbmFtZSkpCisKICAgICAgICAgc2VsZi5fc3Rk
b3V0X2RhdGEgPSBOb25lCiAgICAgICAgIHNlbGYuX3N0ZGVycl9kYXRhID0gTm9uZQogICAgICAg
ICBzZWxmLl9maWxlc3lzdGVtID0gcG9ydF9vYmouaG9zdC5maWxlc3lzdGVtCkBAIC03Myw3ICs3
NSw3IEBAIGNsYXNzIFdlYlBsYXRmb3JtVGVzdFNlcnZlcihodHRwX3NlcnZlcl9iYXNlLkh0dHBT
ZXJ2ZXJCYXNlKToKICAgICAgICAgc2VsZi5fcmVzb3VyY2VzX2ZpbGVzX3RvX2NvcHkgPSBbJ3Rl
c3RoYXJuZXNzLmpzJywgJ3Rlc3RoYXJuZXNzLmNzcycsICd0ZXN0aGFybmVzc3JlcG9ydC5qcydd
CiAKICAgICAgICAgY3VycmVudF9kaXJfcGF0aCA9IHNlbGYuX2ZpbGVzeXN0ZW0uYWJzcGF0aChz
ZWxmLl9maWxlc3lzdGVtLnNwbGl0KF9fZmlsZV9fKVswXSkKLSAgICAgICAgc2VsZi5fc3RhcnRf
Y21kID0gWyJweXRob24iLCBzZWxmLl9maWxlc3lzdGVtLmpvaW4oY3VycmVudF9kaXJfcGF0aCwg
IndlYl9wbGF0Zm9ybV90ZXN0X2xhdW5jaGVyLnB5IildCisgICAgICAgIHNlbGYuX3N0YXJ0X2Nt
ZCA9IFsicHl0aG9uIiwgc2VsZi5fZmlsZXN5c3RlbS5qb2luKGN1cnJlbnRfZGlyX3BhdGgsICJ3
ZWJfcGxhdGZvcm1fdGVzdF9sYXVuY2hlci5weSIpLCBzZWxmLl9zZXJ2ZXJzX2ZpbGVdCiAgICAg
ICAgIHNlbGYuX2RvY19yb290X3BhdGggPSBwb3J0X29iai5wYXRoX2Zyb21fd2Via2l0X2Jhc2Uo
IkxheW91dFRlc3RzIiwgc2VsZi5fZG9jX3Jvb3QpCiAKICAgICBkZWYgX2luc3RhbGxfbW9kdWxl
cyhzZWxmKToKQEAgLTEyOCwxNyArMTMwLDM3IEBAIGNsYXNzIFdlYlBsYXRmb3JtVGVzdFNlcnZl
cihodHRwX3NlcnZlcl9iYXNlLkh0dHBTZXJ2ZXJCYXNlKToKIAogICAgICAgICByZXR1cm4gc2Vs
Zi5fcHJvY2Vzcy5waWQKIAorICAgIGRlZiBfc3RvcF9ydW5uaW5nX3N1YnNlcnZlcnMoc2VsZik6
CisgICAgICAgIGlmIHNlbGYuX2ZpbGVzeXN0ZW0uZXhpc3RzKHNlbGYuX3NlcnZlcnNfZmlsZSk6
CisgICAgICAgICAgICB0cnk6CisgICAgICAgICAgICAgICAganNvbl9kYXRhID0gc2VsZi5fZmls
ZXN5c3RlbS5yZWFkX3RleHRfZmlsZShzZWxmLl9zZXJ2ZXJzX2ZpbGUpCisgICAgICAgICAgICAg
ICAgc3RhcnRlZF9zZXJ2ZXJzID0ganNvbi5sb2Fkcyhqc29uX2RhdGEpCisgICAgICAgICAgICAg
ICAgZm9yIHNlcnZlciBpbiBzdGFydGVkX3NlcnZlcnM6CisgICAgICAgICAgICAgICAgICAgIGlm
IHNlbGYuX2V4ZWN1dGl2ZS5jaGVja19ydW5uaW5nX3BpZChzZXJ2ZXJbJ3BpZCddKToKKyAgICAg
ICAgICAgICAgICAgICAgICAgIF9sb2cud2FybmluZygnS2lsbGluZyBzZXJ2ZXIgcHJvY2VzcyAo
cHJvdG9jb2w6ICVzICwgcG9ydDogJWQsIHBpZDogJWQpLicgJSAoc2VydmVyWydwcm90b2NvbCdd
LCBzZXJ2ZXJbJ3BvcnQnXSwgc2VydmVyWydwaWQnXSkpCisgICAgICAgICAgICAgICAgICAgICAg
ICBzZWxmLl9leGVjdXRpdmUua2lsbF9wcm9jZXNzKHNlcnZlclsncGlkJ10pCisgICAgICAgICAg
ICBmaW5hbGx5OgorICAgICAgICAgICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0ucmVtb3ZlKHNlbGYu
X3NlcnZlcnNfZmlsZSkKKworICAgIGRlZiBzdG9wKHNlbGYpOgorICAgICAgICBzdXBlcihXZWJQ
bGF0Zm9ybVRlc3RTZXJ2ZXIsIHNlbGYpLnN0b3AoKQorICAgICAgICAjIEluIGNhc2Ugb2Ygb3Jw
aGFuZWQgcGlkLCBraWxsIHRoZSBydW5uaW5nIHN1YnNlcnZlcnMgaWYgYW55IHN0aWxsIGFsaXZl
LgorICAgICAgICBzZWxmLl9zdG9wX3J1bm5pbmdfc3Vic2VydmVycygpCisKICAgICBkZWYgX3N0
b3BfcnVubmluZ19zZXJ2ZXIoc2VsZik6CiAgICAgICAgIF9sb2cuZGVidWcoJ1N0b3BwaW5nICVz
IHNlcnZlcicgJSAoc2VsZi5fbmFtZSkpCiAgICAgICAgIHNlbGYuX2NsZWFuX3dlYmtpdF90ZXN0
X2ZpbGVzKCkKLSAgICAgICAgaWYgc2VsZi5fcGlkIGFuZCBub3Qgc2VsZi5fZXhlY3V0aXZlLmNo
ZWNrX3J1bm5pbmdfcGlkKHNlbGYuX3BpZCk6Ci0gICAgICAgICAgICBzZWxmLl9maWxlc3lzdGVt
LnJlbW92ZShzZWxmLl9waWRfZmlsZSkKLSAgICAgICAgICAgIHJldHVybgorCiAgICAgICAgIGlm
IHNlbGYuX3Byb2Nlc3M6CiAgICAgICAgICAgICAoc2VsZi5fc3Rkb3V0X2RhdGEsIHNlbGYuX3N0
ZGVycl9kYXRhKSA9IHNlbGYuX3Byb2Nlc3MuY29tbXVuaWNhdGUoaW5wdXQ9J1xuJykKICAgICAg
ICAgaWYgc2VsZi5fd3NvdXQ6CiAgICAgICAgICAgICBzZWxmLl93c291dC5jbG9zZSgpCiAgICAg
ICAgICAgICBzZWxmLl93c291dCA9IE5vbmUKLSAgICAgICAgaWYgc2VsZi5fZXhlY3V0aXZlLmNo
ZWNrX3J1bm5pbmdfcGlkKHNlbGYuX3BpZCk6Ci0gICAgICAgICAgICByYWlzZSBodHRwX3NlcnZl
cl9iYXNlLlNlcnZlckVycm9yKCdGYWlsZWQgdG8gc3RvcCAlczogcGxlYXNlIGdvIHRvIHdlYiBw
bGF0Zm9ybSB0ZXN0IHNlcnZlciBsb2cgZmlsZSB0byBnZXQgdGhlIFBJRCBsaXN0JyAlIChzZWxm
Ll9uYW1lKSkKLSAgICAgICAgc2VsZi5fZmlsZXN5c3RlbS5yZW1vdmUoc2VsZi5fcGlkX2ZpbGUp
CisKKyAgICAgICAgaWYgc2VsZi5fcGlkIGFuZCBzZWxmLl9leGVjdXRpdmUuY2hlY2tfcnVubmlu
Z19waWQoc2VsZi5fcGlkKToKKyAgICAgICAgICAgIF9sb2cud2FybmluZygnQ2Fubm90IHN0b3Ag
JXMgc2VydmVyIG5vcm1hbGx5LicgJSAoc2VsZi5fbmFtZSkpCisgICAgICAgICAgICBfbG9nLndh
cm5pbmcoJ0tpbGxpbmcgc2VydmVyIGxhdW5jaGVyIHByb2Nlc3MgKHBpZDogJWQpLicgJSAoc2Vs
Zi5fcGlkKSkKKyAgICAgICAgICAgIHNlbGYuX2V4ZWN1dGl2ZS5raWxsX3Byb2Nlc3Moc2VsZi5f
cGlkKQorCisgICAgICAgIHNlbGYuX3JlbW92ZV9waWRfZmlsZSgpCisgICAgICAgIHNlbGYuX3N0
b3BfcnVubmluZ19zdWJzZXJ2ZXJzKCkKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3Rfc2VydmVyX3VuaXR0ZXN0
LnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy93ZWJfcGxh
dGZvcm1fdGVzdF9zZXJ2ZXJfdW5pdHRlc3QucHkKaW5kZXggOTQ2ZWNlOWQ4MDZjZTBmNWMyNjEx
M2NmN2E5OGY4ODdmMTgyNmYxZi4uZDRiNTRlNzY0NTFiNGQ4MDYyZmNmMmY0YzRkNDc2OWQ2YzE5
NGNhNiAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2Vy
dmVycy93ZWJfcGxhdGZvcm1fdGVzdF9zZXJ2ZXJfdW5pdHRlc3QucHkKKysrIGIvVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy93ZWJfcGxhdGZvcm1fdGVzdF9zZXJ2
ZXJfdW5pdHRlc3QucHkKQEAgLTMxLDIwICszMSwyMSBAQCBmcm9tIHdlYmtpdHB5LmNvbW1vbi5z
eXN0ZW0uZmlsZXN5c3RlbSBpbXBvcnQgRmlsZVN5c3RlbQogZnJvbSB3ZWJraXRweS5wb3J0IGlt
cG9ydCBQb3J0CiBmcm9tIHdlYmtpdHB5LnRvb2wubW9ja3Rvb2wgaW1wb3J0IE1vY2tPcHRpb25z
CiAKK2Zyb20gd2Via2l0cHkubGF5b3V0X3Rlc3RzLnNlcnZlcnMuaHR0cF9zZXJ2ZXJfYmFzZSBp
bXBvcnQgU2VydmVyRXJyb3IKIGZyb20gd2Via2l0cHkubGF5b3V0X3Rlc3RzLnNlcnZlcnMud2Vi
X3BsYXRmb3JtX3Rlc3Rfc2VydmVyIGltcG9ydCBXZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIKIAogCiBj
bGFzcyBUZXN0V2ViUGxhdGZvcm1UZXN0U2VydmVyKHVuaXR0ZXN0LlRlc3RDYXNlKToKLSAgICBk
ZWYgdGVzdF9zdGFydF9jbWQoc2VsZik6Ci0KLSAgICAgICAgcG9ydCA9IFBvcnQoTW9ja0hvc3Qo
KSwgInRlc3QiKQorICAgIGRlZiB0ZXN0X3ByZXZpb3VzbHlfc3Bhd25lZF9pbnN0YW5jZShzZWxm
KToKKyAgICAgICAgaG9zdCA9IE1vY2tIb3N0KCkKKyAgICAgICAgcG9ydCA9IFBvcnQoaG9zdCwg
InRlc3QiKQogICAgICAgICBzZXJ2ZXIgPSBXZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIocG9ydCwgIndw
dHRlc3QiLCAiL21vY2svb3V0cHV0X2RpciIsICIvbW9jay9vdXRwdXRfZGlyL3BpZC50eHQiKQor
ICAgICAgICBzZXJ2ZXIuX2NoZWNrX3RoYXRfYWxsX3BvcnRzX2FyZV9hdmFpbGFibGUgPSBsYW1i
ZGE6IFRydWUKKyAgICAgICAgc2VydmVyLl9pc19zZXJ2ZXJfcnVubmluZ19vbl9hbGxfcG9ydHMg
PSBsYW1iZGE6IFRydWUKIAotICAgICAgICBzZXJ2ZXIuX3ByZXBhcmVfY29uZmlnKCkKLSAgICAg
ICAgc2VydmVyLl93c291dCA9IE5vbmUKLSAgICAgICAgc2VydmVyLl9zcGF3bl9wcm9jZXNzKCkK
LSAgICAgICAgdGltZS5zbGVlcCgxKQotICAgICAgICBzZXJ2ZXIuX3N0b3BfcnVubmluZ19zZXJ2
ZXIoKQorICAgICAgICBob3N0LmZpbGVzeXN0ZW0ud3JpdGVfdGV4dF9maWxlKCIvbW9ja19vdXRw
dXRfZGlyL3BpZC50eHQiLCAiMCIpCisgICAgICAgIHNlcnZlci5zdGFydCgpCisgICAgICAgIHNl
cnZlci5zdG9wKCkKIAogICAgIGRlZiB0ZXN0X2ltcG9ydF93ZWJfcGxhdGZvcm1fdGVzdF9tb2R1
bGVzKHNlbGYpOgogICAgICAgICBmcyA9IEZpbGVTeXN0ZW0oKQpAQCAtNjcsMyArNjgsMjkgQEAg
Y2xhc3MgVGVzdFdlYlBsYXRmb3JtVGVzdFNlcnZlcih1bml0dGVzdC5UZXN0Q2FzZSk6CiAgICAg
ICAgICAgICBzZWxmLmZhaWwoZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChwYXRobmFtZSwg
ZnMuam9pbih0b29sc19kaXIsICJzY3JpcHRzIikpCiAgICAgICAgIHN5cy5wYXRoLnBvcCgwKQor
CisgICAgZGVmIHRlc3RfY29ycnVwdGVkX3N1YnNlcnZlcl9maWxlcyhzZWxmKToKKyAgICAgICAg
aG9zdCA9IE1vY2tIb3N0KCkKKyAgICAgICAgcG9ydCA9IFBvcnQoaG9zdCwgInRlc3QiKQorICAg
ICAgICBzZXJ2ZXIgPSBXZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIocG9ydCwgIndwdHRlc3QiLCAiL21v
Y2svb3V0cHV0X2RpciIsICIvbW9jay9vdXRwdXRfZGlyL3BpZC50eHQiKQorICAgICAgICBzZXJ2
ZXIuX2NoZWNrX3RoYXRfYWxsX3BvcnRzX2FyZV9hdmFpbGFibGUgPSBsYW1iZGE6IFRydWUKKyAg
ICAgICAgc2VydmVyLl9pc19zZXJ2ZXJfcnVubmluZ19vbl9hbGxfcG9ydHMgPSBsYW1iZGE6IFRy
dWUKKworICAgICAgICBob3N0LmZpbGVzeXN0ZW0ud3JpdGVfdGV4dF9maWxlKCIvbW9ja19vdXRw
dXRfZGlyL3dwdHRlc3Rfc2VydmVycy5qc29uIiwgIjAiKQorICAgICAgICBzZXJ2ZXIuc3RvcCgp
CisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaG9zdC5maWxlc3lzdGVtLmV4aXN0cygiL21vY2sv
b3V0cHV0X2Rpci93cHR0ZXN0X3NlcnZlcnMuanNvbiIpKQorCisgICAgICAgIGhvc3QuZmlsZXN5
c3RlbS53cml0ZV90ZXh0X2ZpbGUoIi9tb2NrX291dHB1dF9kaXIvd3B0dGVzdF9zZXJ2ZXJzLmpz
b24iLCAiWzAsIikKKyAgICAgICAgc2VydmVyLnN0YXJ0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRG
YWxzZShob3N0LmZpbGVzeXN0ZW0uZXhpc3RzKCIvbW9jay9vdXRwdXRfZGlyL3dwdHRlc3Rfc2Vy
dmVycy5qc29uIikpCisgICAgICAgIHNlcnZlci5zdG9wKCkKKworICAgICAgICBob3N0LmZpbGVz
eXN0ZW0ud3JpdGVfdGV4dF9maWxlKCIvbW9ja19vdXRwdXRfZGlyL3dwdHRlc3Rfc2VydmVycy5q
c29uIiwgIlt7J3Byb3RvY29sJzogJ2h0dHAnLCAncG9ydCc6IDgwIH1dIikKKyAgICAgICAgc2Vy
dmVyLnN0YXJ0KCkKKyAgICAgICAgc2VsZi5hc3NlcnRGYWxzZShob3N0LmZpbGVzeXN0ZW0uZXhp
c3RzKCIvbW9jay9vdXRwdXRfZGlyL3dwdHRlc3Rfc2VydmVycy5qc29uIikpCisgICAgICAgIHNl
cnZlci5zdG9wKCkKKworICAgICAgICBob3N0LmZpbGVzeXN0ZW0ud3JpdGVfdGV4dF9maWxlKCIv
bW9ja19vdXRwdXRfZGlyL3dwdHRlc3Rfc2VydmVycy5qc29uIiwgIlt7J3Byb3RvY29sJzogJ2h0
dHAnLCAncG9ydCc6IDgwLCAncGlkJzoge30gfV0iKQorICAgICAgICBzZXJ2ZXIuc3RhcnQoKQor
ICAgICAgICBzZWxmLmFzc2VydEZhbHNlKGhvc3QuZmlsZXN5c3RlbS5leGlzdHMoIi9tb2NrL291
dHB1dF9kaXIvd3B0dGVzdF9zZXJ2ZXJzLmpzb24iKSkKKyAgICAgICAgc2VydmVyLnN0b3AoKQpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CmluZGV4IDM0MDdlMGMyNmFmYTgyZjUxYjc3MTQ5NzMzMDk0MzdhODdhY2U0ZTAuLjc1ZDllNWJj
OTBmNDEyNWY5OTczNWE2ZGNjZjYyM2ZjNWVhZTdkODcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAor
MjAxNS0wMi0xNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubi5mYWJsZXRAY3JmLmNhbm9uLmZyPgor
CisgICAgICAgIFRlc3RzIGRvbid0IHdvcmsgb24gc29tZSBib3RzOiBGYWlsZWQgdG8gc3RvcCB3
cHR3aworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQx
MjM1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBU
ZXN0RXhwZWN0YXRpb25zOiBNYXJraW5nIHdlYi1wbGF0Zm9ybS10ZXN0cyBhcyBmYWlsZWQgb3Ig
cGFzc2VkIHVudGlsIHdwdCBzZXJ2ZXIgcHJvdmVzIHRvIGJlIHN0YWJsZS4KKwogMjAxNS0wMi0x
NCAgQmVuamFtaW4gUG91bGFpbiAgPGJlbmphbWluQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRk
IHRoZSBpbml0aWFsIG1hdGNoaW5nIGltcGxlbWVudGF0aW9uIGZvciBhdHRyaWJ1dGUgc2VsZWN0
b3JzIHdpdGggY2FzZS1pbnNlbnNpdGl2ZSB2YWx1ZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
VGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMzMw
ZTJhMTNlMjk0MTE0NjM5YzU2YmE0NWUzZjBjYTlkODJmNTVkYy4uNTM2Mzc5ZmExZDUwMGI1ZmQ3
MWM1NGE3MjRiMDMxN2FlNGI3YTZmOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVj
dGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCkBAIC0yMzUsOCArMjM1
LDkgQEAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9pbWFnZXMgWyBTa2lwIF0KIGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvdG9vbHMgWyBTa2lwIF0KIAogIyBXM0MgZG9t
cGFyc2luZyB0ZXN0IHN1aXRlCi0jIEJ1ZyAxNDEyMzU6IFRlc3RzIG1hcmtlZCBhcyBTa2lwIHVu
dGlsIGJlaW5nIGFibGUgdG8gcmVsYXVuY2ggd3B0IHNlcnZlciBwcm9wZXJseQotaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cyBbIFNraXAgXQorIyBUZXN0cyBtYXJrZWQgYXMgcGFzcyBv
ciBmYWlsIHVudGlsIHdwdCBzZXJ2ZXIgcHJvdmVzIHRvIGJlIHN0YWJsZSBlbm91Z2gKK2ltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tcGFyc2luZy9ET01QYXJzZXItcGFyc2VGcm9t
U3RyaW5nLWh0bWwuaHRtbCBbIFBhc3MgRmFpbHVyZSBdCitpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2RvbXBhcnNpbmcvaW5zZXJ0LWFkamFjZW50Lmh0bWwgWyBQYXNzIEZhaWx1cmUg
XQogCiAjIEltcG9ydGVkIFczQyBjYW52YXMgZmFpbGVkIHRlc3RzCiB3ZWJraXQub3JnL2IvMTM4
Njc2IGltcG9ydGVkL3czYy9jYW52YXMvMmQucGF0dGVybi5pbWFnZS5udWxsLmh0bWwgWyBGYWls
dXJlIF0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247051</attachid>
            <date>2015-02-21 11:30:13 -0800</date>
            <delta_ts>2015-02-21 12:22:22 -0800</delta_ts>
            <desc>Updated changelog</desc>
            <filename>bug-141235-20150221202958.patch</filename>
            <type>text/plain</type>
            <size>12716</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwNDc3CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZGU2Y2VjN2Y2ODA1NjEyMzEzMjc0YjQ5Yjg3NWYxMGUz
N2FkOWFiYS4uM2Q4M2E5OTk2Y2M0MDA4ZDcyODM5YzBlOGQ4YzUzZjA1YzE3ODY4MyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4
IEBACisyMDE1LTAyLTIxICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uLmZhYmxldEBjcmYuY2Fub24u
ZnI+CisKKyAgICAgICAgVGVzdHMgZG9uJ3Qgd29yayBvbiBzb21lIGJvdHM6IEZhaWxlZCB0byBz
dG9wIHdwdHdrCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNDEyMzUKKworICAgICAgICBSZXZpZXdlZCBieSBSeW9zdWtlIE5pd2EuCisKKyAgICAgICAg
TG9nZ2luZyBvZiBzZXJ2ZXIgc3VicHJvY2Vzc2VzIGluIGxhdW5jaGVyIHNjcmlwdC4KKyAgICAg
ICAgS2lsbGluZyBvZiBzZXJ2ZXIgc3VicHJvY2Vzc2VzIHdoZW4gc3RvcHBpbmcvYmVmb3JlIHN0
YXJ0aW5nLgorICAgICAgICBSZW1vdmVkIGVtcHR5IF9faW5pdC5weV9fIGZpbGUgY3JlYXRpb24g
YXMgaW1wb3J0ZXIgbm93IGVuc3VyZXMgdGhlc2UgZmlsZXMgY2Fubm90IGJlIGVtcHR5IGFueW1v
cmUuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dl
Yl9wbGF0Zm9ybV90ZXN0X2xhdW5jaGVyLnB5OgorICAgICAgICAobWFpbik6IFJlbW92ZWQgZW1w
dHkgX19pbml0LnB5X18gZmlsZSBjcmVhdGlvbiBhcyBpbXBvcnRlciBub3cgZW5zdXJlcyB0aGVz
ZSBmaWxlcyBjYW5ub3QgYmUgZW1wdHkgYW55bW9yZS4gQWRkZWQgbG9nZ2luZyBpbiBhIGZpbGUg
b2Ygc2VydmVyIHN1YnByb2Nlc3NlcyB0byBjbGVhbiB0aGVtIGluIGNhc2Ugb2YgYWJub3JtYWwg
c2h1dGRvd24uIAorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZl
cnMvd2ViX3BsYXRmb3JtX3Rlc3Rfc2VydmVyLnB5OgorICAgICAgICAoV2ViUGxhdGZvcm1UZXN0
U2VydmVyLl9faW5pdF9fKToKKyAgICAgICAgKFdlYlBsYXRmb3JtVGVzdFNlcnZlci5fc3RvcF9y
dW5uaW5nX3N1YnNlcnZlcnMpOiBLaWxsIHNlcnZlciBzdWJwcm9jZXNzZXMgYmFzZWQgb24gZmls
ZSBjcmVhdGVkIGJ5IHdwdCBsYXVuY2hlci4KKyAgICAgICAgKFdlYlBsYXRmb3JtVGVzdFNlcnZl
cik6CisgICAgICAgIChXZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIuc3RvcCk6IE92ZXJyaWRlbiB0byBl
bnN1cmUga2lsbGluZyBzdWJwcm9jZXNzZXMgaW4gY2FzZSBvZiBvcnBoYW5lZCBwcm9jZXNzLgor
ICAgICAgICAoV2ViUGxhdGZvcm1UZXN0U2VydmVyLl9zdG9wX3J1bm5pbmdfc2VydmVyKTogS2ls
bGluZyBvZiB3cHQgbGF1bmNoZXIgcHJvY2VzcyBhZnRlciByZWd1bGFyIHNodXRkb3duLiAKKyAg
ICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dlYl9wbGF0Zm9y
bV90ZXN0X3NlcnZlcl91bml0dGVzdC5weToKKyAgICAgICAgKFRlc3RXZWJQbGF0Zm9ybVRlc3RT
ZXJ2ZXIudGVzdF9zZXJ2ZXJfY2xvc2VzX3ByZXZpb3VzbHlfc3Bhd25lZF9pbnN0YW5jZSk6IFJl
d29ya2VkIHRoZSB0ZXN0IHRvIGNhbGwgc3RhcnQvc3RvcCB3aXRoIGFuIGV4aXN0aW5nIHBpZCBm
aWxlLgorICAgICAgICAoVGVzdFdlYlBsYXRmb3JtVGVzdFNlcnZlci50ZXN0X2ltcG9ydF93ZWJf
cGxhdGZvcm1fdGVzdF9tb2R1bGVzKTogTm8gY2hhbmdlLgorICAgICAgICAoVGVzdFdlYlBsYXRm
b3JtVGVzdFNlcnZlcik6CisgICAgICAgIChUZXN0V2ViUGxhdGZvcm1UZXN0U2VydmVyLnRlc3Rf
Y29ycnVwdGVkX3N1YnNlcnZlcl9maWxlcyk6IENoZWNrZWQgdGhhdCBzZXJ2ZXIgc3VicHJvY2Vz
cyBjbGVhbmluZyBkb2VzIG5vdCB0aHJvdyBpbiBjYXNlIG9mIGJhZCBzZXJ2ZXIgcGlkIGZpbGUu
CisKIDIwMTUtMDItMjAgIFRpbW90aHkgSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29t
PgogCiAgICAgICAgIFtXZWJFZGl0aW5nVGVzdGVyXSBBbGxvdyBkcm9wcGluZyBIVE1MIGZpbGVz
IG9uIHRoZSBhcHAKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3RfbGF1bmNoZXIucHkgYi9Ub29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9zZXJ2ZXJzL3dlYl9wbGF0Zm9ybV90ZXN0X2xhdW5jaGVy
LnB5CmluZGV4IDNmMjY2ZTEzZTIyNDY1NDk3MGRkMzA4NDA2MTYwYjhjNDIxNDVmNDYuLjViNjRh
YTU1ZjJhMDc4OGNjMzRlNmRkMDg5YTFjMTY5OWRjZmIxZDUgMTAwNzU1Ci0tLSBhL1Rvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3RfbGF1
bmNoZXIucHkKKysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVy
cy93ZWJfcGxhdGZvcm1fdGVzdF9sYXVuY2hlci5weQpAQCAtMiw2ICsyLDcgQEAKICMgaHR0cDov
L3d3dy53My5vcmcvQ29uc29ydGl1bS9MZWdhbC8yMDA4LzAzLWJzZC1saWNlbnNlLmh0bWwKIAog
aW1wb3J0IGltcAoraW1wb3J0IGpzb24KIGltcG9ydCBsb2dnaW5nCiBpbXBvcnQgb3MKIGltcG9y
dCBzeXMKQEAgLTksMTggKzEwLDYgQEAgaW1wb3J0IHN5cwogbG9nZ2VyID0gbG9nZ2luZy5nZXRM
b2dnZXIoJ3dlYi1wbGF0Zm9ybS10ZXN0LWxhdW5jaGVyJykKIGxvZ2dpbmcuYmFzaWNDb25maWco
bGV2ZWw9bG9nZ2luZy5ERUJVRykKIAotCi1kZWYgY3JlYXRlX3dwdF9lbXB0eV9maWxlX2lmX25l
ZWRlZChyZWxhdGl2ZV9wYXRoKToKLSAgICBmaWxlX3BhdGggPSBvcy5wYXRoLmpvaW4ob3MuZ2V0
Y3dkKCksIG9zLnBhdGguc2VwLmpvaW4ocmVsYXRpdmVfcGF0aCkpCi0gICAgaWYgbm90IG9zLnBh
dGguaXNmaWxlKGZpbGVfcGF0aCk6Ci0gICAgICAgIGxvZ2dlci53YXJuaW5nKGZpbGVfcGF0aCAr
ICcgaXMgbm90IHByZXNlbnQsIGNyZWF0aW5nIGl0IGFzIGVtcHR5IGZpbGUnKQotICAgICAgICBv
cGVuKGZpbGVfcGF0aCwgJ2EnKS5jbG9zZSgpCi0KLSNGSVhNRTogSGFuZGxlIGVtcHR5IGZpbGVz
IGF0IGltcG9ydGVyL2F1dG8taW5zdGFsbGVyIGxldmVsLgotY3JlYXRlX3dwdF9lbXB0eV9maWxl
X2lmX25lZWRlZChbJ3Rvb2xzJywgJ19faW5pdF9fLnB5J10pCi1jcmVhdGVfd3B0X2VtcHR5X2Zp
bGVfaWZfbmVlZGVkKFsndG9vbHMnLCAnc2NyaXB0cycsICdfX2luaXRfXy5weSddKQotY3JlYXRl
X3dwdF9lbXB0eV9maWxlX2lmX25lZWRlZChbJ3Rvb2xzJywgJ3dlYmRyaXZlcicsICd3ZWJkcml2
ZXInLCAnX19pbml0X18ucHknXSkKLQogdHJ5OgogICAgIHN5cy5wYXRoLmluc2VydCgwLCBvcy5n
ZXRjd2QoKSkKICAgICBpbXBvcnQgc2VydmUgYXMgV2ViUGxhdGZvcm1UZXN0U2VydmVyCkBAIC0z
OCwxMyArMjcsMTkgQEAgZGVmIG1haW4oYXJndiwgc3Rkb3V0LCBzdGRlcnIpOgogICAgIGNvbmZp
ZyA9IFdlYlBsYXRmb3JtVGVzdFNlcnZlci5sb2FkX2NvbmZpZygiY29uZmlnLmRlZmF1bHQuanNv
biIsICJjb25maWcuanNvbiIpCiAgICAgV2ViUGxhdGZvcm1UZXN0U2VydmVyLnNldHVwX2xvZ2dl
cihjb25maWdbImxvZ19sZXZlbCJdKQogICAgIHNzbF9lbnYgPSBXZWJQbGF0Zm9ybVRlc3RTZXJ2
ZXIuZ2V0X3NzbF9lbnZpcm9ubWVudChjb25maWcpCisgICAgbG9nZ2VkX3NlcnZlcnMgPSBbXQog
ICAgIHdpdGggV2ViUGxhdGZvcm1UZXN0U2VydmVyLmdldF9zc2xfZW52aXJvbm1lbnQoY29uZmln
KSBhcyBzc2xfZW52OgogICAgICAgICBjb25maWdfLCBzdGFydGVkX3NlcnZlcnMgPSBXZWJQbGF0
Zm9ybVRlc3RTZXJ2ZXIuc3RhcnQoY29uZmlnLCBzc2xfZW52KQogCiAgICAgICAgIGZvciBwcm90
b2NvbCwgc2VydmVycyBpbiBzdGFydGVkX3NlcnZlcnMuaXRlbXMoKToKICAgICAgICAgICAgIGZv
ciBwb3J0LCBwcm9jZXNzIGluIHNlcnZlcnM6CisgICAgICAgICAgICAgICAgbG9nZ2VkX3NlcnZl
cnMuYXBwZW5kKHsicHJvdG9jb2wiOiBwcm90b2NvbCwgInBvcnQiOiBwb3J0LCAicGlkIjogcHJv
Y2Vzcy5wcm9jLnBpZH0pCiAgICAgICAgICAgICAgICAgbG9nZ2VyLmluZm8oIiVzLCBwb3J0OiVk
LCBwaWQ6JWQiICUgKHByb3RvY29sLCBwb3J0LCBwcm9jZXNzLnByb2MucGlkKSkKIAorICAgICMg
V3JpdGUgcGlkcyBpbiBhIGZpbGUgaW4gY2FzZSBhYnJ1cHQgc2h1dGRvd24gaXMgbmVlZGVkCisg
ICAgd2l0aCBvcGVuKGFyZ3ZbMF0sICJ3YiIpIGFzIHNlcnZlcnNfZmlsZToKKyAgICAgICAganNv
bi5kdW1wKGxvZ2dlZF9zZXJ2ZXJzLCBzZXJ2ZXJzX2ZpbGUpCisKICAgICBzeXMuc3RkaW4ucmVh
ZCgxKQogCiAKZGlmZiAtLWdpdCBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3Rz
L3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3Rfc2VydmVyLnB5IGIvVG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy93ZWJfcGxhdGZvcm1fdGVzdF9zZXJ2ZXIucHkKaW5k
ZXggNzZjMjNkYWUwMzA1MWFlYmEwMjIxMThjMDE5YzY1Yzc5ODhlOGY4ZC4uMzMyYzNjMzJmNzFm
ZTI4ZmQwMjhmOGM1YjllNWVjMTE0ZWI2NTBmMyAxMDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy93
ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy93ZWJfcGxhdGZvcm1fdGVzdF9zZXJ2ZXIucHkK
KysrIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvc2VydmVycy93ZWJfcGxh
dGZvcm1fdGVzdF9zZXJ2ZXIucHkKQEAgLTY0LDYgKzY0LDggQEAgY2xhc3MgV2ViUGxhdGZvcm1U
ZXN0U2VydmVyKGh0dHBfc2VydmVyX2Jhc2UuSHR0cFNlcnZlckJhc2UpOgogICAgICAgICBzZWxm
Ll9waWRfZmlsZSA9IHBpZGZpbGUKICAgICAgICAgaWYgbm90IHNlbGYuX3BpZF9maWxlOgogICAg
ICAgICAgICAgc2VsZi5fcGlkX2ZpbGUgPSBzZWxmLl9maWxlc3lzdGVtLmpvaW4oc2VsZi5fcnVu
dGltZV9wYXRoLCAnJXMucGlkJyAlIHNlbGYuX25hbWUpCisgICAgICAgIHNlbGYuX3NlcnZlcnNf
ZmlsZSA9IHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihzZWxmLl9ydW50aW1lX3BhdGgsICclc19zZXJ2
ZXJzLmpzb24nICUgKHNlbGYuX25hbWUpKQorCiAgICAgICAgIHNlbGYuX3N0ZG91dF9kYXRhID0g
Tm9uZQogICAgICAgICBzZWxmLl9zdGRlcnJfZGF0YSA9IE5vbmUKICAgICAgICAgc2VsZi5fZmls
ZXN5c3RlbSA9IHBvcnRfb2JqLmhvc3QuZmlsZXN5c3RlbQpAQCAtNzMsNyArNzUsNyBAQCBjbGFz
cyBXZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIoaHR0cF9zZXJ2ZXJfYmFzZS5IdHRwU2VydmVyQmFzZSk6
CiAgICAgICAgIHNlbGYuX3Jlc291cmNlc19maWxlc190b19jb3B5ID0gWyd0ZXN0aGFybmVzcy5q
cycsICd0ZXN0aGFybmVzcy5jc3MnLCAndGVzdGhhcm5lc3NyZXBvcnQuanMnXQogCiAgICAgICAg
IGN1cnJlbnRfZGlyX3BhdGggPSBzZWxmLl9maWxlc3lzdGVtLmFic3BhdGgoc2VsZi5fZmlsZXN5
c3RlbS5zcGxpdChfX2ZpbGVfXylbMF0pCi0gICAgICAgIHNlbGYuX3N0YXJ0X2NtZCA9IFsicHl0
aG9uIiwgc2VsZi5fZmlsZXN5c3RlbS5qb2luKGN1cnJlbnRfZGlyX3BhdGgsICJ3ZWJfcGxhdGZv
cm1fdGVzdF9sYXVuY2hlci5weSIpXQorICAgICAgICBzZWxmLl9zdGFydF9jbWQgPSBbInB5dGhv
biIsIHNlbGYuX2ZpbGVzeXN0ZW0uam9pbihjdXJyZW50X2Rpcl9wYXRoLCAid2ViX3BsYXRmb3Jt
X3Rlc3RfbGF1bmNoZXIucHkiKSwgc2VsZi5fc2VydmVyc19maWxlXQogICAgICAgICBzZWxmLl9k
b2Nfcm9vdF9wYXRoID0gcG9ydF9vYmoucGF0aF9mcm9tX3dlYmtpdF9iYXNlKCJMYXlvdXRUZXN0
cyIsIHNlbGYuX2RvY19yb290KQogCiAgICAgZGVmIF9pbnN0YWxsX21vZHVsZXMoc2VsZik6CkBA
IC0xMjgsMTcgKzEzMCwzNyBAQCBjbGFzcyBXZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIoaHR0cF9zZXJ2
ZXJfYmFzZS5IdHRwU2VydmVyQmFzZSk6CiAKICAgICAgICAgcmV0dXJuIHNlbGYuX3Byb2Nlc3Mu
cGlkCiAKKyAgICBkZWYgX3N0b3BfcnVubmluZ19zdWJzZXJ2ZXJzKHNlbGYpOgorICAgICAgICBp
ZiBzZWxmLl9maWxlc3lzdGVtLmV4aXN0cyhzZWxmLl9zZXJ2ZXJzX2ZpbGUpOgorICAgICAgICAg
ICAgdHJ5OgorICAgICAgICAgICAgICAgIGpzb25fZGF0YSA9IHNlbGYuX2ZpbGVzeXN0ZW0ucmVh
ZF90ZXh0X2ZpbGUoc2VsZi5fc2VydmVyc19maWxlKQorICAgICAgICAgICAgICAgIHN0YXJ0ZWRf
c2VydmVycyA9IGpzb24ubG9hZHMoanNvbl9kYXRhKQorICAgICAgICAgICAgICAgIGZvciBzZXJ2
ZXIgaW4gc3RhcnRlZF9zZXJ2ZXJzOgorICAgICAgICAgICAgICAgICAgICBpZiBzZWxmLl9leGVj
dXRpdmUuY2hlY2tfcnVubmluZ19waWQoc2VydmVyWydwaWQnXSk6CisgICAgICAgICAgICAgICAg
ICAgICAgICBfbG9nLndhcm5pbmcoJ0tpbGxpbmcgc2VydmVyIHByb2Nlc3MgKHByb3RvY29sOiAl
cyAsIHBvcnQ6ICVkLCBwaWQ6ICVkKS4nICUgKHNlcnZlclsncHJvdG9jb2wnXSwgc2VydmVyWydw
b3J0J10sIHNlcnZlclsncGlkJ10pKQorICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5fZXhl
Y3V0aXZlLmtpbGxfcHJvY2VzcyhzZXJ2ZXJbJ3BpZCddKQorICAgICAgICAgICAgZmluYWxseToK
KyAgICAgICAgICAgICAgICBzZWxmLl9maWxlc3lzdGVtLnJlbW92ZShzZWxmLl9zZXJ2ZXJzX2Zp
bGUpCisKKyAgICBkZWYgc3RvcChzZWxmKToKKyAgICAgICAgc3VwZXIoV2ViUGxhdGZvcm1UZXN0
U2VydmVyLCBzZWxmKS5zdG9wKCkKKyAgICAgICAgIyBJbiBjYXNlIG9mIG9ycGhhbmVkIHBpZCwg
a2lsbCB0aGUgcnVubmluZyBzdWJzZXJ2ZXJzIGlmIGFueSBzdGlsbCBhbGl2ZS4KKyAgICAgICAg
c2VsZi5fc3RvcF9ydW5uaW5nX3N1YnNlcnZlcnMoKQorCiAgICAgZGVmIF9zdG9wX3J1bm5pbmdf
c2VydmVyKHNlbGYpOgogICAgICAgICBfbG9nLmRlYnVnKCdTdG9wcGluZyAlcyBzZXJ2ZXInICUg
KHNlbGYuX25hbWUpKQogICAgICAgICBzZWxmLl9jbGVhbl93ZWJraXRfdGVzdF9maWxlcygpCi0g
ICAgICAgIGlmIHNlbGYuX3BpZCBhbmQgbm90IHNlbGYuX2V4ZWN1dGl2ZS5jaGVja19ydW5uaW5n
X3BpZChzZWxmLl9waWQpOgotICAgICAgICAgICAgc2VsZi5fZmlsZXN5c3RlbS5yZW1vdmUoc2Vs
Zi5fcGlkX2ZpbGUpCi0gICAgICAgICAgICByZXR1cm4KKwogICAgICAgICBpZiBzZWxmLl9wcm9j
ZXNzOgogICAgICAgICAgICAgKHNlbGYuX3N0ZG91dF9kYXRhLCBzZWxmLl9zdGRlcnJfZGF0YSkg
PSBzZWxmLl9wcm9jZXNzLmNvbW11bmljYXRlKGlucHV0PSdcbicpCiAgICAgICAgIGlmIHNlbGYu
X3dzb3V0OgogICAgICAgICAgICAgc2VsZi5fd3NvdXQuY2xvc2UoKQogICAgICAgICAgICAgc2Vs
Zi5fd3NvdXQgPSBOb25lCi0gICAgICAgIGlmIHNlbGYuX2V4ZWN1dGl2ZS5jaGVja19ydW5uaW5n
X3BpZChzZWxmLl9waWQpOgotICAgICAgICAgICAgcmFpc2UgaHR0cF9zZXJ2ZXJfYmFzZS5TZXJ2
ZXJFcnJvcignRmFpbGVkIHRvIHN0b3AgJXM6IHBsZWFzZSBnbyB0byB3ZWIgcGxhdGZvcm0gdGVz
dCBzZXJ2ZXIgbG9nIGZpbGUgdG8gZ2V0IHRoZSBQSUQgbGlzdCcgJSAoc2VsZi5fbmFtZSkpCi0g
ICAgICAgIHNlbGYuX2ZpbGVzeXN0ZW0ucmVtb3ZlKHNlbGYuX3BpZF9maWxlKQorCisgICAgICAg
IGlmIHNlbGYuX3BpZCBhbmQgc2VsZi5fZXhlY3V0aXZlLmNoZWNrX3J1bm5pbmdfcGlkKHNlbGYu
X3BpZCk6CisgICAgICAgICAgICBfbG9nLndhcm5pbmcoJ0Nhbm5vdCBzdG9wICVzIHNlcnZlciBu
b3JtYWxseS4nICUgKHNlbGYuX25hbWUpKQorICAgICAgICAgICAgX2xvZy53YXJuaW5nKCdLaWxs
aW5nIHNlcnZlciBsYXVuY2hlciBwcm9jZXNzIChwaWQ6ICVkKS4nICUgKHNlbGYuX3BpZCkpCisg
ICAgICAgICAgICBzZWxmLl9leGVjdXRpdmUua2lsbF9wcm9jZXNzKHNlbGYuX3BpZCkKKworICAg
ICAgICBzZWxmLl9yZW1vdmVfcGlkX2ZpbGUoKQorICAgICAgICBzZWxmLl9zdG9wX3J1bm5pbmdf
c3Vic2VydmVycygpCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9zZXJ2ZXJzL3dlYl9wbGF0Zm9ybV90ZXN0X3NlcnZlcl91bml0dGVzdC5weSBiL1Rvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3Rf
c2VydmVyX3VuaXR0ZXN0LnB5CmluZGV4IDk0NmVjZTlkODA2Y2UwZjVjMjYxMTNjZjdhOThmODg3
ZjE4MjZmMWYuLmQ0YjU0ZTc2NDUxYjRkODA2MmZjZjJmNGM0ZDQ3NjlkNmMxOTRjYTYgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2ViX3Bs
YXRmb3JtX3Rlc3Rfc2VydmVyX3VuaXR0ZXN0LnB5CisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3NlcnZlcnMvd2ViX3BsYXRmb3JtX3Rlc3Rfc2VydmVyX3VuaXR0ZXN0
LnB5CkBAIC0zMSwyMCArMzEsMjEgQEAgZnJvbSB3ZWJraXRweS5jb21tb24uc3lzdGVtLmZpbGVz
eXN0ZW0gaW1wb3J0IEZpbGVTeXN0ZW0KIGZyb20gd2Via2l0cHkucG9ydCBpbXBvcnQgUG9ydAog
ZnJvbSB3ZWJraXRweS50b29sLm1vY2t0b29sIGltcG9ydCBNb2NrT3B0aW9ucwogCitmcm9tIHdl
YmtpdHB5LmxheW91dF90ZXN0cy5zZXJ2ZXJzLmh0dHBfc2VydmVyX2Jhc2UgaW1wb3J0IFNlcnZl
ckVycm9yCiBmcm9tIHdlYmtpdHB5LmxheW91dF90ZXN0cy5zZXJ2ZXJzLndlYl9wbGF0Zm9ybV90
ZXN0X3NlcnZlciBpbXBvcnQgV2ViUGxhdGZvcm1UZXN0U2VydmVyCiAKIAogY2xhc3MgVGVzdFdl
YlBsYXRmb3JtVGVzdFNlcnZlcih1bml0dGVzdC5UZXN0Q2FzZSk6Ci0gICAgZGVmIHRlc3Rfc3Rh
cnRfY21kKHNlbGYpOgotCi0gICAgICAgIHBvcnQgPSBQb3J0KE1vY2tIb3N0KCksICJ0ZXN0IikK
KyAgICBkZWYgdGVzdF9wcmV2aW91c2x5X3NwYXduZWRfaW5zdGFuY2Uoc2VsZik6CisgICAgICAg
IGhvc3QgPSBNb2NrSG9zdCgpCisgICAgICAgIHBvcnQgPSBQb3J0KGhvc3QsICJ0ZXN0IikKICAg
ICAgICAgc2VydmVyID0gV2ViUGxhdGZvcm1UZXN0U2VydmVyKHBvcnQsICJ3cHR0ZXN0IiwgIi9t
b2NrL291dHB1dF9kaXIiLCAiL21vY2svb3V0cHV0X2Rpci9waWQudHh0IikKKyAgICAgICAgc2Vy
dmVyLl9jaGVja190aGF0X2FsbF9wb3J0c19hcmVfYXZhaWxhYmxlID0gbGFtYmRhOiBUcnVlCisg
ICAgICAgIHNlcnZlci5faXNfc2VydmVyX3J1bm5pbmdfb25fYWxsX3BvcnRzID0gbGFtYmRhOiBU
cnVlCiAKLSAgICAgICAgc2VydmVyLl9wcmVwYXJlX2NvbmZpZygpCi0gICAgICAgIHNlcnZlci5f
d3NvdXQgPSBOb25lCi0gICAgICAgIHNlcnZlci5fc3Bhd25fcHJvY2VzcygpCi0gICAgICAgIHRp
bWUuc2xlZXAoMSkKLSAgICAgICAgc2VydmVyLl9zdG9wX3J1bm5pbmdfc2VydmVyKCkKKyAgICAg
ICAgaG9zdC5maWxlc3lzdGVtLndyaXRlX3RleHRfZmlsZSgiL21vY2tfb3V0cHV0X2Rpci9waWQu
dHh0IiwgIjAiKQorICAgICAgICBzZXJ2ZXIuc3RhcnQoKQorICAgICAgICBzZXJ2ZXIuc3RvcCgp
CiAKICAgICBkZWYgdGVzdF9pbXBvcnRfd2ViX3BsYXRmb3JtX3Rlc3RfbW9kdWxlcyhzZWxmKToK
ICAgICAgICAgZnMgPSBGaWxlU3lzdGVtKCkKQEAgLTY3LDMgKzY4LDI5IEBAIGNsYXNzIFRlc3RX
ZWJQbGF0Zm9ybVRlc3RTZXJ2ZXIodW5pdHRlc3QuVGVzdENhc2UpOgogICAgICAgICAgICAgc2Vs
Zi5mYWlsKGUpCiAgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocGF0aG5hbWUsIGZzLmpvaW4odG9v
bHNfZGlyLCAic2NyaXB0cyIpKQogICAgICAgICBzeXMucGF0aC5wb3AoMCkKKworICAgIGRlZiB0
ZXN0X2NvcnJ1cHRlZF9zdWJzZXJ2ZXJfZmlsZXMoc2VsZik6CisgICAgICAgIGhvc3QgPSBNb2Nr
SG9zdCgpCisgICAgICAgIHBvcnQgPSBQb3J0KGhvc3QsICJ0ZXN0IikKKyAgICAgICAgc2VydmVy
ID0gV2ViUGxhdGZvcm1UZXN0U2VydmVyKHBvcnQsICJ3cHR0ZXN0IiwgIi9tb2NrL291dHB1dF9k
aXIiLCAiL21vY2svb3V0cHV0X2Rpci9waWQudHh0IikKKyAgICAgICAgc2VydmVyLl9jaGVja190
aGF0X2FsbF9wb3J0c19hcmVfYXZhaWxhYmxlID0gbGFtYmRhOiBUcnVlCisgICAgICAgIHNlcnZl
ci5faXNfc2VydmVyX3J1bm5pbmdfb25fYWxsX3BvcnRzID0gbGFtYmRhOiBUcnVlCisKKyAgICAg
ICAgaG9zdC5maWxlc3lzdGVtLndyaXRlX3RleHRfZmlsZSgiL21vY2tfb3V0cHV0X2Rpci93cHR0
ZXN0X3NlcnZlcnMuanNvbiIsICIwIikKKyAgICAgICAgc2VydmVyLnN0b3AoKQorICAgICAgICBz
ZWxmLmFzc2VydEZhbHNlKGhvc3QuZmlsZXN5c3RlbS5leGlzdHMoIi9tb2NrL291dHB1dF9kaXIv
d3B0dGVzdF9zZXJ2ZXJzLmpzb24iKSkKKworICAgICAgICBob3N0LmZpbGVzeXN0ZW0ud3JpdGVf
dGV4dF9maWxlKCIvbW9ja19vdXRwdXRfZGlyL3dwdHRlc3Rfc2VydmVycy5qc29uIiwgIlswLCIp
CisgICAgICAgIHNlcnZlci5zdGFydCgpCisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaG9zdC5m
aWxlc3lzdGVtLmV4aXN0cygiL21vY2svb3V0cHV0X2Rpci93cHR0ZXN0X3NlcnZlcnMuanNvbiIp
KQorICAgICAgICBzZXJ2ZXIuc3RvcCgpCisKKyAgICAgICAgaG9zdC5maWxlc3lzdGVtLndyaXRl
X3RleHRfZmlsZSgiL21vY2tfb3V0cHV0X2Rpci93cHR0ZXN0X3NlcnZlcnMuanNvbiIsICJbeydw
cm90b2NvbCc6ICdodHRwJywgJ3BvcnQnOiA4MCB9XSIpCisgICAgICAgIHNlcnZlci5zdGFydCgp
CisgICAgICAgIHNlbGYuYXNzZXJ0RmFsc2UoaG9zdC5maWxlc3lzdGVtLmV4aXN0cygiL21vY2sv
b3V0cHV0X2Rpci93cHR0ZXN0X3NlcnZlcnMuanNvbiIpKQorICAgICAgICBzZXJ2ZXIuc3RvcCgp
CisKKyAgICAgICAgaG9zdC5maWxlc3lzdGVtLndyaXRlX3RleHRfZmlsZSgiL21vY2tfb3V0cHV0
X2Rpci93cHR0ZXN0X3NlcnZlcnMuanNvbiIsICJbeydwcm90b2NvbCc6ICdodHRwJywgJ3BvcnQn
OiA4MCwgJ3BpZCc6IHt9IH1dIikKKyAgICAgICAgc2VydmVyLnN0YXJ0KCkKKyAgICAgICAgc2Vs
Zi5hc3NlcnRGYWxzZShob3N0LmZpbGVzeXN0ZW0uZXhpc3RzKCIvbW9jay9vdXRwdXRfZGlyL3dw
dHRlc3Rfc2VydmVycy5qc29uIikpCisgICAgICAgIHNlcnZlci5zdG9wKCkKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA4MjE2
MDQ5ZDZkNjM2OTBkMzRkMDc5ODA2NDgzZWYyYzIzYTE4M2Y1Li5jMmJiZWRkNTkxYWY5MmQyZGEx
NmExOTExMmI0ZmZiMDBkZjk0NDcyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
KysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTUtMDItMjEg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm4uZmFibGV0QGNyZi5jYW5vbi5mcj4KKworICAgICAgICBU
ZXN0cyBkb24ndCB3b3JrIG9uIHNvbWUgYm90czogRmFpbGVkIHRvIHN0b3Agd3B0d2sKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MTIzNQorCisgICAg
ICAgIFJldmlld2VkIGJ5IFJ5b3N1a2UgTml3YS4KKworICAgICAgICAqIFRlc3RFeHBlY3RhdGlv
bnM6IE1hcmtpbmcgd2ViLXBsYXRmb3JtLXRlc3RzIGFzIGZhaWxlZCBvciBwYXNzZWQgdW50aWwg
d3B0IHNlcnZlciBwcm92ZXMgdG8gYmUgc3RhYmxlLgorCiAyMDE1LTAyLTIxICBBbGV4ZXkgUHJv
c2t1cnlha292ICA8YXBAYXBwbGUuY29tPgogCiAgICAgICAgIEZsYWt5IG1lZGlhIHRlc3RzIGR1
ZSB0byB2YXJpb3VzIENvcmVNZWRpYSBpc3N1ZXMuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9U
ZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAzOTgx
YjgzNWUwNDVhNjM2NDEyNDM2ZjJiOGZmYjNjMjFhNjE5ZGIyLi43YjNhNTRkYTRmMzdlM2RlYzcx
ODBhODMyYWE2NDFjNGQwMTQwOWY3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0
YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTIzNyw4ICsyMzcs
OSBAQCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ltYWdlcyBbIFNraXAgXQogaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy90b29scyBbIFNraXAgXQogCiAjIFczQyBkb21w
YXJzaW5nIHRlc3Qgc3VpdGUKLSMgQnVnIDE0MTIzNTogVGVzdHMgbWFya2VkIGFzIFNraXAgdW50
aWwgYmVpbmcgYWJsZSB0byByZWxhdW5jaCB3cHQgc2VydmVyIHByb3Blcmx5Ci1pbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzIFsgU2tpcCBdCisjIFRlc3RzIG1hcmtlZCBhcyBwYXNzIG9y
IGZhaWwgdW50aWwgd3B0IHNlcnZlciBwcm92ZXMgdG8gYmUgc3RhYmxlIGVub3VnaAoraW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb21wYXJzaW5nL0RPTVBhcnNlci1wYXJzZUZyb21T
dHJpbmctaHRtbC5odG1sIFsgUGFzcyBGYWlsdXJlIF0KK2ltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvZG9tcGFyc2luZy9pbnNlcnQtYWRqYWNlbnQuaHRtbCBbIFBhc3MgRmFpbHVyZSBd
CiAKICMgSW1wb3J0ZWQgVzNDIGNhbnZhcyBmYWlsZWQgdGVzdHMKIHdlYmtpdC5vcmcvYi8xMzg2
NzYgaW1wb3J0ZWQvdzNjL2NhbnZhcy8yZC5wYXR0ZXJuLmltYWdlLm51bGwuaHRtbCBbIEZhaWx1
cmUgXQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>