Title: [289485] trunk/Source
- Revision
- 289485
- Author
- commit-qu...@webkit.org
- Date
- 2022-02-09 10:45:22 -0800 (Wed, 09 Feb 2022)
Log Message
Move Safe Browsing knowledge into SafariSafeBrowsing framework
https://bugs.webkit.org/show_bug.cgi?id=231692
Patch by Eliot Hsu <eliot_...@apple.com> on 2022-02-09
Reviewed by Alex Christensen.
Following up on an old FIXME, move Safari Safe Browsing-specific
knowledge out of WebKit and into the SafariSafeBrowsing framework.
This includes things like the Learn More URL, the Report an Error URL,
etc.
Source/WebKit:
* Platform/spi/Cocoa/SafeBrowsingSPI.h:
* UIProcess/Cocoa/SafeBrowsingWarningCocoa.mm:
(WebKit::malwareDetailsBase):
(WebKit::learnMoreURL):
(WebKit::reportAnErrorBase):
(WebKit::localizedProvider):
Rely on new SafariSafeBrowsing calls to provide
URL/provider information about Safe Browsing,
when available
Source/WTF:
* wtf/PlatformHave.h:
Modified Paths
Diff
Modified: trunk/Source/WTF/ChangeLog (289484 => 289485)
--- trunk/Source/WTF/ChangeLog 2022-02-09 18:39:17 UTC (rev 289484)
+++ trunk/Source/WTF/ChangeLog 2022-02-09 18:45:22 UTC (rev 289485)
@@ -1,3 +1,17 @@
+2022-02-09 Eliot Hsu <eliot_...@apple.com>
+
+ Move Safe Browsing knowledge into SafariSafeBrowsing framework
+ https://bugs.webkit.org/show_bug.cgi?id=231692
+
+ Reviewed by Alex Christensen.
+
+ Following up on an old FIXME, move Safari Safe Browsing-specific
+ knowledge out of WebKit and into the SafariSafeBrowsing framework.
+ This includes things like the Learn More URL, the Report an Error URL,
+ etc.
+
+ * wtf/PlatformHave.h:
+
2022-02-08 Eric Carlson <eric.carl...@apple.com>
[macOS] Update requirements for ScreenCaptureKit
Modified: trunk/Source/WTF/wtf/PlatformHave.h (289484 => 289485)
--- trunk/Source/WTF/wtf/PlatformHave.h 2022-02-09 18:39:17 UTC (rev 289484)
+++ trunk/Source/WTF/wtf/PlatformHave.h 2022-02-09 18:45:22 UTC (rev 289485)
@@ -1173,3 +1173,7 @@
#if ((PLATFORM(IOS) || PLATFORM(MACCATALYST)) && __IPHONE_OS_VERSION_MAX_ALLOWED >= 150400)
#define HAVE_UIACTIVITYTYPE_SHAREPLAY 1
#endif
+
+#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 130000) || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 160000) || (PLATFORM(WATCHOS) && __WATCH_OS_VERSION_MIN_REQUIRED >= 90000)
+#define HAVE_SAFE_BROWSING_RESULT_DETAILS 1
+#endif
Modified: trunk/Source/WebKit/ChangeLog (289484 => 289485)
--- trunk/Source/WebKit/ChangeLog 2022-02-09 18:39:17 UTC (rev 289484)
+++ trunk/Source/WebKit/ChangeLog 2022-02-09 18:45:22 UTC (rev 289485)
@@ -1,3 +1,25 @@
+2022-02-09 Eliot Hsu <eliot_...@apple.com>
+
+ Move Safe Browsing knowledge into SafariSafeBrowsing framework
+ https://bugs.webkit.org/show_bug.cgi?id=231692
+
+ Reviewed by Alex Christensen.
+
+ Following up on an old FIXME, move Safari Safe Browsing-specific
+ knowledge out of WebKit and into the SafariSafeBrowsing framework.
+ This includes things like the Learn More URL, the Report an Error URL,
+ etc.
+
+ * Platform/spi/Cocoa/SafeBrowsingSPI.h:
+ * UIProcess/Cocoa/SafeBrowsingWarningCocoa.mm:
+ (WebKit::malwareDetailsBase):
+ (WebKit::learnMoreURL):
+ (WebKit::reportAnErrorBase):
+ (WebKit::localizedProvider):
+ Rely on new SafariSafeBrowsing calls to provide
+ URL/provider information about Safe Browsing,
+ when available
+
2022-02-09 Chris Dumez <cdu...@apple.com>
self.location.href is incorrect in shared workers in case of redirects
Modified: trunk/Source/WebKit/Platform/spi/Cocoa/SafeBrowsingSPI.h (289484 => 289485)
--- trunk/Source/WebKit/Platform/spi/Cocoa/SafeBrowsingSPI.h 2022-02-09 18:39:17 UTC (rev 289484)
+++ trunk/Source/WebKit/Platform/spi/Cocoa/SafeBrowsingSPI.h 2022-02-09 18:45:22 UTC (rev 289485)
@@ -50,6 +50,13 @@
@property (nonatomic, readonly, getter=isMalware) BOOL malware;
@property (nonatomic, readonly, getter=isUnwantedSoftware) BOOL unwantedSoftware;
+#if HAVE(SAFE_BROWSING_RESULT_DETAILS)
+@property (nonatomic, readonly) NSString *malwareDetailsBaseURLString;
+@property (nonatomic, readonly) NSURL *learnMoreURL;
+@property (nonatomic, readonly) NSString *reportAnErrorBaseURLString;
+@property (nonatomic, readonly) NSString *localizedProviderDisplayName;
+#endif
+
@end
@interface SSBLookupResult : NSObject <NSCopying, NSSecureCoding>
Modified: trunk/Source/WebKit/UIProcess/Cocoa/SafeBrowsingWarningCocoa.mm (289484 => 289485)
--- trunk/Source/WebKit/UIProcess/Cocoa/SafeBrowsingWarningCocoa.mm 2022-02-09 18:39:17 UTC (rev 289484)
+++ trunk/Source/WebKit/UIProcess/Cocoa/SafeBrowsingWarningCocoa.mm 2022-02-09 18:45:22 UTC (rev 289485)
@@ -35,34 +35,48 @@
#if HAVE(SAFE_BROWSING)
-// FIXME: These four functions ought to be API calls to the SafariSafeBrowsing framework when such SPI is available.
-// That way WebKit does not need to know about the SafariSafeBrowsing framework's possible providers.
-static const char* malwareDetailsBase(SSBServiceLookupResult *result)
+static String malwareDetailsBase(SSBServiceLookupResult *result)
{
+#if HAVE(SAFE_BROWSING_RESULT_DETAILS)
+ return result.malwareDetailsBaseURLString;
+#else
if ([result.provider isEqualToString:SSBProviderTencent])
return "https://www.urlsec.qq.com/check.html?tpl=safari";
return "https://google.com/safebrowsing/diagnostic?tpl=safari";
+#endif
}
static NSURL *learnMoreURL(SSBServiceLookupResult *result)
{
+#if HAVE(SAFE_BROWSING_RESULT_DETAILS)
+ return result.learnMoreURL;
+#else
if ([result.provider isEqualToString:SSBProviderTencent])
return [NSURL URLWithString:@"https://www.urlsec.qq.com/standard/s1.html?tpl=safari"];
return [NSURL URLWithString:@"https://www.google.com/support/bin/answer.py?answer=106318"];
+#endif
}
-static const char* reportAnErrorBase(SSBServiceLookupResult *result)
+static String reportAnErrorBase(SSBServiceLookupResult *result)
{
+#if HAVE(SAFE_BROWSING_RESULT_DETAILS)
+ return result.reportAnErrorBaseURLString;
+#else
if ([result.provider isEqualToString:SSBProviderTencent])
return "https://www.urlsec.qq.com/complain.html?tpl=safari";
return "https://www.google.com/safebrowsing/report_error/?tpl=safari";
+#endif
}
static String localizedProvider(SSBServiceLookupResult *result)
{
+#if HAVE(SAFE_BROWSING_RESULT_DETAILS)
+ return result.localizedProviderDisplayName;
+#else
if ([result.provider isEqualToString:SSBProviderTencent])
return WEB_UI_NSSTRING(@"Tencent Safe Browsing", "Tencent Safe Browsing");
return WEB_UI_NSSTRING(@"Google Safe Browsing", "Google Safe Browsing");
+#endif
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes