[prev in list] [next in list] [prev in thread] [next in thread] 

List:       webkit-unassigned
Subject:    [Webkit-unassigned] [Bug 139097] New: Problem in modify a request of a redirected page in resource-r
From:       bugzilla-daemon () webkit ! org
Date:       2014-11-29 9:51:11
Message-ID: bug-139097-2851 () https ! bugs ! webkit ! org/
[Download RAW message or body]

--1417254699.e0aDea0.12173
Date: Sat, 29 Nov 2014 01:51:39 -0800
MIME-Version: 1.0
Content-Type: text/plain

https://bugs.webkit.org/show_bug.cgi?id=139097

            Bug ID: 139097
           Summary: Problem in modify a request of a redirected page in
                    resource-request-starting signal
    Classification: Unclassified
           Product: WebKit
           Version: 420+
          Hardware: Unspecified
                OS: Other
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Page Loading
          Assignee: webkit-unassigned@lists.webkit.org
          Reporter: semarie-openbsd@latrappe.fr

Hi,

According to the documentation, the resource-request-starting signal is the place \
where modification of request may occurs.

This works great, but in the case of a redirection, the modification don't come back \
to web_view (or any other compoment) whereas the request is done at good place.

I wrote a minimal test-case at https://github.com/semarie/webkit-change-uri
The test-case exhibe two differents comportements (faulty one, and good one):

The odd one (request modification after redirection):
 - webkit_web_view_load_uri http://bit.ly/1sXuZsu (it is a redirection to \
                http://projects.dm.id.lv/s/hsts-testresult.html)
 - in resource-request-starting callback,
     rewrite http://projects.dm.id.lv/s/hsts-testresult.html request to \
https://projects.dm.id.lv/s/hsts-testresult.html  (so, after redirection occurs)

The page displayed is https://projects.dm.id.lv/s/hsts-testresult.html
The uri (webkit_web_view_get_uri) is http://projects.dm.id.lv/s/hsts-testresult.html

Please note the http in uri whereas the page displayed is the https one.

Full trace:
$ ./change-uri http://bit.ly/1sXuZsu
notify::load-status: WEBKIT_LOAD_PROVISIONAL: (null)
resource-request-starting: uri=http://bit.ly/1sXuZsu
resource-request-starting: uri=http://projects.dm.id.lv/s/hsts-testresult.html
resource-request-starting: switch projects.dm.id.lv from HTTP to HTTPS
notify::load-status: WEBKIT_LOAD_COMMITTED: \
                http://projects.dm.id.lv/s/hsts-testresult.html
resource-request-starting: uri=http://projects.dm.id.lv/favicon.ico
resource-request-starting: switch projects.dm.id.lv from HTTP to HTTPS
notify::load-status: WEBKIT_LOAD_FIRST_VISUALLY_NON_EMPTY_LAYOUT: \
http://projects.dm.id.lv/s/hsts-testresult.html notify::load-status: \
                WEBKIT_LOAD_FINISHED: http://projects.dm.id.lv/s/hsts-testresult.html
resource-request-starting: uri=https://projects.dm.id.lv/Favicon.ico


A Usual (and good) one (classical request modification):
 - webkit_web_view_load_uri http://projects.dm.id.lv/s/hsts-testresult.html
 - in resource-request-starting callback,
     rewrite http://projects.dm.id.lv/s/hsts-testresult.html request to \
https://projects.dm.id.lv/s/hsts-testresult.html

The page displayed is https://projects.dm.id.lv/s/hsts-testresult.html
The uri (webkit_web_view_get_uri) is https://projects.dm.id.lv/s/hsts-testresult.html

Full trace:
$ ./change-uri http://projects.dm.id.lv/s/hsts-testresult.html
notify::load-status: WEBKIT_LOAD_PROVISIONAL: (null)
resource-request-starting: uri=http://projects.dm.id.lv/s/hsts-testresult.html
resource-request-starting: switch projects.dm.id.lv from HTTP to HTTPS
notify::load-status: WEBKIT_LOAD_COMMITTED: \
                https://projects.dm.id.lv/s/hsts-testresult.html
resource-request-starting: uri=https://projects.dm.id.lv/favicon.ico
notify::load-status: WEBKIT_LOAD_FIRST_VISUALLY_NON_EMPTY_LAYOUT: \
https://projects.dm.id.lv/s/hsts-testresult.html notify::load-status: \
                WEBKIT_LOAD_FINISHED: \
                https://projects.dm.id.lv/s/hsts-testresult.html
resource-request-starting: uri=https://projects.dm.id.lv/Favicon.ico

Thanks.

-- 
You are receiving this mail because:
You are the assignee for the bug.
--1417254699.e0aDea0.12173
Date: Sat, 29 Nov 2014 01:51:39 -0800
MIME-Version: 1.0
Content-Type: text/html

<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Problem in modify a request of a redirected page in \
resource-request-starting signal"  \
href="https://bugs.webkit.org/show_bug.cgi?id=139097">139097</a>  </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Problem in modify a request of a redirected page in \
resource-request-starting signal  </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>WebKit
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>420+
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Unspecified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>Normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P2
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Page Loading
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>webkit-unassigned&#64;lists.webkit.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>semarie-openbsd&#64;latrappe.fr
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Hi,

According to the documentation, the resource-request-starting signal is the place \
where modification of request may occurs.

This works great, but in the case of a redirection, the modification don't come back \
to web_view (or any other compoment) whereas the request is done at good place.

I wrote a minimal test-case at <a \
href="https://github.com/semarie/webkit-change-uri">https://github.com/semarie/webkit-change-uri</a>
 The test-case exhibe two differents comportements (faulty one, and good one):

The odd one (request modification after redirection):
 - webkit_web_view_load_uri <a href="http://bit.ly/1sXuZsu">http://bit.ly/1sXuZsu</a> \
(it is a redirection to <a \
href="http://projects.dm.id.lv/s/hsts-testresult.html">http://projects.dm.id.lv/s/hsts-testresult.html</a>)
                
 - in resource-request-starting callback,
     rewrite <a href="http://projects.dm.id.lv/s/hsts-testresult.html">http://projects.dm.id.lv/s/hsts-testresult.html</a> \
request to <a href="https://projects.dm.id.lv/s/hsts-testresult.html">https://projects.dm.id.lv/s/hsts-testresult.html</a>
  (so, after redirection occurs)

The page displayed is <a \
href="https://projects.dm.id.lv/s/hsts-testresult.html">https://projects.dm.id.lv/s/hsts-testresult.html</a>
 The uri (webkit_web_view_get_uri) is <a \
href="http://projects.dm.id.lv/s/hsts-testresult.html">http://projects.dm.id.lv/s/hsts-testresult.html</a>


Please note the http in uri whereas the page displayed is the https one.

Full trace:
$ ./change-uri <a href="http://bit.ly/1sXuZsu">http://bit.ly/1sXuZsu</a>
notify::load-status: WEBKIT_LOAD_PROVISIONAL: (null)
resource-request-starting: uri=<a \
                href="http://bit.ly/1sXuZsu">http://bit.ly/1sXuZsu</a>
resource-request-starting: uri=<a \
href="http://projects.dm.id.lv/s/hsts-testresult.html">http://projects.dm.id.lv/s/hsts-testresult.html</a>
                
resource-request-starting: switch projects.dm.id.lv from HTTP to HTTPS
notify::load-status: WEBKIT_LOAD_COMMITTED: <a \
href="http://projects.dm.id.lv/s/hsts-testresult.html">http://projects.dm.id.lv/s/hsts-testresult.html</a>
                
resource-request-starting: uri=<a \
                href="http://projects.dm.id.lv/favicon.ico">http://projects.dm.id.lv/favicon.ico</a>
                
resource-request-starting: switch projects.dm.id.lv from HTTP to HTTPS
notify::load-status: WEBKIT_LOAD_FIRST_VISUALLY_NON_EMPTY_LAYOUT: <a \
href="http://projects.dm.id.lv/s/hsts-testresult.html">http://projects.dm.id.lv/s/hsts-testresult.html</a>
 notify::load-status: WEBKIT_LOAD_FINISHED: <a \
href="http://projects.dm.id.lv/s/hsts-testresult.html">http://projects.dm.id.lv/s/hsts-testresult.html</a>
                
resource-request-starting: uri=<a \
href="https://projects.dm.id.lv/Favicon.ico">https://projects.dm.id.lv/Favicon.ico</a>



A Usual (and good) one (classical request modification):
 - webkit_web_view_load_uri <a \
href="http://projects.dm.id.lv/s/hsts-testresult.html">http://projects.dm.id.lv/s/hsts-testresult.html</a>
                
 - in resource-request-starting callback,
     rewrite <a href="http://projects.dm.id.lv/s/hsts-testresult.html">http://projects.dm.id.lv/s/hsts-testresult.html</a> \
request to <a href="https://projects.dm.id.lv/s/hsts-testresult.html">https://projects.dm.id.lv/s/hsts-testresult.html</a>


The page displayed is <a \
href="https://projects.dm.id.lv/s/hsts-testresult.html">https://projects.dm.id.lv/s/hsts-testresult.html</a>
 The uri (webkit_web_view_get_uri) is <a \
href="https://projects.dm.id.lv/s/hsts-testresult.html">https://projects.dm.id.lv/s/hsts-testresult.html</a>


Full trace:
$ ./change-uri <a href="http://projects.dm.id.lv/s/hsts-testresult.html">http://projects.dm.id.lv/s/hsts-testresult.html</a>
 notify::load-status: WEBKIT_LOAD_PROVISIONAL: (null)
resource-request-starting: uri=<a \
href="http://projects.dm.id.lv/s/hsts-testresult.html">http://projects.dm.id.lv/s/hsts-testresult.html</a>
                
resource-request-starting: switch projects.dm.id.lv from HTTP to HTTPS
notify::load-status: WEBKIT_LOAD_COMMITTED: <a \
href="https://projects.dm.id.lv/s/hsts-testresult.html">https://projects.dm.id.lv/s/hsts-testresult.html</a>
                
resource-request-starting: uri=<a \
href="https://projects.dm.id.lv/favicon.ico">https://projects.dm.id.lv/favicon.ico</a>
 notify::load-status: WEBKIT_LOAD_FIRST_VISUALLY_NON_EMPTY_LAYOUT: <a \
href="https://projects.dm.id.lv/s/hsts-testresult.html">https://projects.dm.id.lv/s/hsts-testresult.html</a>
 notify::load-status: WEBKIT_LOAD_FINISHED: <a \
href="https://projects.dm.id.lv/s/hsts-testresult.html">https://projects.dm.id.lv/s/hsts-testresult.html</a>
                
resource-request-starting: uri=<a \
href="https://projects.dm.id.lv/Favicon.ico">https://projects.dm.id.lv/Favicon.ico</a>


Thanks.</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>
--1417254699.e0aDea0.12173--



_______________________________________________
webkit-unassigned mailing list
webkit-unassigned@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-unassigned


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic