<?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>94836</bug_id>
          
          <creation_ts>2012-08-23 12:55:10 -0700</creation_ts>
          <short_desc>Support for X-Frame-Options: Allow-From [uri]</short_desc>
          <delta_ts>2016-05-27 12:20:29 -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>Frames</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=154345</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Phil Ames">philames</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>adam</cc>
    
    <cc>ap</cc>
    
    <cc>beidson</cc>
    
    <cc>bfulgham</cc>
    
    <cc>marcoos+bwo</cc>
    
    <cc>mike.hemesath</cc>
    
    <cc>mjs</cc>
    
    <cc>philames</cc>
    
    <cc>sam</cc>
    
    <cc>syoichi</cc>
    
    <cc>webdev</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>703272</commentid>
    <comment_count>0</comment_count>
    <who name="Phil Ames">philames</who>
    <bug_when>2012-08-23 12:55:10 -0700</bug_when>
    <thetext>Related to https://bugs.webkit.org/show_bug.cgi?id=23907 (hence the initial CC&apos;s)

Attached is a patch which enables support for “Allow-From [uri]” notation in the X-Frame-Options header.  I compared the behavior of patched Chrome with IE9 with the below values (syntax:IE permitted/patched Chrome permitted/header-value) which was sent by a cross-origin site (the top origin was http://www.intra.net/)

Probably the most substantial difference is that IE doesn’t seem to regard the port number.  A similar patch for Firefox which I will be submitting soon (to https://bugzilla.mozilla.org/show_bug.cgi?id=690168) produces the same behavior as this patch to Chrome, though.

N/N/X-Frame-Options: Allow-From
N/N/X-Frame-Options: Allow-From xyz
N/N/X-Frame-Options: Allow-From www.intra.net
Y/Y/X-Frame-Options: Allow-From http://www.intra.net
Y/Y/X-Frame-Options: Allow-From http://www.intra.net/
Y/Y/X-Frame-Options: Allow-From http://www.intra.net:80/
Y/N/X-Frame-Options: Allow-From http://www.intra.net:81/
Y/N/X-Frame-Options: Allow-From http://www.intra.net:443/
Y/Y/X-Frame-Options: Allow-From http://www.intra.net/foo/bar/

Please also note that although I modelled the LayoutTests after the ones that I found in the existing tree, I was not actually able to get them to run on my development environment, so they may require some tweaking (sorry, if anyone is at Google and wants to spend a few minutes helping me troubleshoot / get it working, I’d be happy to test and send an additional diff). The results in the table above are solely from ‘empirical’ testing/observation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703273</commentid>
    <comment_count>1</comment_count>
      <attachid>160219</attachid>
    <who name="Phil Ames">philames</who>
    <bug_when>2012-08-23 12:55:39 -0700</bug_when>
    <thetext>Created attachment 160219
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703276</commentid>
    <comment_count>2</comment_count>
    <who name="Phil Ames">philames</who>
    <bug_when>2012-08-23 12:58:36 -0700</bug_when>
    <thetext>[trying to cc myself]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703277</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-23 13:00:20 -0700</bug_when>
    <thetext>Note: We&apos;re still discussing this feature in the IETF websec working group.  Generally, our position has been that we shouldn&apos;t be adding new features to X-Frame-Options.  Instead, we should create a CSP directive that satisfies these use cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>706995</commentid>
    <comment_count>4</comment_count>
      <attachid>161116</attachid>
    <who name="Phil Ames">philames</who>
    <bug_when>2012-08-28 19:12:11 -0700</bug_when>
    <thetext>Created attachment 161116
Updated patch.

FYI: I managed to get the layout tests passing, and also addressed that this would accept something like &quot;Allow-Fromhttp://foo.com&quot; instead of &quot;Allow-From http://foo.com&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>707001</commentid>
    <comment_count>5</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-08-28 19:23:38 -0700</bug_when>
    <thetext>@Phil: I appreciate your enthusiasm, but it&apos;s unlikely that we&apos;ll accept this patch until the standards issues are resolved.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>707009</commentid>
    <comment_count>6</comment_count>
    <who name="Phil Ames">philames</who>
    <bug_when>2012-08-28 19:24:30 -0700</bug_when>
    <thetext>Understood, I just figured it made sense to have something up-to-date and attached here rather than something broken.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>874790</commentid>
    <comment_count>7</comment_count>
      <attachid>197858</attachid>
    <who name="Phil Ames">philames</who>
    <bug_when>2013-04-12 09:20:05 -0700</bug_when>
    <thetext>Created attachment 197858
X-F-O Allow From implementation

I noticed this code had been refactored, so I&apos;ve updated the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>876975</commentid>
    <comment_count>8</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-04-16 17:45:32 -0700</bug_when>
    <thetext>In radar as &lt;rdar://problem/13658368&gt;

I&apos;ll try to take a look at this patch soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>876989</commentid>
    <comment_count>9</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-04-16 18:25:23 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; In radar as &lt;rdar://problem/13658368&gt;
&gt; 
&gt; I&apos;ll try to take a look at this patch soon.

You should be aware that this feature is controversial in the W3C WebAppSec working group.  Before implementing it, you might want to confer with the working group.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>877020</commentid>
    <comment_count>10</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-04-16 21:42:36 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; In radar as &lt;rdar://problem/13658368&gt;
&gt; &gt; 
&gt; &gt; I&apos;ll try to take a look at this patch soon.
&gt; 
&gt; You should be aware that this feature is controversial in the W3C WebAppSec working group.  Before implementing it, you might want to confer with the working group.

Interesting.

We were looking at it because it&apos;s been in the IETF draft for some time (http://tools.ietf.org/html/draft-ietf-websec-x-frame-options-01) and has utility we&apos;re interested in.

I&apos;m failing at finding relevant threads in the webappsec archives that demonstrate this controversy.  Have any pointers?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>877025</commentid>
    <comment_count>11</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-04-16 21:58:26 -0700</bug_when>
    <thetext>&gt; We were looking at it because it&apos;s been in the IETF draft for some time (http://tools.ietf.org/html/draft-ietf-websec-x-frame-options-01) and has utility we&apos;re interested in.

The IETF websec working group has not addressed my WGLC feedback on this aspect of draft-ietf-websec-x-frame-options:

http://www.ietf.org/mail-archive/web/websec/current/msg01459.html

&gt; I&apos;m failing at finding relevant threads in the webappsec archives that demonstrate this controversy.  Have any pointers?

I couldn&apos;t find a good email thread in quick search.  The basic issue is that allow-from is basically the same thing as a source-expression from CSP but uses an incompatible syntax.

The current agreement in both the IETF websec working group and the W3C WebAppSec working group is to not add any new features to X-Frame-Options (including allow-from) and instead make frame-options into a CSP directive.

The final point of controversy is whether to let the web site specify multiple values for the frame-options directive (i.e., whether to allow a source-list like other CSP directives or whether to restrict frame-options to a single source-expression).

I&apos;d recommend not implementing allow-from in X-Frame-Options until these issues are resolved.  I&apos;d expect the likely outcome to be a frame-options CSP directive that either takes a source-list or a source-expression.

The W3C WebAppSec working group has a face-to-face meeting on April 25-26 where I&apos;d expect these issues to be hammered out.  If you&apos;re interested in these topics, I&apos;d encourage you to attend.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>877027</commentid>
    <comment_count>12</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2013-04-16 22:21:04 -0700</bug_when>
    <thetext>I&apos;ll try to be on IRC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1018314</commentid>
    <comment_count>13</comment_count>
    <who name="Adam Hooper">adam</who>
    <bug_when>2014-06-25 06:44:17 -0700</bug_when>
    <thetext>Has the standards process stalled here?

In October 2013, IETF published http://tools.ietf.org/html/rfc7034 (informative) related to X-Frame-Options.

Meanwhile, the CSP working draft shows nothing but a TODO: https://dvcs.w3.org/hg/content-security-policy/raw-file/5b353a8ac072/csp-specification.dev.html#frame-options--experimental

Allow-From solves a real problem. Because WebKit ignores it, websites can be forced to abandon X-Frame-Options altogether. Given there&apos;s an RFC on the topic, could we please have Allow-From?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1056801</commentid>
    <comment_count>14</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2014-12-18 09:56:59 -0800</bug_when>
    <thetext>CSP 1.1 now supports this use case, directive name is frame-ancestors. It&apos;s not implemented in WebKit yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1164133</commentid>
    <comment_count>15</comment_count>
    <who name="Mike Hemesath">mike.hemesath</who>
    <bug_when>2016-02-12 07:36:56 -0800</bug_when>
    <thetext>Is there an issue logged for implementing frame-ancestors in webkit?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1197163</commentid>
    <comment_count>16</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2016-05-27 12:19:47 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; Is there an issue logged for implementing frame-ancestors in webkit?

Yes. This work was done under Bug 154345, and is now complete.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1197164</commentid>
    <comment_count>17</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2016-05-27 12:20:29 -0700</bug_when>
    <thetext>Since the new CSP feature has been implemented, this issue is resolved.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>160219</attachid>
            <date>2012-08-23 12:55:39 -0700</date>
            <delta_ts>2012-08-28 19:12:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>webkit-23907.diff</filename>
            <type>text/plain</type>
            <size>6717</size>
            <attacher name="Phil Ames">philames</attacher>
            
              <data encoding="base64">SW5kZXg6IEZyYW1lTG9hZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBGcmFtZUxvYWRlci5jcHAJKHJl
dmlzaW9uIDc1MjUwKQorKysgRnJhbWVMb2FkZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMDU3
LDEyICszMDU3LDIyIEBACiAgICAgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGNvbnRlbnQsICJkZW55
IikpCiAgICAgICAgIHJldHVybiB0cnVlOwogCisgICAgU2VjdXJpdHlPcmlnaW4gKnRvcE9yaWdp
biA9IHRvcEZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpOwogICAgIGlmIChlcXVh
bElnbm9yaW5nQ2FzZShjb250ZW50LCAic2FtZW9yaWdpbiIpKSB7CiAgICAgICAgIFJlZlB0cjxT
ZWN1cml0eU9yaWdpbj4gb3JpZ2luID0gU2VjdXJpdHlPcmlnaW46OmNyZWF0ZSh1cmwpOwotICAg
ICAgICBpZiAoIW9yaWdpbi0+aXNTYW1lU2NoZW1lSG9zdFBvcnQodG9wRnJhbWUtPmRvY3VtZW50
KCktPnNlY3VyaXR5T3JpZ2luKCkpKQorICAgICAgICBpZiAoIW9yaWdpbi0+aXNTYW1lU2NoZW1l
SG9zdFBvcnQodG9wT3JpZ2luKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KIAor
ICAgIGlmIChjb250ZW50LnN0YXJ0c1dpdGgoImFsbG93LWZyb20iLCBmYWxzZSkpIHsKKyAgICAg
ICAgY29uc3Qgc2l6ZV90IHN0YXJ0ID0gc2l6ZW9mKCJhbGxvdy1mcm9tIik7CisgICAgICAgIFJl
ZlB0cjxTZWN1cml0eU9yaWdpbj4gb3JpZ2luID0KKyAgICAgICAgICAgIFNlY3VyaXR5T3JpZ2lu
OjpjcmVhdGVGcm9tU3RyaW5nKAorICAgICAgICAgICAgICAgIGNvbnRlbnQuc3Vic3RyaW5nKHN0
YXJ0KSk7CisgICAgICAgIGlmICghb3JpZ2luLT5pc1NhbWVTY2hlbWVIb3N0UG9ydCh0b3BPcmln
aW4pKQorICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKwogICAgIHJldHVybiBmYWxzZTsK
IH0KIApJbmRleDogaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0
aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
aHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQt
YWxsb3ctZnJvbS1hbGxvdy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBodHRwL3Rlc3Rz
L3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9t
LWFsbG93LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAoraHR0cDov
LzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUt
b3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy5jZ2kgLSB3aWxsU2VuZFJlcXVlc3QgPE5T
VVJMUmVxdWVzdCBVUkwgaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlv
bnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy5jZ2ks
IG1haW4gZG9jdW1lbnQgVVJMIGh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9YRnJhbWVP
cHRpb25zL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy5odG1sLCBodHRw
IG1ldGhvZCBHRVQ+IHJlZGlyZWN0UmVzcG9uc2UgKG51bGwpCis8dW5rbm93bj4gLSBkaWRGaW5p
c2hMb2FkaW5nCitodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9y
ZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWFsbG93LmNnaSAtIGRp
ZFJlY2VpdmVSZXNwb25zZSA8TlNVUkxSZXNwb25zZSBodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2Vj
dXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxv
dy1mcm9tLWFsbG93LmNnaSwgaHR0cCBzdGF0dXMgY29kZSAyMDA+CitUaGVyZSBzaG91bGQgYmUg
Y29udGVudCBpbiB0aGUgaWZyYW1lIGJlbG93CisKKworCistLS0tLS0tLQorRnJhbWU6ICc8IS0t
ZnJhbWVQYXRoIC8vPCEtLWZyYW1lMC0tPi0tPicKKy0tLS0tLS0tCitQQVNTOiBUaGlzIHNob3Vs
ZCBzaG93IHVwIGFzIHRoZSBwYXJlbnQgaXMgaW4gdGhlIHNhbWUgb3JpZ2luLgpJbmRleDogaHR0
cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxs
b3ctZnJvbS1kZW55Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJh
bWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1kZW55Lmh0bWwJKHJl
dmlzaW9uIDApCisrKyBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1v
cHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWRlbnkuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSwxMCBAQAorPHNjcmlwdD4KKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAg
dGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcENoaWxkRnJh
bWVzQXNUZXh0KCk7CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcFJlc291cmNlTG9hZENhbGxiYWNr
cygpOworICAgIH0KKzwvc2NyaXB0PgorCis8cD5UaGVyZSBzaG91bGQgYmUgbm8gY29udGVudCBp
biB0aGUgaWZyYW1lIGJlbG93PC9wPgorPGlmcmFtZSBzdHlsZT0id2lkdGg6NTAwcHg7IGhlaWdo
dDo1MDBweCIgc3JjPSJodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvWEZyYW1lT3B0aW9u
cy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWRlbnkuY2dpIj48
L2lmcmFtZT4KSW5kZXg6IGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZyYW1l
LW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tZGVueS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1wYXJl
bnQtYWxsb3ctZnJvbS1kZW55LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIGh0dHAvdGVz
dHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZy
b20tZGVueS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTMgQEAKK2h0dHA6
Ly9sb2NhbGhvc3Q6ODAwMC9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZyYW1l
LW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tZGVueS5jZ2kgLSB3aWxsU2VuZFJlcXVlc3QgPE5T
VVJMUmVxdWVzdCBVUkwgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlv
bnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1kZW55LmNnaSwg
bWFpbiBkb2N1bWVudCBVUkwgaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L1hGcmFtZU9w
dGlvbnMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWRlbnkuaHRtbCwgaHR0cCBt
ZXRob2QgR0VUPiByZWRpcmVjdFJlc3BvbnNlIChudWxsKQorPHVua25vd24+IC0gZGlkRmluaXNo
TG9hZGluZworQ09OU09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGRpc3BsYXkgZG9jdW1lbnQgYmVj
YXVzZSBkaXNwbGF5IGZvcmJpZGRlbiBieSBYLUZyYW1lLU9wdGlvbnMuCisKK2h0dHA6Ly9sb2Nh
bGhvc3Q6ODAwMC9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZyYW1lLW9wdGlv
bnMtcGFyZW50LWFsbG93LWZyb20tZGVueS5jZ2kgLSBkaWRGYWlsTG9hZGluZ1dpdGhFcnJvcjog
PE5TRXJyb3IgZG9tYWluIE5TVVJMRXJyb3JEb21haW4sIGNvZGUgLTk5OSwgZmFpbGluZyBVUkwg
Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94
LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tZGVueS5jZ2kiPgorVGhlcmUgc2hvdWxk
IGJlIG5vIGNvbnRlbnQgaW4gdGhlIGlmcmFtZSBiZWxvdworCisKKworLS0tLS0tLS0KK0ZyYW1l
OiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4nCistLS0tLS0tLQorCkluZGV4OiBo
dHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9u
cy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy5jZ2kKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gaHR0cC90ZXN0cy9z
ZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFs
bG93LWZyb20tYWxsb3cuY2dpCShyZXZpc2lvbiAwKQorKysgaHR0cC90ZXN0cy9zZWN1cml0eS9Y
RnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20t
YWxsb3cuY2dpCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDggQEAKKyMhL3Vzci9iaW4vcGVybCAt
d1QKK3VzZSBzdHJpY3Q7CisKK3ByaW50ICJDb250ZW50LVR5cGU6IHRleHQvaHRtbFxuIjsKK3By
aW50ICJDYWNoZS1Db250cm9sOiBuby1jYWNoZSwgbm8tc3RvcmVcbiI7CitwcmludCAiWC1GUkFN
RS1PUFRJT05TOiBhbGxvdy1mcm9tIGh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9cblxuIjsKKworcHJp
bnQgIjxwPlBBU1M6IFRoaXMgc2hvdWxkIHNob3cgdXAgYXMgdGhlIHBhcmVudCBpcyBpbiB0aGUg
c2FtZSBvcmlnaW4uPC9wPlxuIjsKClByb3BlcnR5IGNoYW5nZXMgb246IGh0dHAvdGVzdHMvc2Vj
dXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxv
dy1mcm9tLWFsbG93LmNnaQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQogICArICoK
CkluZGV4OiBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJh
bWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1kZW55LmNnaQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBodHRw
L3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1w
YXJlbnQtYWxsb3ctZnJvbS1kZW55LmNnaQkocmV2aXNpb24gMCkKKysrIGh0dHAvdGVzdHMvc2Vj
dXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxv
dy1mcm9tLWRlbnkuY2dpCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDggQEAKKyMhL3Vzci9iaW4v
cGVybCAtd1QKK3VzZSBzdHJpY3Q7CisKK3ByaW50ICJDb250ZW50LVR5cGU6IHRleHQvaHRtbFxu
IjsKK3ByaW50ICJDYWNoZS1Db250cm9sOiBuby1jYWNoZSwgbm8tc3RvcmVcbiI7CitwcmludCAi
WC1GUkFNRS1PUFRJT05TOiBhbGxvdy1mcm9tIGh0dHA6Ly9ub3QtbG9jYWxob3N0OjgwMDAvXG5c
biI7CisKK3ByaW50ICI8cD5GQUlMOiBUaGlzIHNob3VsZCBub3Qgc2hvdyB1cC48L3A+XG4iOwoK
UHJvcGVydHkgY2hhbmdlcyBvbjogaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jl
c291cmNlcy94LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tZGVueS5jZ2kKX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKICAgKyAqCgpJbmRleDogaHR0cC90ZXN0cy9zZWN1
cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxv
dy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94
LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tYWxsb3cuaHRtbAkocmV2aXNpb24gMCkK
KysrIGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZyYW1lLW9wdGlvbnMtcGFy
ZW50LWFsbG93LWZyb20tYWxsb3cuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMCBAQAor
PHNjcmlwdD4KKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcENoaWxkRnJhbWVzQXNUZXh0
KCk7CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcFJlc291cmNlTG9hZENhbGxiYWNrcygpOworICAg
IH0KKzwvc2NyaXB0PgorCis8cD5UaGVyZSBzaG91bGQgYmUgY29udGVudCBpbiB0aGUgaWZyYW1l
IGJlbG93PC9wPgorPGlmcmFtZSBzdHlsZT0id2lkdGg6NTAwcHg7IGhlaWdodDo1MDBweCIgc3Jj
PSJodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMv
eC1mcmFtZS1vcHRpb25zLWFsbG93LWZyb20tYWxsb3cuY2dpIj48L2lmcmFtZT4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>161116</attachid>
            <date>2012-08-28 19:12:11 -0700</date>
            <delta_ts>2013-04-12 09:20:05 -0700</delta_ts>
            <desc>Updated patch.</desc>
            <filename>webkit-23907-2.diff</filename>
            <type>text/plain</type>
            <size>6053</size>
            <attacher name="Phil Ames">philames</attacher>
            
              <data encoding="base64">SW5kZXg6IEZyYW1lTG9hZGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBGcmFtZUxvYWRlci5jcHAJKHJl
dmlzaW9uIDEyNTcwNykKKysrIEZyYW1lTG9hZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjg4
MiwxMiArMjg4MiwyMiBAQAogICAgIGlmIChlcXVhbElnbm9yaW5nQ2FzZShjb250ZW50LCAiZGVu
eSIpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAorICAgIFNlY3VyaXR5T3JpZ2luICp0b3BPcmln
aW4gPSB0b3BGcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKTsKICAgICBpZiAoZXF1
YWxJZ25vcmluZ0Nhc2UoY29udGVudCwgInNhbWVvcmlnaW4iKSkgewogICAgICAgICBSZWZQdHI8
U2VjdXJpdHlPcmlnaW4+IG9yaWdpbiA9IFNlY3VyaXR5T3JpZ2luOjpjcmVhdGUodXJsKTsKLSAg
ICAgICAgaWYgKCFvcmlnaW4tPmlzU2FtZVNjaGVtZUhvc3RQb3J0KHRvcEZyYW1lLT5kb2N1bWVu
dCgpLT5zZWN1cml0eU9yaWdpbigpKSkKKyAgICAgICAgaWYgKCFvcmlnaW4tPmlzU2FtZVNjaGVt
ZUhvc3RQb3J0KHRvcE9yaWdpbikpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAK
KyAgICBpZiAoY29udGVudC5zdGFydHNXaXRoKCJhbGxvdy1mcm9tICIsIGZhbHNlKSkgeworICAg
ICAgICBjb25zdCBzaXplX3Qgc3RhcnQgPSBzaXplb2YoImFsbG93LWZyb20gIikgLSAxOworICAg
ICAgICBSZWZQdHI8U2VjdXJpdHlPcmlnaW4+IG9yaWdpbiA9CisgICAgICAgICAgICBTZWN1cml0
eU9yaWdpbjo6Y3JlYXRlRnJvbVN0cmluZygKKyAgICAgICAgICAgICAgICBjb250ZW50LnN1YnN0
cmluZyhzdGFydCkpOworICAgICAgICBpZiAoIW9yaWdpbi0+aXNTYW1lU2NoZW1lSG9zdFBvcnQo
dG9wT3JpZ2luKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKwogICAgIHJldHVy
biBmYWxzZTsKIH0KIApJbmRleDogeC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWFs
bG93LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSB4LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFs
bG93LWZyb20tYWxsb3ctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgeC1mcmFtZS1vcHRp
b25zLXBhcmVudC1hbGxvdy1mcm9tLWFsbG93LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAg
LTAsMCArMSwxMSBAQAoraHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlv
bnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy5jZ2kg
LSB3aWxsU2VuZFJlcXVlc3QgPE5TVVJMUmVxdWVzdCBVUkwgaHR0cDovLzEyNy4wLjAuMTo4MDAw
L3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQt
YWxsb3ctZnJvbS1hbGxvdy5jZ2ksIG1haW4gZG9jdW1lbnQgVVJMIGh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ct
ZnJvbS1hbGxvdy5odG1sLCBodHRwIG1ldGhvZCBHRVQ+IHJlZGlyZWN0UmVzcG9uc2UgKG51bGwp
Cis8dW5rbm93bj4gLSBkaWRGaW5pc2hMb2FkaW5nCitodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2Vj
dXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxv
dy1mcm9tLWFsbG93LmNnaSAtIGRpZFJlY2VpdmVSZXNwb25zZSA8TlNVUkxSZXNwb25zZSBodHRw
Oi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFt
ZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWFsbG93LmNnaSwgaHR0cCBzdGF0dXMgY29kZSAy
MDA+CitUaGVyZSBzaG91bGQgYmUgY29udGVudCBpbiB0aGUgaWZyYW1lIGJlbG93CisKKworCist
LS0tLS0tLQorRnJhbWU6ICc8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMC0tPi0tPicKKy0tLS0t
LS0tCitQQVNTOiBUaGlzIHNob3VsZCBzaG93IHVwIGFzIHRoZSBwYXJlbnQgaXMgaW4gdGhlIHNh
bWUgb3JpZ2luLgpJbmRleDogeC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWRlbnku
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSB4LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tZGVu
eS5odG1sCShyZXZpc2lvbiAwKQorKysgeC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9t
LWRlbnkuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMCBAQAorPHNjcmlwdD4KKyAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcENoaWxkRnJhbWVzQXNUZXh0KCk7CisgICAgICAgIHRl
c3RSdW5uZXIuZHVtcFJlc291cmNlTG9hZENhbGxiYWNrcygpOworICAgIH0KKzwvc2NyaXB0Pgor
Cis8cD5UaGVyZSBzaG91bGQgYmUgbm8gY29udGVudCBpbiB0aGUgaWZyYW1lIGJlbG93PC9wPgor
PGlmcmFtZSBzdHlsZT0id2lkdGg6NTAwcHg7IGhlaWdodDo1MDBweCIgc3JjPSJodHRwOi8vbG9j
YWxob3N0OjgwMDAvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1vcHRp
b25zLXBhcmVudC1hbGxvdy1mcm9tLWRlbnkuY2dpIj48L2lmcmFtZT4KSW5kZXg6IHgtZnJhbWUt
b3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1kZW55LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSB4LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tZGVueS1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyB4LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tZGVueS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTMgQEAKK2h0dHA6Ly9sb2NhbGhvc3Q6
ODAwMC9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMtcGFy
ZW50LWFsbG93LWZyb20tZGVueS5jZ2kgLSB3aWxsU2VuZFJlcXVlc3QgPE5TVVJMUmVxdWVzdCBV
UkwgaHR0cDovL2xvY2FsaG9zdDo4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2Vz
L3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1kZW55LmNnaSwgbWFpbiBkb2N1bWVu
dCBVUkwgaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFt
ZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWRlbnkuaHRtbCwgaHR0cCBtZXRob2QgR0VUPiBy
ZWRpcmVjdFJlc3BvbnNlIChudWxsKQorPHVua25vd24+IC0gZGlkRmluaXNoTG9hZGluZworQ09O
U09MRSBNRVNTQUdFOiBSZWZ1c2VkIHRvIGRpc3BsYXkgZG9jdW1lbnQgYmVjYXVzZSBkaXNwbGF5
IGZvcmJpZGRlbiBieSBYLUZyYW1lLU9wdGlvbnMuCisKK2h0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9z
ZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFs
bG93LWZyb20tZGVueS5jZ2kgLSBkaWRGYWlsTG9hZGluZ1dpdGhFcnJvcjogPE5TRXJyb3IgZG9t
YWluIE5TVVJMRXJyb3JEb21haW4sIGNvZGUgLTk5OSwgZmFpbGluZyBVUkwgImh0dHA6Ly9sb2Nh
bGhvc3Q6ODAwMC9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZyYW1lLW9wdGlv
bnMtcGFyZW50LWFsbG93LWZyb20tZGVueS5jZ2kiPgorVGhlcmUgc2hvdWxkIGJlIG5vIGNvbnRl
bnQgaW4gdGhlIGlmcmFtZSBiZWxvdworCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnPCEtLWZyYW1l
UGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4nCistLS0tLS0tLQorCkluZGV4OiByZXNvdXJjZXMveC1m
cmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWFsbG93LmNnaQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBy
ZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWFsbG93LmNnaQkocmV2
aXNpb24gMCkKKysrIHJlc291cmNlcy94LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20t
YWxsb3cuY2dpCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDggQEAKKyMhL3Vzci9iaW4vcGVybCAt
d1QKK3VzZSBzdHJpY3Q7CisKK3ByaW50ICJDb250ZW50LVR5cGU6IHRleHQvaHRtbFxuIjsKK3By
aW50ICJDYWNoZS1Db250cm9sOiBuby1jYWNoZSwgbm8tc3RvcmVcbiI7CitwcmludCAiWC1GUkFN
RS1PUFRJT05TOiBhbGxvdy1mcm9tIGh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9cblxuIjsKKworcHJp
bnQgIjxwPlBBU1M6IFRoaXMgc2hvdWxkIHNob3cgdXAgYXMgdGhlIHBhcmVudCBpcyBpbiB0aGUg
c2FtZSBvcmlnaW4uPC9wPlxuIjsKClByb3BlcnR5IGNoYW5nZXMgb246IHJlc291cmNlcy94LWZy
YW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tYWxsb3cuY2dpCl9fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KQWRkZWQ6
IHN2bjpleGVjdXRhYmxlCiAgICsgKgoKSW5kZXg6IHJlc291cmNlcy94LWZyYW1lLW9wdGlvbnMt
cGFyZW50LWFsbG93LWZyb20tZGVueS5jZ2kKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gcmVzb3VyY2VzL3gtZnJh
bWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1kZW55LmNnaQkocmV2aXNpb24gMCkKKysrIHJl
c291cmNlcy94LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tZGVueS5jZ2kJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsOCBAQAorIyEvdXNyL2Jpbi9wZXJsIC13VAordXNlIHN0cmljdDsK
KworcHJpbnQgIkNvbnRlbnQtVHlwZTogdGV4dC9odG1sXG4iOworcHJpbnQgIkNhY2hlLUNvbnRy
b2w6IG5vLWNhY2hlLCBuby1zdG9yZVxuIjsKK3ByaW50ICJYLUZSQU1FLU9QVElPTlM6IGFsbG93
LWZyb20gaHR0cDovL25vdC1sb2NhbGhvc3Q6ODAwMC9cblxuIjsKKworcHJpbnQgIjxwPkZBSUw6
IFRoaXMgc2hvdWxkIG5vdCBzaG93IHVwLjwvcD5cbiI7CgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBy
ZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWRlbnkuY2dpCl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX18KQWRkZWQ6IHN2bjpleGVjdXRhYmxlCiAgICsgKgoKSW5kZXg6IHgtZnJhbWUtb3B0aW9u
cy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHgtZnJhbWUtb3B0
aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy5odG1sCShyZXZpc2lvbiAwKQorKysgeC1mcmFt
ZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWFsbG93Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsMTAgQEAKKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAg
ICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICB0ZXN0UnVubmVyLmR1bXBDaGls
ZEZyYW1lc0FzVGV4dCgpOworICAgICAgICB0ZXN0UnVubmVyLmR1bXBSZXNvdXJjZUxvYWRDYWxs
YmFja3MoKTsKKyAgICB9Cis8L3NjcmlwdD4KKworPHA+VGhlcmUgc2hvdWxkIGJlIGNvbnRlbnQg
aW4gdGhlIGlmcmFtZSBiZWxvdzwvcD4KKzxpZnJhbWUgc3R5bGU9IndpZHRoOjUwMHB4OyBoZWln
aHQ6NTAwcHgiIHNyYz0iaHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlv
bnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy5jZ2ki
PjwvaWZyYW1lPgo=
</data>
<flag name="review"
          id="171815"
          type_id="1"
          status="-"
          setter="abarth"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>197858</attachid>
            <date>2013-04-12 09:20:05 -0700</date>
            <delta_ts>2013-04-12 09:20:05 -0700</delta_ts>
            <desc>X-F-O Allow From implementation</desc>
            <filename>94836-v3.diff</filename>
            <type>text/plain</type>
            <size>10901</size>
            <attacher name="Phil Ames">philames</attacher>
            
              <data encoding="base64">SW5kZXg6IGxvYWRlci9GcmFtZUxvYWRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbG9hZGVyL0ZyYW1l
TG9hZGVyLmNwcAkocmV2aXNpb24gMTQ4MjUzKQorKysgbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMjg0OCw2ICsyODQ4LDE1IEBACiAgICAgICAgIHJldHVybiB0cnVl
OwogICAgIGNhc2UgWEZyYW1lT3B0aW9uc0FsbG93QWxsOgogICAgICAgICByZXR1cm4gZmFsc2U7
CisgICAgY2FzZSBYRnJhbWVPcHRpb25zQWxsb3dGcm9tOiB7CisgICAgICAgIGNvbnN0IHNpemVf
dCBzdGFydCA9IHNpemVvZigiYWxsb3ctZnJvbSIpIC0gMTsKKyAgICAgICAgaWYgKGNvbnRlbnQu
bGVuZ3RoKCkgPD0gc3RhcnQgfHwgIWlzQVNDSUlTcGFjZShjb250ZW50W3N0YXJ0XSkpCisgICAg
ICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgIFJlZlB0cjxTZWN1cml0eU9yaWdpbj4gb3JpZ2lu
ID0gU2VjdXJpdHlPcmlnaW46OmNyZWF0ZUZyb21TdHJpbmcoY29udGVudC5zdWJzdHJpbmcoc3Rh
cnQpKTsKKyAgICAgICAgaWYgKCFvcmlnaW4tPmlzU2FtZVNjaGVtZUhvc3RQb3J0KHRvcEZyYW1l
LT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVl
OworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQogICAgIGNhc2UgWEZyYW1lT3B0aW9uc0Nv
bmZsaWN0OgogICAgICAgICBtX2ZyYW1lLT5kb2N1bWVudCgpLT5hZGRDb25zb2xlTWVzc2FnZShK
U01lc3NhZ2VTb3VyY2UsIEVycm9yTWVzc2FnZUxldmVsLCAiTXVsdGlwbGUgJ1gtRnJhbWUtT3B0
aW9ucycgaGVhZGVycyB3aXRoIGNvbmZsaWN0aW5nIHZhbHVlcyAoJyIgKyBjb250ZW50ICsgIicp
IGVuY291bnRlcmVkIHdoZW4gbG9hZGluZyAnIiArIHVybC5lbGlkZWRTdHJpbmcoKSArICInLiBG
YWxsaW5nIGJhY2sgdG8gJ0RFTlknLiIsIHJlcXVlc3RJZGVudGlmaWVyKTsKICAgICAgICAgcmV0
dXJuIHRydWU7CkluZGV4OiBwbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5oCShyZXZpc2lvbiAxNDgyNTMpCisr
KyBwbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDYg
KzU3LDcgQEAKICAgICBYRnJhbWVPcHRpb25zRGVueSwKICAgICBYRnJhbWVPcHRpb25zU2FtZU9y
aWdpbiwKICAgICBYRnJhbWVPcHRpb25zQWxsb3dBbGwsCisgICAgWEZyYW1lT3B0aW9uc0FsbG93
RnJvbSwKICAgICBYRnJhbWVPcHRpb25zSW52YWxpZCwKICAgICBYRnJhbWVPcHRpb25zQ29uZmxp
Y3QKIH07CkluZGV4OiBwbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBwbGF0Zm9ybS9uZXR3b3JrL0hUVFBQYXJzZXJzLmNwcAkocmV2aXNpb24gMTQ4MjUzKQor
KysgcGxhdGZvcm0vbmV0d29yay9IVFRQUGFyc2Vycy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ3
Miw2ICs0NzIsOCBAQAogICAgICAgICAgICAgY3VycmVudFZhbHVlID0gWEZyYW1lT3B0aW9uc1Nh
bWVPcmlnaW47CiAgICAgICAgIGVsc2UgaWYgKGVxdWFsSWdub3JpbmdDYXNlKGN1cnJlbnRIZWFk
ZXIsICJhbGxvd2FsbCIpKQogICAgICAgICAgICAgY3VycmVudFZhbHVlID0gWEZyYW1lT3B0aW9u
c0FsbG93QWxsOworICAgICAgICBlbHNlIGlmIChjdXJyZW50SGVhZGVyLnN0YXJ0c1dpdGgoImFs
bG93LWZyb20iLCBmYWxzZSkpCisgICAgICAgICAgICBjdXJyZW50VmFsdWUgPSBYRnJhbWVPcHRp
b25zQWxsb3dGcm9tOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBjdXJyZW50VmFsdWUgPSBY
RnJhbWVPcHRpb25zSW52YWxpZDsKIApJbmRleDogaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVP
cHRpb25zL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJh
bWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy1leHBlY3RlZC50eHQJKHJldmlzaW9u
IDApCisrKyBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1vcHRpb25z
LXBhcmVudC1hbGxvdy1mcm9tLWFsbG93LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAs
MCArMSwxMSBAQAoraHR0cDovLzEyNy4wLjAuMTo4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMv
cmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy5jZ2kgLSB3
aWxsU2VuZFJlcXVlc3QgPE5TVVJMUmVxdWVzdCBVUkwgaHR0cDovLzEyNy4wLjAuMTo4MDAwL3Nl
Y3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxs
b3ctZnJvbS1hbGxvdy5jZ2ksIG1haW4gZG9jdW1lbnQgVVJMIGh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJv
bS1hbGxvdy5odG1sLCBodHRwIG1ldGhvZCBHRVQ+IHJlZGlyZWN0UmVzcG9uc2UgKG51bGwpCito
dHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1m
cmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWFsbG93LmNnaSAtIGRpZFJlY2VpdmVSZXNw
b25zZSA8TlNVUkxSZXNwb25zZSBodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvWEZyYW1l
T3B0aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWFsbG93
LmNnaSwgaHR0cCBzdGF0dXMgY29kZSAyMDA+CitodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJp
dHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1m
cm9tLWFsbG93LmNnaSAtIGRpZEZpbmlzaExvYWRpbmcKK1RoZXJlIHNob3VsZCBiZSBjb250ZW50
IGluIHRoZSBpZnJhbWUgYmVsb3cKKworCisKKy0tLS0tLS0tCitGcmFtZTogJzwhLS1mcmFtZVBh
dGggLy88IS0tZnJhbWUwLS0+LS0+JworLS0tLS0tLS0KK1BBU1M6IFRoaXMgc2hvdWxkIHNob3cg
dXAgYXMgdGhlIHBhcmVudCBpcyBpbiB0aGUgcGVybWl0dGVkIG9yaWdpbi4KSW5kZXg6IGh0dHAv
dGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZyYW1lLW9wdGlvbnMtYWxsb3ctZnJvbS1m
YWlsLWNsb3NlZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1l
T3B0aW9ucy94LWZyYW1lLW9wdGlvbnMtYWxsb3ctZnJvbS1mYWlsLWNsb3NlZC5odG1sCShyZXZp
c2lvbiAwKQorKysgaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0
aW9ucy1hbGxvdy1mcm9tLWZhaWwtY2xvc2VkLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MTAgQEAKKzxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgIHRl
c3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgICB0ZXN0UnVubmVyLmR1bXBDaGlsZEZyYW1l
c0FzVGV4dCgpOworICAgICAgICB0ZXN0UnVubmVyLmR1bXBSZXNvdXJjZUxvYWRDYWxsYmFja3Mo
KTsKKyAgICB9Cis8L3NjcmlwdD4KKworPHA+VGhlcmUgc2hvdWxkIGJlIG5vIGNvbnRlbnQgaW4g
dGhlIGlmcmFtZSBiZWxvdzwvcD4KKzxpZnJhbWUgc3R5bGU9IndpZHRoOjUwMHB4OyBoZWlnaHQ6
NTAwcHgiIHNyYz0iaHR0cDovL2xvY2FsaG9zdDo4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMv
cmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1hbGxvdy1mcm9tLWZhaWwtY2xvc2VkLmNnaSI+PC9p
ZnJhbWU+CkluZGV4OiBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1v
cHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWRlbnktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZyYW1lLW9wdGlvbnMtcGFyZW50
LWFsbG93LWZyb20tZGVueS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBodHRwL3Rlc3Rz
L3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9t
LWRlbnktZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDExIEBACitodHRwOi8v
bG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1v
cHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWRlbnkuY2dpIC0gd2lsbFNlbmRSZXF1ZXN0IDxOU1VS
TFJlcXVlc3QgVVJMIGh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9zZWN1cml0eS9YRnJhbWVPcHRpb25z
L3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tZGVueS5jZ2ksIG1h
aW4gZG9jdW1lbnQgVVJMIGh0dHA6Ly8xMjcuMC4wLjE6ODAwMC9zZWN1cml0eS9YRnJhbWVPcHRp
b25zL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1kZW55Lmh0bWwsIGh0dHAgbWV0
aG9kIEdFVD4gcmVkaXJlY3RSZXNwb25zZSAobnVsbCkKK0NPTlNPTEUgTUVTU0FHRTogUmVmdXNl
ZCB0byBkaXNwbGF5ICdodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvWEZyYW1lT3B0aW9u
cy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWRlbnkuY2dpJyBp
biBhIGZyYW1lIGJlY2F1c2UgaXQgc2V0ICdYLUZyYW1lLU9wdGlvbnMnIHRvICdhbGxvdy1mcm9t
IGh0dHA6Ly9ub3QtbG9jYWxob3N0OjgwMDAvJy4KK2h0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9zZWN1
cml0eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93
LWZyb20tZGVueS5jZ2kgLSBkaWRGYWlsTG9hZGluZ1dpdGhFcnJvcjogPE5TRXJyb3IgZG9tYWlu
IE5TVVJMRXJyb3JEb21haW4sIGNvZGUgLTk5OSwgZmFpbGluZyBVUkwgImh0dHA6Ly9sb2NhbGhv
c3Q6ODAwMC9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMt
cGFyZW50LWFsbG93LWZyb20tZGVueS5jZ2kiPgorVGhlcmUgc2hvdWxkIGJlIG5vIGNvbnRlbnQg
aW4gdGhlIGlmcmFtZSBiZWxvdworCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnPCEtLWZyYW1lUGF0
aCAvLzwhLS1mcmFtZTAtLT4tLT4nCistLS0tLS0tLQorCkluZGV4OiBodHRwL3Rlc3RzL3NlY3Vy
aXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ct
ZnJvbS1kZW55LmNnaQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9w
dGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1kZW55LmNn
aQkocmV2aXNpb24gMCkKKysrIGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNv
dXJjZXMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWRlbnkuY2dpCShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDggQEAKKyMhL3Vzci9iaW4vcGVybCAtd1QKK3VzZSBzdHJpY3Q7CisK
K3ByaW50ICJDb250ZW50LVR5cGU6IHRleHQvaHRtbFxuIjsKK3ByaW50ICJDYWNoZS1Db250cm9s
OiBuby1jYWNoZSwgbm8tc3RvcmVcbiI7CitwcmludCAiWC1GUkFNRS1PUFRJT05TOiBhbGxvdy1m
cm9tIGh0dHA6Ly9ub3QtbG9jYWxob3N0OjgwMDAvXG5cbiI7CisKK3ByaW50ICI8cD5GQUlMOiBU
aGlzIHNob3VsZCBub3Qgc2hvdyB1cC48L3A+XG4iOwoKUHJvcGVydHkgY2hhbmdlcyBvbjogaHR0
cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMt
cGFyZW50LWFsbG93LWZyb20tZGVueS5jZ2kKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFi
bGUKICAgKyAqCgpJbmRleDogaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jlc291
cmNlcy94LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tYWxsb3cuY2dpCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFt
ZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWFsbG93LmNnaQkocmV2aXNpb24gMCkKKysrIGh0
dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25z
LXBhcmVudC1hbGxvdy1mcm9tLWFsbG93LmNnaQkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw4IEBA
CisjIS91c3IvYmluL3BlcmwgLXdUCit1c2Ugc3RyaWN0OworCitwcmludCAiQ29udGVudC1UeXBl
OiB0ZXh0L2h0bWxcbiI7CitwcmludCAiQ2FjaGUtQ29udHJvbDogbm8tY2FjaGUsIG5vLXN0b3Jl
XG4iOworcHJpbnQgIlgtRlJBTUUtT1BUSU9OUzogYWxsb3ctZnJvbSBodHRwOi8vMTI3LjAuMC4x
OjgwMDAvXG5cbiI7CisKK3ByaW50ICI8cD5QQVNTOiBUaGlzIHNob3VsZCBzaG93IHVwIGFzIHRo
ZSBwYXJlbnQgaXMgaW4gdGhlIHBlcm1pdHRlZCBvcmlnaW4uPC9wPlxuIjsKClByb3BlcnR5IGNo
YW5nZXMgb246IGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1m
cmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWFsbG93LmNnaQpfX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkFkZGVk
OiBzdm46ZXhlY3V0YWJsZQogICArICoKCkluZGV4OiBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFt
ZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1hbGxvdy1mcm9tLWZhaWwtY2xvc2Vk
LmNnaQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVz
b3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1hbGxvdy1mcm9tLWZhaWwtY2xvc2VkLmNnaQkocmV2aXNp
b24gMCkKKysrIGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1m
cmFtZS1vcHRpb25zLWFsbG93LWZyb20tZmFpbC1jbG9zZWQuY2dpCShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDggQEAKKyMhL3Vzci9iaW4vcGVybCAtd1QKK3VzZSBzdHJpY3Q7CisKK3ByaW50ICJD
b250ZW50LVR5cGU6IHRleHQvaHRtbFxuIjsKK3ByaW50ICJDYWNoZS1Db250cm9sOiBuby1jYWNo
ZSwgbm8tc3RvcmVcbiI7CitwcmludCAiWC1GUkFNRS1PUFRJT05TOiBhbGxvdy1mcm9tXG5cbiI7
CisKK3ByaW50ICI8cD5GQUlMOiBUaGlzIHNob3VsZCBub3Qgc2hvdyB1cC48L3A+XG4iOwoKUHJv
cGVydHkgY2hhbmdlcyBvbjogaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3Jlc291
cmNlcy94LWZyYW1lLW9wdGlvbnMtYWxsb3ctZnJvbS1mYWlsLWNsb3NlZC5jZ2kKX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
XwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKICAgKyAqCgpJbmRleDogaHR0cC90ZXN0cy9zZWN1cml0
eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1wYXJlbnQtYWxsb3ctZnJvbS1hbGxvdy5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZy
YW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tYWxsb3cuaHRtbAkocmV2aXNpb24gMCkKKysr
IGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZyYW1lLW9wdGlvbnMtcGFyZW50
LWFsbG93LWZyb20tYWxsb3cuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMCBAQAorPHNj
cmlwdD4KKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5lci5k
dW1wQXNUZXh0KCk7CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcENoaWxkRnJhbWVzQXNUZXh0KCk7
CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcFJlc291cmNlTG9hZENhbGxiYWNrcygpOworICAgIH0K
Kzwvc2NyaXB0PgorCis8cD5UaGVyZSBzaG91bGQgYmUgY29udGVudCBpbiB0aGUgaWZyYW1lIGJl
bG93PC9wPgorPGlmcmFtZSBzdHlsZT0id2lkdGg6NTAwcHg7IGhlaWdodDo1MDBweCIgc3JjPSJo
dHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9yZXNvdXJjZXMveC1m
cmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWFsbG93LmNnaSI+PC9pZnJhbWU+CkluZGV4
OiBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1vcHRpb25zLXBhcmVu
dC1hbGxvdy1mcm9tLWRlbnkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBodHRwL3Rlc3RzL3NlY3VyaXR5
L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1vcHRpb25zLXBhcmVudC1hbGxvdy1mcm9tLWRlbnkuaHRt
bAkocmV2aXNpb24gMCkKKysrIGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZy
YW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tZGVueS5odG1sCShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDEwIEBACis8c2NyaXB0PgorICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAg
ICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQ2hp
bGRGcmFtZXNBc1RleHQoKTsKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wUmVzb3VyY2VMb2FkQ2Fs
bGJhY2tzKCk7CisgICAgfQorPC9zY3JpcHQ+CisKKzxwPlRoZXJlIHNob3VsZCBiZSBubyBjb250
ZW50IGluIHRoZSBpZnJhbWUgYmVsb3c8L3A+Cis8aWZyYW1lIHN0eWxlPSJ3aWR0aDo1MDBweDsg
aGVpZ2h0OjUwMHB4IiBzcmM9Imh0dHA6Ly9sb2NhbGhvc3Q6ODAwMC9zZWN1cml0eS9YRnJhbWVP
cHRpb25zL3Jlc291cmNlcy94LWZyYW1lLW9wdGlvbnMtcGFyZW50LWFsbG93LWZyb20tZGVueS5j
Z2kiPjwvaWZyYW1lPgpJbmRleDogaHR0cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gt
ZnJhbWUtb3B0aW9ucy1hbGxvdy1mcm9tLWZhaWwtY2xvc2VkLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBodHRwL3Rlc3RzL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMveC1mcmFtZS1vcHRpb25z
LWFsbG93LWZyb20tZmFpbC1jbG9zZWQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgaHR0
cC90ZXN0cy9zZWN1cml0eS9YRnJhbWVPcHRpb25zL3gtZnJhbWUtb3B0aW9ucy1hbGxvdy1mcm9t
LWZhaWwtY2xvc2VkLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMSBAQAor
aHR0cDovL2xvY2FsaG9zdDo4MDAwL3NlY3VyaXR5L1hGcmFtZU9wdGlvbnMvcmVzb3VyY2VzL3gt
ZnJhbWUtb3B0aW9ucy1hbGxvdy1mcm9tLWZhaWwtY2xvc2VkLmNnaSAtIHdpbGxTZW5kUmVxdWVz
dCA8TlNVUkxSZXF1ZXN0IFVSTCBodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvWEZyYW1l
T3B0aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLWFsbG93LWZyb20tZmFpbC1jbG9zZWQu
Y2dpLCBtYWluIGRvY3VtZW50IFVSTCBodHRwOi8vMTI3LjAuMC4xOjgwMDAvc2VjdXJpdHkvWEZy
YW1lT3B0aW9ucy94LWZyYW1lLW9wdGlvbnMtYWxsb3ctZnJvbS1mYWlsLWNsb3NlZC5odG1sLCBo
dHRwIG1ldGhvZCBHRVQ+IHJlZGlyZWN0UmVzcG9uc2UgKG51bGwpCitDT05TT0xFIE1FU1NBR0U6
IFJlZnVzZWQgdG8gZGlzcGxheSAnaHR0cDovL2xvY2FsaG9zdDo4MDAwL3NlY3VyaXR5L1hGcmFt
ZU9wdGlvbnMvcmVzb3VyY2VzL3gtZnJhbWUtb3B0aW9ucy1hbGxvdy1mcm9tLWZhaWwtY2xvc2Vk
LmNnaScgaW4gYSBmcmFtZSBiZWNhdXNlIGl0IHNldCAnWC1GcmFtZS1PcHRpb25zJyB0byAnYWxs
b3ctZnJvbScuCitodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy9y
ZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLWFsbG93LWZyb20tZmFpbC1jbG9zZWQuY2dpIC0gZGlk
RmFpbExvYWRpbmdXaXRoRXJyb3I6IDxOU0Vycm9yIGRvbWFpbiBOU1VSTEVycm9yRG9tYWluLCBj
b2RlIC05OTksIGZhaWxpbmcgVVJMICJodHRwOi8vbG9jYWxob3N0OjgwMDAvc2VjdXJpdHkvWEZy
YW1lT3B0aW9ucy9yZXNvdXJjZXMveC1mcmFtZS1vcHRpb25zLWFsbG93LWZyb20tZmFpbC1jbG9z
ZWQuY2dpIj4KK1RoZXJlIHNob3VsZCBiZSBubyBjb250ZW50IGluIHRoZSBpZnJhbWUgYmVsb3cK
KworCisKKy0tLS0tLS0tCitGcmFtZTogJzwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUwLS0+LS0+
JworLS0tLS0tLS0KKwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>