WebKit Bugzilla
Attachment 343662 Details for
Bug 187050
: Remove quarantine for Webex plugin
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch for landing
bug-187050-20180626171356.patch (text/plain), 4.83 KB, created by
youenn fablet
on 2018-06-26 17:13:56 PDT
(
hide
)
Description:
Patch for landing
Filename:
MIME Type:
Creator:
youenn fablet
Created:
2018-06-26 17:13:56 PDT
Size:
4.83 KB
patch
obsolete
>Subversion Revision: 233216 >diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog >index 82b9a9a393a21854ba8b0c95be4baaf5adf2ba7d..0f4a8bbe845e7339f0c0d99a720e54da2a4d3cd1 100644 >--- a/Source/WebKit/ChangeLog >+++ b/Source/WebKit/ChangeLog >@@ -1,3 +1,23 @@ >+2018-06-26 Youenn Fablet <youenn@apple.com> >+ >+ Remove quarantine for Webex plugin >+ https://bugs.webkit.org/show_bug.cgi?id=187050 >+ rdar://problem/41478189 >+ >+ Reviewed by Brent Fulgham. >+ >+ Update the Plugin Info.plist to not do quarantine of downloaded files by default. >+ Update PluginProcess implementation to reenable quarantine for all plug-ins except cisco webex plug-in. >+ >+ * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist: >+ * PluginProcess/PluginProcess.h: >+ * PluginProcess/mac/PluginProcessMac.mm: >+ (WebKit::PluginProcess::shouldOverrideQuarantine): >+ * Shared/ChildProcess.h: >+ (WebKit::ChildProcess::shouldOverrideQuarantine): >+ * Shared/mac/ChildProcessMac.mm: >+ (WebKit::ChildProcess::initializeSandbox): >+ > 2018-06-26 Tim Horton <timothy_horton@apple.com> > > Promote some experimental features to traditional features >diff --git a/Source/WebKit/PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist b/Source/WebKit/PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist >index 69af0dc02737fcab54fe4c77f52cddc837f402be..f30140ed70ecd1800c682182221553f061c37710 100644 >--- a/Source/WebKit/PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist >+++ b/Source/WebKit/PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist >@@ -23,7 +23,7 @@ > <key>CFBundleVersion</key> > <string>${BUNDLE_VERSION}</string> > <key>LSFileQuarantineEnabled</key> >- <true/> >+ <false/> > <key>NSPrincipalClass</key> > <string>NSApplication</string> > <key>WebKitEntryPoint</key> >diff --git a/Source/WebKit/PluginProcess/PluginProcess.h b/Source/WebKit/PluginProcess/PluginProcess.h >index d5081b061cdf7936a06c94039dd92623843ccf95..80fd3f3ea0248cf157907788e01af089dbd61662 100644 >--- a/Source/WebKit/PluginProcess/PluginProcess.h >+++ b/Source/WebKit/PluginProcess/PluginProcess.h >@@ -74,6 +74,10 @@ private: > PluginProcess(); > ~PluginProcess(); > >+#if PLATFORM(MAC) >+ bool shouldOverrideQuarantine() final; >+#endif >+ > // ChildProcess > void initializeProcess(const ChildProcessInitializationParameters&) override; > void initializeProcessName(const ChildProcessInitializationParameters&) override; >diff --git a/Source/WebKit/PluginProcess/mac/PluginProcessMac.mm b/Source/WebKit/PluginProcess/mac/PluginProcessMac.mm >index 4fee0b3cdff5d7d7d57d598a9290eca518f3976c..638b3e64d81bfd5c0f871e59833c7db2c99d53b7 100644 >--- a/Source/WebKit/PluginProcess/mac/PluginProcessMac.mm >+++ b/Source/WebKit/PluginProcess/mac/PluginProcessMac.mm >@@ -688,6 +688,10 @@ void PluginProcess::initializeSandbox(const ChildProcessInitializationParameters > ChildProcess::initializeSandbox(parameters, sandboxParameters); > } > >+bool PluginProcess::shouldOverrideQuarantine() >+{ >+ return m_pluginBundleIdentifier != "com.cisco.webex.plugin.gpc64"; >+} > > void PluginProcess::stopRunLoop() > { >diff --git a/Source/WebKit/Shared/ChildProcess.h b/Source/WebKit/Shared/ChildProcess.h >index b35c9f2e3f3fa87e2dfbee1b0afc979b98a2f8f1..41da85b89301cdaa47b039f40b9c0968d71ef07b 100644 >--- a/Source/WebKit/Shared/ChildProcess.h >+++ b/Source/WebKit/Shared/ChildProcess.h >@@ -112,6 +112,8 @@ protected: > #endif > > private: >+ virtual bool shouldOverrideQuarantine() { return true; } >+ > // IPC::MessageSender > IPC::Connection* messageSenderConnection() override; > uint64_t messageSenderDestinationID() override; >diff --git a/Source/WebKit/Shared/mac/ChildProcessMac.mm b/Source/WebKit/Shared/mac/ChildProcessMac.mm >index aed5b9fd70960fe170d5026cc20e267a516f0204..39cdc97fd758dc540789fe099c803264026ae72e 100644 >--- a/Source/WebKit/Shared/mac/ChildProcessMac.mm >+++ b/Source/WebKit/Shared/mac/ChildProcessMac.mm >@@ -211,11 +211,13 @@ void ChildProcess::initializeSandbox(const ChildProcessInitializationParameters& > } > } > >- // This will override LSFileQuarantineEnabled from Info.plist unless sandbox quarantine is globally disabled. >- OSStatus error = enableSandboxStyleFileQuarantine(); >- if (error) { >- WTFLogAlways("%s: Couldn't enable sandbox style file quarantine: %ld\n", getprogname(), static_cast<long>(error)); >- exit(EX_NOPERM); >+ if (shouldOverrideQuarantine()) { >+ // This will override LSFileQuarantineEnabled from Info.plist unless sandbox quarantine is globally disabled. >+ OSStatus error = enableSandboxStyleFileQuarantine(); >+ if (error) { >+ WTFLogAlways("%s: Couldn't enable sandbox style file quarantine: %ld\n", getprogname(), static_cast<long>(error)); >+ exit(EX_NOPERM); >+ } > } > } >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 187050
:
343613
|
343662
|
344237