[webkit-changes] [WebKit/WebKit] 634919: Expose host app audit token on webpushd config object

bnham noreply at github.com
Fri Sep 13 22:38:42 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6349190ed64de1db4dca4098591dbbc37ac928a3
      https://github.com/WebKit/WebKit/commit/6349190ed64de1db4dca4098591dbbc37ac928a3
  Author: Ben Nham <nham at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M Source/WebKit/NetworkProcess/NetworkSession.cpp
    M Source/WebKit/Shared/WebPushDaemonConnectionConfiguration.h
    M Source/WebKit/Shared/WebPushDaemonConnectionConfiguration.serialization.in
    M Source/WebKit/UIProcess/API/APIWebPushDaemonConnection.cpp
    M Source/WebKit/UIProcess/API/APIWebPushDaemonConnection.h
    M Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.h
    M Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.mm
    M Source/WebKit/webpushd/PushClientConnection.mm
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm

  Log Message:
  -----------
  Expose host app audit token on webpushd config object
https://bugs.webkit.org/show_bug.cgi?id=279552
rdar://135836107

Reviewed by Per Arne Vollan.

On macOS, webpushd clients are expected to fill out the audit token of the host app in the initial
connection setup message. (This isn't required on iOS because we can read the audit token directly
from ExtensionKit as described in 282035 at main.) Since this is a requirement for connecting to the
daemon, we should expose a host app audit token property on the connection configuration object.

I also renamed the bundleIdentifier property to bundleIdentifierOverrideForTesting since that
property is only used for certain testing tools (namely webpushtool and TestWebKitAPI) that have the
push injection entitlement.

This also reverts 283426 at main which was fixing a test failure caused by not setting the audit token.

* Source/WebKit/NetworkProcess/NetworkSession.cpp:
(WebKit::configurationWithHostAuditToken):
* Source/WebKit/Shared/WebPushDaemonConnectionConfiguration.h:
* Source/WebKit/Shared/WebPushDaemonConnectionConfiguration.serialization.in:
* Source/WebKit/UIProcess/API/APIWebPushDaemonConnection.cpp:
(API::WebPushDaemonConnection::WebPushDaemonConnection):
* Source/WebKit/UIProcess/API/APIWebPushDaemonConnection.h:
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.h:
* Source/WebKit/UIProcess/API/Cocoa/_WKWebPushDaemonConnection.mm:
(-[_WKWebPushDaemonConnection initWithConfiguration:]):
* Source/WebKit/webpushd/PushClientConnection.mm:
(WebPushD::PushClientConnection::create):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm:
(TestWebKitAPI::getSelfAuditToken):
(TestWebKitAPI::defaultWebPushDaemonConfiguration):
(TestWebKitAPI::(WebPushD, WKWebPushDaemonConnectionRequestPushPermission)):
(TestWebKitAPI::(WebPushD, WKWebPushDaemonConnectionPushSubscription)):

Canonical link: https://commits.webkit.org/283668@main



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list