<html>
    <head>
      <base href="https://bugs.webkit.org/">
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Potential privacy issue: DNS prefetching can be re-enabled"
   href="https://bugs.webkit.org/show_bug.cgi?id=182924#c16">Comment # 16</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Potential privacy issue: DNS prefetching can be re-enabled"
   href="https://bugs.webkit.org/show_bug.cgi?id=182924">bug 182924</a>
              from <span class="vcard"><a class="email" href="mailto:mcrha@redhat.com" title="Milan Crha <mcrha@redhat.com>"> <span class="fn">Milan Crha</span></a>
</span></b>
        <pre>(In reply to Chris Dumez from <a href="show_bug.cgi?id=182924#c10">comment #10</a>)
<span class="quote">> (In reply to Michael Catanzaro from <a href="show_bug.cgi?id=182924#c9">comment #9</a>)
> > I also think early return would be cleaner.
> > 
> > Chris, you're OK with changing the semantics of this HTTP header to only
> > allow disabling prefetch, never enabling it? I think we need to; the bug
> > report is valid.

> I think the change makes sense. Client setting should override anything else
> IMHO.</span >

The suggestion in <a href="show_bug.cgi?id=182924#c15">comment #15</a> goes against the above quoted part, from my point of view. Especially when we agree that the web page should not ever enable the DNS prefetch on its own when user settings is OFF. I look on it this way:

   - settings = OFF, then DNS prefetch is kept off whatever the page or
     response headers will claim
   - settings = ON, then the DNS prefetch is enabled and the page can only
     disable the prefetch; when the page uses "on", then it won't change
     anything (prefetch is already enabled)
     * if the page (or the transport headers) disable DNS prefetching
       and then the page "changes its mind" and will try to enable it again,
       then the code with m_haveExplicitlyDisabledDNSPrefetch doesn't
       make much sense to me, because in that case WebKit would try to dictate
       some "workflow" to the web pages, which looks odd, because WebKit has
       the settings to let the clients (users of WebKit) influence the DNS
       prefetching behaviour, and the user already said it's fine to do DNS
       prefetching, thus it doesn't matter whether the page disabled and then
       enabled it again (or ten times).

I think that the code complexity with m_haveExplicitlyDisabledDNSPrefetch is not needed, unless you are afraid of (or you want to cover) some header injection on the response headers/page content(/iframes?), but even then the last word has the WebKit client through the settings and if it is fine with DNS prefetching, then let the page do it or change it on/off to its likings.</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>