Title: [276136] trunk/Source/WebKit
- Revision
- 276136
- Author
- [email protected]
- Date
- 2021-04-16 07:41:11 -0700 (Fri, 16 Apr 2021)
Log Message
[SOUP] Show resource priority and remote IP in the inspector
https://bugs.webkit.org/show_bug.cgi?id=224660
Reviewed by Adrian Perez de Castro.
* NetworkProcess/soup/NetworkDataTaskSoup.cpp:
(WebKit::toNetworkLoadPriority):
(WebKit::NetworkDataTaskSoup::didGetHeaders):
(WebKit::NetworkDataTaskSoup::networkEvent):
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (276135 => 276136)
--- trunk/Source/WebKit/ChangeLog 2021-04-16 13:35:08 UTC (rev 276135)
+++ trunk/Source/WebKit/ChangeLog 2021-04-16 14:41:11 UTC (rev 276136)
@@ -1,3 +1,15 @@
+2021-04-16 Carlos Garcia Campos <[email protected]>
+
+ [SOUP] Show resource priority and remote IP in the inspector
+ https://bugs.webkit.org/show_bug.cgi?id=224660
+
+ Reviewed by Adrian Perez de Castro.
+
+ * NetworkProcess/soup/NetworkDataTaskSoup.cpp:
+ (WebKit::toNetworkLoadPriority):
+ (WebKit::NetworkDataTaskSoup::didGetHeaders):
+ (WebKit::NetworkDataTaskSoup::networkEvent):
+
2021-04-16 Youenn Fablet <[email protected]>
Promote WKWebView device orientation permission delegate to API
Modified: trunk/Source/WebKit/NetworkProcess/soup/NetworkDataTaskSoup.cpp (276135 => 276136)
--- trunk/Source/WebKit/NetworkProcess/soup/NetworkDataTaskSoup.cpp 2021-04-16 13:35:08 UTC (rev 276135)
+++ trunk/Source/WebKit/NetworkProcess/soup/NetworkDataTaskSoup.cpp 2021-04-16 14:41:11 UTC (rev 276136)
@@ -968,6 +968,22 @@
task->didGetHeaders();
}
+static WebCore::NetworkLoadPriority toNetworkLoadPriority(SoupMessagePriority priority)
+{
+ switch (priority) {
+ case SOUP_MESSAGE_PRIORITY_VERY_LOW:
+ case SOUP_MESSAGE_PRIORITY_LOW:
+ return WebCore::NetworkLoadPriority::Low;
+ case SOUP_MESSAGE_PRIORITY_NORMAL:
+ return WebCore::NetworkLoadPriority::Medium;
+ case SOUP_MESSAGE_PRIORITY_HIGH:
+ case SOUP_MESSAGE_PRIORITY_VERY_HIGH:
+ return WebCore::NetworkLoadPriority::High;
+ }
+
+ return WebCore::NetworkLoadPriority::Unknown;
+}
+
void NetworkDataTaskSoup::didGetHeaders()
{
// We are a bit more conservative with the persistent credential storage than the session store,
@@ -993,6 +1009,8 @@
while (soup_message_headers_iter_next(&headersIter, &headerName, &headerValue))
requestHeaders.set(String(headerName), String(headerValue));
m_networkLoadMetrics.requestHeaders = WTFMove(requestHeaders);
+
+ m_networkLoadMetrics.priority = toNetworkLoadPriority(soup_message_get_priority(m_soupMessage.get()));
}
m_networkLoadMetrics.protocol = soup_message_get_http_version(m_soupMessage.get()) == SOUP_HTTP_1_0 ? "http/1.0" : "http/1.1";
@@ -1191,8 +1209,15 @@
m_networkLoadMetrics.connectStart = deltaTime;
break;
case G_SOCKET_CLIENT_CONNECTED:
+ if (shouldCaptureExtraNetworkLoadMetrics() && G_IS_SOCKET_CONNECTION(stream)) {
+ GRefPtr<GSocketAddress> address = adoptGRef(g_socket_connection_get_remote_address(G_SOCKET_CONNECTION(stream), nullptr));
+ if (G_IS_INET_SOCKET_ADDRESS(address.get())) {
+ GUniquePtr<char> ipAddress(g_inet_address_to_string(g_inet_socket_address_get_address(G_INET_SOCKET_ADDRESS(address.get()))));
+ m_networkLoadMetrics.remoteAddress = makeString(ipAddress.get(), ':', g_inet_socket_address_get_port(G_INET_SOCKET_ADDRESS(address.get())));
+ }
+ }
// Web Timing considers that connection time involves dns, proxy & TLS negotiation...
- // so we better pick G_SOCKET_CLIENT_COMPLETE for connectEnd
+ // so we better pick G_SOCKET_CLIENT_COMPLETE for connectEnd.
break;
case G_SOCKET_CLIENT_PROXY_NEGOTIATING:
break;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes