<?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>70617</bug_id>
          
          <creation_ts>2011-10-21 10:21:29 -0700</creation_ts>
          <short_desc>Optional &quot;keytype&quot; attribute for the &lt;keygen&gt; tag is handled incorrectly in appendFormData().</short_desc>
          <delta_ts>2012-07-20 14:21:59 -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>DOM</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>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Gaurav Shah">gauravsh</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>darin</cc>
    
    <cc>dglazkov</cc>
    
    <cc>feherzs</cc>
    
    <cc>fishd</cc>
    
    <cc>gauravsh</cc>
    
    <cc>jer.noble</cc>
    
    <cc>kerz</cc>
    
    <cc>kling</cc>
    
    <cc>rsleevi</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>488456</commentid>
    <comment_count>0</comment_count>
    <who name="Gaurav Shah">gauravsh</who>
    <bug_when>2011-10-21 10:21:29 -0700</bug_when>
    <thetext>Change http://trac.webkit.org/changeset/97658 introduced a logical bug where-by all &lt;keygen keytype=&quot;..&quot;&gt; are incorrectly handled as unsupported in appendFormData(). This effectively renders the the tag on a website as a no-op.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488460</commentid>
    <comment_count>1</comment_count>
      <attachid>111981</attachid>
    <who name="Gaurav Shah">gauravsh</who>
    <bug_when>2011-10-21 10:25:49 -0700</bug_when>
    <thetext>Created attachment 111981
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488467</commentid>
    <comment_count>2</comment_count>
    <who name="Gaurav Shah">gauravsh</who>
    <bug_when>2011-10-21 10:30:32 -0700</bug_when>
    <thetext>I tested this on a Chromium on Chromium OS build, and the &lt;keygen&gt; tag is now handled correctly. 

The site I used was: http://foaf.me/simple_KEYGEN_CreateClientCertificate.php</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488471</commentid>
    <comment_count>3</comment_count>
      <attachid>111981</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-10-21 10:35:05 -0700</bug_when>
    <thetext>Comment on attachment 111981
Patch

Normally we require regression tests with all bug fixes. Is there a reason you can’t write a regression test for this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488547</commentid>
    <comment_count>4</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-10-21 12:06:55 -0700</bug_when>
    <thetext>Ouch, I&apos;m terribly sorry about this mistake guys!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488577</commentid>
    <comment_count>5</comment_count>
    <who name="Jason Kersey">kerz</who>
    <bug_when>2011-10-21 12:53:07 -0700</bug_when>
    <thetext>I merged this by hand to the chromium 912 branch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488609</commentid>
    <comment_count>6</comment_count>
    <who name="Gaurav Shah">gauravsh</who>
    <bug_when>2011-10-21 13:29:15 -0700</bug_when>
    <thetext>Re:#3 I am totally new to Webkit, so not sure where the test goes and how it needs to be written. I didn&apos;t see any unit tests for this piece of code either. In any case, I will get some help and try to get a regression test included (if possible) and upload the new patch. Thanks for the quick review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488881</commentid>
    <comment_count>7</comment_count>
    <who name="Ryan Sleevi">rsleevi</who>
    <bug_when>2011-10-21 22:26:06 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 111981 [details])
&gt; Normally we require regression tests with all bug fixes. Is there a reason you can’t write a regression test for this?

As someone who has worked with the &lt;keygen&gt; implementation on the Chromium side, and studied the various ports on the WebKit side, I think one of the big challenges to this is that it requires an actual form submission in order to repro.

&lt;keygen&gt;, however, is not idempotent with respect to system state, and the act of submitting a &lt;form&gt; element with a &lt;keygen&gt; tag can result in creating a new private key within whatever keystore the port uses (which, in most implementations, is the OS-provided keystore/cryptographic APIs)

Unlike other APIs which may modify system state (such as those that may create/modify files), this is not presently something WebKit supports mocking/stubbing. The current &lt;keygen&gt; tests just focus on the immutable aspects - parsing and rendering - and ignore submission.

Since the &lt;keygen&gt; element isn&apos;t processed on the C++ side until form submission, this is not something where you could poke with JavaScript as a LayoutTest to grab the resultant value in an onsubmit() handler.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488950</commentid>
    <comment_count>8</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-10-22 11:30:12 -0700</bug_when>
    <thetext>Sounds like we need to add the ability to mock this interaction with the system.  Presumably WebKit interacts with the system via the Chromium embedding API.  Can&apos;t DRT, as the embedder, inject the mock at that time?  It&apos;s ok if the test only runs on the Chromium port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488969</commentid>
    <comment_count>9</comment_count>
      <attachid>112100</attachid>
    <who name="Gaurav Shah">gauravsh</who>
    <bug_when>2011-10-22 16:20:58 -0700</bug_when>
    <thetext>Created attachment 112100
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>488970</commentid>
    <comment_count>10</comment_count>
    <who name="Gaurav Shah">gauravsh</who>
    <bug_when>2011-10-22 16:35:17 -0700</bug_when>
    <thetext>Based on some pointers by abarth(thanks!), I added a regression test which uses the http server. Basically, it tests if the post request contains the &lt;keygen&gt; name= parameter. The test passes with the fix (and fails without). 

However, to make that work I need to remove the following check from appendForm():

if (value.isNull())
  return false;

As rsleevi mentioned in comment#7, signedPublicKeyAndChallenge() is a platform method whose implementation varies depending on the specific port in question. WebKit test runs (I tested this by building WebKit for chromium) seem to stub it out returning an empty String, causing the above check to fail. The POST is empty  (since the subsequent appendData() never gets called) and the test doesn&apos;t work.

Is this is a bad idea? An empty signedPublicKeyandChallengeString error should be handled by the server. I would argue that receiving an empty post request is worse (which happens now when keygen processing fails on the client) than receiving an empty &quot;name= &quot; POST (with this change).

Thoughts?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>489129</commentid>
    <comment_count>11</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-10-23 21:07:35 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; However, to make that work I need to remove the following check from appendForm():
&gt; 
&gt; if (value.isNull())
&gt;   return false;
&gt; 
&gt; WebKit test runs (I tested this by building WebKit for chromium) seem to stub it out returning an empty String, causing the above check to fail.

If test runs returned an empty string, then that check would not fail. There is a distinct empty string and null string. If you want to change the stub to return an empty string instead of a null string, that’s OK with me. Making that change should not be difficult.

&gt; I would argue that receiving an empty post request is worse (which happens now when keygen processing fails on the client) than receiving an empty &quot;name= &quot; POST (with this change).

If we’re going to actually consider changing the WebCore code then lets not talk about which of these two worse, lets talk about what desired behavior would be. Are there any real-world examples where keygen fails. If so, what would be the best possible behavior for that case and why? But lets discuss this in another bug, because there is no need for you to change WebCore just to make the test work.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>489130</commentid>
    <comment_count>12</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-10-23 21:09:06 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; (In reply to comment #10)
&gt; &gt; However, to make that work I need to remove the following check from appendForm():
&gt; &gt; 
&gt; &gt; if (value.isNull())
&gt; &gt;   return false;
&gt; &gt; 
&gt; &gt; WebKit test runs (I tested this by building WebKit for chromium) seem to stub it out returning an empty String, causing the above check to fail.
&gt; 
&gt; If test runs returned an empty string, then that check would not fail. There is a distinct empty string and null string. If you want to change the stub to return an empty string instead of a null string, that’s OK with me. Making that change should not be difficult.

It occurs to me that for testing, it would be even better to change this to return some placing string that is helpful to interpret the test output rather than an empty string. That might be easy to do.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>489489</commentid>
    <comment_count>13</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-10-24 11:47:47 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; to return some placing string

some placeholder string</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491246</commentid>
    <comment_count>14</comment_count>
    <who name="Gaurav Shah">gauravsh</who>
    <bug_when>2011-10-26 16:07:59 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; (In reply to comment #10)
&gt; &gt; However, to make that work I need to remove the following check from appendForm():
&gt; &gt; 
&gt; &gt; if (value.isNull())
&gt; &gt;   return false;
&gt; &gt; 
&gt; &gt; WebKit test runs (I tested this by building WebKit for chromium) seem to stub it out returning an empty String, causing the above check to fail.
&gt; 
&gt; If test runs returned an empty string, then that check would not fail. There is a distinct empty string and null string. If you want to change the stub to return an empty string instead of a null string, that’s OK with me. Making that change should not be difficult.
&gt; 

I can make that change. Chromium&apos;s stub implementation comes from the glue code, so I need to first land a chromium change first. For qt and efl, there are already stub implementations which I can modify to return an empty string. I am not sure about the Mac or Windows case though. From my reading of it, they don&apos;t use stub implementations during tests. 

Looks like the simplest route is to just make this test run on the chromium port.

&gt; &gt; I would argue that receiving an empty post request is worse (which happens now when keygen processing fails on the client) than receiving an empty &quot;name= &quot; POST (with this change).
&gt; 
&gt; If we’re going to actually consider changing the WebCore code then lets not talk about which of these two worse, lets talk about what desired behavior would be. Are there any real-world examples where keygen fails. If so, what would be the best possible behavior for that case and why? But lets discuss this in another bug, because there is no need for you to change WebCore just to make the test work.


Fair enough. Agreed that the discussion is better done in a separate bug. (To answer your question: keygen depends on the platform specific crypto library implementation and there are many reasons why it would fail - misconfigured library or crypto hardware, etc.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491267</commentid>
    <comment_count>15</comment_count>
    <who name="Gaurav Shah">gauravsh</who>
    <bug_when>2011-10-26 16:32:56 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (In reply to comment #11)
&gt; &gt; (In reply to comment #10)
&gt; &gt; &gt; However, to make that work I need to remove the following check from appendForm():
&gt; &gt; &gt; 
&gt; &gt; &gt; if (value.isNull())
&gt; &gt; &gt;   return false;
&gt; &gt; &gt; 
&gt; &gt; &gt; WebKit test runs (I tested this by building WebKit for chromium) seem to stub it out returning an empty String, causing the above check to fail.
&gt; &gt; 
&gt; &gt; If test runs returned an empty string, then that check would not fail. There is a distinct empty string and null string. If you want to change the stub to return an empty string instead of a null string, that’s OK with me. Making that change should not be difficult.
&gt; 
&gt; It occurs to me that for testing, it would be even better to change this to return some placing string that is helpful to interpret the test output rather than an empty string. That might be easy to do.

This would be fine if there was a concept of mock/stub implementations which gets used during test runs. The Chromium implementation, for example, re-use the stub implementation while building tests for the Chromium Webkit port.

Side Note: To do this for all ports is quite complicated. Right now there are no universal stub/mock implementations of these platform-specific methods that get used across all ports during tests. (See my earlier comment about Chromium&apos;s stub implementation coming from its glue layer whose sources are not part of WebKit)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491292</commentid>
    <comment_count>16</comment_count>
      <attachid>112622</attachid>
    <who name="Gaurav Shah">gauravsh</who>
    <bug_when>2011-10-26 17:29:29 -0700</bug_when>
    <thetext>Created attachment 112622
Updated patch after fixing Chromium Stub Implementation to return an empty string.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491296</commentid>
    <comment_count>17</comment_count>
    <who name="Gaurav Shah">gauravsh</who>
    <bug_when>2011-10-26 17:33:02 -0700</bug_when>
    <thetext>In parallel, I have a Chromium change to return an empty instead of a NULL string:
http://codereview.chromium.org/8401019/

What do I need to do to mark this test as only succeeding on the chromium port?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491570</commentid>
    <comment_count>18</comment_count>
      <attachid>112622</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-27 07:55:48 -0700</bug_when>
    <thetext>Comment on attachment 112622
Updated patch after fixing Chromium Stub Implementation to return an empty string.

Attachment 112622 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/10228539

New failing tests:
http/tests/misc/submit-post-keygen.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>493401</commentid>
    <comment_count>19</comment_count>
    <who name="Gaurav Shah">gauravsh</who>
    <bug_when>2011-10-31 10:25:09 -0700</bug_when>
    <thetext>ping? The Chromium patch has landed, so cr-linux test failure should be going away. If there a way I can request a re-try of the patch? (didn&apos;t find it in the documentation here: http://www.webkit.org/coding/contributing.html)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>494724</commentid>
    <comment_count>20</comment_count>
      <attachid>113332</attachid>
    <who name="Gaurav Shah">gauravsh</who>
    <bug_when>2011-11-02 10:48:17 -0700</bug_when>
    <thetext>Created attachment 113332
Re-uploaded patch for another EWS run now that the chromium changes are in</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>496300</commentid>
    <comment_count>21</comment_count>
      <attachid>113332</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-04 10:55:29 -0700</bug_when>
    <thetext>Comment on attachment 113332
Re-uploaded patch for another EWS run now that the chromium changes are in

Clearing flags on attachment: 113332

Committed r99297: &lt;http://trac.webkit.org/changeset/99297&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>496301</commentid>
    <comment_count>22</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-04 10:55:35 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>497124</commentid>
    <comment_count>23</comment_count>
    <who name="Fehér Zsolt">feherzs</who>
    <bug_when>2011-11-07 06:13:03 -0800</bug_when>
    <thetext>After r99297 failed inspector/cookie-parser.html
Can someone to look up or can i skipped this test?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>674969</commentid>
    <comment_count>24</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2012-07-20 14:21:59 -0700</bug_when>
    <thetext>This test has been failing occasionally but consistently on Mac Lion test bots.

See: 
http://build.webkit.org/results/Apple%20Lion%20Release%20WK1%20(Tests)/r123255%20(1382)/results.html
http://build.webkit.org/results/Apple%20Lion%20Release%20WK1%20(Tests)/r123255%20(1382)/http/tests/misc/submit-post-keygen-pretty-diff.html</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111981</attachid>
            <date>2011-10-21 10:25:49 -0700</date>
            <delta_ts>2011-10-22 16:20:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-70617-20111021102548.patch</filename>
            <type>text/plain</type>
            <size>1619</size>
            <attacher name="Gaurav Shah">gauravsh</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4MTA1KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTEtMTAtMjEgIEdhdXJhdiBT
aGFoICA8Z2F1cmF2c2hAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEhUTUxLZXlnZW5FbGVtZW50
OiBGaXggImtleXR5cGUiIGhhbmRsaW5nIGluIGFwcGVuZEZvcm1EYXRhLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA2MTcKKworICAgICAgICBUaGlz
IGZpeGVzIGEgYnVnIGludHJvZHVjZWQgYnkgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2Vz
ZXQvOTc2NTgKKyAgICAgICAgd2hpY2ggY2F1c2VzIGFsbCBIVE1MIEtleWdlbiBlbGVtZW50cyB3
aXRoIGEga2V5dHlwZSBvcHRpb25hbCBhdHRyaWJ1dGUKKyAgICAgICAgdG8gYmUgY29uc2lkZXJl
ZCBhcyB1bnN1cHBvcnRlZC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIGh0bWwvSFRNTEtleWdlbkVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTEtleWdlbkVsZW1lbnQ6OmFwcGVuZEZvcm1EYXRhKToKKwogMjAxMS0xMC0yMSAgVnNl
dm9sb2QgVmxhc292ICA8dnNldmlrQGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVj
dG9yOiBBZHZhbmNlZCBzZWFyY2ggaXMgd29ya2luZyB2ZXJ5IHNsb3dseSBhbmQgZG9lcyBub3Qg
c2hvdyBzZWFyY2hpbmcgcHJvZ3Jlc3MuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxL
ZXlnZW5FbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxL
ZXlnZW5FbGVtZW50LmNwcAkocmV2aXNpb24gOTgwNjQpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxLZXlnZW5FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTA2LDcgKzEwNiw3IEBA
IGJvb2wgSFRNTEtleWdlbkVsZW1lbnQ6OmFwcGVuZEZvcm1EYXRhKEYKIHsKICAgICAvLyBPbmx5
IFJTQSBpcyBzdXBwb3J0ZWQgYXQgdGhpcyB0aW1lLgogICAgIGNvbnN0IEF0b21pY1N0cmluZyYg
a2V5VHlwZSA9IGZhc3RHZXRBdHRyaWJ1dGUoa2V5dHlwZUF0dHIpOwotICAgIGlmICgha2V5VHlw
ZS5pc051bGwoKSB8fCAhZXF1YWxJZ25vcmluZ0Nhc2Uoa2V5VHlwZSwgInJzYSIpKQorICAgIGlm
ICgha2V5VHlwZS5pc051bGwoKSAmJiAhZXF1YWxJZ25vcmluZ0Nhc2Uoa2V5VHlwZSwgInJzYSIp
KQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgU3RyaW5nIHZhbHVlID0gc2lnbmVkUHVibGlj
S2V5QW5kQ2hhbGxlbmdlU3RyaW5nKHNoYWRvd1NlbGVjdCgpLT5zZWxlY3RlZEluZGV4KCksIGZh
c3RHZXRBdHRyaWJ1dGUoY2hhbGxlbmdlQXR0ciksIGRvY3VtZW50KCktPmJhc2VVUkwoKSk7CiAg
ICAgaWYgKHZhbHVlLmlzTnVsbCgpKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112100</attachid>
            <date>2011-10-22 16:20:58 -0700</date>
            <delta_ts>2011-10-26 17:29:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-70617-20111022162057.patch</filename>
            <type>text/plain</type>
            <size>5429</size>
            <attacher name="Gaurav Shah">gauravsh</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4MTk1KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMTAtMjIgIEdhdXJhdiBT
aGFoICA8Z2F1cmF2c2hAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEhUTUxLZXlnZW5FbGVtZW50
OiBGaXggImtleXR5cGUiIGhhbmRsaW5nIGluIGFwcGVuZEZvcm1EYXRhLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA2MTcKKworICAgICAgICBUaGlz
IGZpeGVzIGEgYnVnIGludHJvZHVjZWQgYnkgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2Vz
ZXQvOTc2NTgKKyAgICAgICAgd2hpY2ggY2F1c2VzIGFsbCBIVE1MIEtleWdlbiBlbGVtZW50cyB3
aXRoIGEga2V5dHlwZSBvcHRpb25hbCBhdHRyaWJ1dGUKKyAgICAgICAgdG8gYmUgY29uc2lkZXJl
ZCBhcyB1bnN1cHBvcnRlZC4KKworICAgICAgICBBIHJlZ3Jlc3Npb24gdGVzdCBpcyBpbmNsdWRl
ZC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0
OiBodHRwL3Rlc3RzL21pc2Mvc3VibWl0LXBvc3Qta2V5Z2VuLmh0bWwKKworICAgICAgICAqIGh0
bWwvSFRNTEtleWdlbkVsZW1lbnQuY3BwOgorCiAyMDExLTEwLTIwICBQYXZlbCBGZWxkbWFuICA8
cGZlbGRtYW5AZ29vZ2xlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBnZXQgcmlkIG9m
IFZpZXc6OmhpZGUsIFZpZXc6OnNldCB2aXNpYmxlLCBWaWV3OjphdHRhY2gsCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmNwcAkocmV2aXNpb24gOTgxOTQpCisr
KyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMTA2LDExICsxMDYsOSBAQCBib29sIEhUTUxLZXlnZW5FbGVtZW50OjphcHBlbmRGb3Jt
RGF0YShGCiB7CiAgICAgLy8gT25seSBSU0EgaXMgc3VwcG9ydGVkIGF0IHRoaXMgdGltZS4KICAg
ICBjb25zdCBBdG9taWNTdHJpbmcmIGtleVR5cGUgPSBmYXN0R2V0QXR0cmlidXRlKGtleXR5cGVB
dHRyKTsKLSAgICBpZiAoIWtleVR5cGUuaXNOdWxsKCkgfHwgIWVxdWFsSWdub3JpbmdDYXNlKGtl
eVR5cGUsICJyc2EiKSkKKyAgICBpZiAoIWtleVR5cGUuaXNOdWxsKCkgJiYgIWVxdWFsSWdub3Jp
bmdDYXNlKGtleVR5cGUsICJyc2EiKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIFN0cmlu
ZyB2YWx1ZSA9IHNpZ25lZFB1YmxpY0tleUFuZENoYWxsZW5nZVN0cmluZyhzaGFkb3dTZWxlY3Qo
KS0+c2VsZWN0ZWRJbmRleCgpLCBmYXN0R2V0QXR0cmlidXRlKGNoYWxsZW5nZUF0dHIpLCBkb2N1
bWVudCgpLT5iYXNlVVJMKCkpOwotICAgIGlmICh2YWx1ZS5pc051bGwoKSkKLSAgICAgICAgcmV0
dXJuIGZhbHNlOwogICAgIGVuY29kZWRfdmFsdWVzLmFwcGVuZERhdGEobmFtZSgpLCB2YWx1ZS51
dGY4KCkpOwogICAgIHJldHVybiB0cnVlOwogfQpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gOTgxOTUpCisr
KyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyMCBAQAor
MjAxMS0xMC0yMiAgR2F1cmF2IFNoYWggIDxnYXVyYXZzaEBjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgSFRNTEtleWdlbkVsZW1lbnQ6IEZpeCAia2V5dHlwZSIgaGFuZGxpbmcgaW4gYXBwZW5kRm9y
bURhdGEuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03
MDYxNworCisgICAgICAgIFRoaXMgZml4ZXMgYSBidWcgaW50cm9kdWNlZCBieSBodHRwOi8vdHJh
Yy53ZWJraXQub3JnL2NoYW5nZXNldC85NzY1OAorICAgICAgICB3aGljaCBjYXVzZXMgYWxsIEhU
TUwgS2V5Z2VuIGVsZW1lbnRzIHdpdGggYSBrZXl0eXBlIG9wdGlvbmFsIGF0dHJpYnV0ZQorICAg
ICAgICB0byBiZSBjb25zaWRlcmVkIGFzIHVuc3VwcG9ydGVkLgorCisgICAgICAgIEEgcmVncmVz
c2lvbiB0ZXN0IGlzIGluY2x1ZGVkLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9jaGVjay1rZXlnZW4t
cG9zdC5waHA6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9zdWJtaXQtcG9zdC1r
ZXlnZW4tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL21pc2Mvc3Vi
bWl0LXBvc3Qta2V5Z2VuLmh0bWw6IEFkZGVkLgorCiAyMDExLTEwLTIwICBQYXZlbCBGZWxkbWFu
ICA8cGZlbGRtYW5AZ29vZ2xlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBnZXQgcmlk
IG9mIFZpZXc6OmhpZGUsIFZpZXc6OnNldCB2aXNpYmxlLCBWaWV3OjphdHRhY2guCkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2Mvc3VibWl0LXBvc3Qta2V5Z2VuLWV4cGVjdGVkLnR4
dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2Mvc3VibWl0LXBvc3Qt
a2V5Z2VuLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvbWlzYy9zdWJtaXQtcG9zdC1rZXlnZW4tZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDMgQEAKK1RoaXMgaXMgYSByZWdyZXNzaW9uIHRlc3QgZm9yIGtleWdlbiB0YWcgUE9T
VCBwcm9jZXNzaW5nOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA2
MTcuCisKK1NVQ0NFU1M6IGtleWdlbiB3YXMgcGFyc2VkIGNvcnJlY3RseQpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9taXNjL3N1Ym1pdC1wb3N0LWtleWdlbi5odG1sCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9zdWJtaXQtcG9zdC1rZXlnZW4uaHRtbAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9zdWJtaXQtcG9zdC1r
ZXlnZW4uaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxOSBAQAor/v8APABoAHQAbQBsAD4A
CisAPABoAGUAYQBkAD4ACisAPABzAGMAcgBpAHAAdAA+AAorAGkAZgAgACgAdwBpAG4AZABvAHcA
LgBsAGEAeQBvAHUAdABUAGUAcwB0AEMAbwBuAHQAcgBvAGwAbABlAHIAKQAgAHsACisAIAAgACAA
IABsAGEAeQBvAHUAdABUAGUAcwB0AEMAbwBuAHQAcgBvAGwAbABlAHIALgB3AGEAaQB0AFUAbgB0
AGkAbABEAG8AbgBlACgAKQA7AAorACAAIAAgACAAbABhAHkAbwB1AHQAVABlAHMAdABDAG8AbgB0
AHIAbwBsAGwAZQByAC4AZAB1AG0AcABBAHMAVABlAHgAdAAoACkAOwAKKwB9AAorAGYAdQBuAGMA
dABpAG8AbgAgAGMAbABpAGMAawBmACgAKQAKKwB7AAorACAAIAAgACAAZABvAGMAdQBtAGUAbgB0
AC4AZgAuAHMAdQBiAG0AaQB0ACgAKQA7AAorAH0ACisAPAAvAHMAYwByAGkAcAB0AD4ACisAPAAv
AGgAZQBhAGQAPgAKKwA8AGIAbwBkAHkAIABvAG4AbABvAGEAZAA9ACIAYwBsAGkAYwBrAGYAKAAp
ACIAPgAKKwA8AGYAbwByAG0AIABuAGEAbQBlAD0AIgBmACIAIABhAGMAdABpAG8AbgA9ACIAcgBl
AHMAbwB1AHIAYwBlAHMALwBjAGgAZQBjAGsALQBrAGUAeQBnAGUAbgAtAHAAbwBzAHQALgBwAGgA
cAAiACAAbQBlAHQAaABvAGQAPQAiAHAAbwBzAHQAIgA+AAorADwAawBlAHkAZwBlAG4AIABuAGEA
bQBlAD0AIgBzAHAAawBhAGMAIgAgAGsAZQB5AHQAeQBwAGUAPQAiAFIAUwBBACIAIAAvAD4ACisA
PAAvAGYAbwByAG0APgAKKwA8AC8AYgBvAGQAeQA+AAorADwALwBoAHQAbQBsAD4ACkluZGV4OiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVzb3VyY2VzL2NoZWNrLWtleWdlbi1wb3N0LnBo
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2MvcmVzb3VyY2VzL2No
ZWNrLWtleWdlbi1wb3N0LnBocAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvbWlzYy9yZXNvdXJjZXMvY2hlY2sta2V5Z2VuLXBvc3QucGhwCShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDM4IEBACis8P3BocAoraGVhZGVyKCJDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hh
cnNldD1VVEYtOCIpOworPz4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgorCitmdW5jdGlvbiBy
dW5UZXN0KCkKK3sKKyAgICB2YXIgciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXN1bHQn
KTsKKyAgICB2YXIgbyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdvdXRwdXQnKS5maXJzdENo
aWxkOworICAgIGlmIChvLm5vZGVWYWx1ZSA9PSAnc3BrYWMgZXhpc3RzJykgCisgICAgICAgIHIu
aW5uZXJIVE1MID0gIlNVQ0NFU1M6IGtleWdlbiB3YXMgcGFyc2VkIGNvcnJlY3RseSI7CisgICAg
ZWxzZQorICAgICAgICByLmlubmVySFRNTCA9ICJGQUlMVVJFOiBrZXlnZW4gd2FzIG5vdCBwYXJz
ZWQgY29ycmVjdGx5LiB2YWx1ZT0iICsKKyAgICAgICAgby5ub2RlVmFsdWU7CisgICAgICAgIAor
ICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RD
b250cm9sbGVyLm5vdGlmeURvbmUoKTsKK30KKworPC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keSBv
bmxvYWQ9InJ1blRlc3QoKSI+Cis8cD4KK1RoaXMgaXMgYSByZWdyZXNzaW9uIHRlc3QgZm9yIGtl
eWdlbiB0YWcgUE9TVCBwcm9jZXNzaW5nOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NzA2MTcuCis8L3A+Cis8ZGl2IHN0eWxlPSdkaXNwbGF5OiBub25lOycgaWQ9J291
dHB1dCc+PD9waHAKK2lmIChhcnJheV9rZXlfZXhpc3RzKCdzcGthYycsICRfUkVRVUVTVCkpIHsK
KyAgICBlY2hvICJzcGthYyBleGlzdHMiOworfSBlbHNlIHsKKyAgICBlY2hvICJzcGthYyBkb2Vz
IG5vdCBleGlzdCI7Cit9Cis/PgorPC9kaXY+Cis8ZGl2IGlkPSJyZXN1bHQiPjwvZGl2PgorPC9i
b2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112622</attachid>
            <date>2011-10-26 17:29:29 -0700</date>
            <delta_ts>2011-11-02 10:48:11 -0700</delta_ts>
            <desc>Updated patch after fixing Chromium Stub Implementation to return an empty string.</desc>
            <filename>bug-70617-20111026172928.patch</filename>
            <type>text/plain</type>
            <size>4926</size>
            <attacher name="Gaurav Shah">gauravsh</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4NTI0KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMTAtMjYgIEdhdXJhdiBT
aGFoICA8Z2F1cmF2c2hAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEhUTUxLZXlnZW5FbGVtZW50
OiBGaXggImtleXR5cGUiIGhhbmRsaW5nIGluIGFwcGVuZEZvcm1EYXRhLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA2MTcKKworICAgICAgICBUaGlz
IGZpeGVzIGEgYnVnIGludHJvZHVjZWQgYnkgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2Vz
ZXQvOTc2NTgKKyAgICAgICAgd2hpY2ggY2F1c2VzIGFsbCBIVE1MIEtleWdlbiBlbGVtZW50cyB3
aXRoIGEga2V5dHlwZSBvcHRpb25hbCBhdHRyaWJ1dGUKKyAgICAgICAgdG8gYmUgY29uc2lkZXJl
ZCBhcyB1bnN1cHBvcnRlZC4KKworICAgICAgICBBIHJlZ3Jlc3Npb24gdGVzdCBpcyBpbmNsdWRl
ZC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0
OiBodHRwL3Rlc3RzL21pc2Mvc3VibWl0LXBvc3Qta2V5Z2VuLmh0bWwKKworICAgICAgICAqIGh0
bWwvSFRNTEtleWdlbkVsZW1lbnQuY3BwOgorCiAyMDExLTEwLTI2ICBEYW4gQmVybnN0ZWluICA8
bWl0ekBhcHBsZS5jb20+CiAKICAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzEwMzUwNzc1PiBSRUdS
RVNTSU9OIChyOTcwMzIpOiBTbGlkZXIgdGh1bWIgaXMgbm90IGRyYXduCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmNwcAkocmV2aXNpb24gOTg1MjQpCisrKyBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTA2LDcgKzEwNiw3IEBAIGJvb2wgSFRNTEtleWdlbkVsZW1lbnQ6OmFwcGVuZEZvcm1EYXRh
KEYKIHsKICAgICAvLyBPbmx5IFJTQSBpcyBzdXBwb3J0ZWQgYXQgdGhpcyB0aW1lLgogICAgIGNv
bnN0IEF0b21pY1N0cmluZyYga2V5VHlwZSA9IGZhc3RHZXRBdHRyaWJ1dGUoa2V5dHlwZUF0dHIp
OwotICAgIGlmICgha2V5VHlwZS5pc051bGwoKSB8fCAhZXF1YWxJZ25vcmluZ0Nhc2Uoa2V5VHlw
ZSwgInJzYSIpKQorICAgIGlmICgha2V5VHlwZS5pc051bGwoKSAmJiAhZXF1YWxJZ25vcmluZ0Nh
c2Uoa2V5VHlwZSwgInJzYSIpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgU3RyaW5nIHZh
bHVlID0gc2lnbmVkUHVibGljS2V5QW5kQ2hhbGxlbmdlU3RyaW5nKHNoYWRvd1NlbGVjdCgpLT5z
ZWxlY3RlZEluZGV4KCksIGZhc3RHZXRBdHRyaWJ1dGUoY2hhbGxlbmdlQXR0ciksIGRvY3VtZW50
KCktPmJhc2VVUkwoKSk7CiAgICAgaWYgKHZhbHVlLmlzTnVsbCgpKQpJbmRleDogTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNp
b24gOTg1MjQpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEs
MyArMSwyMSBAQAorMjAxMS0xMC0yNiAgR2F1cmF2IFNoYWggIDxnYXVyYXZzaEBjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgSFRNTEtleWdlbkVsZW1lbnQ6IEZpeCAia2V5dHlwZSIgaGFuZGxpbmcg
aW4gYXBwZW5kRm9ybURhdGEuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03MDYxNworCisgICAgICAgIFRoaXMgZml4ZXMgYSBidWcgaW50cm9kdWNlZCBi
eSBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC85NzY1OAorICAgICAgICB3aGljaCBj
YXVzZXMgYWxsIEhUTUwgS2V5Z2VuIGVsZW1lbnRzIHdpdGggYSBrZXl0eXBlIG9wdGlvbmFsIGF0
dHJpYnV0ZQorICAgICAgICB0byBiZSBjb25zaWRlcmVkIGFzIHVuc3VwcG9ydGVkLgorCisgICAg
ICAgIEEgcmVncmVzc2lvbiB0ZXN0IGlzIGluY2x1ZGVkLgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9j
aGVjay1rZXlnZW4tcG9zdC5waHA6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9z
dWJtaXQtcG9zdC1rZXlnZW4tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL21pc2Mvc3VibWl0LXBvc3Qta2V5Z2VuLmh0bWw6IEFkZGVkLgorCisKIDIwMTEtMTAtMjYg
IEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4QHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5y
ZXZpZXdlZCB0cml2aWFsIHJlbmFtaW5nLgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9t
aXNjL3N1Ym1pdC1wb3N0LWtleWdlbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9taXNjL3N1Ym1pdC1wb3N0LWtleWdlbi1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2Mvc3VibWl0LXBvc3Qta2V5
Z2VuLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzIEBACitUaGlzIGlzIGEg
cmVncmVzc2lvbiB0ZXN0IGZvciBrZXlnZW4gdGFnIFBPU1QgcHJvY2Vzc2luZzogaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwNjE3LgorCitTVUNDRVNTOiBrZXlnZW4g
d2FzIHBhcnNlZCBjb3JyZWN0bHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9z
dWJtaXQtcG9zdC1rZXlnZW4uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL21pc2Mvc3VibWl0LXBvc3Qta2V5Z2VuLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL21pc2Mvc3VibWl0LXBvc3Qta2V5Z2VuLmh0bWwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsMTkgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRp
bERvbmUoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Cit9CitmdW5j
dGlvbiBjbGlja2YoKQoreworICAgIGRvY3VtZW50LmYuc3VibWl0KCk7Cit9Cis8L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5IG9ubG9hZD0iY2xpY2tmKCkiPgorPGZvcm0gbmFtZT0iZiIgYWN0aW9u
PSJyZXNvdXJjZXMvY2hlY2sta2V5Z2VuLXBvc3QucGhwIiBtZXRob2Q9InBvc3QiPgorPGtleWdl
biBuYW1lPSJzcGthYyIga2V5dHlwZT0iUlNBIiAvPgorPC9mb3JtPgorPC9ib2R5PgorPC9odG1s
PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9jaGVjay1rZXln
ZW4tcG9zdC5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3Jl
c291cmNlcy9jaGVjay1rZXlnZW4tcG9zdC5waHAJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL21pc2MvcmVzb3VyY2VzL2NoZWNrLWtleWdlbi1wb3N0LnBocAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwzOCBAQAorPD9waHAKK2hlYWRlcigiQ29udGVudC1UeXBlOiB0ZXh0
L2h0bWw7IGNoYXJzZXQ9VVRGLTgiKTsKKz8+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KKwor
ZnVuY3Rpb24gcnVuVGVzdCgpCit7CisgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgncmVzdWx0Jyk7CisgICAgdmFyIG8gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb3V0cHV0
JykuZmlyc3RDaGlsZDsKKyAgICBpZiAoby5ub2RlVmFsdWUgPT0gJ3Nwa2FjIGV4aXN0cycpIAor
ICAgICAgICByLmlubmVySFRNTCA9ICJTVUNDRVNTOiBrZXlnZW4gd2FzIHBhcnNlZCBjb3JyZWN0
bHkiOworICAgIGVsc2UKKyAgICAgICAgci5pbm5lckhUTUwgPSAiRkFJTFVSRToga2V5Z2VuIHdh
cyBub3QgcGFyc2VkIGNvcnJlY3RseS4gdmFsdWU9IiArCisgICAgICAgIG8ubm9kZVZhbHVlOwor
ICAgICAgICAKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBs
YXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Cit9CisKKzwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgorPHA+CitUaGlzIGlzIGEgcmVncmVzc2lvbiB0
ZXN0IGZvciBrZXlnZW4gdGFnIFBPU1QgcHJvY2Vzc2luZzogaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTcwNjE3LgorPC9wPgorPGRpdiBzdHlsZT0nZGlzcGxheTogbm9u
ZTsnIGlkPSdvdXRwdXQnPjw/cGhwCitpZiAoYXJyYXlfa2V5X2V4aXN0cygnc3BrYWMnLCAkX1JF
UVVFU1QpKSB7CisgICAgZWNobyAic3BrYWMgZXhpc3RzIjsKK30gZWxzZSB7CisgICAgZWNobyAi
c3BrYWMgZG9lcyBub3QgZXhpc3QiOworfQorPz4KKzwvZGl2PgorPGRpdiBpZD0icmVzdWx0Ij48
L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>113332</attachid>
            <date>2011-11-02 10:48:17 -0700</date>
            <delta_ts>2011-11-04 10:55:29 -0700</delta_ts>
            <desc>Re-uploaded patch for another EWS run now that the chromium changes are in</desc>
            <filename>bug-70617-20111102104816.patch</filename>
            <type>text/plain</type>
            <size>4926</size>
            <attacher name="Gaurav Shah">gauravsh</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk4NTI0KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMTAtMjYgIEdhdXJhdiBT
aGFoICA8Z2F1cmF2c2hAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEhUTUxLZXlnZW5FbGVtZW50
OiBGaXggImtleXR5cGUiIGhhbmRsaW5nIGluIGFwcGVuZEZvcm1EYXRhLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA2MTcKKworICAgICAgICBUaGlz
IGZpeGVzIGEgYnVnIGludHJvZHVjZWQgYnkgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2Vz
ZXQvOTc2NTgKKyAgICAgICAgd2hpY2ggY2F1c2VzIGFsbCBIVE1MIEtleWdlbiBlbGVtZW50cyB3
aXRoIGEga2V5dHlwZSBvcHRpb25hbCBhdHRyaWJ1dGUKKyAgICAgICAgdG8gYmUgY29uc2lkZXJl
ZCBhcyB1bnN1cHBvcnRlZC4KKworICAgICAgICBBIHJlZ3Jlc3Npb24gdGVzdCBpcyBpbmNsdWRl
ZC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0
OiBodHRwL3Rlc3RzL21pc2Mvc3VibWl0LXBvc3Qta2V5Z2VuLmh0bWwKKworICAgICAgICAqIGh0
bWwvSFRNTEtleWdlbkVsZW1lbnQuY3BwOgorCiAyMDExLTEwLTI2ICBEYW4gQmVybnN0ZWluICA8
bWl0ekBhcHBsZS5jb20+CiAKICAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzEwMzUwNzc1PiBSRUdS
RVNTSU9OIChyOTcwMzIpOiBTbGlkZXIgdGh1bWIgaXMgbm90IGRyYXduCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmNwcAkocmV2aXNpb24gOTg1MjQpCisrKyBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxLZXlnZW5FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTA2LDcgKzEwNiw3IEBAIGJvb2wgSFRNTEtleWdlbkVsZW1lbnQ6OmFwcGVuZEZvcm1EYXRh
KEYKIHsKICAgICAvLyBPbmx5IFJTQSBpcyBzdXBwb3J0ZWQgYXQgdGhpcyB0aW1lLgogICAgIGNv
bnN0IEF0b21pY1N0cmluZyYga2V5VHlwZSA9IGZhc3RHZXRBdHRyaWJ1dGUoa2V5dHlwZUF0dHIp
OwotICAgIGlmICgha2V5VHlwZS5pc051bGwoKSB8fCAhZXF1YWxJZ25vcmluZ0Nhc2Uoa2V5VHlw
ZSwgInJzYSIpKQorICAgIGlmICgha2V5VHlwZS5pc051bGwoKSAmJiAhZXF1YWxJZ25vcmluZ0Nh
c2Uoa2V5VHlwZSwgInJzYSIpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgU3RyaW5nIHZh
bHVlID0gc2lnbmVkUHVibGljS2V5QW5kQ2hhbGxlbmdlU3RyaW5nKHNoYWRvd1NlbGVjdCgpLT5z
ZWxlY3RlZEluZGV4KCksIGZhc3RHZXRBdHRyaWJ1dGUoY2hhbGxlbmdlQXR0ciksIGRvY3VtZW50
KCktPmJhc2VVUkwoKSk7CiAgICAgaWYgKHZhbHVlLmlzTnVsbCgpKQpJbmRleDogTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNp
b24gOTg1MjQpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEs
MyArMSwyMSBAQAorMjAxMS0xMC0yNiAgR2F1cmF2IFNoYWggIDxnYXVyYXZzaEBjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgSFRNTEtleWdlbkVsZW1lbnQ6IEZpeCAia2V5dHlwZSIgaGFuZGxpbmcg
aW4gYXBwZW5kRm9ybURhdGEuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03MDYxNworCisgICAgICAgIFRoaXMgZml4ZXMgYSBidWcgaW50cm9kdWNlZCBi
eSBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5nZXNldC85NzY1OAorICAgICAgICB3aGljaCBj
YXVzZXMgYWxsIEhUTUwgS2V5Z2VuIGVsZW1lbnRzIHdpdGggYSBrZXl0eXBlIG9wdGlvbmFsIGF0
dHJpYnV0ZQorICAgICAgICB0byBiZSBjb25zaWRlcmVkIGFzIHVuc3VwcG9ydGVkLgorCisgICAg
ICAgIEEgcmVncmVzc2lvbiB0ZXN0IGlzIGluY2x1ZGVkLgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9j
aGVjay1rZXlnZW4tcG9zdC5waHA6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWlzYy9z
dWJtaXQtcG9zdC1rZXlnZW4tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL21pc2Mvc3VibWl0LXBvc3Qta2V5Z2VuLmh0bWw6IEFkZGVkLgorCisKIDIwMTEtMTAtMjYg
IEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4QHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5y
ZXZpZXdlZCB0cml2aWFsIHJlbmFtaW5nLgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9t
aXNjL3N1Ym1pdC1wb3N0LWtleWdlbi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy9taXNjL3N1Ym1pdC1wb3N0LWtleWdlbi1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21pc2Mvc3VibWl0LXBvc3Qta2V5
Z2VuLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzIEBACitUaGlzIGlzIGEg
cmVncmVzc2lvbiB0ZXN0IGZvciBrZXlnZW4gdGFnIFBPU1QgcHJvY2Vzc2luZzogaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcwNjE3LgorCitTVUNDRVNTOiBrZXlnZW4g
d2FzIHBhcnNlZCBjb3JyZWN0bHkKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWlzYy9z
dWJtaXQtcG9zdC1rZXlnZW4uaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL21pc2Mvc3VibWl0LXBvc3Qta2V5Z2VuLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL21pc2Mvc3VibWl0LXBvc3Qta2V5Z2VuLmh0bWwJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsMTkgQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRp
bERvbmUoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Cit9CitmdW5j
dGlvbiBjbGlja2YoKQoreworICAgIGRvY3VtZW50LmYuc3VibWl0KCk7Cit9Cis8L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5IG9ubG9hZD0iY2xpY2tmKCkiPgorPGZvcm0gbmFtZT0iZiIgYWN0aW9u
PSJyZXNvdXJjZXMvY2hlY2sta2V5Z2VuLXBvc3QucGhwIiBtZXRob2Q9InBvc3QiPgorPGtleWdl
biBuYW1lPSJzcGthYyIga2V5dHlwZT0iUlNBIiAvPgorPC9mb3JtPgorPC9ib2R5PgorPC9odG1s
PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3Jlc291cmNlcy9jaGVjay1rZXln
ZW4tcG9zdC5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9taXNjL3Jl
c291cmNlcy9jaGVjay1rZXlnZW4tcG9zdC5waHAJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL21pc2MvcmVzb3VyY2VzL2NoZWNrLWtleWdlbi1wb3N0LnBocAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwzOCBAQAorPD9waHAKK2hlYWRlcigiQ29udGVudC1UeXBlOiB0ZXh0
L2h0bWw7IGNoYXJzZXQ9VVRGLTgiKTsKKz8+Cis8aHRtbD4KKzxoZWFkPgorPHNjcmlwdD4KKwor
ZnVuY3Rpb24gcnVuVGVzdCgpCit7CisgICAgdmFyIHIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgncmVzdWx0Jyk7CisgICAgdmFyIG8gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb3V0cHV0
JykuZmlyc3RDaGlsZDsKKyAgICBpZiAoby5ub2RlVmFsdWUgPT0gJ3Nwa2FjIGV4aXN0cycpIAor
ICAgICAgICByLmlubmVySFRNTCA9ICJTVUNDRVNTOiBrZXlnZW4gd2FzIHBhcnNlZCBjb3JyZWN0
bHkiOworICAgIGVsc2UKKyAgICAgICAgci5pbm5lckhUTUwgPSAiRkFJTFVSRToga2V5Z2VuIHdh
cyBub3QgcGFyc2VkIGNvcnJlY3RseS4gdmFsdWU9IiArCisgICAgICAgIG8ubm9kZVZhbHVlOwor
ICAgICAgICAKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBs
YXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Cit9CisKKzwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgorPHA+CitUaGlzIGlzIGEgcmVncmVzc2lvbiB0
ZXN0IGZvciBrZXlnZW4gdGFnIFBPU1QgcHJvY2Vzc2luZzogaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTcwNjE3LgorPC9wPgorPGRpdiBzdHlsZT0nZGlzcGxheTogbm9u
ZTsnIGlkPSdvdXRwdXQnPjw/cGhwCitpZiAoYXJyYXlfa2V5X2V4aXN0cygnc3BrYWMnLCAkX1JF
UVVFU1QpKSB7CisgICAgZWNobyAic3BrYWMgZXhpc3RzIjsKK30gZWxzZSB7CisgICAgZWNobyAi
c3BrYWMgZG9lcyBub3QgZXhpc3QiOworfQorPz4KKzwvZGl2PgorPGRpdiBpZD0icmVzdWx0Ij48
L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>