<?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>210739</bug_id>
          
          <creation_ts>2020-04-20 03:10:00 -0700</creation_ts>
          <short_desc>[SOUP] Disable HSTS for requests when cookies will be blocked by ITP</short_desc>
          <delta_ts>2020-06-14 02:08:15 -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>WebKit2</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=210184</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk, InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>csaavedra</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wilander</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1643407</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-04-20 03:10:00 -0700</bug_when>
    <thetext>&quot;When the original request is HTTP, the request will have its cookies blocked, and has been upgraded by the HSTS mechanism, downgrade back to HTTP, apply all other rules in WebKit that might again upgrade it such as Upgrade Insecure Requests or potential/future auto-upgrade of mixed content, and send out.&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643408</commentid>
    <comment_count>1</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-04-20 03:12:59 -0700</bug_when>
    <thetext>In the case of soup, I think a request is upgraded from http to https only by HSTS. Why do we wait for HSTS to upgrade the request to downgrade it again? Why not just ignore/disable HSTS when the request is created?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644299</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-04-22 08:25:19 -0700</bug_when>
    <thetext>That&apos;s fine. It doesn&apos;t make any difference, since that&apos;s just an internal implementation detail.

The point is simply that prevalent domains should not have HSTS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644303</commentid>
    <comment_count>3</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-04-22 08:37:50 -0700</bug_when>
    <thetext>Then I&apos;ll just disable HSTS for requests when cookies are going to be blocked, since that&apos;s a lot easier than upgrade -&gt; downgrade -&gt; request again with HSTS ignored. I wonder why cocoa does it this way, though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644304</commentid>
    <comment_count>4</comment_count>
    <who name="Claudio Saavedra">csaavedra</who>
    <bug_when>2020-04-22 08:39:54 -0700</bug_when>
    <thetext>I think there was something like that in one of the other ports&apos; implementations of the upgrade mechanism, so we might want to improve that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644317</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-04-22 08:54:25 -0700</bug_when>
    <thetext>(In reply to Carlos Garcia Campos from comment #3)
&gt; Then I&apos;ll just disable HSTS for requests when cookies are going to be
&gt; blocked, since that&apos;s a lot easier than upgrade -&gt; downgrade -&gt; request
&gt; again with HSTS ignored. I wonder why cocoa does it this way, though.

Yes, that sounds correct. What you&apos;re trying to do is implement Mitigation 2 from this blog post: https://webkit.org/blog/8146/protecting-against-hsts-abuse/

&quot;&quot;&quot;
We modified WebKit so that when an insecure third-party subresource load from a domain for which we block cookies (such as an invisible tracking pixel) had been upgraded to an authenticated connection because of dynamic HSTS, we ignore the HSTS upgrade request and just use the original URL. This causes HSTS super cookies to become a bit string consisting only of zeroes.
&quot;&quot;&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644324</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-04-22 08:59:05 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #2)
&gt; The point is simply that prevalent domains should not have HSTS.

Well one thing has changed: nowadays ITP blocks *all* third-party cookies. I guess this means HSTS should be disabled for all third-party resources?

Or does Safari still allow HSTS upgrades on non-prevalent third-party domains? We might investigate what Safari does. But it probably shouldn&apos;t, because that would be subject to the same issues discussed in https://webkit.org/blog/9661/preventing-tracking-prevention-tracking/. (Note that ITP has since tightened &quot;all third-party cookies blocked on websites without prior user interaction&quot; to &quot;all third-party cookies blocked without storage access API request.&quot;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644618</commentid>
    <comment_count>7</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-04-22 18:52:28 -0700</bug_when>
    <thetext>(In reply to Carlos Garcia Campos from comment #1)
&gt; In the case of soup, I think a request is upgraded from http to https only
&gt; by HSTS. Why do we wait for HSTS to upgrade the request to downgrade it
&gt; again? Why not just ignore/disable HSTS when the request is created?

Are you saying UIR support is Cocoa-specific? That would surprise me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644619</commentid>
    <comment_count>8</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-04-22 19:00:58 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #6)
&gt; (In reply to Michael Catanzaro from comment #2)
&gt; &gt; The point is simply that prevalent domains should not have HSTS.
&gt; 
&gt; Well one thing has changed: nowadays ITP blocks *all* third-party cookies. I
&gt; guess this means HSTS should be disabled for all third-party resources?
&gt; 
&gt; Or does Safari still allow HSTS upgrades on non-prevalent third-party
&gt; domains? We might investigate what Safari does. But it probably shouldn&apos;t,
&gt; because that would be subject to the same issues discussed in
&gt; https://webkit.org/blog/9661/preventing-tracking-prevention-tracking/. (Note
&gt; that ITP has since tightened &quot;all third-party cookies blocked on websites
&gt; without prior user interaction&quot; to &quot;all third-party cookies blocked without
&gt; storage access API request.&quot;)

Since all third-party cookies are blocked by default and not based on classification, HSTS is also blocked across the board.

Two things to keep in mind here:

1. Entries on the HSTS preload list should not be downgraded since they are not stateful and thus cannot be used for cross-site tracking purposes. Only downgrade dynamic HSTS.

2. Make sure you also cover HSTS on redirects. This turned out to be the trickiest part for us because it required a new callback from the HTTP layer saying “This redirect was actually to HTTP but I already upgraded it to HTTPS. Do you want to change that?” This is different from the initial request which WebKit sees *before* it goes to the HTTP layer where an upgrade may happen. I.e. you can be proactive on the initial request but need to be reactive on redirects.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644690</commentid>
    <comment_count>9</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-04-22 22:33:53 -0700</bug_when>
    <thetext>(In reply to John Wilander from comment #7)
&gt; (In reply to Carlos Garcia Campos from comment #1)
&gt; &gt; In the case of soup, I think a request is upgraded from http to https only
&gt; &gt; by HSTS. Why do we wait for HSTS to upgrade the request to downgrade it
&gt; &gt; again? Why not just ignore/disable HSTS when the request is created?
&gt; 
&gt; Are you saying UIR support is Cocoa-specific? That would surprise me.

I don&apos;t even know what UIR is :-P</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644705</commentid>
    <comment_count>10</comment_count>
    <who name="Claudio Saavedra">csaavedra</who>
    <bug_when>2020-04-23 01:06:19 -0700</bug_when>
    <thetext>The Upgrade-Insecure-Request header, I suppose.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644758</commentid>
    <comment_count>11</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-04-23 07:22:07 -0700</bug_when>
    <thetext>(In reply to Claudio Saavedra from comment #10)
&gt; The Upgrade-Insecure-Request header, I suppose.

Yes, Upgrade Insecure Requests, as mentioned in the quote in the bug description.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644764</commentid>
    <comment_count>12</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-04-23 07:35:21 -0700</bug_when>
    <thetext>That is: the UIR header always wins, since, if used, it eliminates the potential for HSTS abuse. We don&apos;t want to wind up downgrading those requests to HTTP even if they would otherwise be downgraded by HSTS Mitigation 2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1661898</commentid>
    <comment_count>13</comment_count>
      <attachid>401716</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-06-12 02:41:46 -0700</bug_when>
    <thetext>Created attachment 401716
Patch

I think this is enough in the case of soup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1661900</commentid>
    <comment_count>14</comment_count>
      <attachid>401717</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-06-12 02:57:41 -0700</bug_when>
    <thetext>Created attachment 401717
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1661901</commentid>
    <comment_count>15</comment_count>
      <attachid>401718</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-06-12 03:00:20 -0700</bug_when>
    <thetext>Created attachment 401718
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1661907</commentid>
    <comment_count>16</comment_count>
      <attachid>401718</attachid>
    <who name="Claudio Saavedra">csaavedra</who>
    <bug_when>2020-06-12 05:11:47 -0700</bug_when>
    <thetext>Comment on attachment 401718
Patch

Informal review here. We were using .allowCookies() because we didn&apos;t have ITP back at the time. It looks to me like this was the right thing to do from the beginning, so the patch looks godo to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1661919</commentid>
    <comment_count>17</comment_count>
      <attachid>401718</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2020-06-12 06:50:35 -0700</bug_when>
    <thetext>Comment on attachment 401718
Patch

I think this is correct.

The only trick here is that we want Upgrade Insecure Requests to take precedence, so the request should still be upgraded to HTTPS if that&apos;s used even if cookies are blocked. But that should be handled... somewhere else... so it should be fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1662467</commentid>
    <comment_count>18</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2020-06-14 02:07:23 -0700</bug_when>
    <thetext>Committed r263010: &lt;https://trac.webkit.org/changeset/263010&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1662468</commentid>
    <comment_count>19</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-06-14 02:08:15 -0700</bug_when>
    <thetext>&lt;rdar://problem/64338649&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>401716</attachid>
            <date>2020-06-12 02:41:46 -0700</date>
            <delta_ts>2020-06-12 02:57:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-hsts-itp.diff</filename>
            <type>text/plain</type>
            <size>1421</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggMjYwY2RlNjUzZjA1Li5jY2FjNWUwMDgxNWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTUgQEAKKzIwMjAtMDYtMTIgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtTT1VQXSBEaXNhYmxlIEhTVFMgZm9yIHJlcXVlc3RzIHdoZW4g
Y29va2llcyB3aWxsIGJlIGJsb2NrZWQgYnkgSVRQCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTA3MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgKE9PUFMhKS4KKworICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL3NvdXAvTmV0d29ya0RhdGFUYXNrU291cC5jcHA6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza1NvdXA6OnNob3VsZEFsbG93SFNUU1Byb3RvY29sVXBncmFk
ZSBjb25zdCk6CisKIDIwMjAtMDYtMTIgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBp
Z2FsaWEuY29tPgogCiAgICAgICAgIFtHVEs0XSBNYWtlIFdlYkRyaXZlciB3b3JrCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3NvdXAvTmV0d29ya0RhdGFUYXNrU291
cC5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3NvdXAvTmV0d29ya0RhdGFUYXNr
U291cC5jcHAKaW5kZXggZWY3NzBkMjhiNjY0Li41NGZjNGMyMDY1NGYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc291cC9OZXR3b3JrRGF0YVRhc2tTb3VwLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3NvdXAvTmV0d29ya0RhdGFUYXNrU291
cC5jcHAKQEAgLTExMzMsNyArMTEzMyw4IEBAIGJvb2wgTmV0d29ya0RhdGFUYXNrU291cDo6c2hv
dWxkQWxsb3dIU1RTUHJvdG9jb2xVcGdyYWRlKCkgY29uc3QKICAgICAvLyBGb2xsb3cgQXBwbGUn
cyBIU1RTIGFidXNlIG1pdGlnYXRpb24gMjoKICAgICAvLyAiSWdub3JlIEhTVFMgU3RhdGUgZm9y
IFN1YnJlc291cmNlIFJlcXVlc3RzIHRvIEJsb2NrZWQgRG9tYWlucyIKICAgICByZXR1cm4gaXNU
b3BMZXZlbE5hdmlnYXRpb24oKQotICAgICAgICB8fCBtX2N1cnJlbnRSZXF1ZXN0LmFsbG93Q29v
a2llcygpOworICAgICAgICB8fCBtX2N1cnJlbnRSZXF1ZXN0LmFsbG93Q29va2llcygpCisgICAg
ICAgIHx8IG1faXNCbG9ja2luZ0Nvb2tpZXM7CiB9CiAKIHZvaWQgTmV0d29ya0RhdGFUYXNrU291
cDo6cHJvdG9jb2xVcGdyYWRlZFZpYUhTVFMoU291cE1lc3NhZ2UqIHNvdXBNZXNzYWdlKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>401717</attachid>
            <date>2020-06-12 02:57:41 -0700</date>
            <delta_ts>2020-06-12 03:00:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-hsts-itp.diff</filename>
            <type>text/plain</type>
            <size>1378</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggMjYwY2RlNjUzZjA1Li5jY2FjNWUwMDgxNWIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTUgQEAKKzIwMjAtMDYtMTIgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtTT1VQXSBEaXNhYmxlIEhTVFMgZm9yIHJlcXVlc3RzIHdoZW4g
Y29va2llcyB3aWxsIGJlIGJsb2NrZWQgYnkgSVRQCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTA3MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgKE9PUFMhKS4KKworICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL3NvdXAvTmV0d29ya0RhdGFUYXNrU291cC5jcHA6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza1NvdXA6OnNob3VsZEFsbG93SFNUU1Byb3RvY29sVXBncmFk
ZSBjb25zdCk6CisKIDIwMjAtMDYtMTIgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBp
Z2FsaWEuY29tPgogCiAgICAgICAgIFtHVEs0XSBNYWtlIFdlYkRyaXZlciB3b3JrCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3NvdXAvTmV0d29ya0RhdGFUYXNrU291
cC5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3NvdXAvTmV0d29ya0RhdGFUYXNr
U291cC5jcHAKaW5kZXggZWY3NzBkMjhiNjY0Li4xOGEyMjljMWE0NDcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc291cC9OZXR3b3JrRGF0YVRhc2tTb3VwLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3NvdXAvTmV0d29ya0RhdGFUYXNrU291
cC5jcHAKQEAgLTExMzMsNyArMTEzMyw3IEBAIGJvb2wgTmV0d29ya0RhdGFUYXNrU291cDo6c2hv
dWxkQWxsb3dIU1RTUHJvdG9jb2xVcGdyYWRlKCkgY29uc3QKICAgICAvLyBGb2xsb3cgQXBwbGUn
cyBIU1RTIGFidXNlIG1pdGlnYXRpb24gMjoKICAgICAvLyAiSWdub3JlIEhTVFMgU3RhdGUgZm9y
IFN1YnJlc291cmNlIFJlcXVlc3RzIHRvIEJsb2NrZWQgRG9tYWlucyIKICAgICByZXR1cm4gaXNU
b3BMZXZlbE5hdmlnYXRpb24oKQotICAgICAgICB8fCBtX2N1cnJlbnRSZXF1ZXN0LmFsbG93Q29v
a2llcygpOworICAgICAgICAmJiAhbV9pc0Jsb2NraW5nQ29va2llczsKIH0KIAogdm9pZCBOZXR3
b3JrRGF0YVRhc2tTb3VwOjpwcm90b2NvbFVwZ3JhZGVkVmlhSFNUUyhTb3VwTWVzc2FnZSogc291
cE1lc3NhZ2UpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>401718</attachid>
            <date>2020-06-12 03:00:20 -0700</date>
            <delta_ts>2020-06-12 06:50:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-hsts-itp.diff</filename>
            <type>text/plain</type>
            <size>1345</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggMjYwY2RlNjUzZjA1Li4wNGI0ODhiNTBkYzkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTMgQEAKKzIwMjAtMDYtMTIgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtTT1VQXSBEaXNhYmxlIEhTVFMgZm9yIHJlcXVlc3RzIHdoZW4g
Y29va2llcyB3aWxsIGJlIGJsb2NrZWQgYnkgSVRQCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTA3MzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3NvdXAvTmV0d29ya0RhdGFU
YXNrU291cC5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtEYXRhVGFza1NvdXA6OnNob3Vs
ZEFsbG93SFNUU1Byb3RvY29sVXBncmFkZSBjb25zdCk6CisKIDIwMjAtMDYtMTIgIENhcmxvcyBH
YXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEs0XSBNYWtl
IFdlYkRyaXZlciB3b3JrCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L3NvdXAvTmV0d29ya0RhdGFUYXNrU291cC5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3NvdXAvTmV0d29ya0RhdGFUYXNrU291cC5jcHAKaW5kZXggZWY3NzBkMjhiNjY0Li4xOGEy
MjljMWE0NDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvc291cC9O
ZXR3b3JrRGF0YVRhc2tTb3VwLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L3NvdXAvTmV0d29ya0RhdGFUYXNrU291cC5jcHAKQEAgLTExMzMsNyArMTEzMyw3IEBAIGJvb2wg
TmV0d29ya0RhdGFUYXNrU291cDo6c2hvdWxkQWxsb3dIU1RTUHJvdG9jb2xVcGdyYWRlKCkgY29u
c3QKICAgICAvLyBGb2xsb3cgQXBwbGUncyBIU1RTIGFidXNlIG1pdGlnYXRpb24gMjoKICAgICAv
LyAiSWdub3JlIEhTVFMgU3RhdGUgZm9yIFN1YnJlc291cmNlIFJlcXVlc3RzIHRvIEJsb2NrZWQg
RG9tYWlucyIKICAgICByZXR1cm4gaXNUb3BMZXZlbE5hdmlnYXRpb24oKQotICAgICAgICB8fCBt
X2N1cnJlbnRSZXF1ZXN0LmFsbG93Q29va2llcygpOworICAgICAgICAmJiAhbV9pc0Jsb2NraW5n
Q29va2llczsKIH0KIAogdm9pZCBOZXR3b3JrRGF0YVRhc2tTb3VwOjpwcm90b2NvbFVwZ3JhZGVk
VmlhSFNUUyhTb3VwTWVzc2FnZSogc291cE1lc3NhZ2UpCg==
</data>
<flag name="review"
          id="417141"
          type_id="1"
          status="+"
          setter="mcatanzaro"
    />
          </attachment>
      

    </bug>

</bugzilla>