<?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>38248</bug_id>
          
          <creation_ts>2010-04-28 01:11:01 -0700</creation_ts>
          <short_desc>webkitpy: ScriptError(&apos;Failed to run &quot;[u\&apos;taskkill.exe\&apos;, u\&apos;/f\&apos;, u\&apos;/im\&apos;, u\&apos;httpd.exe\&apos;]&quot; exit_code: 128&apos;,)</short_desc>
          <delta_ts>2010-04-28 11:49:36 -0700</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>All</rep_platform>
          <op_sys>Windows Vista</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Fumitoshi Ukai">ukai</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>cjerdonek</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>jorlow</cc>
    
    <cc>ojan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>218258</commentid>
    <comment_count>0</comment_count>
    <who name="Fumitoshi Ukai">ukai</who>
    <bug_when>2010-04-28 01:11:01 -0700</bug_when>
    <thetext>Webkit (webkit.org) builder on chromium failed to kill httpd at the end of webkit tests, and left websocket server running.

http://build.chromium.org/buildbot/waterfall.fyi/builders/Webkit%20(webkit.org)/builds/26489/steps/webkit_tests/logs/stdio

100428 00:54:31 run_webkit_tests.py:243  DEBUG flushing stdout
100428 00:54:31 run_webkit_tests.py:245  DEBUG flushing stderr
100428 00:54:31 run_webkit_tests.py:247  DEBUG stopping http server
Exception webkitpy.common.system.executive.ScriptError: ScriptError(&apos;Failed to run &quot;[u\&apos;taskkill.exe\&apos;, u\&apos;/f\&apos;, u\&apos;/im\&apos;, u\&apos;httpd.exe\&apos;]&quot; exit_code: 128&apos;,) in &lt;bound method TestRunner.__del__ of &lt;webkitpy.layout_tests.run_webkit_tests.TestRunner instance at 0x00E21918&gt;&gt; ignored

command timed out: 600 seconds without output, killing pid 18336
SIGKILL failed to kill process
using fake rc=-1
program finished with exit code -1

remoteFailed: [Failure instance: Traceback from remote host -- Traceback (most recent call last):
Failure: buildbot.slave.commands.TimeoutError: SIGKILL failed to kill process

Next webkit tests run would fail to remove output files of websocket before launching websocket server, because output file is used in running process.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218261</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-28 01:14:01 -0700</bug_when>
    <thetext>Thank you for filing this!  I&apos;m working on a fix now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218283</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-28 02:23:34 -0700</bug_when>
    <thetext>I&apos;m not sure I understand.  Should the httpd server be running?  Are we failing to kill it?

The old code would have ignored this error.  So I&apos;m fixing the new code to ignore it as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218285</commentid>
    <comment_count>3</comment_count>
      <attachid>54539</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-28 02:33:28 -0700</bug_when>
    <thetext>Created attachment 54539
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218286</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-28 02:34:33 -0700</bug_when>
    <thetext>I think the problem here was that killall &quot;httpd&quot; is never going to succeed on windows since we use lighttpd. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218288</commentid>
    <comment_count>5</comment_count>
    <who name="Fumitoshi Ukai">ukai</who>
    <bug_when>2010-04-28 02:40:54 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Created an attachment (id=54539) [details]
&gt; Patch

LGTM.
Thanks for fixing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218290</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-28 02:44:25 -0700</bug_when>
    <thetext>The better fix would have probably been to stop trying to kill httpd when we know we didn&apos;t start it and then actually make the Executive.kill_all API throw an exception if no process exists.  But we can do that sort of change later.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218293</commentid>
    <comment_count>7</comment_count>
      <attachid>54539</attachid>
    <who name="Fumitoshi Ukai">ukai</who>
    <bug_when>2010-04-28 02:54:53 -0700</bug_when>
    <thetext>Comment on attachment 54539
Patch


&gt;          Reviewed by Darin Adler and Eric Seidel.
&gt; diff --git a/WebKitTools/Scripts/webkitpy/common/system/executive.py b/WebKitTools/Scripts/webkitpy/common/system/executive.py
&gt; index 5c1d28ca6f5ae45cebaad330018bc3b6c3c6cb1e..cb29834f4c970cecd63c105a373b2626a6391002 100644
&gt; --- a/WebKitTools/Scripts/webkitpy/common/system/executive.py
&gt; +++ b/WebKitTools/Scripts/webkitpy/common/system/executive.py
&gt; @@ -161,17 +161,39 @@ class Executive(object):
&gt;          return 2
&gt;  
&gt;      def kill_process(self, pid):
&gt; +        &quot;&quot;&quot;Attempts to kill the given pid.
&gt; +        Will fail silently if pid does not exist or insufficient permisssions.&quot;&quot;&quot;
&gt;          if platform.system() == &quot;Windows&quot;:
&gt;              # According to http://docs.python.org/library/os.html
&gt;              # os.kill isn&apos;t available on Windows.  However, when I tried it
&gt;              # using Cygwin, it worked fine.  We should investigate whether
&gt;              # we need this platform specific code here.
&gt; -            subprocess.call((&apos;taskkill.exe&apos;, &apos;/f&apos;, &apos;/pid&apos;, unicode(pid)),
&gt; -                            stdin=open(os.devnull, &apos;r&apos;),
&gt; -                            stdout=subprocess.PIPE,
&gt; -                            stderr=subprocess.PIPE)
&gt; +            command = [&quot;taskkill.exe&quot;, &quot;/f&quot;, &quot;/pid&quot;, pid]

str(pid) or unicode(pid) ?
are we sure pid is already string?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218294</commentid>
    <comment_count>8</comment_count>
      <attachid>54539</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-04-28 02:55:54 -0700</bug_when>
    <thetext>Comment on attachment 54539
Patch

Looks fine to me, Ukai did an unofficial review, and this is breaking the Chromium bots.  So r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218296</commentid>
    <comment_count>9</comment_count>
      <attachid>54539</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-04-28 02:56:50 -0700</bug_when>
    <thetext>Comment on attachment 54539
Patch

Wait...didn&apos;t see Ukai&apos;s comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218301</commentid>
    <comment_count>10</comment_count>
      <attachid>54539</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-04-28 03:06:09 -0700</bug_when>
    <thetext>Comment on attachment 54539
Patch

r=me.  Ukia, please fix while landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218302</commentid>
    <comment_count>11</comment_count>
    <who name="Fumitoshi Ukai">ukai</who>
    <bug_when>2010-04-28 03:09:25 -0700</bug_when>
    <thetext>Committed r58397: &lt;http://trac.webkit.org/changeset/58397&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>218530</commentid>
    <comment_count>12</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-04-28 11:49:36 -0700</bug_when>
    <thetext>            command = [&quot;taskkill.exe&quot;, &quot;/f&quot;, &quot;/pid&quot;, str(pid)] 

is wrong.

run_command already knows how to convert arguments to strings.

I&apos;ll remove the &quot;fix&quot; in a later checkin.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>54539</attachid>
            <date>2010-04-28 02:33:28 -0700</date>
            <delta_ts>2010-04-28 03:06:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38248-20100428023325.patch</filename>
            <type>text/plain</type>
            <size>15620</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA4YzZiOTEzM2FhOWY0ZTdmNjBmMTQyMDVmYzc4ODZhZmRkZDE3Y2I5Li45MTYyOGRi
NTg5ZDlhNDQ0YTk2ZDgwNDY2NWE4OGYzYjE3M2Q1ZTE4IDEwMDY0NAotLS0gYS9XZWJLaXRUb29s
cy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzAgQEAK
KzIwMTAtMDQtMjggIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHdlYmtpdHB5OiBTY3JpcHRFcnJv
cignRmFpbGVkIHRvIHJ1biAiW3VcJ3Rhc2traWxsLmV4ZVwnLCB1XCcvZlwnLCB1XCcvaW1cJywg
dVwnaHR0cGQuZXhlXCddIiBleGl0X2NvZGU6IDEyOCcsKQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzgyNDgKKworICAgICAgICBUaGUgcHJldmlvdXMg
Y29kZSBkaWQgbm90IGNoZWNrIHRoZSByZXR1cm4gY29kZSBvZiB0YXNra2lsbC4KKyAgICAgICAg
V2hlbiBJIG1vdmVkIHRoYXQgY2FsbHNpdGUgZnJvbSB1c2luZyBzdWJwcm9jZXNzLmNhbGwgdG8K
KyAgICAgICAgRXhlY3V0aXZlLnJ1bl9jb21tYW5kIGhhdmluZyBhIG5vbi16ZXJvIHJldHVybiBj
b2RlIGJlY2FtZSBhbiBlcnJvci4KKworICAgICAgICBJbiB0aGlzIGNoYW5nZSBJJ3ZlIGNlbnRy
YWxpemVkIG91ciBraWxsYWxsIGhhbmRsaW5nIGluIGV4ZWN1dGl2ZSwKKyAgICAgICAgYW5kIGFk
ZGVkIHRlc3RzIGZvciBpdCB0byBtYWtlIHN1cmUgaXQgd29ya3MuCisKKyAgICAgICAgQ3VycmVu
dGx5IGtpbGxfcHJvY2VzcyBhbmQga2lsbF9hbGwgc3dhbGxvdyBleGNlcHRpb25zIGluIHRoZSBj
YXNlcworICAgICAgICB3aGVyZSB0aGUgcHJvY2VzcyhlcykgdG8gYmUga2lsbGVkIGRvKGVzKSBu
b3QgZXhpc3QuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vZXhl
Y3V0aXZlLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvY29tbW9uL3N5c3RlbS9leGVj
dXRpdmVfdW5pdHRlc3QucHk6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVz
dHMvcG9ydC9jaHJvbWl1bV9saW51eC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX21hYy5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtX3dpbi5weToKKyAgICAgICAgKiBTY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2d0ay5weToKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L21hYy5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L2xheW91dF90ZXN0cy9wb3J0L3F0LnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvd2luLnB5OgorCiAyMDEwLTA0LTI3ICBTaGluaWNoaXJvIEhhbWFq
aSAgPGhhbWFqaUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRs
ZXIgYW5kIEVyaWMgU2VpZGVsLgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZS5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvY29tbW9uL3N5c3RlbS9leGVjdXRpdmUucHkKaW5kZXggNWMxZDI4Y2E2ZjVhZTQ1Y2Vi
YWFkMzMwMDE4YmMzYjZjM2M2Y2IxZS4uY2IyOTgzNGY0Yzk3MGNlY2Q2M2MxMDVhMzczYjI2MjZh
NjM5MTAwMiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24v
c3lzdGVtL2V4ZWN1dGl2ZS5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2Nv
bW1vbi9zeXN0ZW0vZXhlY3V0aXZlLnB5CkBAIC0xNjEsMTcgKzE2MSwzOSBAQCBjbGFzcyBFeGVj
dXRpdmUob2JqZWN0KToKICAgICAgICAgcmV0dXJuIDIKIAogICAgIGRlZiBraWxsX3Byb2Nlc3Mo
c2VsZiwgcGlkKToKKyAgICAgICAgIiIiQXR0ZW1wdHMgdG8ga2lsbCB0aGUgZ2l2ZW4gcGlkLgor
ICAgICAgICBXaWxsIGZhaWwgc2lsZW50bHkgaWYgcGlkIGRvZXMgbm90IGV4aXN0IG9yIGluc3Vm
ZmljaWVudCBwZXJtaXNzc2lvbnMuIiIiCiAgICAgICAgIGlmIHBsYXRmb3JtLnN5c3RlbSgpID09
ICJXaW5kb3dzIjoKICAgICAgICAgICAgICMgQWNjb3JkaW5nIHRvIGh0dHA6Ly9kb2NzLnB5dGhv
bi5vcmcvbGlicmFyeS9vcy5odG1sCiAgICAgICAgICAgICAjIG9zLmtpbGwgaXNuJ3QgYXZhaWxh
YmxlIG9uIFdpbmRvd3MuICBIb3dldmVyLCB3aGVuIEkgdHJpZWQgaXQKICAgICAgICAgICAgICMg
dXNpbmcgQ3lnd2luLCBpdCB3b3JrZWQgZmluZS4gIFdlIHNob3VsZCBpbnZlc3RpZ2F0ZSB3aGV0
aGVyCiAgICAgICAgICAgICAjIHdlIG5lZWQgdGhpcyBwbGF0Zm9ybSBzcGVjaWZpYyBjb2RlIGhl
cmUuCi0gICAgICAgICAgICBzdWJwcm9jZXNzLmNhbGwoKCd0YXNra2lsbC5leGUnLCAnL2YnLCAn
L3BpZCcsIHVuaWNvZGUocGlkKSksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkaW49
b3Blbihvcy5kZXZudWxsLCAncicpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZG91
dD1zdWJwcm9jZXNzLlBJUEUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RkZXJyPXN1
YnByb2Nlc3MuUElQRSkKKyAgICAgICAgICAgIGNvbW1hbmQgPSBbInRhc2traWxsLmV4ZSIsICIv
ZiIsICIvcGlkIiwgcGlkXQorICAgICAgICAgICAgIyB0YXNra2lsbCB3aWxsIGV4aXQgMTI4IGlm
IHRoZSBwcm9jZXNzIGlzIG5vdCBmb3VuZC4KKyAgICAgICAgICAgIHNlbGYucnVuX2NvbW1hbmQo
Y29tbWFuZCwgZXJyb3JfaGFuZGxlcj1zZWxmLmlnbm9yZV9lcnJvcikKICAgICAgICAgICAgIHJl
dHVybgotICAgICAgICBvcy5raWxsKHBpZCwgc2lnbmFsLlNJR0tJTEwpCisgICAgICAgIHRyeToK
KyAgICAgICAgICAgIG9zLmtpbGwocGlkLCBzaWduYWwuU0lHS0lMTCkKKyAgICAgICAgZXhjZXB0
IE9TRXJyb3IsIGU6CisgICAgICAgICAgICAjIEZJWE1FOiBXZSBzaG91bGQgbWFrZSBub24tc2ls
ZW50IGZhaWx1cmUgYW4gb3B0aW9uLgorICAgICAgICAgICAgcGFzcworCisgICAgZGVmIGtpbGxf
YWxsKHNlbGYsIHByb2Nlc3NfbmFtZSk6CisgICAgICAgICIiIkF0dGVtcHRzIHRvIGtpbGwgcHJv
Y2Vzc2VzIG1hdGNoaW5nIHByb2Nlc3NfbmFtZS4KKyAgICAgICAgV2lsbCBmYWlsIHNpbGVudGx5
IGlmIG5vIHByb2Nlc3MgYXJlIGZvdW5kLiIiIgorICAgICAgICBpZiBwbGF0Zm9ybS5zeXN0ZW0o
KSA9PSAiV2luZG93cyI6CisgICAgICAgICAgICAjIFdlIG1pZ2h0IHdhbnQgdG8gYXV0b21hdGlj
YWxseSBhcHBlbmQgLmV4ZT8KKyAgICAgICAgICAgIGNvbW1hbmQgPSBbInRhc2traWxsLmV4ZSIs
ICIvZiIsICIvaW0iLCBwcm9jZXNzX25hbWVdCisgICAgICAgICAgICAjIHRhc2traWxsIHdpbGwg
ZXhpdCAxMjggaWYgdGhlIHByb2Nlc3MgaXMgbm90IGZvdW5kLgorICAgICAgICAgICAgc2VsZi5y
dW5fY29tbWFuZChjb21tYW5kLCBlcnJvcl9oYW5kbGVyPXNlbGYuaWdub3JlX2Vycm9yKQorICAg
ICAgICAgICAgcmV0dXJuCisKKyAgICAgICAgIyBGSVhNRTogVGhpcyBpcyBpbmNvbnNpc3RlbnQg
dGhhdCBraWxsX2FsbCB1c2VzIFRFUk0gYW5kIGtpbGxfcHJvY2VzcworICAgICAgICAjIHVzZXMg
S0lMTC4gIFdpbmRvd3MgaXMgYWx3YXlzIHVzaW5nIC9mICh3aGljaCBzZWVtcyBsaWtlIC1LSUxM
KS4KKyAgICAgICAgIyBXZSBzaG91bGQgcGljayBvbmUgbW9kZSwgb3IgYWRkIHN1cHBvcnQgZm9y
IHN3aXRjaGluZyBiZXR3ZWVuIHRoZW0uCisgICAgICAgICMgTm90ZTogTWFjIE9TIFggMTAuNiBy
ZXF1aXJlcyAtU0lHTkFMTkFNRSBiZWZvcmUgLXUgVVNFUgorICAgICAgICBjb21tYW5kID0gWyJr
aWxsYWxsIiwgIi1URVJNIiwgIi11Iiwgb3MuZ2V0ZW52KCJVU0VSIiksIHByb2Nlc3NfbmFtZV0K
KyAgICAgICAgc2VsZi5ydW5fY29tbWFuZChjb21tYW5kLCBlcnJvcl9oYW5kbGVyPXNlbGYuaWdu
b3JlX2Vycm9yKQogCiAgICAgIyBFcnJvciBoYW5kbGVycyBkbyBub3QgbmVlZCB0byBiZSBzdGF0
aWMgbWV0aG9kcyBvbmNlIGFsbCBjYWxsZXJzIGFyZQogICAgICMgdXBkYXRlZCB0byB1c2UgYW4g
RXhlY3V0aXZlIG9iamVjdC4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0
cHkvY29tbW9uL3N5c3RlbS9leGVjdXRpdmVfdW5pdHRlc3QucHkgYi9XZWJLaXRUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L2NvbW1vbi9zeXN0ZW0vZXhlY3V0aXZlX3VuaXR0ZXN0LnB5CmluZGV4IDg5
ZDM0MGI2MGMxOGI2NDc4ZmZiZWY1MzRjOTRjYjdhODcxN2ViMDAuLmNlOTEyNjljMTZkMDU3N2Ji
NDJkYTExOTM2NmY1ZTQ1MDIwMTdkMzUgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvY29tbW9uL3N5c3RlbS9leGVjdXRpdmVfdW5pdHRlc3QucHkKKysrIGIvV2ViS2l0
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9jb21tb24vc3lzdGVtL2V4ZWN1dGl2ZV91bml0dGVzdC5w
eQpAQCAtMjcsNiArMjcsOSBAQAogIyAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKICMgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KIAoraW1w
b3J0IHNpZ25hbAoraW1wb3J0IHN1YnByb2Nlc3MKK2ltcG9ydCBzeXMKIGltcG9ydCB1bml0dGVz
dAogCiBmcm9tIHdlYmtpdHB5LmNvbW1vbi5zeXN0ZW0uZXhlY3V0aXZlIGltcG9ydCBFeGVjdXRp
dmUsIHJ1bl9jb21tYW5kCkBAIC02NiwzICs2OSwyNSBAQCBjbGFzcyBFeGVjdXRpdmVUZXN0KHVu
aXR0ZXN0LlRlc3RDYXNlKToKIAogICAgICAgICBvdXRwdXQgPSBleGVjdXRpdmUucnVuX2FuZF90
aHJvd19pZl9mYWlsKFsiZWNobyIsICItbiIsIHVuaWNvZGVfdG9yXSwgcXVpZXQ9VHJ1ZSwgZGVj
b2RlX291dHB1dD1GYWxzZSkKICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMob3V0cHV0LCB1dGY4
X3RvcikKKworICAgIGRlZiB0ZXN0X2tpbGxfcHJvY2VzcyhzZWxmKToKKyAgICAgICAgZXhlY3V0
aXZlID0gRXhlY3V0aXZlKCkKKyAgICAgICAgIyBGSVhNRTogVGhpcyBtYXkgbmVlZCBlZGl0cyB0
byB3b3JrIHJpZ2h0IG9uIHdpbmRvd3MuCisgICAgICAgICMgV2UgdXNlICJ5ZXMiIGJlY2F1c2Ug
aXQgbG9vcHMgZm9yZXZlci4KKyAgICAgICAgcHJvY2VzcyA9IHN1YnByb2Nlc3MuUG9wZW4oWyJ5
ZXMiXSwgc3Rkb3V0PXN1YnByb2Nlc3MuUElQRSkKKyAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChw
cm9jZXNzLnBvbGwoKSwgTm9uZSkgICMgUHJvY2VzcyBpcyBydW5uaW5nCisgICAgICAgIGV4ZWN1
dGl2ZS5raWxsX3Byb2Nlc3MocHJvY2Vzcy5waWQpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
cHJvY2Vzcy53YWl0KCksIC1zaWduYWwuU0lHS0lMTCkKKyAgICAgICAgIyBLaWxsaW5nIGFnYWlu
IHNob3VsZCBmYWlsIHNpbGVudGx5LgorICAgICAgICBleGVjdXRpdmUua2lsbF9wcm9jZXNzKHBy
b2Nlc3MucGlkKQorCisgICAgZGVmIHRlc3Rfa2lsbF9hbGwoc2VsZik6CisgICAgICAgIGV4ZWN1
dGl2ZSA9IEV4ZWN1dGl2ZSgpCisgICAgICAgICMgRklYTUU6IFRoaXMgbWF5IG5lZWQgZWRpdHMg
dG8gd29yayByaWdodCBvbiB3aW5kb3dzLgorICAgICAgICAjIFdlIHVzZSAieWVzIiBiZWNhdXNl
IGl0IGxvb3BzIGZvcmV2ZXIuCisgICAgICAgIHByb2Nlc3MgPSBzdWJwcm9jZXNzLlBvcGVuKFsi
eWVzIl0sIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwo
cHJvY2Vzcy5wb2xsKCksIE5vbmUpICAjIFByb2Nlc3MgaXMgcnVubmluZworICAgICAgICBleGVj
dXRpdmUua2lsbF9hbGwoInllcyIpCisgICAgICAgIHNlbGYuYXNzZXJ0RXF1YWwocHJvY2Vzcy53
YWl0KCksIC1zaWduYWwuU0lHVEVSTSkKKyAgICAgICAgIyBLaWxsaW5nIGFnYWluIHNob3VsZCBm
YWlsIHNpbGVudGx5LgorICAgICAgICBleGVjdXRpdmUua2lsbF9hbGwoInllcyIpCmRpZmYgLS1n
aXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9t
aXVtX2xpbnV4LnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
cG9ydC9jaHJvbWl1bV9saW51eC5weQppbmRleCAxNTAzYTAzODhmZDZhNTEyYTExMzY3NzBmZDMz
ODlkNGJiNjliZjFjLi5iODIxMTU1ZjY3MmYwZTE1NWYzY2RlNTE1ZjNjNjk1MTAzYmQzN2E4IDEw
MDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0
L2Nocm9taXVtX2xpbnV4LnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fbGludXgucHkKQEAgLTEyNCwxNCArMTI0LDYgQEAgY2xh
c3MgQ2hyb21pdW1MaW51eFBvcnQoY2hyb21pdW0uQ2hyb21pdW1Qb3J0KToKICAgICAgICAgICAg
IF9sb2cuZXJyb3IoJycpCiAgICAgICAgIHJldHVybiByZXN1bHQKIAotCi0gICAgZGVmIF9raWxs
X2FsbF9wcm9jZXNzKHNlbGYsIHByb2Nlc3NfbmFtZSk6Ci0gICAgICAgICMgRklYTUU6IFRoaXMg
c2hvdWxkIHVzZSBFeGVjdXRpdmUuCi0gICAgICAgIG51bGwgPSBvcGVuKG9zLmRldm51bGwpCi0g
ICAgICAgIHN1YnByb2Nlc3MuY2FsbChbJ2tpbGxhbGwnLCAnLVRFUk0nLCAnLXUnLCBvcy5nZXRl
bnYoJ1VTRVInKSwKLSAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NfbmFtZV0sIHN0ZGVy
cj1udWxsKQotICAgICAgICBudWxsLmNsb3NlKCkKLQogICAgIGRlZiBfcGF0aF90b19hcGFjaGUo
c2VsZik6CiAgICAgICAgIGlmIHNlbGYuX2lzX3JlZGhhdF9iYXNlZCgpOgogICAgICAgICAgICAg
cmV0dXJuICcvdXNyL3NiaW4vaHR0cGQnCkBAIC0xODgsOCArMTgwLDggQEAgY2xhc3MgQ2hyb21p
dW1MaW51eFBvcnQoY2hyb21pdW0uQ2hyb21pdW1Qb3J0KToKICAgICAgICAgICAgICMgVE9ETyht
bW9zcykgVGhpcyBpc24ndCBpZGVhbCwgc2luY2UgaXQgY291bGQgY29uZmxpY3Qgd2l0aAogICAg
ICAgICAgICAgIyBsaWdodHRwZCBwcm9jZXNzZXMgbm90IHN0YXJ0ZWQgYnkgaHR0cF9zZXJ2ZXIu
cHksCiAgICAgICAgICAgICAjIGJ1dCBnb29kIGVub3VnaCBmb3Igbm93LgotICAgICAgICAgICAg
c2VsZi5fa2lsbF9hbGxfcHJvY2VzcygnbGlnaHR0cGQnKQotICAgICAgICAgICAgc2VsZi5fa2ls
bF9hbGxfcHJvY2VzcygnYXBhY2hlMicpCisgICAgICAgICAgICBzZWxmLl9leGVjdXRpdmUua2ls
bF9hbGwoImxpZ2h0dHBkIikKKyAgICAgICAgICAgIHNlbGYuX2V4ZWN1dGl2ZS5raWxsX2FsbCgi
YXBhY2hlMiIpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAg
ICAgb3Mua2lsbChzZXJ2ZXJfcGlkLCBzaWduYWwuU0lHVEVSTSkKZGlmZiAtLWdpdCBhL1dlYktp
dFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fbWFjLnB5
IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1
bV9tYWMucHkKaW5kZXggMGJmMzhiNWQ0NjQxZTdjYzU1ODg1OWM4NzkxNDAxZjRlZjlhYzMyOC4u
NDRmZDM4YmNhYzg1YzFmMWMyZWQ1NmE3ZTBjMWViMGJhNWNiMjliNiAxMDA2NDQKLS0tIGEvV2Vi
S2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bV9tYWMu
cHkKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9j
aHJvbWl1bV9tYWMucHkKQEAgLTExNSwxOSArMTE1LDYgQEAgY2xhc3MgQ2hyb21pdW1NYWNQb3J0
KGNocm9taXVtLkNocm9taXVtUG9ydCk6CiAgICAgICAgIHJldHVybiBzZWxmLnBhdGhfZnJvbV9j
aHJvbWl1bV9iYXNlKCd0aGlyZF9wYXJ0eScsICdsaWdodHRwZCcsCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICdtYWMnLCAqY29tcHMpCiAKLSAgICBkZWYgX2tp
bGxfYWxsX3Byb2Nlc3Moc2VsZiwgcHJvY2Vzc19uYW1lKToKLSAgICAgICAgIiIiS2lsbCBhbnkg
cHJvY2Vzc2VzIHJ1bm5pbmcgdW5kZXIgdGhpcyBuYW1lLiIiIgotICAgICAgICAjIEZJWE1FOiBU
aGlzIHNob3VsZCB1c2UgRXhlY3V0aXZlLgotICAgICAgICAjIE9uIE1hYyBPUyBYIDEwLjYsIGtp
bGxhbGwgaGFzIGEgbmV3IGNvbnN0cmFpbnQ6IC1TSUdOQUxOQU1FIG9yCi0gICAgICAgICMgLVNJ
R05BTE5VTUJFUiBtdXN0IGNvbWUgZmlyc3QuICBFeGFtcGxlIHByb2JsZW06Ci0gICAgICAgICMg
ICAkIGtpbGxhbGwgLXUgJFVTRVIgLVRFUk0gbGlnaHR0cGQKLSAgICAgICAgIyAgIGtpbGxhbGw6
IGlsbGVnYWwgb3B0aW9uIC0tIFQKLSAgICAgICAgIyBVc2Ugb2YgdGhlIGVhcmxpZXIgLVRFUk0g
cGxhY2VtZW50IGlzIGp1c3QgZmluZSBvbiAxMC41LgotICAgICAgICBudWxsID0gb3Blbihvcy5k
ZXZudWxsKQotICAgICAgICBzdWJwcm9jZXNzLmNhbGwoWydraWxsYWxsJywgJy1URVJNJywgJy11
Jywgb3MuZ2V0ZW52KCdVU0VSJyksCi0gICAgICAgICAgICAgICAgICAgICAgICBwcm9jZXNzX25h
bWVdLCBzdGRlcnI9bnVsbCkKLSAgICAgICAgbnVsbC5jbG9zZSgpCi0KICAgICBkZWYgX3BhdGhf
dG9fYXBhY2hlKHNlbGYpOgogICAgICAgICByZXR1cm4gJy91c3Ivc2Jpbi9odHRwZCcKIApAQCAt
MTc5LDggKzE2Niw4IEBAIGNsYXNzIENocm9taXVtTWFjUG9ydChjaHJvbWl1bS5DaHJvbWl1bVBv
cnQpOgogICAgICAgICAgICAgIyBUT0RPKG1tb3NzKSBUaGlzIGlzbid0IGlkZWFsLCBzaW5jZSBp
dCBjb3VsZCBjb25mbGljdCB3aXRoCiAgICAgICAgICAgICAjIGxpZ2h0dHBkIHByb2Nlc3NlcyBu
b3Qgc3RhcnRlZCBieSBodHRwX3NlcnZlci5weSwKICAgICAgICAgICAgICMgYnV0IGdvb2QgZW5v
dWdoIGZvciBub3cuCi0gICAgICAgICAgICBzZWxmLl9raWxsX2FsbF9wcm9jZXNzKCdsaWdodHRw
ZCcpCi0gICAgICAgICAgICBzZWxmLl9raWxsX2FsbF9wcm9jZXNzKCdodHRwZCcpCisgICAgICAg
ICAgICBzZWxmLl9leGVjdXRpdmUua2lsbF9hbGwoJ2xpZ2h0dHBkJykKKyAgICAgICAgICAgIHNl
bGYuX2V4ZWN1dGl2ZS5raWxsX2FsbCgnaHR0cGQnKQogICAgICAgICBlbHNlOgogICAgICAgICAg
ICAgdHJ5OgogICAgICAgICAgICAgICAgIG9zLmtpbGwoc2VydmVyX3BpZCwgc2lnbmFsLlNJR1RF
Uk0pCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0
cy9wb3J0L2Nocm9taXVtX3dpbi5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fd2luLnB5CmluZGV4IDU1ZTY4OTYyNTIzNDg2YmYzZGU5
ZjZjMmNlODU0YWNhMzQ0YWYyMzAuLmI0ODQ4NTk3MDIzYzAyNzZlNDY5OGU5OTNjNzYzMzgwYWFj
ODNjYjEgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvY2hyb21pdW1fd2luLnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvY2hyb21pdW1fd2luLnB5CkBAIC0xNDQsMTAgKzE0NCw2IEBA
IGNsYXNzIENocm9taXVtV2luUG9ydChjaHJvbWl1bS5DaHJvbWl1bVBvcnQpOgogICAgICAgICBy
ZXR1cm4gc2VsZi5wYXRoX2Zyb21fY2hyb21pdW1fYmFzZSgndGhpcmRfcGFydHknLCAnY3lnd2lu
JywgJ2JpbicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd3
ZGlmZi5leGUnKQogCi0gICAgZGVmIF9raWxsX2FsbChzZWxmLCBwcm9jZXNzX25hbWUpOgotICAg
ICAgICBjbWQgPSBbJ3Rhc2traWxsLmV4ZScsICcvZicsICcvaW0nLCBwcm9jZXNzX25hbWVdCi0g
ICAgICAgIHNlbGYuX2V4ZWN1dGl2ZS5ydW5fY29tbWFuZChjbWQpCi0KICAgICBkZWYgX3NodXRf
ZG93bl9odHRwX3NlcnZlcihzZWxmLCBzZXJ2ZXJfcGlkKToKICAgICAgICAgIiIiU2h1dCBkb3du
IHRoZSBsaWdodHRwZCB3ZWIgc2VydmVyLiBCbG9ja3MgdW50aWwgaXQncyBmdWxseQogICAgICAg
ICBzaHV0IGRvd24uCkBAIC0xNTcsNSArMTUzLDUgQEAgY2xhc3MgQ2hyb21pdW1XaW5Qb3J0KGNo
cm9taXVtLkNocm9taXVtUG9ydCk6CiAgICAgICAgICIiIgogICAgICAgICAjIEZJWE1FOiBXaHkg
YXJlIHdlIGlnbm9yaW5nIHNlcnZlcl9waWQgYW5kIGNhbGxpbmcKICAgICAgICAgIyBfa2lsbF9h
bGwgaW5zdGVhZCBvZiBFeGVjdXRpdmUua2lsbF9wcm9jZXNzKHBpZCk/Ci0gICAgICAgIHNlbGYu
X2tpbGxfYWxsKCJMaWdodFRQRC5leGUiKQotICAgICAgICBzZWxmLl9raWxsX2FsbCgiaHR0cGQu
ZXhlIikKKyAgICAgICAgc2VsZi5fZXhlY3V0aXZlLmtpbGxfYWxsKCJMaWdodFRQRC5leGUiKQor
ICAgICAgICBzZWxmLl9leGVjdXRpdmUua2lsbF9hbGwoImh0dHBkLmV4ZSIpCmRpZmYgLS1naXQg
YS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2d0ay5weSBi
L1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvZ3RrLnB5Cmlu
ZGV4IDI3NjljYzY3OTBlMDE5OTA5MWJmOWE0YThjNzI3N2ExZDc3YWEwMGIuLjhjYzhiN2Q4N2Y3
ZTEwNjc1MzY2ZGEyNWU0MmVjOTIxYjA3ZjZhOWQgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvZ3RrLnB5CisrKyBiL1dlYktpdFRvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvZ3RrLnB5CkBAIC02MSwxMyArNjEs
NiBAQCBjbGFzcyBHdGtQb3J0KFdlYktpdFBvcnQpOgogICAgICAgICByZXR1cm4gb3MucGF0aC5q
b2luKHNlbGYubGF5b3V0X3Rlc3RzX2RpcigpLCAnaHR0cCcsICdjb25mJywKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAnYXBhY2hlMi1kZWJpYW4taHR0cGQuY29uZicpCiAKLSAgICBkZWYg
X2tpbGxfYWxsX3Byb2Nlc3Moc2VsZiwgcHJvY2Vzc19uYW1lKToKLSAgICAgICAgIyBGSVhNRTog
VGhpcyBzaG91bGQgdXNlIEV4ZWN1dGl2ZS4KLSAgICAgICAgbnVsbCA9IG9wZW4ob3MuZGV2bnVs
bCkKLSAgICAgICAgc3VicHJvY2Vzcy5jYWxsKFsna2lsbGFsbCcsICctVEVSTScsICctdScsIG9z
LmdldGVudignVVNFUicpLAotICAgICAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc19uYW1lXSwg
c3RkZXJyPW51bGwpCi0gICAgICAgIG51bGwuY2xvc2UoKQotCiAgICAgZGVmIF9zaHV0X2Rvd25f
aHR0cF9zZXJ2ZXIoc2VsZiwgc2VydmVyX3BpZCk6CiAgICAgICAgICIiIlNodXQgZG93biB0aGUg
aHR0cGQgd2ViIHNlcnZlci4gQmxvY2tzIHVudGlsIGl0J3MgZnVsbHkKICAgICAgICAgc2h1dCBk
b3duLgpAQCAtODAsNyArNzMsNyBAQCBjbGFzcyBHdGtQb3J0KFdlYktpdFBvcnQpOgogICAgICAg
ICAgICAgIyBGSVhNRTogVGhpcyBpc24ndCBpZGVhbCwgc2luY2UgaXQgY291bGQgY29uZmxpY3Qg
d2l0aAogICAgICAgICAgICAgIyBsaWdodHRwZCBwcm9jZXNzZXMgbm90IHN0YXJ0ZWQgYnkgaHR0
cF9zZXJ2ZXIucHksCiAgICAgICAgICAgICAjIGJ1dCBnb29kIGVub3VnaCBmb3Igbm93LgotICAg
ICAgICAgICAgc2VsZi5fa2lsbF9hbGxfcHJvY2VzcygnYXBhY2hlMicpCisgICAgICAgICAgICBz
ZWxmLl9leGVjdXRpdmUua2lsbF9hbGwoJ2FwYWNoZTInKQogICAgICAgICBlbHNlOgogICAgICAg
ICAgICAgdHJ5OgogICAgICAgICAgICAgICAgIG9zLmtpbGwoc2VydmVyX3BpZCwgc2lnbmFsLlNJ
R1RFUk0pCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90
ZXN0cy9wb3J0L21hYy5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rl
c3RzL3BvcnQvbWFjLnB5CmluZGV4IDc5ZGU2OWIyY2EwZWZmMWNhMTY4YjYxZTAyYzQwOWJmZWM4
MWRhNzAuLmYzMjFmYzVlYzAyN2ZhMjgyNDU3NjBmMmFkZjI3MzBkOWM1ZTBjMDUgMTAwNjQ0Ci0t
LSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvbWFjLnB5
CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvbWFj
LnB5CkBAIC0xMzEsMTkgKzEzMSw2IEBAIGNsYXNzIE1hY1BvcnQoV2ViS2l0UG9ydCk6CiAgICAg
ICAgICAgICAicGxhdGZvcm0vd2luIiwKICAgICAgICAgXQogCi0gICAgIyBGSVhNRTogVGhpcyBk
b2Vzbid0IGhhdmUgYW55dGhpbmcgdG8gZG8gd2l0aCBXZWJLaXQuCi0gICAgZGVmIF9raWxsX2Fs
bF9wcm9jZXNzKHNlbGYsIHByb2Nlc3NfbmFtZSk6Ci0gICAgICAgICMgRklYTUU6IFRoaXMgc2hv
dWxkIHVzZSBFeGVjdXRpdmUuCi0gICAgICAgICMgT24gTWFjIE9TIFggMTAuNiwga2lsbGFsbCBo
YXMgYSBuZXcgY29uc3RyYWludDogLVNJR05BTE5BTUUgb3IKLSAgICAgICAgIyAtU0lHTkFMTlVN
QkVSIG11c3QgY29tZSBmaXJzdC4gIEV4YW1wbGUgcHJvYmxlbToKLSAgICAgICAgIyAgICQga2ls
bGFsbCAtdSAkVVNFUiAtVEVSTSBsaWdodHRwZAotICAgICAgICAjICAga2lsbGFsbDogaWxsZWdh
bCBvcHRpb24gLS0gVAotICAgICAgICAjIFVzZSBvZiB0aGUgZWFybGllciAtVEVSTSBwbGFjZW1l
bnQgaXMganVzdCBmaW5lIG9uIDEwLjUuCi0gICAgICAgIG51bGwgPSBvcGVuKG9zLmRldm51bGwp
Ci0gICAgICAgIHN1YnByb2Nlc3MuY2FsbChbJ2tpbGxhbGwnLCAnLVRFUk0nLCAnLXUnLCBvcy5n
ZXRlbnYoJ1VTRVInKSwKLSAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NfbmFtZV0sIHN0
ZGVycj1udWxsKQotICAgICAgICBudWxsLmNsb3NlKCkKLQogICAgIGRlZiBfcGF0aF90b19hcGFj
aGVfY29uZmlnX2ZpbGUoc2VsZik6CiAgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4oc2VsZi5s
YXlvdXRfdGVzdHNfZGlyKCksICdodHRwJywgJ2NvbmYnLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICdhcGFjaGUyLWh0dHBkLmNvbmYnKQpAQCAtMTYxLDcgKzE0OCw3IEBAIGNsYXNzIE1h
Y1BvcnQoV2ViS2l0UG9ydCk6CiAgICAgICAgICAgICAjIEZJWE1FOiBUaGlzIGlzbid0IGlkZWFs
LCBzaW5jZSBpdCBjb3VsZCBjb25mbGljdCB3aXRoCiAgICAgICAgICAgICAjIGxpZ2h0dHBkIHBy
b2Nlc3NlcyBub3Qgc3RhcnRlZCBieSBodHRwX3NlcnZlci5weSwKICAgICAgICAgICAgICMgYnV0
IGdvb2QgZW5vdWdoIGZvciBub3cuCi0gICAgICAgICAgICBzZWxmLl9raWxsX2FsbF9wcm9jZXNz
KCdodHRwZCcpCisgICAgICAgICAgICBzZWxmLl9leGVjdXRpdmUua2lsbF9hbGwoJ2h0dHBkJykK
ICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgICBvcy5raWxs
KHNlcnZlcl9waWQsIHNpZ25hbC5TSUdURVJNKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9xdC5weSBiL1dlYktpdFRvb2xzL1Njcmlw
dHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvcXQucHkKaW5kZXggNjIwNDg2ZWI3MmNhOGMy
MmU0YjU2NDE0NWE4ZTJhN2ZhNDUwM2IxNS4uNThlOTBkY2ZkNDU3MDdkZjg4ZTY4N2ExNGViYzUx
OWYyMzAzOWEyMSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlv
dXRfdGVzdHMvcG9ydC9xdC5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xh
eW91dF90ZXN0cy9wb3J0L3F0LnB5CkBAIC02MiwxMyArNjIsNiBAQCBjbGFzcyBRdFBvcnQoV2Vi
S2l0UG9ydCk6CiAgICAgICAgIHJldHVybiBvcy5wYXRoLmpvaW4oc2VsZi5sYXlvdXRfdGVzdHNf
ZGlyKCksICdodHRwJywgJ2NvbmYnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICdhcGFj
aGUyLWRlYmlhbi1odHRwZC5jb25mJykKIAotICAgIGRlZiBfa2lsbF9hbGxfcHJvY2VzcyhzZWxm
LCBwcm9jZXNzX25hbWUpOgotICAgICAgICAjIEZJWE1FOiBUaGlzIHNob3VsZCB1c2UgRXhlY3V0
aXZlLgotICAgICAgICBudWxsID0gb3Blbihvcy5kZXZudWxsKQotICAgICAgICBzdWJwcm9jZXNz
LmNhbGwoWydraWxsYWxsJywgJy1URVJNJywgJy11Jywgb3MuZ2V0ZW52KCdVU0VSJyksCi0gICAg
ICAgICAgICAgICAgICAgICAgICBwcm9jZXNzX25hbWVdLCBzdGRlcnI9bnVsbCkKLSAgICAgICAg
bnVsbC5jbG9zZSgpCi0KICAgICBkZWYgX3NodXRfZG93bl9odHRwX3NlcnZlcihzZWxmLCBzZXJ2
ZXJfcGlkKToKICAgICAgICAgIiIiU2h1dCBkb3duIHRoZSBodHRwZCB3ZWIgc2VydmVyLiBCbG9j
a3MgdW50aWwgaXQncyBmdWxseQogICAgICAgICBzaHV0IGRvd24uCkBAIC04MSw3ICs3NCw3IEBA
IGNsYXNzIFF0UG9ydChXZWJLaXRQb3J0KToKICAgICAgICAgICAgICMgRklYTUU6IFRoaXMgaXNu
J3QgaWRlYWwsIHNpbmNlIGl0IGNvdWxkIGNvbmZsaWN0IHdpdGgKICAgICAgICAgICAgICMgbGln
aHR0cGQgcHJvY2Vzc2VzIG5vdCBzdGFydGVkIGJ5IGh0dHBfc2VydmVyLnB5LAogICAgICAgICAg
ICAgIyBidXQgZ29vZCBlbm91Z2ggZm9yIG5vdy4KLSAgICAgICAgICAgIHNlbGYuX2tpbGxfYWxs
X3Byb2Nlc3MoJ2FwYWNoZTInKQorICAgICAgICAgICAgc2VsZi5fZXhlY3V0aXZlLmtpbGxfYWxs
KCdhcGFjaGUyJykKICAgICAgICAgZWxzZToKICAgICAgICAgICAgIHRyeToKICAgICAgICAgICAg
ICAgICBvcy5raWxsKHNlcnZlcl9waWQsIHNpZ25hbC5TSUdURVJNKQpkaWZmIC0tZ2l0IGEvV2Vi
S2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC93aW4ucHkgYi9XZWJL
aXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dpbi5weQppbmRleCAy
YmY2OTJiNjI4ZTZhNTJlMDZjMjI1NWQ0NmFmZDZkNTJhY2QwZDk2Li5mN2IzYjc4ZmViZWMwNmQx
OGU0MDlmYjc3MTNjMmQ5YTFjMjYyZTM5IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRz
L3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dpbi5weQorKysgYi9XZWJLaXRUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dpbi5weQpAQCAtNjksNyArNjksNCBAQCBj
bGFzcyBXaW5Qb3J0KFdlYktpdFBvcnQpOgogICAgICAgICAiIiIKICAgICAgICAgIyBMb29rcyBs
aWtlIHdlIGlnbm9yZSBzZXJ2ZXJfcGlkLgogICAgICAgICAjIENvcHkvcGFzdGVkIGZyb20gY2hy
b21pdW0td2luLgotICAgICAgICBzdWJwcm9jZXNzLlBvcGVuKCgndGFza2tpbGwuZXhlJywgJy9m
JywgJy9pbScsICdodHRwZC5leGUnKSwKLSAgICAgICAgICAgICAgICAgICAgICAgIHN0ZGluPW9w
ZW4ob3MuZGV2bnVsbCwgJ3InKSwKLSAgICAgICAgICAgICAgICAgICAgICAgIHN0ZG91dD1zdWJw
cm9jZXNzLlBJUEUsCi0gICAgICAgICAgICAgICAgICAgICAgICBzdGRlcnI9c3VicHJvY2Vzcy5Q
SVBFKS53YWl0KCkKKyAgICAgICAgc2VsZi5fZXhlY3V0aXZlLmtpbGxfYWxsKCJodHRwZC5leGUi
KQo=
</data>
<flag name="review"
          id="38547"
          type_id="1"
          status="+"
          setter="jorlow"
    />
    <flag name="commit-queue"
          id="38548"
          type_id="3"
          status="-"
          setter="jorlow"
    />
          </attachment>
      

    </bug>

</bugzilla>