Title: [253827] trunk/Source/WebCore
- Revision
- 253827
- Author
- you...@apple.com
- Date
- 2019-12-20 09:57:00 -0800 (Fri, 20 Dec 2019)
Log Message
Remove the certificate info checks related to getUserMedia
https://bugs.webkit.org/show_bug.cgi?id=205493
Reviewed by Eric Carlson.
Now that navigator.mediaDevices is SecureContext, we do not need to do the same checks in UserMediaController.
UserMediaController was also checking the certificate info which is not necessary for MediaDevices.
Covered by manual tests.
* Modules/mediastream/UserMediaController.cpp:
(WebCore::isSecure):
(WebCore::isAllowedByFeaturePolicy): Deleted.
(WebCore::isAllowedToUse): Deleted.
(WebCore::UserMediaController::canCallGetUserMedia const): Deleted.
(WebCore::UserMediaController::logGetUserMediaDenial): Deleted.
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (253826 => 253827)
--- trunk/Source/WebCore/ChangeLog 2019-12-20 17:40:35 UTC (rev 253826)
+++ trunk/Source/WebCore/ChangeLog 2019-12-20 17:57:00 UTC (rev 253827)
@@ -1,3 +1,21 @@
+2019-12-20 youenn fablet <you...@apple.com>
+
+ Remove the certificate info checks related to getUserMedia
+ https://bugs.webkit.org/show_bug.cgi?id=205493
+
+ Reviewed by Eric Carlson.
+
+ Now that navigator.mediaDevices is SecureContext, we do not need to do the same checks in UserMediaController.
+ UserMediaController was also checking the certificate info which is not necessary for MediaDevices.
+ Covered by manual tests.
+
+ * Modules/mediastream/UserMediaController.cpp:
+ (WebCore::isSecure):
+ (WebCore::isAllowedByFeaturePolicy): Deleted.
+ (WebCore::isAllowedToUse): Deleted.
+ (WebCore::UserMediaController::canCallGetUserMedia const): Deleted.
+ (WebCore::UserMediaController::logGetUserMediaDenial): Deleted.
+
2019-12-19 Dean Jackson <d...@apple.com>
Build ANGLE as a dynamic library
Modified: trunk/Source/WebCore/Modules/mediastream/UserMediaController.cpp (253826 => 253827)
--- trunk/Source/WebCore/Modules/mediastream/UserMediaController.cpp 2019-12-20 17:40:35 UTC (rev 253826)
+++ trunk/Source/WebCore/Modules/mediastream/UserMediaController.cpp 2019-12-20 17:57:00 UTC (rev 253827)
@@ -61,18 +61,6 @@
UserMediaController::provideTo(page, UserMediaController::supplementName(), makeUnique<UserMediaController>(client));
}
-static inline bool isSecure(DocumentLoader& documentLoader)
-{
- auto& response = documentLoader.response();
- ASSERT(response.certificateInfo());
-
- if (SecurityOrigin::isLocalHostOrLoopbackIPAddress(documentLoader.response().url().host()))
- return true;
- return LegacySchemeRegistry::shouldTreatURLSchemeAsSecure(response.url().protocol().toStringWithoutCopying())
- && response.certificateInfo()
- && !response.certificateInfo()->containsNonRootSHA1SignedCertificate();
-}
-
static inline bool isAllowedByFeaturePolicy(const FeaturePolicy& featurePolicy, const SecurityOriginData& origin, OptionSet<UserMediaController::CaptureType> types)
{
if ((types & UserMediaController::CaptureType::Camera) && !featurePolicy.allows(FeaturePolicy::Type::Camera, origin))
@@ -112,19 +100,9 @@
{
ASSERT(!types.isEmpty());
- bool requiresSecureConnection = true;
- if (auto page = document.page())
- requiresSecureConnection = page->settings().mediaCaptureRequiresSecureConnection();
- auto& documentLoader = *document.loader();
- if (requiresSecureConnection && !isSecure(documentLoader))
- return GetUserMediaAccess::InsecureDocument;
-
auto& topDocument = document.topDocument();
if (&document != &topDocument) {
for (auto* ancestorDocument = &document; ancestorDocument != &topDocument; ancestorDocument = ancestorDocument->parentDocument()) {
- if (requiresSecureConnection && !isSecure(*ancestorDocument->loader()))
- return GetUserMediaAccess::InsecureParent;
-
auto status = isAllowedToUse(*ancestorDocument, topDocument, types);
if (status != GetUserMediaAccess::CanCall)
return status;
@@ -152,12 +130,6 @@
}
switch (access) {
- case UserMediaController::GetUserMediaAccess::InsecureDocument:
- domWindow.printErrorMessage(makeString("Trying to call ", callerName, " from an insecure document."));
- break;
- case UserMediaController::GetUserMediaAccess::InsecureParent:
- domWindow.printErrorMessage(makeString("Trying to call ", callerName, " from a document with an insecure parent frame."));
- break;
case UserMediaController::GetUserMediaAccess::BlockedByParent:
domWindow.printErrorMessage(makeString("The top-level frame has prevented a document with a different security origin from calling ", callerName, "."));
break;
Modified: trunk/Source/WebCore/Modules/mediastream/UserMediaController.h (253826 => 253827)
--- trunk/Source/WebCore/Modules/mediastream/UserMediaController.h 2019-12-20 17:40:35 UTC (rev 253826)
+++ trunk/Source/WebCore/Modules/mediastream/UserMediaController.h 2019-12-20 17:57:00 UTC (rev 253827)
@@ -53,8 +53,6 @@
enum class GetUserMediaAccess {
CanCall,
- InsecureDocument,
- InsecureParent,
BlockedByParent,
BlockedByFeaturePolicy,
};
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes