[webkit-changes] [WebKit/WebKit] dda465: Delete push subscriptions and terminate IPC connec...
bnham
noreply at github.com
Wed Aug 21 15:41:43 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: dda465082921b0804144f7ef51f24193af44b20d
https://github.com/WebKit/WebKit/commit/dda465082921b0804144f7ef51f24193af44b20d
Author: Ben Nham <nham at apple.com>
Date: 2024-08-21 (Wed, 21 Aug 2024)
Changed paths:
M Source/WebKit/Platform/spi/ios/UIKitSPI.h
M Source/WebKit/webpushd/PushService.h
M Source/WebKit/webpushd/PushService.mm
M Source/WebKit/webpushd/WebPushDaemon.h
M Source/WebKit/webpushd/WebPushDaemon.mm
Log Message:
-----------
Delete push subscriptions and terminate IPC connections associated with removed web clips
https://bugs.webkit.org/show_bug.cgi?id=278367
rdar://131367607
Reviewed by Brady Eidson.
This moves the logic from 282260 at main (which removed push subscriptions associated with uninstalled
web clips) up one level from PushService to WebPushDaemon. We now check for web clips that are
deleted or associated with obsolete bundle IDs on every IPC and also before firing push events. If
we detect a subscription in an invalid state, then we terminate any associated IPC connections and
also remove the subscriptions from the database. Previously, we were only doing the latter.
* Source/WebKit/Platform/spi/ios/UIKitSPI.h:
* Source/WebKit/webpushd/PushService.h:
* Source/WebKit/webpushd/PushService.mm:
(WebPushD::PushService::create):
(WebPushD::PushService::PushService):
(WebPushD::PushService::updateSubscriptionSetState):
* Source/WebKit/webpushd/WebPushDaemon.h:
* Source/WebKit/webpushd/WebPushDaemon.mm:
(getAllowedBundleIdentifiers):
(getInstalledWebClipIdentifiers):
(webClipExists):
(WebPushD::WebPushDaemon::startPushService):
(WebPushD::WebPushDaemon::connectionEventHandler):
(WebPushD::WebPushDaemon::updateSubscriptionSetState):
(WebPushD::WebPushDaemon::handleIncomingPush):
Canonical link: https://commits.webkit.org/282583@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