Changeset 109143 in webkit


Ignore:
Timestamp:
Feb 28, 2012 1:16:02 PM (12 years ago)
Author:
ap@apple.com
Message:

[Mac] Add an experimental SPI for plug-ins to enter sandbox
https://bugs.webkit.org/show_bug.cgi?id=79709

Reviewed by Anders Carlsson.

  • PluginProcess/PluginProcess.h: (WebKit::PluginProcess::pluginPath): Exposed plugin path.
  • PluginProcess/mac/com.apple.WebKit.PluginProcess.sb: Added.
  • WebKit2.xcodeproj/project.pbxproj: Added new files.
  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: (WebKit::NPN_GetValue): Exposed

a function to access sandboxing functions when available.

  • WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.h: Added.
  • WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm: Added.
Location:
trunk/Source/WebKit2
Files:
3 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r109136 r109143  
     12012-02-28  Alexey Proskuryakov  <ap@apple.com>
     2
     3        [Mac] Add an experimental SPI for plug-ins to enter sandbox
     4        https://bugs.webkit.org/show_bug.cgi?id=79709
     5
     6        Reviewed by Anders Carlsson.
     7
     8        * PluginProcess/PluginProcess.h: (WebKit::PluginProcess::pluginPath): Exposed plugin path.
     9
     10        * PluginProcess/mac/com.apple.WebKit.PluginProcess.sb: Added.
     11
     12        * WebKit2.xcodeproj/project.pbxproj: Added new files.
     13
     14        * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: (WebKit::NPN_GetValue): Exposed
     15        a function to access sandboxing functions when available.
     16
     17        * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.h: Added.
     18        * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm: Added.
     19
    1202012-02-28  Mahesh Kulkarni  <mahesh.kulkarni@nokia.com>
    221
  • trunk/Source/WebKit2/PluginProcess/PluginProcess.h

    r105475 r109143  
    5252
    5353    NetscapePluginModule* netscapePluginModule();
     54
     55    const String& pluginPath() const { return m_pluginPath; }
    5456
    5557#if PLATFORM(MAC)
  • trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj

    r108946 r109143  
    887887                E179FD9C134D38060015B883 /* ArgumentCodersMac.h in Headers */ = {isa = PBXBuildFile; fileRef = E179FD9B134D38060015B883 /* ArgumentCodersMac.h */; };
    888888                E179FD9F134D38250015B883 /* ArgumentCodersMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = E179FD9E134D38250015B883 /* ArgumentCodersMac.mm */; };
     889                E17BF99614D0A73E00A5A069 /* NetscapeSandboxFunctions.h in Headers */ = {isa = PBXBuildFile; fileRef = E17BF99514D0A73E00A5A069 /* NetscapeSandboxFunctions.h */; };
     890                E17BF99814D0AA8300A5A069 /* NetscapeSandboxFunctions.mm in Sources */ = {isa = PBXBuildFile; fileRef = E17BF99714D0AA8300A5A069 /* NetscapeSandboxFunctions.mm */; };
     891                E17BF99A14D0CBF100A5A069 /* com.apple.WebKit.PluginProcess.sb in Resources */ = {isa = PBXBuildFile; fileRef = E17BF99914D0CBF100A5A069 /* com.apple.WebKit.PluginProcess.sb */; };
    889892                E18C92F412DB9E7100CF2AEB /* PrintInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E18C92F312DB9E7100CF2AEB /* PrintInfo.cpp */; };
    890893                E199875E142C045400BB2DE7 /* BuiltInPDFView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E199875C142BFC9700BB2DE7 /* BuiltInPDFView.cpp */; };
     
    19331936                E179FD9B134D38060015B883 /* ArgumentCodersMac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ArgumentCodersMac.h; sourceTree = "<group>"; };
    19341937                E179FD9E134D38250015B883 /* ArgumentCodersMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ArgumentCodersMac.mm; sourceTree = "<group>"; };
     1938                E17BF99514D0A73E00A5A069 /* NetscapeSandboxFunctions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NetscapeSandboxFunctions.h; sourceTree = "<group>"; };
     1939                E17BF99714D0AA8300A5A069 /* NetscapeSandboxFunctions.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = NetscapeSandboxFunctions.mm; sourceTree = "<group>"; };
     1940                E17BF99914D0CBF100A5A069 /* com.apple.WebKit.PluginProcess.sb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = com.apple.WebKit.PluginProcess.sb; sourceTree = "<group>"; };
    19351941                E18C92F312DB9E7100CF2AEB /* PrintInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PrintInfo.cpp; sourceTree = "<group>"; };
    19361942                E199875A142BF9B800BB2DE7 /* BuiltInPDFView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BuiltInPDFView.h; path = PDF/BuiltInPDFView.h; sourceTree = "<group>"; };
     
    21242130                                1AC25F8912A48E0300BD2671 /* PluginProcessShim.h */,
    21252131                                1AC25F8A12A48E0300BD2671 /* PluginProcessShim.mm */,
     2132                                E17BF99914D0CBF100A5A069 /* com.apple.WebKit.PluginProcess.sb */,
    21262133                                E14E99F914D879C9001D221F /* add-entitlements.sh */,
    21272134                        );
     
    22512258                        children = (
    22522259                                1AE5B7F911E7AED200BA6767 /* NetscapePluginMac.mm */,
     2260                                E17BF99514D0A73E00A5A069 /* NetscapeSandboxFunctions.h */,
     2261                                E17BF99714D0AA8300A5A069 /* NetscapeSandboxFunctions.mm */,
    22532262                                1A2D92201281DC1B001EB962 /* PluginProxyMac.mm */,
    22542263                        );
     
    36963705                        buildActionMask = 2147483647;
    36973706                        files = (
     3707                                E17BF99A14D0CBF100A5A069 /* com.apple.WebKit.PluginProcess.sb in Resources */,
    36983708                        );
    36993709                        runOnlyForDeploymentPostprocessing = 0;
     
    41384148                                BC2E6E8E1141971500A63B1E /* WorkQueue.h in Headers */,
    41394149                                1AB42E8714BBBBB2004272F7 /* KeychainShimResponseMap.h in Headers */,
     4150                                E17BF99614D0A73E00A5A069 /* NetscapeSandboxFunctions.h in Headers */,
    41404151                                BCE0937814FB128C001138D9 /* RemoteLayerClient.h in Headers */,
    41414152                        );
     
    43014312                        buildActionMask = 2147483647;
    43024313                        files = (
     4314                                E17BF99A14D0CBF100A5A069 /* com.apple.WebKit.PluginProcess.sb in Resources */,
    43034315                        );
    43044316                        runOnlyForDeploymentPostprocessing = 0;
     
    48754887                                BC2E6E8D1141971500A63B1E /* WorkQueue.cpp in Sources */,
    48764888                                BC0092F8115837A300E0AE2A /* WorkQueueMac.cpp in Sources */,
     4889                                E17BF99814D0AA8300A5A069 /* NetscapeSandboxFunctions.mm in Sources */,
    48774890                                BCE0937714FB128C001138D9 /* RemoteLayerClient.mm in Sources */,
    48784891                        );
  • trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp

    r105323 r109143  
    3737#include <utility>
    3838
     39#if PLATFORM(MAC) && !defined(BUILDING_ON_LEOPARD) || !defined(BUILDING_ON_SNOW_LEOPARD)
     40#include "NetscapeSandboxFunctions.h"
     41#endif
     42
    3943using namespace WebCore;
    4044using namespace std;
     
    412416static const unsigned WKNVAllowedToEnterSandbox = 74658;
    413417
     418// WKNVSandboxFunctions = 74659 is defined in NetscapeSandboxFunctions.h
     419
    414420// The Core Animation render server port.
    415421static const unsigned WKNVCALayerRenderServerPort = 71879;
     
    502508            *(NPBool*)value = true;
    503509            break;
     510
     511#if PLATFORM(MAC) && !defined(BUILDING_ON_LEOPARD) || !defined(BUILDING_ON_SNOW_LEOPARD)
     512        case WKNVSandboxFunctions:
     513        {
     514            *(WKNSandboxFunctions **)value = netscapeSandboxFunctions();
     515            break;
     516        }
     517#endif
    504518
    505519#ifndef NP_NO_QUICKDRAW
Note: See TracChangeset for help on using the changeset viewer.