<?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>27491</bug_id>
          
          <creation_ts>2009-07-21 01:34:49 -0700</creation_ts>
          <short_desc>Web Sockets Test Infrastructure Part 2/3: Patch to run-webkit-tests</short_desc>
          <delta_ts>2009-11-03 23:50:38 -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>All</rep_platform>
          <op_sys>All</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="Yuzo Fujishima">yuzo</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>mike</cc>
    
    <cc>ukai</cc>
    
    <cc>yuzo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>133401</commentid>
    <comment_count>0</comment_count>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-07-21 01:34:49 -0700</bug_when>
    <thetext>Add test infrastructure for Web Sockets (http://www.w3.org/TR/websockets/).

This bug is Part 2/3: Patch to run-webkit-tests.

Other parts are:
Part 1/3: Server
Part 3/3: Example test
Parts must be submitted in the order Part1, Part2, then Part3.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>133405</commentid>
    <comment_count>1</comment_count>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-07-21 01:38:27 -0700</bug_when>
    <thetext>Links:

Part 1/3: Server: https://bugs.webkit.org/show_bug.cgi?id=27490
Part 2/3: Patch to run-webkit-tests: https://bugs.webkit.org/show_bug.cgi?id=27491
Part 3/3: Example test: https://bugs.webkit.org/show_bug.cgi?id=27492</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>133410</commentid>
    <comment_count>2</comment_count>
      <attachid>33159</attachid>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-07-21 01:55:34 -0700</bug_when>
    <thetext>Created attachment 33159
Patch to run-webkit-test to start up / shut down Web Socket Server.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>133799</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-07-22 10:18:22 -0700</bug_when>
    <thetext>Running WebSocket tests from file:// would mean that all requests will be cross-origin. It seems that we should want to test both same- and cross-origin requests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134042</commentid>
    <comment_count>4</comment_count>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-07-22 23:39:13 -0700</bug_when>
    <thetext>Hi, Alexey,

Thank you for your review.

I&apos;m thinking of implementing
  window.websocketTestController.setOrigin(webSocket, originString)
just like window.layoutTestController offers various test functionalities.

Do you think it feasible? Your advice would be appreciated.

Yuzo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134097</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-07-23 07:47:12 -0700</bug_when>
    <thetext>I think that it may be non-trivial to add such hooks in a way that would not be distinguishable from the real thing. Also, such tests wouldn&apos;t work in browser, making debugging more complicated.

Making WebSockets tests work together with http tests would be more reliable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>136961</commentid>
    <comment_count>6</comment_count>
      <attachid>34055</attachid>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-08-04 03:24:07 -0700</bug_when>
    <thetext>Created attachment 34055
Patch to run-webkit-test to use Web Socket Server for both http and file schemes.

This should enable both same-origin (http://) and cross-origin(file://) testing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138064</commentid>
    <comment_count>7</comment_count>
      <attachid>34055</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-07 12:57:00 -0700</bug_when>
    <thetext>Comment on attachment 34055
Patch to run-webkit-test to use Web Socket Server for both http and file schemes.

Please abstract:
8         my $testPath = &quot;$testDirectory/$test&quot;;
 639         if (isCygwin()) {
 640             $testPath = toWindowsPath($testPath);
 641         } else {
 642             $testPath = canonpath($testPath);
 643         }

This is bad practice:
 1474     mkdir &quot;/tmp/WebKit&quot;;

It make it harder to run more than one copy in parallel.  Better to use a ~ relative path or at least a unique name.  I&apos;m certain there are other examples of such in run-webkit-tests.

That&apos;s a huge amount of code to make sure the server is dead.  Don&apos;t we already have some of that for the httpd server?  Can&apos;t we share that?

r- for the needed abstraction.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156111</commentid>
    <comment_count>8</comment_count>
      <attachid>41492</attachid>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-10-20 02:55:25 -0700</bug_when>
    <thetext>Created attachment 41492
Start/Stop Web Socket and Web Socket Secure servers for layout tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156114</commentid>
    <comment_count>9</comment_count>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-10-20 02:59:35 -0700</bug_when>
    <thetext>Can anyone review this patch?

This changes the run-webkit-test script such that Web Socket (Secure) servers
added via Bug 27490 are started and stopped for tests under LayoutTests/websocket.

Yuzo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156243</commentid>
    <comment_count>10</comment_count>
      <attachid>41492</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-10-20 12:08:32 -0700</bug_when>
    <thetext>Comment on attachment 41492
Start/Stop Web Socket and Web Socket Secure servers for layout tests.

I do not understand the minus lines in run-webkit-tests.

You need a more detailed ChangeLog giving more information about what you&apos;re doing here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156372</commentid>
    <comment_count>11</comment_count>
      <attachid>41540</attachid>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-10-20 18:16:50 -0700</bug_when>
    <thetext>Created attachment 41540
Start/Stop Web Socket and Web Socket Secure servers for layout tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156373</commentid>
    <comment_count>12</comment_count>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-10-20 18:20:26 -0700</bug_when>
    <thetext>Hi, Eric,

Thank you for the review.

I&apos;ve added explanation to WebKitTools/ChangeLog.

FYI:
The minus-ed lines has been moved to the end of the if-elsif statement.

Yuzo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156405</commentid>
    <comment_count>13</comment_count>
      <attachid>41547</attachid>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-10-20 22:34:31 -0700</bug_when>
    <thetext>Created attachment 41547
Start/Stop Web Socket and Web Socket Secure servers for layout tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156406</commentid>
    <comment_count>14</comment_count>
      <attachid>41548</attachid>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-10-20 22:37:00 -0700</bug_when>
    <thetext>Created attachment 41548
Start/Stop Web Socket and Web Socket Secure servers for layout tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>157674</commentid>
    <comment_count>15</comment_count>
    <who name="Fumitoshi Ukai">ukai</who>
    <bug_when>2009-10-25 21:48:27 -0700</bug_when>
    <thetext>I&apos;ve one question.
If I want to write a test with script-tests that uses LayoutTests/fast/js/, what should I do?
For now, websocket server sets document root to LayoutTests/websocket/tests, so the test can&apos;t access js files in LayoutTests/fast/js/.
Should I copy LayoutTests/fast/js/ into LayoutTests/websocket/tests/js ?

(same question for LayoutTests/http/tests)

Thanks in advance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>157685</commentid>
    <comment_count>16</comment_count>
      <attachid>41845</attachid>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-10-25 23:22:20 -0700</bug_when>
    <thetext>Created attachment 41845
Start/Stop Web Socket and Web Socket Secure servers for layout tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>157686</commentid>
    <comment_count>17</comment_count>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-10-25 23:25:17 -0700</bug_when>
    <thetext>Hi,

I&apos;ve changed the document root to LayoutTests.
This should address https://bugs.webkit.org/show_bug.cgi?id=27491#c15

Reviewers and committers,
please commit this after https://bugs.webkit.org/show_bug.cgi?id=30763
This script change now requires pywebsocket 0.4.1

Yuzo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>158108</commentid>
    <comment_count>18</comment_count>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-10-27 00:28:58 -0700</bug_when>
    <thetext>Hi, reviewers,

Now that pywebsocket has been upgraded to 0.4.1, please resume reviewing this patch. :)

Yuzo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>159172</commentid>
    <comment_count>19</comment_count>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-10-29 17:58:09 -0700</bug_when>
    <thetext>Ping?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>159864</commentid>
    <comment_count>20</comment_count>
      <attachid>41845</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2009-11-02 11:39:45 -0800</bug_when>
    <thetext>Comment on attachment 41845
Start/Stop Web Socket and Web Socket Secure servers for layout tests.

Just one issue.

&gt; diff --git a/WebKitTools/Scripts/run-webkit-tests b/WebKitTools/Scripts/run-webkit-tests
&gt; @@ -604,6 +603,32 @@ for my $test (@tests) {
&gt;              }
&gt;              print OUT &quot;$testPath$suffixExpectedHash\n&quot;;
&gt;          }
&gt; +    } elsif ($test =~ /^websocket\//) {
&gt; +        openWebSocketServerIfNeeded();

It seems like this should be in the &quot;else&quot; below because some of these test may run without needing the web socket server started.

&gt; +        if ($test =~ /^websocket\/tests\/local\//) {
&gt; +            my $testPath = &quot;$testDirectory/$test&quot;;
&gt; +            if (isCygwin()) {
&gt; +                $testPath = toWindowsPath($testPath);
&gt; +            } else {
&gt; +                $testPath = canonpath($testPath);
&gt; +            }
&gt; +            print OUT &quot;$testPath\n&quot;;
&gt; +        } else {
&gt; +            my $path = canonpath($test);
&gt; +            if ($test =~ /^websocket\/tests\/ssl\//) {
&gt; +                print OUT &quot;https://127.0.0.1:$webSocketSecurePort/$path\n&quot;;
&gt; +            } else {
&gt; +                print OUT &quot;http://127.0.0.1:$webSocketPort/$path\n&quot;;
&gt; +            }
&gt; +        }</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>160281</commentid>
    <comment_count>21</comment_count>
      <attachid>42440</attachid>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-11-03 18:18:03 -0800</bug_when>
    <thetext>Created attachment 42440
Start/Stop Web Socket and Web Socket Secure servers for layout tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>160282</commentid>
    <comment_count>22</comment_count>
    <who name="Yuzo Fujishima">yuzo</who>
    <bug_when>2009-11-03 18:19:32 -0800</bug_when>
    <thetext>Hi, David,

Thank you for the review. I&apos;ve changed the code as suggested.
Can you take another look?

Yuzo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>160340</commentid>
    <comment_count>23</comment_count>
    <who name="Fumitoshi Ukai">ukai</who>
    <bug_when>2009-11-03 23:50:38 -0800</bug_when>
    <thetext>Committed r50500: &lt;http://trac.webkit.org/changeset/50500&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33159</attachid>
            <date>2009-07-21 01:55:34 -0700</date>
            <delta_ts>2009-08-04 03:24:07 -0700</delta_ts>
            <desc>Patch to run-webkit-test to start up / shut down Web Socket Server.</desc>
            <filename>ws-script-patch.txt</filename>
            <type>text/plain</type>
            <size>5024</size>
            <attacher name="Yuzo Fujishima">yuzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBiNmFmZTUyLi42ZWQ3YWQ2IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMDktMDct
MjEgIFl1em8gRnVqaXNoaW1hICA8eXV6b0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yNzQ5MQorICAgICAgICBXZWIgU29ja2V0cyBUZXN0IEluZnJhc3RydWN0
dXJlIFBhcnQgMi8zOiBQYXRjaCB0byBydW4td2Via2l0LXRlc3RzCisKKyAgICAgICAgKiBTY3Jp
cHRzL3J1bi13ZWJraXQtdGVzdHM6CisKIDIwMDktMDctMjAgIFBldGVyIEthc3RpbmcgIDxwa2Fz
dGluZ0Bnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KZGlmZiAt
LWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cyBiL1dlYktpdFRvb2xz
L1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cwppbmRleCBhMzg1ZDA0Li5jNDgyN2U1IDEwMDc1NQot
LS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3J1bi13ZWJraXQtdGVzdHMKKysrIGIvV2ViS2l0VG9v
bHMvU2NyaXB0cy9ydW4td2Via2l0LXRlc3RzCkBAIC03NiwxMCArNzYsMTIgQEAgc3ViIG9wZW5E
dW1wVG9vbCgpOwogc3ViIGNsb3NlRHVtcFRvb2woKTsKIHN1YiBkdW1wVG9vbERpZENyYXNoKCk7
CiBzdWIgY2xvc2VIVFRQRCgpOworc3ViIGNsb3NlV2ViU29ja2V0U2VydmVyKCk7CiBzdWIgY291
bnRBbmRQcmludExlYWtzKCQkJCk7CiBzdWIgZmlsZU5hbWVXaXRoTnVtYmVyKCQkKTsKIHN1YiBu
dW1lcmljY21wKCQkKTsKIHN1YiBvcGVuSFRUUERJZk5lZWRlZCgpOworc3ViIG9wZW5XZWJTb2Nr
ZXRTZXJ2ZXJJZk5lZWRlZCgpOwogc3ViIHBhdGhjbXAoJCQpOwogc3ViIHByb2Nlc3NJZ25vcmVU
ZXN0cygkJCk7CiBzdWIgc2xvd2VzdGNtcCgkJCk7CkBAIC0xMTIsNiArMTE0LDggQEAgbXkgJGNv
bXBsZXhUZXh0ID0gMDsKIG15ICRndWFyZE1hbGxvYyA9ICcnOwogbXkgJGh0dHBkUG9ydCA9IDgw
MDA7CiBteSAkaHR0cGRTU0xQb3J0ID0gODQ0MzsKK215ICR3ZWJTb2NrZXRQb3J0ID0gODA4MTsK
K215ICR3ZWJTb2NrZXRTU0xQb3J0ID0gODgxNTsKIG15ICRpZ25vcmVUZXN0cyA9ICcnOwogbXkg
JGxhdW5jaFNhZmFyaSA9IDE7CiBteSAkcGxhdGZvcm07CkBAIC01MTMsNiArNTE3LDggQEAgbXkg
JGF0TGluZVN0YXJ0ID0gMTsKIG15ICRsYXN0RGlyZWN0b3J5ID0gIiI7CiAKIG15ICRpc0h0dHBk
T3BlbiA9IDA7CitteSAkaXNXZWJTb2NrZXRTZXJ2ZXJPcGVuID0gMDsKK215ICR3ZWJTb2NrZXRT
ZXJ2ZXJQSURGaWxlID0gIi90bXAvV2ViS2l0L3dlYnNvY2tldHNlcnZlci5waWQiOwogCiBzdWIg
Y2F0Y2hfcGlwZSB7ICRkdW1wVG9vbENyYXNoZWQgPSAxOyB9CiAkU0lHeyJQSVBFIn0gPSAiY2F0
Y2hfcGlwZSI7CkBAIC01OTQsMTUgKzYwMCw3IEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAg
ICAgICAgIH0KICAgICB9CiAKLSAgICBpZiAoJHRlc3QgIX4gL15odHRwXC8vKSB7Ci0gICAgICAg
IG15ICR0ZXN0UGF0aCA9ICIkdGVzdERpcmVjdG9yeS8kdGVzdCI7Ci0gICAgICAgIGlmIChpc0N5
Z3dpbigpKSB7Ci0gICAgICAgICAgICAkdGVzdFBhdGggPSB0b1dpbmRvd3NQYXRoKCR0ZXN0UGF0
aCk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAkdGVzdFBhdGggPSBjYW5vbnBhdGgo
JHRlc3RQYXRoKTsKLSAgICAgICAgfQotICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZm
aXhFeHBlY3RlZEhhc2hcbiI7Ci0gICAgfSBlbHNlIHsKKyAgICBpZiAoJHRlc3QgPX4gL15odHRw
XC8vKSB7CiAgICAgICAgIG9wZW5IVFRQRElmTmVlZGVkKCk7CiAgICAgICAgIGlmICgkdGVzdCAh
fiAvXmh0dHBcL3Rlc3RzXC9sb2NhbFwvLyAmJiAkdGVzdCAhfiAvXmh0dHBcL3Rlc3RzXC9zc2xc
Ly8gJiYgJHRlc3QgIX4gL15odHRwXC90ZXN0c1wvd21sXC8vICYmICR0ZXN0ICF+IC9eaHR0cFwv
dGVzdHNcL21lZGlhXC8vKSB7CiAgICAgICAgICAgICBteSAkcGF0aCA9IGNhbm9ucGF0aCgkdGVz
dCk7CkBAIC02MjEsNiArNjE5LDE3IEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhh
c2hcbiI7CiAgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICBpZiAoJHRlc3QgPX4gL153
ZWJzb2NrZXRcLy8pIHsKKyAgICAgICAgICAgIG9wZW5XZWJTb2NrZXRTZXJ2ZXJJZk5lZWRlZCgp
OworICAgICAgICB9CisgICAgICAgIG15ICR0ZXN0UGF0aCA9ICIkdGVzdERpcmVjdG9yeS8kdGVz
dCI7CisgICAgICAgIGlmIChpc0N5Z3dpbigpKSB7CisgICAgICAgICAgICAkdGVzdFBhdGggPSB0
b1dpbmRvd3NQYXRoKCR0ZXN0UGF0aCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAk
dGVzdFBhdGggPSBjYW5vbnBhdGgoJHRlc3RQYXRoKTsKKyAgICAgICAgfQorICAgICAgICBwcmlu
dCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhhc2hcbiI7CiAgICAgfQogCiAgICAgIyBE
dW1wUmVuZGVyVHJlZSBpcyBleHBlY3RlZCB0byBkdW1wIHR3byAiYmxvY2tzIiB0byBzdGRvdXQg
Zm9yIGVhY2ggdGVzdC4KQEAgLTk1Miw2ICs5NjEsNyBAQCBwcmludGYgIlxuJTAuMmZzIHRvdGFs
IHRlc3RpbmcgdGltZVxuIiwgKHRpbWUgLSAkb3ZlcmFsbFN0YXJ0VGltZSkgLiAiIjsKICEkaXNE
dW1wVG9vbE9wZW4gfHwgZGllICJGYWlsZWQgdG8gY2xvc2UgJGR1bXBUb29sTmFtZS5cbiI7CiAK
IGNsb3NlSFRUUEQoKTsKK2Nsb3NlV2ViU29ja2V0U2VydmVyKCk7CiAKICMgQmVjYXVzZSBtdWx0
aXBsZSBpbnN0YW5jZXMgb2YgdGhpcyBzY3JpcHQgYXJlIHJ1bm5pbmcgY29uY3VycmVudGx5IHdl
IGNhbm5vdCAKICMgc2FmZWx5IGRlbGV0ZSB0aGlzIHN5bWxpbmsuCkBAIC0xNDQ1LDYgKzE0NTUs
NjcgQEAgc3ViIGNsb3NlSFRUUEQoKQogICAgICRpc0h0dHBkT3BlbiA9IDA7CiB9CiAKK3N1YiBv
cGVuV2ViU29ja2V0U2VydmVySWZOZWVkZWQoKQoreworICAgIHJldHVybiBpZiAkaXNXZWJTb2Nr
ZXRTZXJ2ZXJPcGVuOworCisgICAgbWtkaXIgIi90bXAvV2ViS2l0IjsKKworICAgIGlmICgtZiAi
JHdlYlNvY2tldFNlcnZlclBJREZpbGUiKSB7CisgICAgICAgIG15ICRvbGRQaWQgPSBgY2F0ICR3
ZWJTb2NrZXRTZXJ2ZXJQSURGaWxlYDsKKyAgICAgICAgY2hvbXAgJG9sZFBpZDsKKyAgICAgICAg
aWYgKDAgIT0ga2lsbCAwLCAkb2xkUGlkKSB7CisgICAgICAgICAgICBwcmludCAiXG4iIC4gIldl
YlNvY2tldFNlcnZlciBpcyBhbHJlYWR5IHJ1bm5pbmc6IHBpZCAkb2xkUGlkLCBraWxsaW5nLi4u
XG4iOworICAgICAgICAgICAga2lsbCAxNSwgJG9sZFBpZDsKKworICAgICAgICAgICAgbXkgJHJl
dHJ5Q291bnQgPSAyMDsKKyAgICAgICAgICAgIHdoaWxlICgoMCAhPSBraWxsIDAsICRvbGRQaWQp
ICYmICRyZXRyeUNvdW50KSB7CisgICAgICAgICAgICAgICAgc2xlZXAgMTsKKyAgICAgICAgICAg
ICAgICAtLSRyZXRyeUNvdW50OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBkaWUgIlRp
bWVkIG91dCB3YWl0aW5nIGZvciBXZWJTb2NrZXRTZXJ2ZXIgdG8gcXVpdCIgdW5sZXNzICRyZXRy
eUNvdW50OworICAgICAgICB9CisgICAgfQorCisgICAgbXkgJHdlYlNvY2tldFNlcnZlclBhdGgg
PSAiJHRlc3REaXJlY3Rvcnkvd2Vic29ja2V0L2NvbmYvd2Vic29ja2V0X3NlcnZlci5weSI7Cisg
ICAgbXkgJHdlYlNvY2tldENsaWVudFBhdGggPSAiJHRlc3REaXJlY3Rvcnkvd2Vic29ja2V0L2Nv
bmYvd2Vic29ja2V0X2NsaWVudC5weSI7CisgICAgbXkgJHdzc0hhbmRsZXJCYXNlRGlyID0gIiR0
ZXN0RGlyZWN0b3J5L3dlYnNvY2tldC90ZXN0cyI7CisKKyAgICBteSBAYXJncyA9ICgKKyAgICAg
ICAgIi1wIiwgIiR3ZWJTb2NrZXRQb3J0IiwKKyAgICAgICAgIi1iIiwgIiR3c3NIYW5kbGVyQmFz
ZURpciIsCisgICAgICAgICItLWxvZ19sZXZlbCIsICJjcml0aWNhbCIKKyAgICApOworCisgICAg
bXkgJHBpZCA9IG9wZW4yKFwqV0VCU09DS0VUU0VSVkVSX0lOLCBcKldFQlNPQ0tFVFNFUlZFUl9P
VVQsICR3ZWJTb2NrZXRTZXJ2ZXJQYXRoLCBAYXJncyk7CisKKyAgICB3cml0ZVRvRmlsZSgiJHdl
YlNvY2tldFNlcnZlclBJREZpbGUiLCAkcGlkKTsKKworICAgIG15ICRyZXRyeUNvdW50ID0gMjA7
CisgICAgd2hpbGUgKHN5c3RlbSgiJHdlYlNvY2tldENsaWVudFBhdGggLXAgJHdlYlNvY2tldFBv
cnQgLXMgbG9jYWxob3N0IC1sIC0tbG9nX2xldmVsPWNyaXRpY2FsIikgJiYgJHJldHJ5Q291bnQp
IHsKKyAgICAgICAgc2xlZXAgMTsKKyAgICAgICAgLS0kcmV0cnlDb3VudDsKKyAgICB9CisKKyAg
ICBkaWUgIlRpbWVkIG91dCB3YWl0aW5nIGZvciBXZWJTb2NrZXRTZXJ2ZXIgdG8gc3RhcnQiIHVu
bGVzcyAkcmV0cnlDb3VudDsKKworICAgICRpc1dlYlNvY2tldFNlcnZlck9wZW4gPSAxOworfQor
CitzdWIgY2xvc2VXZWJTb2NrZXRTZXJ2ZXIoKQoreworICAgIHJldHVybiBpZiAhJGlzV2ViU29j
a2V0U2VydmVyT3BlbjsKKworICAgIGNsb3NlIFdFQlNPQ0tFVFNFUlZFUl9JTjsKKyAgICBjbG9z
ZSBXRUJTT0NLRVRTRVJWRVJfT1VUOworCisgICAgcHJpbnQgIktpbGxpbmcuLi4iIC4gYGNhdCAk
d2ViU29ja2V0U2VydmVyUElERmlsZWAgaWYgLWYgIiR3ZWJTb2NrZXRTZXJ2ZXJQSURGaWxlIjsK
KyAgICBraWxsIDE1LCBgY2F0ICR3ZWJTb2NrZXRTZXJ2ZXJQSURGaWxlYCBpZiAtZiAiJHdlYlNv
Y2tldFNlcnZlclBJREZpbGUiOworCisgICAgJGlzV2ViU29ja2V0U2VydmVyT3BlbiA9IDA7Cit9
CisKIHN1YiBmaWxlTmFtZVdpdGhOdW1iZXIoJCQpCiB7CiAgICAgbXkgKCRiYXNlLCAkbnVtYmVy
KSA9IEBfOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>34055</attachid>
            <date>2009-08-04 03:24:07 -0700</date>
            <delta_ts>2009-10-20 02:55:19 -0700</delta_ts>
            <desc>Patch to run-webkit-test to use Web Socket Server for both http and file schemes.</desc>
            <filename>ws-script-patch.txt</filename>
            <type>text/plain</type>
            <size>5534</size>
            <attacher name="Yuzo Fujishima">yuzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBiNmFmZTUyLi42ZWQ3YWQ2IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMDktMDct
MjEgIFl1em8gRnVqaXNoaW1hICA8eXV6b0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yNzQ5MQorICAgICAgICBXZWIgU29ja2V0cyBUZXN0IEluZnJhc3RydWN0
dXJlIFBhcnQgMi8zOiBQYXRjaCB0byBydW4td2Via2l0LXRlc3RzCisKKyAgICAgICAgKiBTY3Jp
cHRzL3J1bi13ZWJraXQtdGVzdHM6CisKIDIwMDktMDctMjAgIFBldGVyIEthc3RpbmcgIDxwa2Fz
dGluZ0Bnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1hcmsgUm93ZS4KZGlmZiAt
LWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cyBiL1dlYktpdFRvb2xz
L1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cwppbmRleCBhMzg1ZDA0Li41MTM0YmQzIDEwMDc1NQot
LS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3J1bi13ZWJraXQtdGVzdHMKKysrIGIvV2ViS2l0VG9v
bHMvU2NyaXB0cy9ydW4td2Via2l0LXRlc3RzCkBAIC03NiwxMCArNzYsMTIgQEAgc3ViIG9wZW5E
dW1wVG9vbCgpOwogc3ViIGNsb3NlRHVtcFRvb2woKTsKIHN1YiBkdW1wVG9vbERpZENyYXNoKCk7
CiBzdWIgY2xvc2VIVFRQRCgpOworc3ViIGNsb3NlV2ViU29ja2V0U2VydmVyKCk7CiBzdWIgY291
bnRBbmRQcmludExlYWtzKCQkJCk7CiBzdWIgZmlsZU5hbWVXaXRoTnVtYmVyKCQkKTsKIHN1YiBu
dW1lcmljY21wKCQkKTsKIHN1YiBvcGVuSFRUUERJZk5lZWRlZCgpOworc3ViIG9wZW5XZWJTb2Nr
ZXRTZXJ2ZXJJZk5lZWRlZCgpOwogc3ViIHBhdGhjbXAoJCQpOwogc3ViIHByb2Nlc3NJZ25vcmVU
ZXN0cygkJCk7CiBzdWIgc2xvd2VzdGNtcCgkJCk7CkBAIC0xMTIsNiArMTE0LDggQEAgbXkgJGNv
bXBsZXhUZXh0ID0gMDsKIG15ICRndWFyZE1hbGxvYyA9ICcnOwogbXkgJGh0dHBkUG9ydCA9IDgw
MDA7CiBteSAkaHR0cGRTU0xQb3J0ID0gODQ0MzsKK215ICR3ZWJTb2NrZXRQb3J0ID0gODA4MTsK
K215ICR3ZWJTb2NrZXRTU0xQb3J0ID0gODgxNTsKIG15ICRpZ25vcmVUZXN0cyA9ICcnOwogbXkg
JGxhdW5jaFNhZmFyaSA9IDE7CiBteSAkcGxhdGZvcm07CkBAIC01MTMsNiArNTE3LDggQEAgbXkg
JGF0TGluZVN0YXJ0ID0gMTsKIG15ICRsYXN0RGlyZWN0b3J5ID0gIiI7CiAKIG15ICRpc0h0dHBk
T3BlbiA9IDA7CitteSAkaXNXZWJTb2NrZXRTZXJ2ZXJPcGVuID0gMDsKK215ICR3ZWJTb2NrZXRT
ZXJ2ZXJQSURGaWxlID0gIi90bXAvV2ViS2l0L3dlYnNvY2tldHNlcnZlci5waWQiOwogCiBzdWIg
Y2F0Y2hfcGlwZSB7ICRkdW1wVG9vbENyYXNoZWQgPSAxOyB9CiAkU0lHeyJQSVBFIn0gPSAiY2F0
Y2hfcGlwZSI7CkBAIC01OTQsMTUgKzYwMCw3IEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAg
ICAgICAgIH0KICAgICB9CiAKLSAgICBpZiAoJHRlc3QgIX4gL15odHRwXC8vKSB7Ci0gICAgICAg
IG15ICR0ZXN0UGF0aCA9ICIkdGVzdERpcmVjdG9yeS8kdGVzdCI7Ci0gICAgICAgIGlmIChpc0N5
Z3dpbigpKSB7Ci0gICAgICAgICAgICAkdGVzdFBhdGggPSB0b1dpbmRvd3NQYXRoKCR0ZXN0UGF0
aCk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAkdGVzdFBhdGggPSBjYW5vbnBhdGgo
JHRlc3RQYXRoKTsKLSAgICAgICAgfQotICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZm
aXhFeHBlY3RlZEhhc2hcbiI7Ci0gICAgfSBlbHNlIHsKKyAgICBpZiAoJHRlc3QgPX4gL15odHRw
XC8vKSB7CiAgICAgICAgIG9wZW5IVFRQRElmTmVlZGVkKCk7CiAgICAgICAgIGlmICgkdGVzdCAh
fiAvXmh0dHBcL3Rlc3RzXC9sb2NhbFwvLyAmJiAkdGVzdCAhfiAvXmh0dHBcL3Rlc3RzXC9zc2xc
Ly8gJiYgJHRlc3QgIX4gL15odHRwXC90ZXN0c1wvd21sXC8vICYmICR0ZXN0ICF+IC9eaHR0cFwv
dGVzdHNcL21lZGlhXC8vKSB7CiAgICAgICAgICAgICBteSAkcGF0aCA9IGNhbm9ucGF0aCgkdGVz
dCk7CkBAIC02MjEsNiArNjE5LDI5IEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhh
c2hcbiI7CiAgICAgICAgIH0KKyAgICB9IGVsc2lmICgkdGVzdCA9fiAvXndlYnNvY2tldFwvLykg
eworICAgICAgICBvcGVuV2ViU29ja2V0U2VydmVySWZOZWVkZWQoKTsKKyAgICAgICAgaWYgKCR0
ZXN0ID1+IC9ed2Vic29ja2V0XC90ZXN0c1wvbG9jYWxcLy8pIHsKKyAgICAgICAgICAgIG15ICR0
ZXN0UGF0aCA9ICIkdGVzdERpcmVjdG9yeS8kdGVzdCI7CisgICAgICAgICAgICBpZiAoaXNDeWd3
aW4oKSkgeworICAgICAgICAgICAgICAgICR0ZXN0UGF0aCA9IHRvV2luZG93c1BhdGgoJHRlc3RQ
YXRoKTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgJHRlc3RQYXRoID0g
Y2Fub25wYXRoKCR0ZXN0UGF0aCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBwcmludCBP
VVQgIiR0ZXN0UGF0aFxuIjsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG15ICRwYXRo
ID0gY2Fub25wYXRoKCR0ZXN0KTsKKyAgICAgICAgICAgICRwYXRoID1+IHMvXndlYnNvY2tldFwv
dGVzdHNcLy8vOworICAgICAgICAgICAgcHJpbnQgT1VUICJodHRwOi8vMTI3LjAuMC4xOiR3ZWJT
b2NrZXRQb3J0LyRwYXRoXG4iOworICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgICAgbXkg
JHRlc3RQYXRoID0gIiR0ZXN0RGlyZWN0b3J5LyR0ZXN0IjsKKyAgICAgICAgaWYgKGlzQ3lnd2lu
KCkpIHsKKyAgICAgICAgICAgICR0ZXN0UGF0aCA9IHRvV2luZG93c1BhdGgoJHRlc3RQYXRoKTsK
KyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICR0ZXN0UGF0aCA9IGNhbm9ucGF0aCgkdGVz
dFBhdGgpOworICAgICAgICB9CisgICAgICAgIHByaW50IE9VVCAiJHRlc3RQYXRoJHN1ZmZpeEV4
cGVjdGVkSGFzaFxuIjsKICAgICB9CiAKICAgICAjIER1bXBSZW5kZXJUcmVlIGlzIGV4cGVjdGVk
IHRvIGR1bXAgdHdvICJibG9ja3MiIHRvIHN0ZG91dCBmb3IgZWFjaCB0ZXN0LgpAQCAtOTUyLDYg
Kzk3Myw3IEBAIHByaW50ZiAiXG4lMC4yZnMgdG90YWwgdGVzdGluZyB0aW1lXG4iLCAodGltZSAt
ICRvdmVyYWxsU3RhcnRUaW1lKSAuICIiOwogISRpc0R1bXBUb29sT3BlbiB8fCBkaWUgIkZhaWxl
ZCB0byBjbG9zZSAkZHVtcFRvb2xOYW1lLlxuIjsKIAogY2xvc2VIVFRQRCgpOworY2xvc2VXZWJT
b2NrZXRTZXJ2ZXIoKTsKIAogIyBCZWNhdXNlIG11bHRpcGxlIGluc3RhbmNlcyBvZiB0aGlzIHNj
cmlwdCBhcmUgcnVubmluZyBjb25jdXJyZW50bHkgd2UgY2Fubm90IAogIyBzYWZlbHkgZGVsZXRl
IHRoaXMgc3ltbGluay4KQEAgLTE0NDUsNiArMTQ2Nyw2NiBAQCBzdWIgY2xvc2VIVFRQRCgpCiAg
ICAgJGlzSHR0cGRPcGVuID0gMDsKIH0KIAorc3ViIG9wZW5XZWJTb2NrZXRTZXJ2ZXJJZk5lZWRl
ZCgpCit7CisgICAgcmV0dXJuIGlmICRpc1dlYlNvY2tldFNlcnZlck9wZW47CisKKyAgICBta2Rp
ciAiL3RtcC9XZWJLaXQiOworCisgICAgaWYgKC1mICIkd2ViU29ja2V0U2VydmVyUElERmlsZSIp
IHsKKyAgICAgICAgbXkgJG9sZFBpZCA9IGBjYXQgJHdlYlNvY2tldFNlcnZlclBJREZpbGVgOwor
ICAgICAgICBjaG9tcCAkb2xkUGlkOworICAgICAgICBpZiAoMCAhPSBraWxsIDAsICRvbGRQaWQp
IHsKKyAgICAgICAgICAgIHByaW50ICJcbiIgLiAiV2ViU29ja2V0U2VydmVyIGlzIGFscmVhZHkg
cnVubmluZzogcGlkICRvbGRQaWQsIGtpbGxpbmcuLi5cbiI7CisgICAgICAgICAgICBraWxsIDE1
LCAkb2xkUGlkOworCisgICAgICAgICAgICBteSAkcmV0cnlDb3VudCA9IDIwOworICAgICAgICAg
ICAgd2hpbGUgKCgwICE9IGtpbGwgMCwgJG9sZFBpZCkgJiYgJHJldHJ5Q291bnQpIHsKKyAgICAg
ICAgICAgICAgICBzbGVlcCAxOworICAgICAgICAgICAgICAgIC0tJHJldHJ5Q291bnQ7CisgICAg
ICAgICAgICB9CisKKyAgICAgICAgICAgIGRpZSAiVGltZWQgb3V0IHdhaXRpbmcgZm9yIFdlYlNv
Y2tldFNlcnZlciB0byBxdWl0IiB1bmxlc3MgJHJldHJ5Q291bnQ7CisgICAgICAgIH0KKyAgICB9
CisKKyAgICBteSAkd2ViU29ja2V0U2VydmVyUGF0aCA9ICIkdGVzdERpcmVjdG9yeS93ZWJzb2Nr
ZXQvY29uZi93ZWJzb2NrZXRfaHR0cF9zZXJ2ZXIucHkiOworICAgIG15ICR3ZWJTb2NrZXRDbGll
bnRQYXRoID0gIiR0ZXN0RGlyZWN0b3J5L3dlYnNvY2tldC9jb25mL2xpdmVuZXNzX2NoZWNrX2Ns
aWVudC5weSI7CisgICAgbXkgJHdzc0hhbmRsZXJCYXNlRGlyID0gIiR0ZXN0RGlyZWN0b3J5L3dl
YnNvY2tldC90ZXN0cyI7CisgICAgbXkgQGFyZ3MgPSAoCisgICAgICAgICItcCIsICIkd2ViU29j
a2V0UG9ydCIsCisgICAgICAgICItYiIsICIkd3NzSGFuZGxlckJhc2VEaXIiLAorICAgICAgICAi
LS1sb2dfbGV2ZWwiLCAiY3JpdGljYWwiCisgICAgKTsKKworICAgIG15ICRwaWQgPSBvcGVuMihc
KldFQlNPQ0tFVFNFUlZFUl9JTiwgXCpXRUJTT0NLRVRTRVJWRVJfT1VULCAkd2ViU29ja2V0U2Vy
dmVyUGF0aCwgQGFyZ3MpOworCisgICAgd3JpdGVUb0ZpbGUoIiR3ZWJTb2NrZXRTZXJ2ZXJQSURG
aWxlIiwgJHBpZCk7CisKKyAgICBteSAkcmV0cnlDb3VudCA9IDIwOworICAgIHdoaWxlIChzeXN0
ZW0oIiR3ZWJTb2NrZXRDbGllbnRQYXRoIC1wICR3ZWJTb2NrZXRQb3J0IC1zIGxvY2FsaG9zdCAt
LWxvZ19sZXZlbD1jcml0aWNhbCAxPi9kZXYvbnVsbCAyPiYxIikgJiYgJHJldHJ5Q291bnQpIHsK
KyAgICAgICAgc2xlZXAgMTsKKyAgICAgICAgLS0kcmV0cnlDb3VudDsKKyAgICB9CisKKyAgICBk
aWUgIlRpbWVkIG91dCB3YWl0aW5nIGZvciBXZWJTb2NrZXRTZXJ2ZXIgdG8gc3RhcnQiIHVubGVz
cyAkcmV0cnlDb3VudDsKKworICAgICRpc1dlYlNvY2tldFNlcnZlck9wZW4gPSAxOworfQorCitz
dWIgY2xvc2VXZWJTb2NrZXRTZXJ2ZXIoKQoreworICAgIHJldHVybiBpZiAhJGlzV2ViU29ja2V0
U2VydmVyT3BlbjsKKworICAgIGNsb3NlIFdFQlNPQ0tFVFNFUlZFUl9JTjsKKyAgICBjbG9zZSBX
RUJTT0NLRVRTRVJWRVJfT1VUOworCisgICAgcHJpbnQgIktpbGxpbmcuLi4iIC4gYGNhdCAkd2Vi
U29ja2V0U2VydmVyUElERmlsZWAgaWYgLWYgIiR3ZWJTb2NrZXRTZXJ2ZXJQSURGaWxlIjsKKyAg
ICBraWxsIDE1LCBgY2F0ICR3ZWJTb2NrZXRTZXJ2ZXJQSURGaWxlYCBpZiAtZiAiJHdlYlNvY2tl
dFNlcnZlclBJREZpbGUiOworCisgICAgJGlzV2ViU29ja2V0U2VydmVyT3BlbiA9IDA7Cit9CisK
IHN1YiBmaWxlTmFtZVdpdGhOdW1iZXIoJCQpCiB7CiAgICAgbXkgKCRiYXNlLCAkbnVtYmVyKSA9
IEBfOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41492</attachid>
            <date>2009-10-20 02:55:25 -0700</date>
            <delta_ts>2009-10-20 18:16:44 -0700</delta_ts>
            <desc>Start/Stop Web Socket and Web Socket Secure servers for layout tests.</desc>
            <filename>bug-27491-20091020185523.patch</filename>
            <type>text/plain</type>
            <size>6027</size>
            <attacher name="Yuzo Fujishima">yuzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA4OTQyYWViLi5jNWFjZWM1IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMDktMTAt
MjAgIFl1em8gRnVqaXNoaW1hICA8eXV6b0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFN0YXJ0L1N0b3AgV2ViIFNvY2tldCBhbmQg
V2ViIFNvY2tldCBTZWN1cmUgc2VydmVycyBmb3IgbGF5b3V0IHRlc3RzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc0OTEKKworICAgICAgICAqIFNj
cmlwdHMvcnVuLXdlYmtpdC10ZXN0czoKKwogMjAwOS0xMC0xOSAgTmF0ZSBDaGFwaW4gIDxqYXBo
ZXRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCmRpZmYg
LS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3J1bi13ZWJraXQtdGVzdHMgYi9XZWJLaXRUb29s
cy9TY3JpcHRzL3J1bi13ZWJraXQtdGVzdHMKaW5kZXggYTA4YTUzYy4uYWU5NzY2NCAxMDA3NTUK
LS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9ydW4td2Via2l0LXRlc3RzCisrKyBiL1dlYktpdFRv
b2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cwpAQCAtNzYsNiArNzYsNyBAQCBzdWIgYnVpbGRQ
bGF0Zm9ybVRlc3RIaWVyYXJjaHkoQCk7CiBzdWIgY2xvc2VDeWdwYXRocygpOwogc3ViIGNsb3Nl
RHVtcFRvb2woKTsKIHN1YiBjbG9zZUhUVFBEKCk7CitzdWIgY2xvc2VXZWJTb2NrZXRTZXJ2ZXIo
KTsKIHN1YiBjb3VudEFuZFByaW50TGVha3MoJCQkKTsKIHN1YiBjb3VudEZpbmlzaGVkVGVzdCgk
JCQkKTsKIHN1YiBkZWxldGVFeHBlY3RlZEFuZEFjdHVhbFJlc3VsdHMoJCk7CkBAIC05MSw2ICs5
Miw3IEBAIHN1YiBvcGVuRGlmZlRvb2woKTsKIHN1YiBvcGVuRHVtcFRvb2woKTsKIHN1YiBvcGVu
SFRUUERJZk5lZWRlZCgpOwogc3ViIHBhcnNlTGVha3NhbmRQcmludFVuaXF1ZUxlYWtzKCk7Citz
dWIgb3BlbldlYlNvY2tldFNlcnZlcklmTmVlZGVkKCk7CiBzdWIgcGF0aGNtcCgkJCk7CiBzdWIg
cHJpbnRGYWlsdXJlTWVzc2FnZUZvclRlc3QoJCQpOwogc3ViIHByb2Nlc3NJZ25vcmVUZXN0cygk
JCk7CkBAIC0xMTcsNiArMTE5LDggQEAgbXkgJGd1YXJkTWFsbG9jID0gJyc7CiBteSAkaHR0cGRQ
b3J0ID0gODAwMDsKIG15ICRodHRwZFNTTFBvcnQgPSA4NDQzOwogbXkgJGlnbm9yZU1ldHJpY3Mg
PSAwOworbXkgJHdlYlNvY2tldFBvcnQgPSA4ODgwOworbXkgJHdlYlNvY2tldFNlY3VyZVBvcnQg
PSA5MzIzOwogbXkgJGlnbm9yZVRlc3RzID0gJyc7CiBteSAkaXRlcmF0aW9ucyA9IDE7CiBteSAk
bGF1bmNoU2FmYXJpID0gMTsKQEAgLTQ4NSw2ICs0ODksOSBAQCBteSAkYXRMaW5lU3RhcnQgPSAx
OwogbXkgJGxhc3REaXJlY3RvcnkgPSAiIjsKIAogbXkgJGlzSHR0cGRPcGVuID0gMDsKK215ICRp
c1dlYlNvY2tldFNlcnZlck9wZW4gPSAwOworbXkgJHdlYlNvY2tldFNlcnZlclBJRCA9IDA7Citt
eSAkd2ViU29ja2V0U2VjdXJlU2VydmVyUElEID0gMDsKIAogc3ViIGNhdGNoX3BpcGUgeyAkZHVt
cFRvb2xDcmFzaGVkID0gMTsgfQogJFNJR3siUElQRSJ9ID0gImNhdGNoX3BpcGUiOwpAQCAtNTc3
LDE1ICs1ODQsNyBAQCBmb3IgbXkgJHRlc3QgKEB0ZXN0cykgewogICAgICAgICB9CiAgICAgfQog
Ci0gICAgaWYgKCR0ZXN0ICF+IC9eaHR0cFwvLykgewotICAgICAgICBteSAkdGVzdFBhdGggPSAi
JHRlc3REaXJlY3RvcnkvJHRlc3QiOwotICAgICAgICBpZiAoaXNDeWd3aW4oKSkgewotICAgICAg
ICAgICAgJHRlc3RQYXRoID0gdG9XaW5kb3dzUGF0aCgkdGVzdFBhdGgpOwotICAgICAgICB9IGVs
c2UgewotICAgICAgICAgICAgJHRlc3RQYXRoID0gY2Fub25wYXRoKCR0ZXN0UGF0aCk7Ci0gICAg
ICAgIH0KLSAgICAgICAgcHJpbnQgT1VUICIkdGVzdFBhdGgkc3VmZml4RXhwZWN0ZWRIYXNoXG4i
OwotICAgIH0gZWxzZSB7CisgICAgaWYgKCR0ZXN0ID1+IC9eaHR0cFwvLykgewogICAgICAgICBv
cGVuSFRUUERJZk5lZWRlZCgpOwogICAgICAgICBpZiAoJHRlc3QgIX4gL15odHRwXC90ZXN0c1wv
bG9jYWxcLy8gJiYgJHRlc3QgIX4gL15odHRwXC90ZXN0c1wvc3NsXC8vICYmICR0ZXN0ICF+IC9e
aHR0cFwvdGVzdHNcL3dtbFwvLyAmJiAkdGVzdCAhfiAvXmh0dHBcL3Rlc3RzXC9tZWRpYVwvLykg
ewogICAgICAgICAgICAgbXkgJHBhdGggPSBjYW5vbnBhdGgoJHRlc3QpOwpAQCAtNjA0LDYgKzYw
MywzMyBAQCBmb3IgbXkgJHRlc3QgKEB0ZXN0cykgewogICAgICAgICAgICAgfQogICAgICAgICAg
ICAgcHJpbnQgT1VUICIkdGVzdFBhdGgkc3VmZml4RXhwZWN0ZWRIYXNoXG4iOwogICAgICAgICB9
CisgICAgfSBlbHNpZiAoJHRlc3QgPX4gL153ZWJzb2NrZXRcLy8pIHsKKyAgICAgICAgb3Blbldl
YlNvY2tldFNlcnZlcklmTmVlZGVkKCk7CisgICAgICAgIGlmICgkdGVzdCA9fiAvXndlYnNvY2tl
dFwvdGVzdHNcL2xvY2FsXC8vKSB7CisgICAgICAgICAgICBteSAkdGVzdFBhdGggPSAiJHRlc3RE
aXJlY3RvcnkvJHRlc3QiOworICAgICAgICAgICAgaWYgKGlzQ3lnd2luKCkpIHsKKyAgICAgICAg
ICAgICAgICAkdGVzdFBhdGggPSB0b1dpbmRvd3NQYXRoKCR0ZXN0UGF0aCk7CisgICAgICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgICAgICAgICR0ZXN0UGF0aCA9IGNhbm9ucGF0aCgkdGVzdFBh
dGgpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcHJpbnQgT1VUICIkdGVzdFBhdGhcbiI7
CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBteSAkcGF0aCA9IGNhbm9ucGF0aCgkdGVz
dCk7CisgICAgICAgICAgICAkcGF0aCA9fiBzL153ZWJzb2NrZXRcL3Rlc3RzXC8vLzsKKyAgICAg
ICAgICAgIGlmICgkdGVzdCA9fiAvXndlYnNvY2tldFwvdGVzdHNcL3NzbFwvLykgeworICAgICAg
ICAgICAgICAgIHByaW50IE9VVCAiaHR0cHM6Ly8xMjcuMC4wLjE6JHdlYlNvY2tldFNlY3VyZVBv
cnQvJHBhdGhcbiI7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHByaW50
IE9VVCAiaHR0cDovLzEyNy4wLjAuMTokd2ViU29ja2V0UG9ydC8kcGF0aFxuIjsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgIG15ICR0ZXN0UGF0aCA9ICIk
dGVzdERpcmVjdG9yeS8kdGVzdCI7CisgICAgICAgIGlmIChpc0N5Z3dpbigpKSB7CisgICAgICAg
ICAgICAkdGVzdFBhdGggPSB0b1dpbmRvd3NQYXRoKCR0ZXN0UGF0aCk7CisgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICAkdGVzdFBhdGggPSBjYW5vbnBhdGgoJHRlc3RQYXRoKTsKKyAgICAg
ICAgfQorICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhhc2hcbiI7
CiAgICAgfQogCiAgICAgIyBEdW1wUmVuZGVyVHJlZSBpcyBleHBlY3RlZCB0byBkdW1wIHR3byAi
YmxvY2tzIiB0byBzdGRvdXQgZm9yIGVhY2ggdGVzdC4KQEAgLTg5Miw2ICs5MTgsNyBAQCBwcmlu
dGYgIlxuJTAuMmZzIHRvdGFsIHRlc3RpbmcgdGltZVxuIiwgKHRpbWUgLSAkb3ZlcmFsbFN0YXJ0
VGltZSkgLiAiIjsKICEkaXNEdW1wVG9vbE9wZW4gfHwgZGllICJGYWlsZWQgdG8gY2xvc2UgJGR1
bXBUb29sTmFtZS5cbiI7CiAKIGNsb3NlSFRUUEQoKTsKK2Nsb3NlV2ViU29ja2V0U2VydmVyKCk7
CiAKICMgQmVjYXVzZSBtdWx0aXBsZSBpbnN0YW5jZXMgb2YgdGhpcyBzY3JpcHQgYXJlIHJ1bm5p
bmcgY29uY3VycmVudGx5IHdlIGNhbm5vdCAKICMgc2FmZWx5IGRlbGV0ZSB0aGlzIHN5bWxpbmsu
CkBAIC0xMzczLDYgKzE0MDAsNjUgQEAgc3ViIGNsb3NlSFRUUEQoKQogICAgICRpc0h0dHBkT3Bl
biA9IDA7CiB9CiAKK3N1YiBvcGVuV2ViU29ja2V0U2VydmVySWZOZWVkZWQoKQoreworICAgIHJl
dHVybiBpZiAkaXNXZWJTb2NrZXRTZXJ2ZXJPcGVuOworCisgICAgbXkgJHdlYlNvY2tldFNlcnZl
clBhdGggPSAiL3Vzci9iaW4vcHl0aG9uIjsKKyAgICBteSAkd2ViU29ja2V0UHl0aG9uUGF0aCA9
ICJXZWJLaXRUb29scy9weXdlYnNvY2tldCI7CisgICAgbXkgJHdlYlNvY2tldEhhbmRsZXJEaXIg
PSAiJHRlc3REaXJlY3Rvcnkvd2Vic29ja2V0L3Rlc3RzIjsKKyAgICBteSAkc3NsQ2VydGlmaWNh
dGUgPSAiJHRlc3REaXJlY3RvcnkvaHR0cC9jb25mL3dlYmtpdC1odHRwZC5wZW0iOworICAgIG15
IEBhcmdzID0gKAorICAgICAgICAiV2ViS2l0VG9vbHMvcHl3ZWJzb2NrZXQvbW9kX3B5d2Vic29j
a2V0L3N0YW5kYWxvbmUucHkiLAorICAgICAgICAiLXAiLCAiJHdlYlNvY2tldFBvcnQiLAorICAg
ICAgICAiLWQiLCAiJHdlYlNvY2tldEhhbmRsZXJEaXIiLAorICAgICk7CisgICAgbXkgQGFyZ3NT
ZWN1cmUgPSAoCisgICAgICAgICJXZWJLaXRUb29scy9weXdlYnNvY2tldC9tb2RfcHl3ZWJzb2Nr
ZXQvc3RhbmRhbG9uZS5weSIsCisgICAgICAgICItcCIsICIkd2ViU29ja2V0U2VjdXJlUG9ydCIs
CisgICAgICAgICItZCIsICIkd2ViU29ja2V0SGFuZGxlckRpciIsCisgICAgICAgICItdCIsCisg
ICAgICAgICItayIsICIkc3NsQ2VydGlmaWNhdGUiLAorICAgICAgICAiLWMiLCAiJHNzbENlcnRp
ZmljYXRlIiwKKyAgICApOworCisgICAgJEVOVnsiUFlUSE9OUEFUSCJ9ID0gJHdlYlNvY2tldFB5
dGhvblBhdGg7CisgICAgJHdlYlNvY2tldFNlcnZlclBJRCA9IG9wZW4zKFwqV0VCU09DS0VUU0VS
VkVSX0lOLCBcKldFQlNPQ0tFVFNFUlZFUl9PVVQsIFwqV0VCU09DS0VUU0VSVkVSX0VSUiwgJHdl
YlNvY2tldFNlcnZlclBhdGgsIEBhcmdzKTsKKyAgICAkd2ViU29ja2V0U2VjdXJlU2VydmVyUElE
ID0gb3BlbjMoXCpXRUJTT0NLRVRTRUNVUkVTRVJWRVJfSU4sIFwqV0VCU09DS0VUU0VDVVJFU0VS
VkVSX09VVCwgXCpXRUJTT0NLRVRTRUNVUkVTRVJWRVJfRVJSLCAkd2ViU29ja2V0U2VydmVyUGF0
aCwgQGFyZ3NTZWN1cmUpOworCisgICAgbXkgJGxpc3RlbiA9ICIxMjcuMC4wLjE6JHdlYlNvY2tl
dFBvcnQiOworCisgICAgbXkgQGxpc3RlbiA9ICgiaHR0cDovLzEyNy4wLjAuMTokd2ViU29ja2V0
UG9ydCIsICJodHRwczovLzEyNy4wLjAuMTokd2ViU29ja2V0U2VjdXJlUG9ydCIpOworICAgIG15
ICRpOworICAgIGZvciAoJGkgPSAwOyAkaSA8IEBsaXN0ZW47ICRpKyspIHsKKyAgICAgICAgbXkg
JHJldHJ5Q291bnQgPSAxMDsKKyAgICAgICAgd2hpbGUgKHN5c3RlbSgiL3Vzci9iaW4vY3VybCAt
ayAtcSAtLXNpbGVudCAtLXN0ZGVyciAtIC0tb3V0cHV0IC9kZXYvbnVsbCAkbGlzdGVuWyRpXSIp
ICYmICRyZXRyeUNvdW50KSB7CisgICAgICAgICAgICBzbGVlcCAxOworICAgICAgICAgICAgLS0k
cmV0cnlDb3VudDsKKyAgICAgICAgfQorICAgICAgICBkaWUgIlRpbWVkIG91dCB3YWl0aW5nIGZv
ciBXZWJTb2NrZXRTZXJ2ZXIgdG8gc3RhcnQiIHVubGVzcyAkcmV0cnlDb3VudDsKKyAgICB9CisK
KyAgICAkaXNXZWJTb2NrZXRTZXJ2ZXJPcGVuID0gMTsKK30KKworc3ViIGNsb3NlV2ViU29ja2V0
U2VydmVyKCkKK3sKKyAgICByZXR1cm4gaWYgISRpc1dlYlNvY2tldFNlcnZlck9wZW47CisKKyAg
ICBjbG9zZSBXRUJTT0NLRVRTRVJWRVJfSU47CisgICAgY2xvc2UgV0VCU09DS0VUU0VSVkVSX09V
VDsKKyAgICBjbG9zZSBXRUJTT0NLRVRTRVJWRVJfRVJSOworICAgIGtpbGwgMTUsICR3ZWJTb2Nr
ZXRTZXJ2ZXJQSUQ7CisKKyAgICBjbG9zZSBXRUJTT0NLRVRTRUNVUkVTRVJWRVJfSU47CisgICAg
Y2xvc2UgV0VCU09DS0VUU0VDVVJFU0VSVkVSX09VVDsKKyAgICBjbG9zZSBXRUJTT0NLRVRTRUNV
UkVTRVJWRVJfRVJSOworICAgIGtpbGwgMTUsICR3ZWJTb2NrZXRTZWN1cmVTZXJ2ZXJQSUQ7CisK
KyAgICAkaXNXZWJTb2NrZXRTZXJ2ZXJPcGVuID0gMDsKK30KKwogc3ViIGZpbGVOYW1lV2l0aE51
bWJlcigkJCkKIHsKICAgICBteSAoJGJhc2UsICRudW1iZXIpID0gQF87
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41540</attachid>
            <date>2009-10-20 18:16:50 -0700</date>
            <delta_ts>2009-10-20 22:33:38 -0700</delta_ts>
            <desc>Start/Stop Web Socket and Web Socket Secure servers for layout tests.</desc>
            <filename>bug-27491-20091021101648.patch</filename>
            <type>text/plain</type>
            <size>6314</size>
            <attacher name="Yuzo Fujishima">yuzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA4OTQyYWViLi5lOGNjNWRiIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMTAt
MjAgIFl1em8gRnVqaXNoaW1hICA8eXV6b0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFN0YXJ0L1N0b3AgV2ViIFNvY2tldCBhbmQg
V2ViIFNvY2tldCBTZWN1cmUgc2VydmVycyBmb3IgbGF5b3V0IHRlc3RzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc0OTEKKworICAgICAgICBUaGUg
dGVzdCBwYXRoIGRldGVybWluYXRpb24gbG9naWMgaXMgY2hhbmdlZCB0byBoYW5kbGUgd2Vic29j
a2V0IGFuZCB3ZWJzb2NrZXQvc3NsIGNhc2VzLgorICAgICAgICBUaGUgbG9naWMgZm9yIG5vbi1o
dHRwIChhbmQgbm93IGFsc28gbm9uLXdlYnNvY2tldCkgdGVzdHMgaXMgbW92ZWQgdG93YXJkIHRo
ZSBlbmQgb2YgdGhlIGlmLWVsc2lmIHN0YXRlbWVudC4KKworICAgICAgICBGdW5jdGlvbnMgdG8g
c3RhcnQgb3Igc3RvcCBXZWIgU29ja2V0IHNlcnZlcnMgYXJlIGFkZGVkLgorCisgICAgICAgICog
U2NyaXB0cy9ydW4td2Via2l0LXRlc3RzOgorCiAyMDA5LTEwLTE5ICBOYXRlIENoYXBpbiAgPGph
cGhldEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KZGlm
ZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cyBiL1dlYktpdFRv
b2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cwppbmRleCBhMDhhNTNjLi5hZTk3NjY0IDEwMDc1
NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3J1bi13ZWJraXQtdGVzdHMKKysrIGIvV2ViS2l0
VG9vbHMvU2NyaXB0cy9ydW4td2Via2l0LXRlc3RzCkBAIC03Niw2ICs3Niw3IEBAIHN1YiBidWls
ZFBsYXRmb3JtVGVzdEhpZXJhcmNoeShAKTsKIHN1YiBjbG9zZUN5Z3BhdGhzKCk7CiBzdWIgY2xv
c2VEdW1wVG9vbCgpOwogc3ViIGNsb3NlSFRUUEQoKTsKK3N1YiBjbG9zZVdlYlNvY2tldFNlcnZl
cigpOwogc3ViIGNvdW50QW5kUHJpbnRMZWFrcygkJCQpOwogc3ViIGNvdW50RmluaXNoZWRUZXN0
KCQkJCQpOwogc3ViIGRlbGV0ZUV4cGVjdGVkQW5kQWN0dWFsUmVzdWx0cygkKTsKQEAgLTkxLDYg
KzkyLDcgQEAgc3ViIG9wZW5EaWZmVG9vbCgpOwogc3ViIG9wZW5EdW1wVG9vbCgpOwogc3ViIG9w
ZW5IVFRQRElmTmVlZGVkKCk7CiBzdWIgcGFyc2VMZWFrc2FuZFByaW50VW5pcXVlTGVha3MoKTsK
K3N1YiBvcGVuV2ViU29ja2V0U2VydmVySWZOZWVkZWQoKTsKIHN1YiBwYXRoY21wKCQkKTsKIHN1
YiBwcmludEZhaWx1cmVNZXNzYWdlRm9yVGVzdCgkJCk7CiBzdWIgcHJvY2Vzc0lnbm9yZVRlc3Rz
KCQkKTsKQEAgLTExNyw2ICsxMTksOCBAQCBteSAkZ3VhcmRNYWxsb2MgPSAnJzsKIG15ICRodHRw
ZFBvcnQgPSA4MDAwOwogbXkgJGh0dHBkU1NMUG9ydCA9IDg0NDM7CiBteSAkaWdub3JlTWV0cmlj
cyA9IDA7CitteSAkd2ViU29ja2V0UG9ydCA9IDg4ODA7CitteSAkd2ViU29ja2V0U2VjdXJlUG9y
dCA9IDkzMjM7CiBteSAkaWdub3JlVGVzdHMgPSAnJzsKIG15ICRpdGVyYXRpb25zID0gMTsKIG15
ICRsYXVuY2hTYWZhcmkgPSAxOwpAQCAtNDg1LDYgKzQ4OSw5IEBAIG15ICRhdExpbmVTdGFydCA9
IDE7CiBteSAkbGFzdERpcmVjdG9yeSA9ICIiOwogCiBteSAkaXNIdHRwZE9wZW4gPSAwOworbXkg
JGlzV2ViU29ja2V0U2VydmVyT3BlbiA9IDA7CitteSAkd2ViU29ja2V0U2VydmVyUElEID0gMDsK
K215ICR3ZWJTb2NrZXRTZWN1cmVTZXJ2ZXJQSUQgPSAwOwogCiBzdWIgY2F0Y2hfcGlwZSB7ICRk
dW1wVG9vbENyYXNoZWQgPSAxOyB9CiAkU0lHeyJQSVBFIn0gPSAiY2F0Y2hfcGlwZSI7CkBAIC01
NzcsMTUgKzU4NCw3IEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAgIH0KICAgICB9
CiAKLSAgICBpZiAoJHRlc3QgIX4gL15odHRwXC8vKSB7Ci0gICAgICAgIG15ICR0ZXN0UGF0aCA9
ICIkdGVzdERpcmVjdG9yeS8kdGVzdCI7Ci0gICAgICAgIGlmIChpc0N5Z3dpbigpKSB7Ci0gICAg
ICAgICAgICAkdGVzdFBhdGggPSB0b1dpbmRvd3NQYXRoKCR0ZXN0UGF0aCk7Ci0gICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICAkdGVzdFBhdGggPSBjYW5vbnBhdGgoJHRlc3RQYXRoKTsKLSAg
ICAgICAgfQotICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhhc2hc
biI7Ci0gICAgfSBlbHNlIHsKKyAgICBpZiAoJHRlc3QgPX4gL15odHRwXC8vKSB7CiAgICAgICAg
IG9wZW5IVFRQRElmTmVlZGVkKCk7CiAgICAgICAgIGlmICgkdGVzdCAhfiAvXmh0dHBcL3Rlc3Rz
XC9sb2NhbFwvLyAmJiAkdGVzdCAhfiAvXmh0dHBcL3Rlc3RzXC9zc2xcLy8gJiYgJHRlc3QgIX4g
L15odHRwXC90ZXN0c1wvd21sXC8vICYmICR0ZXN0ICF+IC9eaHR0cFwvdGVzdHNcL21lZGlhXC8v
KSB7CiAgICAgICAgICAgICBteSAkcGF0aCA9IGNhbm9ucGF0aCgkdGVzdCk7CkBAIC02MDQsNiAr
NjAzLDMzIEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhhc2hcbiI7CiAgICAgICAg
IH0KKyAgICB9IGVsc2lmICgkdGVzdCA9fiAvXndlYnNvY2tldFwvLykgeworICAgICAgICBvcGVu
V2ViU29ja2V0U2VydmVySWZOZWVkZWQoKTsKKyAgICAgICAgaWYgKCR0ZXN0ID1+IC9ed2Vic29j
a2V0XC90ZXN0c1wvbG9jYWxcLy8pIHsKKyAgICAgICAgICAgIG15ICR0ZXN0UGF0aCA9ICIkdGVz
dERpcmVjdG9yeS8kdGVzdCI7CisgICAgICAgICAgICBpZiAoaXNDeWd3aW4oKSkgeworICAgICAg
ICAgICAgICAgICR0ZXN0UGF0aCA9IHRvV2luZG93c1BhdGgoJHRlc3RQYXRoKTsKKyAgICAgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgJHRlc3RQYXRoID0gY2Fub25wYXRoKCR0ZXN0
UGF0aCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aFxu
IjsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG15ICRwYXRoID0gY2Fub25wYXRoKCR0
ZXN0KTsKKyAgICAgICAgICAgICRwYXRoID1+IHMvXndlYnNvY2tldFwvdGVzdHNcLy8vOworICAg
ICAgICAgICAgaWYgKCR0ZXN0ID1+IC9ed2Vic29ja2V0XC90ZXN0c1wvc3NsXC8vKSB7CisgICAg
ICAgICAgICAgICAgcHJpbnQgT1VUICJodHRwczovLzEyNy4wLjAuMTokd2ViU29ja2V0U2VjdXJl
UG9ydC8kcGF0aFxuIjsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgcHJp
bnQgT1VUICJodHRwOi8vMTI3LjAuMC4xOiR3ZWJTb2NrZXRQb3J0LyRwYXRoXG4iOworICAgICAg
ICAgICAgfQorICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgICAgbXkgJHRlc3RQYXRoID0g
IiR0ZXN0RGlyZWN0b3J5LyR0ZXN0IjsKKyAgICAgICAgaWYgKGlzQ3lnd2luKCkpIHsKKyAgICAg
ICAgICAgICR0ZXN0UGF0aCA9IHRvV2luZG93c1BhdGgoJHRlc3RQYXRoKTsKKyAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgICR0ZXN0UGF0aCA9IGNhbm9ucGF0aCgkdGVzdFBhdGgpOworICAg
ICAgICB9CisgICAgICAgIHByaW50IE9VVCAiJHRlc3RQYXRoJHN1ZmZpeEV4cGVjdGVkSGFzaFxu
IjsKICAgICB9CiAKICAgICAjIER1bXBSZW5kZXJUcmVlIGlzIGV4cGVjdGVkIHRvIGR1bXAgdHdv
ICJibG9ja3MiIHRvIHN0ZG91dCBmb3IgZWFjaCB0ZXN0LgpAQCAtODkyLDYgKzkxOCw3IEBAIHBy
aW50ZiAiXG4lMC4yZnMgdG90YWwgdGVzdGluZyB0aW1lXG4iLCAodGltZSAtICRvdmVyYWxsU3Rh
cnRUaW1lKSAuICIiOwogISRpc0R1bXBUb29sT3BlbiB8fCBkaWUgIkZhaWxlZCB0byBjbG9zZSAk
ZHVtcFRvb2xOYW1lLlxuIjsKIAogY2xvc2VIVFRQRCgpOworY2xvc2VXZWJTb2NrZXRTZXJ2ZXIo
KTsKIAogIyBCZWNhdXNlIG11bHRpcGxlIGluc3RhbmNlcyBvZiB0aGlzIHNjcmlwdCBhcmUgcnVu
bmluZyBjb25jdXJyZW50bHkgd2UgY2Fubm90IAogIyBzYWZlbHkgZGVsZXRlIHRoaXMgc3ltbGlu
ay4KQEAgLTEzNzMsNiArMTQwMCw2NSBAQCBzdWIgY2xvc2VIVFRQRCgpCiAgICAgJGlzSHR0cGRP
cGVuID0gMDsKIH0KIAorc3ViIG9wZW5XZWJTb2NrZXRTZXJ2ZXJJZk5lZWRlZCgpCit7CisgICAg
cmV0dXJuIGlmICRpc1dlYlNvY2tldFNlcnZlck9wZW47CisKKyAgICBteSAkd2ViU29ja2V0U2Vy
dmVyUGF0aCA9ICIvdXNyL2Jpbi9weXRob24iOworICAgIG15ICR3ZWJTb2NrZXRQeXRob25QYXRo
ID0gIldlYktpdFRvb2xzL3B5d2Vic29ja2V0IjsKKyAgICBteSAkd2ViU29ja2V0SGFuZGxlckRp
ciA9ICIkdGVzdERpcmVjdG9yeS93ZWJzb2NrZXQvdGVzdHMiOworICAgIG15ICRzc2xDZXJ0aWZp
Y2F0ZSA9ICIkdGVzdERpcmVjdG9yeS9odHRwL2NvbmYvd2Via2l0LWh0dHBkLnBlbSI7CisgICAg
bXkgQGFyZ3MgPSAoCisgICAgICAgICJXZWJLaXRUb29scy9weXdlYnNvY2tldC9tb2RfcHl3ZWJz
b2NrZXQvc3RhbmRhbG9uZS5weSIsCisgICAgICAgICItcCIsICIkd2ViU29ja2V0UG9ydCIsCisg
ICAgICAgICItZCIsICIkd2ViU29ja2V0SGFuZGxlckRpciIsCisgICAgKTsKKyAgICBteSBAYXJn
c1NlY3VyZSA9ICgKKyAgICAgICAgIldlYktpdFRvb2xzL3B5d2Vic29ja2V0L21vZF9weXdlYnNv
Y2tldC9zdGFuZGFsb25lLnB5IiwKKyAgICAgICAgIi1wIiwgIiR3ZWJTb2NrZXRTZWN1cmVQb3J0
IiwKKyAgICAgICAgIi1kIiwgIiR3ZWJTb2NrZXRIYW5kbGVyRGlyIiwKKyAgICAgICAgIi10IiwK
KyAgICAgICAgIi1rIiwgIiRzc2xDZXJ0aWZpY2F0ZSIsCisgICAgICAgICItYyIsICIkc3NsQ2Vy
dGlmaWNhdGUiLAorICAgICk7CisKKyAgICAkRU5WeyJQWVRIT05QQVRIIn0gPSAkd2ViU29ja2V0
UHl0aG9uUGF0aDsKKyAgICAkd2ViU29ja2V0U2VydmVyUElEID0gb3BlbjMoXCpXRUJTT0NLRVRT
RVJWRVJfSU4sIFwqV0VCU09DS0VUU0VSVkVSX09VVCwgXCpXRUJTT0NLRVRTRVJWRVJfRVJSLCAk
d2ViU29ja2V0U2VydmVyUGF0aCwgQGFyZ3MpOworICAgICR3ZWJTb2NrZXRTZWN1cmVTZXJ2ZXJQ
SUQgPSBvcGVuMyhcKldFQlNPQ0tFVFNFQ1VSRVNFUlZFUl9JTiwgXCpXRUJTT0NLRVRTRUNVUkVT
RVJWRVJfT1VULCBcKldFQlNPQ0tFVFNFQ1VSRVNFUlZFUl9FUlIsICR3ZWJTb2NrZXRTZXJ2ZXJQ
YXRoLCBAYXJnc1NlY3VyZSk7CisKKyAgICBteSAkbGlzdGVuID0gIjEyNy4wLjAuMTokd2ViU29j
a2V0UG9ydCI7CisKKyAgICBteSBAbGlzdGVuID0gKCJodHRwOi8vMTI3LjAuMC4xOiR3ZWJTb2Nr
ZXRQb3J0IiwgImh0dHBzOi8vMTI3LjAuMC4xOiR3ZWJTb2NrZXRTZWN1cmVQb3J0Iik7CisgICAg
bXkgJGk7CisgICAgZm9yICgkaSA9IDA7ICRpIDwgQGxpc3RlbjsgJGkrKykgeworICAgICAgICBt
eSAkcmV0cnlDb3VudCA9IDEwOworICAgICAgICB3aGlsZSAoc3lzdGVtKCIvdXNyL2Jpbi9jdXJs
IC1rIC1xIC0tc2lsZW50IC0tc3RkZXJyIC0gLS1vdXRwdXQgL2Rldi9udWxsICRsaXN0ZW5bJGld
IikgJiYgJHJldHJ5Q291bnQpIHsKKyAgICAgICAgICAgIHNsZWVwIDE7CisgICAgICAgICAgICAt
LSRyZXRyeUNvdW50OworICAgICAgICB9CisgICAgICAgIGRpZSAiVGltZWQgb3V0IHdhaXRpbmcg
Zm9yIFdlYlNvY2tldFNlcnZlciB0byBzdGFydCIgdW5sZXNzICRyZXRyeUNvdW50OworICAgIH0K
KworICAgICRpc1dlYlNvY2tldFNlcnZlck9wZW4gPSAxOworfQorCitzdWIgY2xvc2VXZWJTb2Nr
ZXRTZXJ2ZXIoKQoreworICAgIHJldHVybiBpZiAhJGlzV2ViU29ja2V0U2VydmVyT3BlbjsKKwor
ICAgIGNsb3NlIFdFQlNPQ0tFVFNFUlZFUl9JTjsKKyAgICBjbG9zZSBXRUJTT0NLRVRTRVJWRVJf
T1VUOworICAgIGNsb3NlIFdFQlNPQ0tFVFNFUlZFUl9FUlI7CisgICAga2lsbCAxNSwgJHdlYlNv
Y2tldFNlcnZlclBJRDsKKworICAgIGNsb3NlIFdFQlNPQ0tFVFNFQ1VSRVNFUlZFUl9JTjsKKyAg
ICBjbG9zZSBXRUJTT0NLRVRTRUNVUkVTRVJWRVJfT1VUOworICAgIGNsb3NlIFdFQlNPQ0tFVFNF
Q1VSRVNFUlZFUl9FUlI7CisgICAga2lsbCAxNSwgJHdlYlNvY2tldFNlY3VyZVNlcnZlclBJRDsK
KworICAgICRpc1dlYlNvY2tldFNlcnZlck9wZW4gPSAwOworfQorCiBzdWIgZmlsZU5hbWVXaXRo
TnVtYmVyKCQkKQogewogICAgIG15ICgkYmFzZSwgJG51bWJlcikgPSBAXzs=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41547</attachid>
            <date>2009-10-20 22:34:31 -0700</date>
            <delta_ts>2009-10-20 22:36:54 -0700</delta_ts>
            <desc>Start/Stop Web Socket and Web Socket Secure servers for layout tests.</desc>
            <filename>bug-27491-20091021143429.patch</filename>
            <type>text/plain</type>
            <size>6305</size>
            <attacher name="Yuzo Fujishima">yuzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA4OTQyYWViLi5lOGNjNWRiIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMTAt
MjAgIFl1em8gRnVqaXNoaW1hICA8eXV6b0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFN0YXJ0L1N0b3AgV2ViIFNvY2tldCBhbmQg
V2ViIFNvY2tldCBTZWN1cmUgc2VydmVycyBmb3IgbGF5b3V0IHRlc3RzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc0OTEKKworICAgICAgICBUaGUg
dGVzdCBwYXRoIGRldGVybWluYXRpb24gbG9naWMgaXMgY2hhbmdlZCB0byBoYW5kbGUgd2Vic29j
a2V0IGFuZCB3ZWJzb2NrZXQvc3NsIGNhc2VzLgorICAgICAgICBUaGUgbG9naWMgZm9yIG5vbi1o
dHRwIChhbmQgbm93IGFsc28gbm9uLXdlYnNvY2tldCkgdGVzdHMgaXMgbW92ZWQgdG93YXJkIHRo
ZSBlbmQgb2YgdGhlIGlmLWVsc2lmIHN0YXRlbWVudC4KKworICAgICAgICBGdW5jdGlvbnMgdG8g
c3RhcnQgb3Igc3RvcCBXZWIgU29ja2V0IHNlcnZlcnMgYXJlIGFkZGVkLgorCisgICAgICAgICog
U2NyaXB0cy9ydW4td2Via2l0LXRlc3RzOgorCiAyMDA5LTEwLTE5ICBOYXRlIENoYXBpbiAgPGph
cGhldEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KZGlm
ZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cyBiL1dlYktpdFRv
b2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cwppbmRleCBhMDhhNTNjLi4wOWM2OGRhIDEwMDc1
NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3J1bi13ZWJraXQtdGVzdHMKKysrIGIvV2ViS2l0
VG9vbHMvU2NyaXB0cy9ydW4td2Via2l0LXRlc3RzCkBAIC03Niw2ICs3Niw3IEBAIHN1YiBidWls
ZFBsYXRmb3JtVGVzdEhpZXJhcmNoeShAKTsKIHN1YiBjbG9zZUN5Z3BhdGhzKCk7CiBzdWIgY2xv
c2VEdW1wVG9vbCgpOwogc3ViIGNsb3NlSFRUUEQoKTsKK3N1YiBjbG9zZVdlYlNvY2tldFNlcnZl
cigpOwogc3ViIGNvdW50QW5kUHJpbnRMZWFrcygkJCQpOwogc3ViIGNvdW50RmluaXNoZWRUZXN0
KCQkJCQpOwogc3ViIGRlbGV0ZUV4cGVjdGVkQW5kQWN0dWFsUmVzdWx0cygkKTsKQEAgLTkxLDYg
KzkyLDcgQEAgc3ViIG9wZW5EaWZmVG9vbCgpOwogc3ViIG9wZW5EdW1wVG9vbCgpOwogc3ViIG9w
ZW5IVFRQRElmTmVlZGVkKCk7CiBzdWIgcGFyc2VMZWFrc2FuZFByaW50VW5pcXVlTGVha3MoKTsK
K3N1YiBvcGVuV2ViU29ja2V0U2VydmVySWZOZWVkZWQoKTsKIHN1YiBwYXRoY21wKCQkKTsKIHN1
YiBwcmludEZhaWx1cmVNZXNzYWdlRm9yVGVzdCgkJCk7CiBzdWIgcHJvY2Vzc0lnbm9yZVRlc3Rz
KCQkKTsKQEAgLTExNyw2ICsxMTksOCBAQCBteSAkZ3VhcmRNYWxsb2MgPSAnJzsKIG15ICRodHRw
ZFBvcnQgPSA4MDAwOwogbXkgJGh0dHBkU1NMUG9ydCA9IDg0NDM7CiBteSAkaWdub3JlTWV0cmlj
cyA9IDA7CitteSAkd2ViU29ja2V0UG9ydCA9IDg4ODA7CitteSAkd2ViU29ja2V0U2VjdXJlUG9y
dCA9IDkzMjM7CiBteSAkaWdub3JlVGVzdHMgPSAnJzsKIG15ICRpdGVyYXRpb25zID0gMTsKIG15
ICRsYXVuY2hTYWZhcmkgPSAxOwpAQCAtNDg1LDYgKzQ4OSw5IEBAIG15ICRhdExpbmVTdGFydCA9
IDE7CiBteSAkbGFzdERpcmVjdG9yeSA9ICIiOwogCiBteSAkaXNIdHRwZE9wZW4gPSAwOworbXkg
JGlzV2ViU29ja2V0U2VydmVyT3BlbiA9IDA7CitteSAkd2ViU29ja2V0U2VydmVyUElEID0gMDsK
K215ICR3ZWJTb2NrZXRTZWN1cmVTZXJ2ZXJQSUQgPSAwOwogCiBzdWIgY2F0Y2hfcGlwZSB7ICRk
dW1wVG9vbENyYXNoZWQgPSAxOyB9CiAkU0lHeyJQSVBFIn0gPSAiY2F0Y2hfcGlwZSI7CkBAIC01
NzcsMTUgKzU4NCw3IEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAgIH0KICAgICB9
CiAKLSAgICBpZiAoJHRlc3QgIX4gL15odHRwXC8vKSB7Ci0gICAgICAgIG15ICR0ZXN0UGF0aCA9
ICIkdGVzdERpcmVjdG9yeS8kdGVzdCI7Ci0gICAgICAgIGlmIChpc0N5Z3dpbigpKSB7Ci0gICAg
ICAgICAgICAkdGVzdFBhdGggPSB0b1dpbmRvd3NQYXRoKCR0ZXN0UGF0aCk7Ci0gICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICAkdGVzdFBhdGggPSBjYW5vbnBhdGgoJHRlc3RQYXRoKTsKLSAg
ICAgICAgfQotICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhhc2hc
biI7Ci0gICAgfSBlbHNlIHsKKyAgICBpZiAoJHRlc3QgPX4gL15odHRwXC8vKSB7CiAgICAgICAg
IG9wZW5IVFRQRElmTmVlZGVkKCk7CiAgICAgICAgIGlmICgkdGVzdCAhfiAvXmh0dHBcL3Rlc3Rz
XC9sb2NhbFwvLyAmJiAkdGVzdCAhfiAvXmh0dHBcL3Rlc3RzXC9zc2xcLy8gJiYgJHRlc3QgIX4g
L15odHRwXC90ZXN0c1wvd21sXC8vICYmICR0ZXN0ICF+IC9eaHR0cFwvdGVzdHNcL21lZGlhXC8v
KSB7CiAgICAgICAgICAgICBteSAkcGF0aCA9IGNhbm9ucGF0aCgkdGVzdCk7CkBAIC02MDQsNiAr
NjAzLDMzIEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhhc2hcbiI7CiAgICAgICAg
IH0KKyAgICB9IGVsc2lmICgkdGVzdCA9fiAvXndlYnNvY2tldFwvLykgeworICAgICAgICBvcGVu
V2ViU29ja2V0U2VydmVySWZOZWVkZWQoKTsKKyAgICAgICAgaWYgKCR0ZXN0ID1+IC9ed2Vic29j
a2V0XC90ZXN0c1wvbG9jYWxcLy8pIHsKKyAgICAgICAgICAgIG15ICR0ZXN0UGF0aCA9ICIkdGVz
dERpcmVjdG9yeS8kdGVzdCI7CisgICAgICAgICAgICBpZiAoaXNDeWd3aW4oKSkgeworICAgICAg
ICAgICAgICAgICR0ZXN0UGF0aCA9IHRvV2luZG93c1BhdGgoJHRlc3RQYXRoKTsKKyAgICAgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgJHRlc3RQYXRoID0gY2Fub25wYXRoKCR0ZXN0
UGF0aCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aFxu
IjsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG15ICRwYXRoID0gY2Fub25wYXRoKCR0
ZXN0KTsKKyAgICAgICAgICAgICRwYXRoID1+IHMvXndlYnNvY2tldFwvdGVzdHNcLy8vOworICAg
ICAgICAgICAgaWYgKCR0ZXN0ID1+IC9ed2Vic29ja2V0XC90ZXN0c1wvc3NsXC8vKSB7CisgICAg
ICAgICAgICAgICAgcHJpbnQgT1VUICJodHRwczovLzEyNy4wLjAuMTokd2ViU29ja2V0U2VjdXJl
UG9ydC8kcGF0aFxuIjsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgcHJp
bnQgT1VUICJodHRwOi8vMTI3LjAuMC4xOiR3ZWJTb2NrZXRQb3J0LyRwYXRoXG4iOworICAgICAg
ICAgICAgfQorICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgICAgbXkgJHRlc3RQYXRoID0g
IiR0ZXN0RGlyZWN0b3J5LyR0ZXN0IjsKKyAgICAgICAgaWYgKGlzQ3lnd2luKCkpIHsKKyAgICAg
ICAgICAgICR0ZXN0UGF0aCA9IHRvV2luZG93c1BhdGgoJHRlc3RQYXRoKTsKKyAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgICR0ZXN0UGF0aCA9IGNhbm9ucGF0aCgkdGVzdFBhdGgpOworICAg
ICAgICB9CisgICAgICAgIHByaW50IE9VVCAiJHRlc3RQYXRoJHN1ZmZpeEV4cGVjdGVkSGFzaFxu
IjsKICAgICB9CiAKICAgICAjIER1bXBSZW5kZXJUcmVlIGlzIGV4cGVjdGVkIHRvIGR1bXAgdHdv
ICJibG9ja3MiIHRvIHN0ZG91dCBmb3IgZWFjaCB0ZXN0LgpAQCAtODkyLDYgKzkxOCw3IEBAIHBy
aW50ZiAiXG4lMC4yZnMgdG90YWwgdGVzdGluZyB0aW1lXG4iLCAodGltZSAtICRvdmVyYWxsU3Rh
cnRUaW1lKSAuICIiOwogISRpc0R1bXBUb29sT3BlbiB8fCBkaWUgIkZhaWxlZCB0byBjbG9zZSAk
ZHVtcFRvb2xOYW1lLlxuIjsKIAogY2xvc2VIVFRQRCgpOworY2xvc2VXZWJTb2NrZXRTZXJ2ZXIo
KTsKIAogIyBCZWNhdXNlIG11bHRpcGxlIGluc3RhbmNlcyBvZiB0aGlzIHNjcmlwdCBhcmUgcnVu
bmluZyBjb25jdXJyZW50bHkgd2UgY2Fubm90IAogIyBzYWZlbHkgZGVsZXRlIHRoaXMgc3ltbGlu
ay4KQEAgLTEzNzMsNiArMTQwMCw2NCBAQCBzdWIgY2xvc2VIVFRQRCgpCiAgICAgJGlzSHR0cGRP
cGVuID0gMDsKIH0KIAorc3ViIG9wZW5XZWJTb2NrZXRTZXJ2ZXJJZk5lZWRlZCgpCit7CisgICAg
cmV0dXJuIGlmICRpc1dlYlNvY2tldFNlcnZlck9wZW47CisKKyAgICBteSAkd2ViU29ja2V0U2Vy
dmVyUGF0aCA9ICIvdXNyL2Jpbi9weXRob24iOworICAgIG15ICR3ZWJTb2NrZXRQeXRob25QYXRo
ID0gIldlYktpdFRvb2xzL3B5d2Vic29ja2V0IjsKKyAgICBteSAkd2ViU29ja2V0SGFuZGxlckRp
ciA9ICIkdGVzdERpcmVjdG9yeS93ZWJzb2NrZXQvdGVzdHMiOworICAgIG15ICRzc2xDZXJ0aWZp
Y2F0ZSA9ICIkdGVzdERpcmVjdG9yeS9odHRwL2NvbmYvd2Via2l0LWh0dHBkLnBlbSI7CisgICAg
bXkgQGFyZ3MgPSAoCisgICAgICAgICJXZWJLaXRUb29scy9weXdlYnNvY2tldC9tb2RfcHl3ZWJz
b2NrZXQvc3RhbmRhbG9uZS5weSIsCisgICAgICAgICItcCIsICIkd2ViU29ja2V0UG9ydCIsCisg
ICAgICAgICItZCIsICIkd2ViU29ja2V0SGFuZGxlckRpciIsCisgICAgKTsKKyAgICBteSBAYXJn
c1NlY3VyZSA9ICgKKyAgICAgICAgIldlYktpdFRvb2xzL3B5d2Vic29ja2V0L21vZF9weXdlYnNv
Y2tldC9zdGFuZGFsb25lLnB5IiwKKyAgICAgICAgIi1wIiwgIiR3ZWJTb2NrZXRTZWN1cmVQb3J0
IiwKKyAgICAgICAgIi1kIiwgIiR3ZWJTb2NrZXRIYW5kbGVyRGlyIiwKKyAgICAgICAgIi10IiwK
KyAgICAgICAgIi1rIiwgIiRzc2xDZXJ0aWZpY2F0ZSIsCisgICAgICAgICItYyIsICIkc3NsQ2Vy
dGlmaWNhdGUiLAorICAgICk7CisKKyAgICAkRU5WeyJQWVRIT05QQVRIIn0gPSAkd2ViU29ja2V0
UHl0aG9uUGF0aDsKKyAgICAkd2ViU29ja2V0U2VydmVyUElEID0gb3BlbjMoXCpXRUJTT0NLRVRT
RVJWRVJfSU4sIFwqV0VCU09DS0VUU0VSVkVSX09VVCwgXCpXRUJTT0NLRVRTRVJWRVJfRVJSLCAk
d2ViU29ja2V0U2VydmVyUGF0aCwgQGFyZ3MpOworICAgICR3ZWJTb2NrZXRTZWN1cmVTZXJ2ZXJQ
SUQgPSBvcGVuMyhcKldFQlNPQ0tFVFNFQ1VSRVNFUlZFUl9JTiwgXCpXRUJTT0NLRVRTRUNVUkVT
RVJWRVJfT1VULCBcKldFQlNPQ0tFVFNFQ1VSRVNFUlZFUl9FUlIsICR3ZWJTb2NrZXRTZXJ2ZXJQ
YXRoLCBAYXJnc1NlY3VyZSk7CisKKyAgICBteSAkbGlzdGVuID0gIjEyNy4wLjAuMTokd2ViU29j
a2V0UG9ydCI7CisKKyAgICBteSBAbGlzdGVuID0gKCJodHRwOi8vMTI3LjAuMC4xOiR3ZWJTb2Nr
ZXRQb3J0IiwgImh0dHBzOi8vMTI3LjAuMC4xOiR3ZWJTb2NrZXRTZWN1cmVQb3J0Iik7CisgICAg
Zm9yIChteSAkaSA9IDA7ICRpIDwgQGxpc3RlbjsgJGkrKykgeworICAgICAgICBteSAkcmV0cnlD
b3VudCA9IDEwOworICAgICAgICB3aGlsZSAoc3lzdGVtKCIvdXNyL2Jpbi9jdXJsIC1rIC1xIC0t
c2lsZW50IC0tc3RkZXJyIC0gLS1vdXRwdXQgL2Rldi9udWxsICRsaXN0ZW5bJGldIikgJiYgJHJl
dHJ5Q291bnQpIHsKKyAgICAgICAgICAgIHNsZWVwIDE7CisgICAgICAgICAgICAtLSRyZXRyeUNv
dW50OworICAgICAgICB9CisgICAgICAgIGRpZSAiVGltZWQgb3V0IHdhaXRpbmcgZm9yIFdlYlNv
Y2tldFNlcnZlciB0byBzdGFydCIgdW5sZXNzICRyZXRyeUNvdW50OworICAgIH0KKworICAgICRp
c1dlYlNvY2tldFNlcnZlck9wZW4gPSAxOworfQorCitzdWIgY2xvc2VXZWJTb2NrZXRTZXJ2ZXIo
KQoreworICAgIHJldHVybiBpZiAhJGlzV2ViU29ja2V0U2VydmVyT3BlbjsKKworICAgIGNsb3Nl
IFdFQlNPQ0tFVFNFUlZFUl9JTjsKKyAgICBjbG9zZSBXRUJTT0NLRVRTRVJWRVJfT1VUOworICAg
IGNsb3NlIFdFQlNPQ0tFVFNFUlZFUl9FUlI7CisgICAga2lsbCAxNSwgJHdlYlNvY2tldFNlcnZl
clBJRDsKKworICAgIGNsb3NlIFdFQlNPQ0tFVFNFQ1VSRVNFUlZFUl9JTjsKKyAgICBjbG9zZSBX
RUJTT0NLRVRTRUNVUkVTRVJWRVJfT1VUOworICAgIGNsb3NlIFdFQlNPQ0tFVFNFQ1VSRVNFUlZF
Ul9FUlI7CisgICAga2lsbCAxNSwgJHdlYlNvY2tldFNlY3VyZVNlcnZlclBJRDsKKworICAgICRp
c1dlYlNvY2tldFNlcnZlck9wZW4gPSAwOworfQorCiBzdWIgZmlsZU5hbWVXaXRoTnVtYmVyKCQk
KQogewogICAgIG15ICgkYmFzZSwgJG51bWJlcikgPSBAXzs=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41548</attachid>
            <date>2009-10-20 22:37:00 -0700</date>
            <delta_ts>2009-10-25 23:22:14 -0700</delta_ts>
            <desc>Start/Stop Web Socket and Web Socket Secure servers for layout tests.</desc>
            <filename>bug-27491-20091021143658.patch</filename>
            <type>text/plain</type>
            <size>6257</size>
            <attacher name="Yuzo Fujishima">yuzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA4OTQyYWViLi5lOGNjNWRiIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMTAt
MjAgIFl1em8gRnVqaXNoaW1hICA8eXV6b0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFN0YXJ0L1N0b3AgV2ViIFNvY2tldCBhbmQg
V2ViIFNvY2tldCBTZWN1cmUgc2VydmVycyBmb3IgbGF5b3V0IHRlc3RzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc0OTEKKworICAgICAgICBUaGUg
dGVzdCBwYXRoIGRldGVybWluYXRpb24gbG9naWMgaXMgY2hhbmdlZCB0byBoYW5kbGUgd2Vic29j
a2V0IGFuZCB3ZWJzb2NrZXQvc3NsIGNhc2VzLgorICAgICAgICBUaGUgbG9naWMgZm9yIG5vbi1o
dHRwIChhbmQgbm93IGFsc28gbm9uLXdlYnNvY2tldCkgdGVzdHMgaXMgbW92ZWQgdG93YXJkIHRo
ZSBlbmQgb2YgdGhlIGlmLWVsc2lmIHN0YXRlbWVudC4KKworICAgICAgICBGdW5jdGlvbnMgdG8g
c3RhcnQgb3Igc3RvcCBXZWIgU29ja2V0IHNlcnZlcnMgYXJlIGFkZGVkLgorCisgICAgICAgICog
U2NyaXB0cy9ydW4td2Via2l0LXRlc3RzOgorCiAyMDA5LTEwLTE5ICBOYXRlIENoYXBpbiAgPGph
cGhldEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KZGlm
ZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cyBiL1dlYktpdFRv
b2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cwppbmRleCBhMDhhNTNjLi40YzcxODFiIDEwMDc1
NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3J1bi13ZWJraXQtdGVzdHMKKysrIGIvV2ViS2l0
VG9vbHMvU2NyaXB0cy9ydW4td2Via2l0LXRlc3RzCkBAIC03Niw2ICs3Niw3IEBAIHN1YiBidWls
ZFBsYXRmb3JtVGVzdEhpZXJhcmNoeShAKTsKIHN1YiBjbG9zZUN5Z3BhdGhzKCk7CiBzdWIgY2xv
c2VEdW1wVG9vbCgpOwogc3ViIGNsb3NlSFRUUEQoKTsKK3N1YiBjbG9zZVdlYlNvY2tldFNlcnZl
cigpOwogc3ViIGNvdW50QW5kUHJpbnRMZWFrcygkJCQpOwogc3ViIGNvdW50RmluaXNoZWRUZXN0
KCQkJCQpOwogc3ViIGRlbGV0ZUV4cGVjdGVkQW5kQWN0dWFsUmVzdWx0cygkKTsKQEAgLTkxLDYg
KzkyLDcgQEAgc3ViIG9wZW5EaWZmVG9vbCgpOwogc3ViIG9wZW5EdW1wVG9vbCgpOwogc3ViIG9w
ZW5IVFRQRElmTmVlZGVkKCk7CiBzdWIgcGFyc2VMZWFrc2FuZFByaW50VW5pcXVlTGVha3MoKTsK
K3N1YiBvcGVuV2ViU29ja2V0U2VydmVySWZOZWVkZWQoKTsKIHN1YiBwYXRoY21wKCQkKTsKIHN1
YiBwcmludEZhaWx1cmVNZXNzYWdlRm9yVGVzdCgkJCk7CiBzdWIgcHJvY2Vzc0lnbm9yZVRlc3Rz
KCQkKTsKQEAgLTExNyw2ICsxMTksOCBAQCBteSAkZ3VhcmRNYWxsb2MgPSAnJzsKIG15ICRodHRw
ZFBvcnQgPSA4MDAwOwogbXkgJGh0dHBkU1NMUG9ydCA9IDg0NDM7CiBteSAkaWdub3JlTWV0cmlj
cyA9IDA7CitteSAkd2ViU29ja2V0UG9ydCA9IDg4ODA7CitteSAkd2ViU29ja2V0U2VjdXJlUG9y
dCA9IDkzMjM7CiBteSAkaWdub3JlVGVzdHMgPSAnJzsKIG15ICRpdGVyYXRpb25zID0gMTsKIG15
ICRsYXVuY2hTYWZhcmkgPSAxOwpAQCAtNDg1LDYgKzQ4OSw5IEBAIG15ICRhdExpbmVTdGFydCA9
IDE7CiBteSAkbGFzdERpcmVjdG9yeSA9ICIiOwogCiBteSAkaXNIdHRwZE9wZW4gPSAwOworbXkg
JGlzV2ViU29ja2V0U2VydmVyT3BlbiA9IDA7CitteSAkd2ViU29ja2V0U2VydmVyUElEID0gMDsK
K215ICR3ZWJTb2NrZXRTZWN1cmVTZXJ2ZXJQSUQgPSAwOwogCiBzdWIgY2F0Y2hfcGlwZSB7ICRk
dW1wVG9vbENyYXNoZWQgPSAxOyB9CiAkU0lHeyJQSVBFIn0gPSAiY2F0Y2hfcGlwZSI7CkBAIC01
NzcsMTUgKzU4NCw3IEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAgIH0KICAgICB9
CiAKLSAgICBpZiAoJHRlc3QgIX4gL15odHRwXC8vKSB7Ci0gICAgICAgIG15ICR0ZXN0UGF0aCA9
ICIkdGVzdERpcmVjdG9yeS8kdGVzdCI7Ci0gICAgICAgIGlmIChpc0N5Z3dpbigpKSB7Ci0gICAg
ICAgICAgICAkdGVzdFBhdGggPSB0b1dpbmRvd3NQYXRoKCR0ZXN0UGF0aCk7Ci0gICAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgICAgICAkdGVzdFBhdGggPSBjYW5vbnBhdGgoJHRlc3RQYXRoKTsKLSAg
ICAgICAgfQotICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhhc2hc
biI7Ci0gICAgfSBlbHNlIHsKKyAgICBpZiAoJHRlc3QgPX4gL15odHRwXC8vKSB7CiAgICAgICAg
IG9wZW5IVFRQRElmTmVlZGVkKCk7CiAgICAgICAgIGlmICgkdGVzdCAhfiAvXmh0dHBcL3Rlc3Rz
XC9sb2NhbFwvLyAmJiAkdGVzdCAhfiAvXmh0dHBcL3Rlc3RzXC9zc2xcLy8gJiYgJHRlc3QgIX4g
L15odHRwXC90ZXN0c1wvd21sXC8vICYmICR0ZXN0ICF+IC9eaHR0cFwvdGVzdHNcL21lZGlhXC8v
KSB7CiAgICAgICAgICAgICBteSAkcGF0aCA9IGNhbm9ucGF0aCgkdGVzdCk7CkBAIC02MDQsNiAr
NjAzLDMzIEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhhc2hcbiI7CiAgICAgICAg
IH0KKyAgICB9IGVsc2lmICgkdGVzdCA9fiAvXndlYnNvY2tldFwvLykgeworICAgICAgICBvcGVu
V2ViU29ja2V0U2VydmVySWZOZWVkZWQoKTsKKyAgICAgICAgaWYgKCR0ZXN0ID1+IC9ed2Vic29j
a2V0XC90ZXN0c1wvbG9jYWxcLy8pIHsKKyAgICAgICAgICAgIG15ICR0ZXN0UGF0aCA9ICIkdGVz
dERpcmVjdG9yeS8kdGVzdCI7CisgICAgICAgICAgICBpZiAoaXNDeWd3aW4oKSkgeworICAgICAg
ICAgICAgICAgICR0ZXN0UGF0aCA9IHRvV2luZG93c1BhdGgoJHRlc3RQYXRoKTsKKyAgICAgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgJHRlc3RQYXRoID0gY2Fub25wYXRoKCR0ZXN0
UGF0aCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aFxu
IjsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG15ICRwYXRoID0gY2Fub25wYXRoKCR0
ZXN0KTsKKyAgICAgICAgICAgICRwYXRoID1+IHMvXndlYnNvY2tldFwvdGVzdHNcLy8vOworICAg
ICAgICAgICAgaWYgKCR0ZXN0ID1+IC9ed2Vic29ja2V0XC90ZXN0c1wvc3NsXC8vKSB7CisgICAg
ICAgICAgICAgICAgcHJpbnQgT1VUICJodHRwczovLzEyNy4wLjAuMTokd2ViU29ja2V0U2VjdXJl
UG9ydC8kcGF0aFxuIjsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgcHJp
bnQgT1VUICJodHRwOi8vMTI3LjAuMC4xOiR3ZWJTb2NrZXRQb3J0LyRwYXRoXG4iOworICAgICAg
ICAgICAgfQorICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgICAgbXkgJHRlc3RQYXRoID0g
IiR0ZXN0RGlyZWN0b3J5LyR0ZXN0IjsKKyAgICAgICAgaWYgKGlzQ3lnd2luKCkpIHsKKyAgICAg
ICAgICAgICR0ZXN0UGF0aCA9IHRvV2luZG93c1BhdGgoJHRlc3RQYXRoKTsKKyAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgICR0ZXN0UGF0aCA9IGNhbm9ucGF0aCgkdGVzdFBhdGgpOworICAg
ICAgICB9CisgICAgICAgIHByaW50IE9VVCAiJHRlc3RQYXRoJHN1ZmZpeEV4cGVjdGVkSGFzaFxu
IjsKICAgICB9CiAKICAgICAjIER1bXBSZW5kZXJUcmVlIGlzIGV4cGVjdGVkIHRvIGR1bXAgdHdv
ICJibG9ja3MiIHRvIHN0ZG91dCBmb3IgZWFjaCB0ZXN0LgpAQCAtODkyLDYgKzkxOCw3IEBAIHBy
aW50ZiAiXG4lMC4yZnMgdG90YWwgdGVzdGluZyB0aW1lXG4iLCAodGltZSAtICRvdmVyYWxsU3Rh
cnRUaW1lKSAuICIiOwogISRpc0R1bXBUb29sT3BlbiB8fCBkaWUgIkZhaWxlZCB0byBjbG9zZSAk
ZHVtcFRvb2xOYW1lLlxuIjsKIAogY2xvc2VIVFRQRCgpOworY2xvc2VXZWJTb2NrZXRTZXJ2ZXIo
KTsKIAogIyBCZWNhdXNlIG11bHRpcGxlIGluc3RhbmNlcyBvZiB0aGlzIHNjcmlwdCBhcmUgcnVu
bmluZyBjb25jdXJyZW50bHkgd2UgY2Fubm90IAogIyBzYWZlbHkgZGVsZXRlIHRoaXMgc3ltbGlu
ay4KQEAgLTEzNzMsNiArMTQwMCw2MiBAQCBzdWIgY2xvc2VIVFRQRCgpCiAgICAgJGlzSHR0cGRP
cGVuID0gMDsKIH0KIAorc3ViIG9wZW5XZWJTb2NrZXRTZXJ2ZXJJZk5lZWRlZCgpCit7CisgICAg
cmV0dXJuIGlmICRpc1dlYlNvY2tldFNlcnZlck9wZW47CisKKyAgICBteSAkd2ViU29ja2V0U2Vy
dmVyUGF0aCA9ICIvdXNyL2Jpbi9weXRob24iOworICAgIG15ICR3ZWJTb2NrZXRQeXRob25QYXRo
ID0gIldlYktpdFRvb2xzL3B5d2Vic29ja2V0IjsKKyAgICBteSAkd2ViU29ja2V0SGFuZGxlckRp
ciA9ICIkdGVzdERpcmVjdG9yeS93ZWJzb2NrZXQvdGVzdHMiOworICAgIG15ICRzc2xDZXJ0aWZp
Y2F0ZSA9ICIkdGVzdERpcmVjdG9yeS9odHRwL2NvbmYvd2Via2l0LWh0dHBkLnBlbSI7CisgICAg
bXkgQGFyZ3MgPSAoCisgICAgICAgICJXZWJLaXRUb29scy9weXdlYnNvY2tldC9tb2RfcHl3ZWJz
b2NrZXQvc3RhbmRhbG9uZS5weSIsCisgICAgICAgICItcCIsICIkd2ViU29ja2V0UG9ydCIsCisg
ICAgICAgICItZCIsICIkd2ViU29ja2V0SGFuZGxlckRpciIsCisgICAgKTsKKyAgICBteSBAYXJn
c1NlY3VyZSA9ICgKKyAgICAgICAgIldlYktpdFRvb2xzL3B5d2Vic29ja2V0L21vZF9weXdlYnNv
Y2tldC9zdGFuZGFsb25lLnB5IiwKKyAgICAgICAgIi1wIiwgIiR3ZWJTb2NrZXRTZWN1cmVQb3J0
IiwKKyAgICAgICAgIi1kIiwgIiR3ZWJTb2NrZXRIYW5kbGVyRGlyIiwKKyAgICAgICAgIi10IiwK
KyAgICAgICAgIi1rIiwgIiRzc2xDZXJ0aWZpY2F0ZSIsCisgICAgICAgICItYyIsICIkc3NsQ2Vy
dGlmaWNhdGUiLAorICAgICk7CisKKyAgICAkRU5WeyJQWVRIT05QQVRIIn0gPSAkd2ViU29ja2V0
UHl0aG9uUGF0aDsKKyAgICAkd2ViU29ja2V0U2VydmVyUElEID0gb3BlbjMoXCpXRUJTT0NLRVRT
RVJWRVJfSU4sIFwqV0VCU09DS0VUU0VSVkVSX09VVCwgXCpXRUJTT0NLRVRTRVJWRVJfRVJSLCAk
d2ViU29ja2V0U2VydmVyUGF0aCwgQGFyZ3MpOworICAgICR3ZWJTb2NrZXRTZWN1cmVTZXJ2ZXJQ
SUQgPSBvcGVuMyhcKldFQlNPQ0tFVFNFQ1VSRVNFUlZFUl9JTiwgXCpXRUJTT0NLRVRTRUNVUkVT
RVJWRVJfT1VULCBcKldFQlNPQ0tFVFNFQ1VSRVNFUlZFUl9FUlIsICR3ZWJTb2NrZXRTZXJ2ZXJQ
YXRoLCBAYXJnc1NlY3VyZSk7CisKKyAgICBteSBAbGlzdGVuID0gKCJodHRwOi8vMTI3LjAuMC4x
OiR3ZWJTb2NrZXRQb3J0IiwgImh0dHBzOi8vMTI3LjAuMC4xOiR3ZWJTb2NrZXRTZWN1cmVQb3J0
Iik7CisgICAgZm9yIChteSAkaSA9IDA7ICRpIDwgQGxpc3RlbjsgJGkrKykgeworICAgICAgICBt
eSAkcmV0cnlDb3VudCA9IDEwOworICAgICAgICB3aGlsZSAoc3lzdGVtKCIvdXNyL2Jpbi9jdXJs
IC1rIC1xIC0tc2lsZW50IC0tc3RkZXJyIC0gLS1vdXRwdXQgL2Rldi9udWxsICRsaXN0ZW5bJGld
IikgJiYgJHJldHJ5Q291bnQpIHsKKyAgICAgICAgICAgIHNsZWVwIDE7CisgICAgICAgICAgICAt
LSRyZXRyeUNvdW50OworICAgICAgICB9CisgICAgICAgIGRpZSAiVGltZWQgb3V0IHdhaXRpbmcg
Zm9yIFdlYlNvY2tldFNlcnZlciB0byBzdGFydCIgdW5sZXNzICRyZXRyeUNvdW50OworICAgIH0K
KworICAgICRpc1dlYlNvY2tldFNlcnZlck9wZW4gPSAxOworfQorCitzdWIgY2xvc2VXZWJTb2Nr
ZXRTZXJ2ZXIoKQoreworICAgIHJldHVybiBpZiAhJGlzV2ViU29ja2V0U2VydmVyT3BlbjsKKwor
ICAgIGNsb3NlIFdFQlNPQ0tFVFNFUlZFUl9JTjsKKyAgICBjbG9zZSBXRUJTT0NLRVRTRVJWRVJf
T1VUOworICAgIGNsb3NlIFdFQlNPQ0tFVFNFUlZFUl9FUlI7CisgICAga2lsbCAxNSwgJHdlYlNv
Y2tldFNlcnZlclBJRDsKKworICAgIGNsb3NlIFdFQlNPQ0tFVFNFQ1VSRVNFUlZFUl9JTjsKKyAg
ICBjbG9zZSBXRUJTT0NLRVRTRUNVUkVTRVJWRVJfT1VUOworICAgIGNsb3NlIFdFQlNPQ0tFVFNF
Q1VSRVNFUlZFUl9FUlI7CisgICAga2lsbCAxNSwgJHdlYlNvY2tldFNlY3VyZVNlcnZlclBJRDsK
KworICAgICRpc1dlYlNvY2tldFNlcnZlck9wZW4gPSAwOworfQorCiBzdWIgZmlsZU5hbWVXaXRo
TnVtYmVyKCQkKQogewogICAgIG15ICgkYmFzZSwgJG51bWJlcikgPSBAXzs=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41845</attachid>
            <date>2009-10-25 23:22:20 -0700</date>
            <delta_ts>2009-11-03 18:17:57 -0800</delta_ts>
            <desc>Start/Stop Web Socket and Web Socket Secure servers for layout tests.</desc>
            <filename>bug-27491-20091026152217.patch</filename>
            <type>text/plain</type>
            <size>6309</size>
            <attacher name="Yuzo Fujishima">yuzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA0M2ViNWRlLi42ZjliMTI3IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMTAt
MjAgIFl1em8gRnVqaXNoaW1hICA8eXV6b0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFN0YXJ0L1N0b3AgV2ViIFNvY2tldCBhbmQg
V2ViIFNvY2tldCBTZWN1cmUgc2VydmVycyBmb3IgbGF5b3V0IHRlc3RzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc0OTEKKworICAgICAgICBUaGUg
dGVzdCBwYXRoIGRldGVybWluYXRpb24gbG9naWMgaXMgY2hhbmdlZCB0byBoYW5kbGUgd2Vic29j
a2V0IGFuZCB3ZWJzb2NrZXQvc3NsIGNhc2VzLgorICAgICAgICBUaGUgbG9naWMgZm9yIG5vbi1o
dHRwIChhbmQgbm93IGFsc28gbm9uLXdlYnNvY2tldCkgdGVzdHMgaXMgbW92ZWQgdG93YXJkIHRo
ZSBlbmQgb2YgdGhlIGlmLWVsc2lmIHN0YXRlbWVudC4KKworICAgICAgICBGdW5jdGlvbnMgdG8g
c3RhcnQgb3Igc3RvcCBXZWIgU29ja2V0IHNlcnZlcnMgYXJlIGFkZGVkLgorCisgICAgICAgICog
U2NyaXB0cy9ydW4td2Via2l0LXRlc3RzOgorCiAyMDA5LTEwLTI1ICBZdXpvIEZ1amlzaGltYSAg
PHl1em9AZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cyBiL1dlYktp
dFRvb2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cwppbmRleCBhMDhhNTNjLi5mYzVjZTYwIDEw
MDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3J1bi13ZWJraXQtdGVzdHMKKysrIGIvV2Vi
S2l0VG9vbHMvU2NyaXB0cy9ydW4td2Via2l0LXRlc3RzCkBAIC03Niw2ICs3Niw3IEBAIHN1YiBi
dWlsZFBsYXRmb3JtVGVzdEhpZXJhcmNoeShAKTsKIHN1YiBjbG9zZUN5Z3BhdGhzKCk7CiBzdWIg
Y2xvc2VEdW1wVG9vbCgpOwogc3ViIGNsb3NlSFRUUEQoKTsKK3N1YiBjbG9zZVdlYlNvY2tldFNl
cnZlcigpOwogc3ViIGNvdW50QW5kUHJpbnRMZWFrcygkJCQpOwogc3ViIGNvdW50RmluaXNoZWRU
ZXN0KCQkJCQpOwogc3ViIGRlbGV0ZUV4cGVjdGVkQW5kQWN0dWFsUmVzdWx0cygkKTsKQEAgLTkx
LDYgKzkyLDcgQEAgc3ViIG9wZW5EaWZmVG9vbCgpOwogc3ViIG9wZW5EdW1wVG9vbCgpOwogc3Vi
IG9wZW5IVFRQRElmTmVlZGVkKCk7CiBzdWIgcGFyc2VMZWFrc2FuZFByaW50VW5pcXVlTGVha3Mo
KTsKK3N1YiBvcGVuV2ViU29ja2V0U2VydmVySWZOZWVkZWQoKTsKIHN1YiBwYXRoY21wKCQkKTsK
IHN1YiBwcmludEZhaWx1cmVNZXNzYWdlRm9yVGVzdCgkJCk7CiBzdWIgcHJvY2Vzc0lnbm9yZVRl
c3RzKCQkKTsKQEAgLTExNyw2ICsxMTksOCBAQCBteSAkZ3VhcmRNYWxsb2MgPSAnJzsKIG15ICRo
dHRwZFBvcnQgPSA4MDAwOwogbXkgJGh0dHBkU1NMUG9ydCA9IDg0NDM7CiBteSAkaWdub3JlTWV0
cmljcyA9IDA7CitteSAkd2ViU29ja2V0UG9ydCA9IDg4ODA7CitteSAkd2ViU29ja2V0U2VjdXJl
UG9ydCA9IDkzMjM7CiBteSAkaWdub3JlVGVzdHMgPSAnJzsKIG15ICRpdGVyYXRpb25zID0gMTsK
IG15ICRsYXVuY2hTYWZhcmkgPSAxOwpAQCAtNDg1LDYgKzQ4OSw5IEBAIG15ICRhdExpbmVTdGFy
dCA9IDE7CiBteSAkbGFzdERpcmVjdG9yeSA9ICIiOwogCiBteSAkaXNIdHRwZE9wZW4gPSAwOwor
bXkgJGlzV2ViU29ja2V0U2VydmVyT3BlbiA9IDA7CitteSAkd2ViU29ja2V0U2VydmVyUElEID0g
MDsKK215ICR3ZWJTb2NrZXRTZWN1cmVTZXJ2ZXJQSUQgPSAwOwogCiBzdWIgY2F0Y2hfcGlwZSB7
ICRkdW1wVG9vbENyYXNoZWQgPSAxOyB9CiAkU0lHeyJQSVBFIn0gPSAiY2F0Y2hfcGlwZSI7CkBA
IC01NzcsMTUgKzU4NCw3IEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAgIH0KICAg
ICB9CiAKLSAgICBpZiAoJHRlc3QgIX4gL15odHRwXC8vKSB7Ci0gICAgICAgIG15ICR0ZXN0UGF0
aCA9ICIkdGVzdERpcmVjdG9yeS8kdGVzdCI7Ci0gICAgICAgIGlmIChpc0N5Z3dpbigpKSB7Ci0g
ICAgICAgICAgICAkdGVzdFBhdGggPSB0b1dpbmRvd3NQYXRoKCR0ZXN0UGF0aCk7Ci0gICAgICAg
IH0gZWxzZSB7Ci0gICAgICAgICAgICAkdGVzdFBhdGggPSBjYW5vbnBhdGgoJHRlc3RQYXRoKTsK
LSAgICAgICAgfQotICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhh
c2hcbiI7Ci0gICAgfSBlbHNlIHsKKyAgICBpZiAoJHRlc3QgPX4gL15odHRwXC8vKSB7CiAgICAg
ICAgIG9wZW5IVFRQRElmTmVlZGVkKCk7CiAgICAgICAgIGlmICgkdGVzdCAhfiAvXmh0dHBcL3Rl
c3RzXC9sb2NhbFwvLyAmJiAkdGVzdCAhfiAvXmh0dHBcL3Rlc3RzXC9zc2xcLy8gJiYgJHRlc3Qg
IX4gL15odHRwXC90ZXN0c1wvd21sXC8vICYmICR0ZXN0ICF+IC9eaHR0cFwvdGVzdHNcL21lZGlh
XC8vKSB7CiAgICAgICAgICAgICBteSAkcGF0aCA9IGNhbm9ucGF0aCgkdGVzdCk7CkBAIC02MDQs
NiArNjAzLDMyIEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhhc2hcbiI7CiAgICAg
ICAgIH0KKyAgICB9IGVsc2lmICgkdGVzdCA9fiAvXndlYnNvY2tldFwvLykgeworICAgICAgICBv
cGVuV2ViU29ja2V0U2VydmVySWZOZWVkZWQoKTsKKyAgICAgICAgaWYgKCR0ZXN0ID1+IC9ed2Vi
c29ja2V0XC90ZXN0c1wvbG9jYWxcLy8pIHsKKyAgICAgICAgICAgIG15ICR0ZXN0UGF0aCA9ICIk
dGVzdERpcmVjdG9yeS8kdGVzdCI7CisgICAgICAgICAgICBpZiAoaXNDeWd3aW4oKSkgeworICAg
ICAgICAgICAgICAgICR0ZXN0UGF0aCA9IHRvV2luZG93c1BhdGgoJHRlc3RQYXRoKTsKKyAgICAg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgJHRlc3RQYXRoID0gY2Fub25wYXRoKCR0
ZXN0UGF0aCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0
aFxuIjsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIG15ICRwYXRoID0gY2Fub25wYXRo
KCR0ZXN0KTsKKyAgICAgICAgICAgIGlmICgkdGVzdCA9fiAvXndlYnNvY2tldFwvdGVzdHNcL3Nz
bFwvLykgeworICAgICAgICAgICAgICAgIHByaW50IE9VVCAiaHR0cHM6Ly8xMjcuMC4wLjE6JHdl
YlNvY2tldFNlY3VyZVBvcnQvJHBhdGhcbiI7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAg
ICAgICAgICAgIHByaW50IE9VVCAiaHR0cDovLzEyNy4wLjAuMTokd2ViU29ja2V0UG9ydC8kcGF0
aFxuIjsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgIG15
ICR0ZXN0UGF0aCA9ICIkdGVzdERpcmVjdG9yeS8kdGVzdCI7CisgICAgICAgIGlmIChpc0N5Z3dp
bigpKSB7CisgICAgICAgICAgICAkdGVzdFBhdGggPSB0b1dpbmRvd3NQYXRoKCR0ZXN0UGF0aCk7
CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAkdGVzdFBhdGggPSBjYW5vbnBhdGgoJHRl
c3RQYXRoKTsKKyAgICAgICAgfQorICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhF
eHBlY3RlZEhhc2hcbiI7CiAgICAgfQogCiAgICAgIyBEdW1wUmVuZGVyVHJlZSBpcyBleHBlY3Rl
ZCB0byBkdW1wIHR3byAiYmxvY2tzIiB0byBzdGRvdXQgZm9yIGVhY2ggdGVzdC4KQEAgLTg5Miw2
ICs5MTcsNyBAQCBwcmludGYgIlxuJTAuMmZzIHRvdGFsIHRlc3RpbmcgdGltZVxuIiwgKHRpbWUg
LSAkb3ZlcmFsbFN0YXJ0VGltZSkgLiAiIjsKICEkaXNEdW1wVG9vbE9wZW4gfHwgZGllICJGYWls
ZWQgdG8gY2xvc2UgJGR1bXBUb29sTmFtZS5cbiI7CiAKIGNsb3NlSFRUUEQoKTsKK2Nsb3NlV2Vi
U29ja2V0U2VydmVyKCk7CiAKICMgQmVjYXVzZSBtdWx0aXBsZSBpbnN0YW5jZXMgb2YgdGhpcyBz
Y3JpcHQgYXJlIHJ1bm5pbmcgY29uY3VycmVudGx5IHdlIGNhbm5vdCAKICMgc2FmZWx5IGRlbGV0
ZSB0aGlzIHN5bWxpbmsuCkBAIC0xMzczLDYgKzEzOTksNjQgQEAgc3ViIGNsb3NlSFRUUEQoKQog
ICAgICRpc0h0dHBkT3BlbiA9IDA7CiB9CiAKK3N1YiBvcGVuV2ViU29ja2V0U2VydmVySWZOZWVk
ZWQoKQoreworICAgIHJldHVybiBpZiAkaXNXZWJTb2NrZXRTZXJ2ZXJPcGVuOworCisgICAgbXkg
JHdlYlNvY2tldFNlcnZlclBhdGggPSAiL3Vzci9iaW4vcHl0aG9uIjsKKyAgICBteSAkd2ViU29j
a2V0UHl0aG9uUGF0aCA9ICJXZWJLaXRUb29scy9weXdlYnNvY2tldCI7CisgICAgbXkgJHdlYlNv
Y2tldEhhbmRsZXJEaXIgPSAiJHRlc3REaXJlY3RvcnkiOworICAgIG15ICR3ZWJTb2NrZXRIYW5k
bGVyU2NhbkRpciA9ICIkdGVzdERpcmVjdG9yeS93ZWJzb2NrZXQvdGVzdHMiOworICAgIG15ICRz
c2xDZXJ0aWZpY2F0ZSA9ICIkdGVzdERpcmVjdG9yeS9odHRwL2NvbmYvd2Via2l0LWh0dHBkLnBl
bSI7CisgICAgbXkgQGFyZ3MgPSAoCisgICAgICAgICJXZWJLaXRUb29scy9weXdlYnNvY2tldC9t
b2RfcHl3ZWJzb2NrZXQvc3RhbmRhbG9uZS5weSIsCisgICAgICAgICItcCIsICIkd2ViU29ja2V0
UG9ydCIsCisgICAgICAgICItZCIsICIkd2ViU29ja2V0SGFuZGxlckRpciIsCisgICAgICAgICIt
cyIsICIkd2ViU29ja2V0SGFuZGxlclNjYW5EaXIiLAorICAgICk7CisgICAgbXkgQGFyZ3NTZWN1
cmUgPSAoCisgICAgICAgICJXZWJLaXRUb29scy9weXdlYnNvY2tldC9tb2RfcHl3ZWJzb2NrZXQv
c3RhbmRhbG9uZS5weSIsCisgICAgICAgICItcCIsICIkd2ViU29ja2V0U2VjdXJlUG9ydCIsCisg
ICAgICAgICItZCIsICIkd2ViU29ja2V0SGFuZGxlckRpciIsCisgICAgICAgICItdCIsCisgICAg
ICAgICItayIsICIkc3NsQ2VydGlmaWNhdGUiLAorICAgICAgICAiLWMiLCAiJHNzbENlcnRpZmlj
YXRlIiwKKyAgICApOworCisgICAgJEVOVnsiUFlUSE9OUEFUSCJ9ID0gJHdlYlNvY2tldFB5dGhv
blBhdGg7CisgICAgJHdlYlNvY2tldFNlcnZlclBJRCA9IG9wZW4zKFwqV0VCU09DS0VUU0VSVkVS
X0lOLCBcKldFQlNPQ0tFVFNFUlZFUl9PVVQsIFwqV0VCU09DS0VUU0VSVkVSX0VSUiwgJHdlYlNv
Y2tldFNlcnZlclBhdGgsIEBhcmdzKTsKKyAgICAkd2ViU29ja2V0U2VjdXJlU2VydmVyUElEID0g
b3BlbjMoXCpXRUJTT0NLRVRTRUNVUkVTRVJWRVJfSU4sIFwqV0VCU09DS0VUU0VDVVJFU0VSVkVS
X09VVCwgXCpXRUJTT0NLRVRTRUNVUkVTRVJWRVJfRVJSLCAkd2ViU29ja2V0U2VydmVyUGF0aCwg
QGFyZ3NTZWN1cmUpOworCisgICAgbXkgQGxpc3RlbiA9ICgiaHR0cDovLzEyNy4wLjAuMTokd2Vi
U29ja2V0UG9ydCIsICJodHRwczovLzEyNy4wLjAuMTokd2ViU29ja2V0U2VjdXJlUG9ydCIpOwor
ICAgIGZvciAobXkgJGkgPSAwOyAkaSA8IEBsaXN0ZW47ICRpKyspIHsKKyAgICAgICAgbXkgJHJl
dHJ5Q291bnQgPSAxMDsKKyAgICAgICAgd2hpbGUgKHN5c3RlbSgiL3Vzci9iaW4vY3VybCAtayAt
cSAtLXNpbGVudCAtLXN0ZGVyciAtIC0tb3V0cHV0IC9kZXYvbnVsbCAkbGlzdGVuWyRpXSIpICYm
ICRyZXRyeUNvdW50KSB7CisgICAgICAgICAgICBzbGVlcCAxOworICAgICAgICAgICAgLS0kcmV0
cnlDb3VudDsKKyAgICAgICAgfQorICAgICAgICBkaWUgIlRpbWVkIG91dCB3YWl0aW5nIGZvciBX
ZWJTb2NrZXRTZXJ2ZXIgdG8gc3RhcnQiIHVubGVzcyAkcmV0cnlDb3VudDsKKyAgICB9CisKKyAg
ICAkaXNXZWJTb2NrZXRTZXJ2ZXJPcGVuID0gMTsKK30KKworc3ViIGNsb3NlV2ViU29ja2V0U2Vy
dmVyKCkKK3sKKyAgICByZXR1cm4gaWYgISRpc1dlYlNvY2tldFNlcnZlck9wZW47CisKKyAgICBj
bG9zZSBXRUJTT0NLRVRTRVJWRVJfSU47CisgICAgY2xvc2UgV0VCU09DS0VUU0VSVkVSX09VVDsK
KyAgICBjbG9zZSBXRUJTT0NLRVRTRVJWRVJfRVJSOworICAgIGtpbGwgMTUsICR3ZWJTb2NrZXRT
ZXJ2ZXJQSUQ7CisKKyAgICBjbG9zZSBXRUJTT0NLRVRTRUNVUkVTRVJWRVJfSU47CisgICAgY2xv
c2UgV0VCU09DS0VUU0VDVVJFU0VSVkVSX09VVDsKKyAgICBjbG9zZSBXRUJTT0NLRVRTRUNVUkVT
RVJWRVJfRVJSOworICAgIGtpbGwgMTUsICR3ZWJTb2NrZXRTZWN1cmVTZXJ2ZXJQSUQ7CisKKyAg
ICAkaXNXZWJTb2NrZXRTZXJ2ZXJPcGVuID0gMDsKK30KKwogc3ViIGZpbGVOYW1lV2l0aE51bWJl
cigkJCkKIHsKICAgICBteSAoJGJhc2UsICRudW1iZXIpID0gQF87
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>42440</attachid>
            <date>2009-11-03 18:18:03 -0800</date>
            <delta_ts>2009-11-03 18:28:00 -0800</delta_ts>
            <desc>Start/Stop Web Socket and Web Socket Secure servers for layout tests.</desc>
            <filename>bug-27491-20091104111801.patch</filename>
            <type>text/plain</type>
            <size>6313</size>
            <attacher name="Yuzo Fujishima">yuzo</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCAxZjg4ZWJmLi45ODA5ZjFlIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMTAt
MjAgIFl1em8gRnVqaXNoaW1hICA8eXV6b0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFN0YXJ0L1N0b3AgV2ViIFNvY2tldCBhbmQg
V2ViIFNvY2tldCBTZWN1cmUgc2VydmVycyBmb3IgbGF5b3V0IHRlc3RzLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjc0OTEKKworICAgICAgICBUaGUg
dGVzdCBwYXRoIGRldGVybWluYXRpb24gbG9naWMgaXMgY2hhbmdlZCB0byBoYW5kbGUgd2Vic29j
a2V0IGFuZCB3ZWJzb2NrZXQvc3NsIGNhc2VzLgorICAgICAgICBUaGUgbG9naWMgZm9yIG5vbi1o
dHRwIChhbmQgbm93IGFsc28gbm9uLXdlYnNvY2tldCkgdGVzdHMgaXMgbW92ZWQgdG93YXJkIHRo
ZSBlbmQgb2YgdGhlIGlmLWVsc2lmIHN0YXRlbWVudC4KKworICAgICAgICBGdW5jdGlvbnMgdG8g
c3RhcnQgb3Igc3RvcCBXZWIgU29ja2V0IHNlcnZlcnMgYXJlIGFkZGVkLgorCisgICAgICAgICog
U2NyaXB0cy9ydW4td2Via2l0LXRlc3RzOgorCiAyMDA5LTEwLTI1ICBZdXpvIEZ1amlzaGltYSAg
PHl1em9AZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cyBiL1dlYktp
dFRvb2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cwppbmRleCA2MDU2MDM1Li5lMTRmZWM1IDEw
MDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3J1bi13ZWJraXQtdGVzdHMKKysrIGIvV2Vi
S2l0VG9vbHMvU2NyaXB0cy9ydW4td2Via2l0LXRlc3RzCkBAIC03Niw2ICs3Niw3IEBAIHN1YiBi
dWlsZFBsYXRmb3JtVGVzdEhpZXJhcmNoeShAKTsKIHN1YiBjbG9zZUN5Z3BhdGhzKCk7CiBzdWIg
Y2xvc2VEdW1wVG9vbCgpOwogc3ViIGNsb3NlSFRUUEQoKTsKK3N1YiBjbG9zZVdlYlNvY2tldFNl
cnZlcigpOwogc3ViIGNvdW50QW5kUHJpbnRMZWFrcygkJCQpOwogc3ViIGNvdW50RmluaXNoZWRU
ZXN0KCQkJCQpOwogc3ViIGRlbGV0ZUV4cGVjdGVkQW5kQWN0dWFsUmVzdWx0cygkKTsKQEAgLTkx
LDYgKzkyLDcgQEAgc3ViIG9wZW5EaWZmVG9vbCgpOwogc3ViIG9wZW5EdW1wVG9vbCgpOwogc3Vi
IG9wZW5IVFRQRElmTmVlZGVkKCk7CiBzdWIgcGFyc2VMZWFrc2FuZFByaW50VW5pcXVlTGVha3Mo
KTsKK3N1YiBvcGVuV2ViU29ja2V0U2VydmVySWZOZWVkZWQoKTsKIHN1YiBwYXRoY21wKCQkKTsK
IHN1YiBwcmludEZhaWx1cmVNZXNzYWdlRm9yVGVzdCgkJCk7CiBzdWIgcHJvY2Vzc0lnbm9yZVRl
c3RzKCQkKTsKQEAgLTExNyw2ICsxMTksOCBAQCBteSAkZ3VhcmRNYWxsb2MgPSAnJzsKIG15ICRo
dHRwZFBvcnQgPSA4MDAwOwogbXkgJGh0dHBkU1NMUG9ydCA9IDg0NDM7CiBteSAkaWdub3JlTWV0
cmljcyA9IDA7CitteSAkd2ViU29ja2V0UG9ydCA9IDg4ODA7CitteSAkd2ViU29ja2V0U2VjdXJl
UG9ydCA9IDkzMjM7CiBteSAkaWdub3JlVGVzdHMgPSAnJzsKIG15ICRpdGVyYXRpb25zID0gMTsK
IG15ICRsYXVuY2hTYWZhcmkgPSAxOwpAQCAtNDg1LDYgKzQ4OSw5IEBAIG15ICRhdExpbmVTdGFy
dCA9IDE7CiBteSAkbGFzdERpcmVjdG9yeSA9ICIiOwogCiBteSAkaXNIdHRwZE9wZW4gPSAwOwor
bXkgJGlzV2ViU29ja2V0U2VydmVyT3BlbiA9IDA7CitteSAkd2ViU29ja2V0U2VydmVyUElEID0g
MDsKK215ICR3ZWJTb2NrZXRTZWN1cmVTZXJ2ZXJQSUQgPSAwOwogCiBzdWIgY2F0Y2hfcGlwZSB7
ICRkdW1wVG9vbENyYXNoZWQgPSAxOyB9CiAkU0lHeyJQSVBFIn0gPSAiY2F0Y2hfcGlwZSI7CkBA
IC01NzcsMTUgKzU4NCw3IEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAgIH0KICAg
ICB9CiAKLSAgICBpZiAoJHRlc3QgIX4gL15odHRwXC8vKSB7Ci0gICAgICAgIG15ICR0ZXN0UGF0
aCA9ICIkdGVzdERpcmVjdG9yeS8kdGVzdCI7Ci0gICAgICAgIGlmIChpc0N5Z3dpbigpKSB7Ci0g
ICAgICAgICAgICAkdGVzdFBhdGggPSB0b1dpbmRvd3NQYXRoKCR0ZXN0UGF0aCk7Ci0gICAgICAg
IH0gZWxzZSB7Ci0gICAgICAgICAgICAkdGVzdFBhdGggPSBjYW5vbnBhdGgoJHRlc3RQYXRoKTsK
LSAgICAgICAgfQotICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhh
c2hcbiI7Ci0gICAgfSBlbHNlIHsKKyAgICBpZiAoJHRlc3QgPX4gL15odHRwXC8vKSB7CiAgICAg
ICAgIG9wZW5IVFRQRElmTmVlZGVkKCk7CiAgICAgICAgIGlmICgkdGVzdCAhfiAvXmh0dHBcL3Rl
c3RzXC9sb2NhbFwvLyAmJiAkdGVzdCAhfiAvXmh0dHBcL3Rlc3RzXC9zc2xcLy8gJiYgJHRlc3Qg
IX4gL15odHRwXC90ZXN0c1wvd21sXC8vICYmICR0ZXN0ICF+IC9eaHR0cFwvdGVzdHNcL21lZGlh
XC8vKSB7CiAgICAgICAgICAgICBteSAkcGF0aCA9IGNhbm9ucGF0aCgkdGVzdCk7CkBAIC02MDQs
NiArNjAzLDMyIEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICBwcmludCBPVVQgIiR0ZXN0UGF0aCRzdWZmaXhFeHBlY3RlZEhhc2hcbiI7CiAgICAg
ICAgIH0KKyAgICB9IGVsc2lmICgkdGVzdCA9fiAvXndlYnNvY2tldFwvLykgeworICAgICAgICBp
ZiAoJHRlc3QgPX4gL153ZWJzb2NrZXRcL3Rlc3RzXC9sb2NhbFwvLykgeworICAgICAgICAgICAg
bXkgJHRlc3RQYXRoID0gIiR0ZXN0RGlyZWN0b3J5LyR0ZXN0IjsKKyAgICAgICAgICAgIGlmIChp
c0N5Z3dpbigpKSB7CisgICAgICAgICAgICAgICAgJHRlc3RQYXRoID0gdG9XaW5kb3dzUGF0aCgk
dGVzdFBhdGgpOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAkdGVzdFBh
dGggPSBjYW5vbnBhdGgoJHRlc3RQYXRoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHBy
aW50IE9VVCAiJHRlc3RQYXRoXG4iOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgb3Bl
bldlYlNvY2tldFNlcnZlcklmTmVlZGVkKCk7CisgICAgICAgICAgICBteSAkcGF0aCA9IGNhbm9u
cGF0aCgkdGVzdCk7CisgICAgICAgICAgICBpZiAoJHRlc3QgPX4gL153ZWJzb2NrZXRcL3Rlc3Rz
XC9zc2xcLy8pIHsKKyAgICAgICAgICAgICAgICBwcmludCBPVVQgImh0dHBzOi8vMTI3LjAuMC4x
OiR3ZWJTb2NrZXRTZWN1cmVQb3J0LyRwYXRoXG4iOworICAgICAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgICAgICBwcmludCBPVVQgImh0dHA6Ly8xMjcuMC4wLjE6JHdlYlNvY2tldFBvcnQv
JHBhdGhcbiI7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAg
ICBteSAkdGVzdFBhdGggPSAiJHRlc3REaXJlY3RvcnkvJHRlc3QiOworICAgICAgICBpZiAoaXND
eWd3aW4oKSkgeworICAgICAgICAgICAgJHRlc3RQYXRoID0gdG9XaW5kb3dzUGF0aCgkdGVzdFBh
dGgpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgJHRlc3RQYXRoID0gY2Fub25wYXRo
KCR0ZXN0UGF0aCk7CisgICAgICAgIH0KKyAgICAgICAgcHJpbnQgT1VUICIkdGVzdFBhdGgkc3Vm
Zml4RXhwZWN0ZWRIYXNoXG4iOwogICAgIH0KIAogICAgICMgRHVtcFJlbmRlclRyZWUgaXMgZXhw
ZWN0ZWQgdG8gZHVtcCB0d28gImJsb2NrcyIgdG8gc3Rkb3V0IGZvciBlYWNoIHRlc3QuCkBAIC04
OTIsNiArOTE3LDcgQEAgcHJpbnRmICJcbiUwLjJmcyB0b3RhbCB0ZXN0aW5nIHRpbWVcbiIsICh0
aW1lIC0gJG92ZXJhbGxTdGFydFRpbWUpIC4gIiI7CiAhJGlzRHVtcFRvb2xPcGVuIHx8IGRpZSAi
RmFpbGVkIHRvIGNsb3NlICRkdW1wVG9vbE5hbWUuXG4iOwogCiBjbG9zZUhUVFBEKCk7CitjbG9z
ZVdlYlNvY2tldFNlcnZlcigpOwogCiAjIEJlY2F1c2UgbXVsdGlwbGUgaW5zdGFuY2VzIG9mIHRo
aXMgc2NyaXB0IGFyZSBydW5uaW5nIGNvbmN1cnJlbnRseSB3ZSBjYW5ub3QgCiAjIHNhZmVseSBk
ZWxldGUgdGhpcyBzeW1saW5rLgpAQCAtMTM3Myw2ICsxMzk5LDY0IEBAIHN1YiBjbG9zZUhUVFBE
KCkKICAgICAkaXNIdHRwZE9wZW4gPSAwOwogfQogCitzdWIgb3BlbldlYlNvY2tldFNlcnZlcklm
TmVlZGVkKCkKK3sKKyAgICByZXR1cm4gaWYgJGlzV2ViU29ja2V0U2VydmVyT3BlbjsKKworICAg
IG15ICR3ZWJTb2NrZXRTZXJ2ZXJQYXRoID0gIi91c3IvYmluL3B5dGhvbiI7CisgICAgbXkgJHdl
YlNvY2tldFB5dGhvblBhdGggPSAiV2ViS2l0VG9vbHMvcHl3ZWJzb2NrZXQiOworICAgIG15ICR3
ZWJTb2NrZXRIYW5kbGVyRGlyID0gIiR0ZXN0RGlyZWN0b3J5IjsKKyAgICBteSAkd2ViU29ja2V0
SGFuZGxlclNjYW5EaXIgPSAiJHRlc3REaXJlY3Rvcnkvd2Vic29ja2V0L3Rlc3RzIjsKKyAgICBt
eSAkc3NsQ2VydGlmaWNhdGUgPSAiJHRlc3REaXJlY3RvcnkvaHR0cC9jb25mL3dlYmtpdC1odHRw
ZC5wZW0iOworICAgIG15IEBhcmdzID0gKAorICAgICAgICAiV2ViS2l0VG9vbHMvcHl3ZWJzb2Nr
ZXQvbW9kX3B5d2Vic29ja2V0L3N0YW5kYWxvbmUucHkiLAorICAgICAgICAiLXAiLCAiJHdlYlNv
Y2tldFBvcnQiLAorICAgICAgICAiLWQiLCAiJHdlYlNvY2tldEhhbmRsZXJEaXIiLAorICAgICAg
ICAiLXMiLCAiJHdlYlNvY2tldEhhbmRsZXJTY2FuRGlyIiwKKyAgICApOworICAgIG15IEBhcmdz
U2VjdXJlID0gKAorICAgICAgICAiV2ViS2l0VG9vbHMvcHl3ZWJzb2NrZXQvbW9kX3B5d2Vic29j
a2V0L3N0YW5kYWxvbmUucHkiLAorICAgICAgICAiLXAiLCAiJHdlYlNvY2tldFNlY3VyZVBvcnQi
LAorICAgICAgICAiLWQiLCAiJHdlYlNvY2tldEhhbmRsZXJEaXIiLAorICAgICAgICAiLXQiLAor
ICAgICAgICAiLWsiLCAiJHNzbENlcnRpZmljYXRlIiwKKyAgICAgICAgIi1jIiwgIiRzc2xDZXJ0
aWZpY2F0ZSIsCisgICAgKTsKKworICAgICRFTlZ7IlBZVEhPTlBBVEgifSA9ICR3ZWJTb2NrZXRQ
eXRob25QYXRoOworICAgICR3ZWJTb2NrZXRTZXJ2ZXJQSUQgPSBvcGVuMyhcKldFQlNPQ0tFVFNF
UlZFUl9JTiwgXCpXRUJTT0NLRVRTRVJWRVJfT1VULCBcKldFQlNPQ0tFVFNFUlZFUl9FUlIsICR3
ZWJTb2NrZXRTZXJ2ZXJQYXRoLCBAYXJncyk7CisgICAgJHdlYlNvY2tldFNlY3VyZVNlcnZlclBJ
RCA9IG9wZW4zKFwqV0VCU09DS0VUU0VDVVJFU0VSVkVSX0lOLCBcKldFQlNPQ0tFVFNFQ1VSRVNF
UlZFUl9PVVQsIFwqV0VCU09DS0VUU0VDVVJFU0VSVkVSX0VSUiwgJHdlYlNvY2tldFNlcnZlclBh
dGgsIEBhcmdzU2VjdXJlKTsKKworICAgIG15IEBsaXN0ZW4gPSAoImh0dHA6Ly8xMjcuMC4wLjE6
JHdlYlNvY2tldFBvcnQiLCAiaHR0cHM6Ly8xMjcuMC4wLjE6JHdlYlNvY2tldFNlY3VyZVBvcnQi
KTsKKyAgICBmb3IgKG15ICRpID0gMDsgJGkgPCBAbGlzdGVuOyAkaSsrKSB7CisgICAgICAgIG15
ICRyZXRyeUNvdW50ID0gMTA7CisgICAgICAgIHdoaWxlIChzeXN0ZW0oIi91c3IvYmluL2N1cmwg
LWsgLXEgLS1zaWxlbnQgLS1zdGRlcnIgLSAtLW91dHB1dCAvZGV2L251bGwgJGxpc3RlblskaV0i
KSAmJiAkcmV0cnlDb3VudCkgeworICAgICAgICAgICAgc2xlZXAgMTsKKyAgICAgICAgICAgIC0t
JHJldHJ5Q291bnQ7CisgICAgICAgIH0KKyAgICAgICAgZGllICJUaW1lZCBvdXQgd2FpdGluZyBm
b3IgV2ViU29ja2V0U2VydmVyIHRvIHN0YXJ0IiB1bmxlc3MgJHJldHJ5Q291bnQ7CisgICAgfQor
CisgICAgJGlzV2ViU29ja2V0U2VydmVyT3BlbiA9IDE7Cit9CisKK3N1YiBjbG9zZVdlYlNvY2tl
dFNlcnZlcigpCit7CisgICAgcmV0dXJuIGlmICEkaXNXZWJTb2NrZXRTZXJ2ZXJPcGVuOworCisg
ICAgY2xvc2UgV0VCU09DS0VUU0VSVkVSX0lOOworICAgIGNsb3NlIFdFQlNPQ0tFVFNFUlZFUl9P
VVQ7CisgICAgY2xvc2UgV0VCU09DS0VUU0VSVkVSX0VSUjsKKyAgICBraWxsIDE1LCAkd2ViU29j
a2V0U2VydmVyUElEOworCisgICAgY2xvc2UgV0VCU09DS0VUU0VDVVJFU0VSVkVSX0lOOworICAg
IGNsb3NlIFdFQlNPQ0tFVFNFQ1VSRVNFUlZFUl9PVVQ7CisgICAgY2xvc2UgV0VCU09DS0VUU0VD
VVJFU0VSVkVSX0VSUjsKKyAgICBraWxsIDE1LCAkd2ViU29ja2V0U2VjdXJlU2VydmVyUElEOwor
CisgICAgJGlzV2ViU29ja2V0U2VydmVyT3BlbiA9IDA7Cit9CisKIHN1YiBmaWxlTmFtZVdpdGhO
dW1iZXIoJCQpCiB7CiAgICAgbXkgKCRiYXNlLCAkbnVtYmVyKSA9IEBfOw==
</data>
<flag name="review"
          id="23974"
          type_id="1"
          status="+"
          setter="levin"
    />
          </attachment>
      

    </bug>

</bugzilla>