Changeset 198089 in webkit


Ignore:
Timestamp:
Mar 13, 2016 6:44:08 PM (8 years ago)
Author:
mitz@apple.com
Message:

[Mac] Injected bundle in relocatable WebContent service can’t use XPC services from other relocatable frameworks
https://bugs.webkit.org/show_bug.cgi?id=155414
<rdar://problem/24428418>

Reviewed by Sam Weinig.

  • Configurations/DebugRelease.xcconfig: Set WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT to NO, because engineering builds are ad-hoc signed and therefore can’t have a private entitlement.
  • Configurations/WebContent-OSX.entitlements: Added. Includes the XPC domain extension entitlement.
  • Configurations/WebContentService.xcconfig: Set WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT to YES if not already set and the framework is relocatable. Set CODE_SIGN_ENTITLEMENTS to the new entitlements file if the domain extension entitlement is needed.
  • WebKit2.xcodeproj/project.pbxproj: Added reference to new file.
Location:
trunk/Source/WebKit2
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r198088 r198089  
     12016-03-13  Dan Bernstein  <mitz@apple.com>
     2
     3        [Mac] Injected bundle in relocatable WebContent service can’t use XPC services from other relocatable frameworks
     4        https://bugs.webkit.org/show_bug.cgi?id=155414
     5        <rdar://problem/24428418>
     6
     7        Reviewed by Sam Weinig.
     8
     9        * Configurations/DebugRelease.xcconfig:
     10          Set WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT to NO, because
     11          engineering builds are ad-hoc signed and therefore can’t have a private entitlement.
     12
     13        * Configurations/WebContent-OSX.entitlements: Added. Includes the XPC domain extension
     14          entitlement.
     15
     16        * Configurations/WebContentService.xcconfig:
     17          Set WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT to YES if not already set
     18          and the framework is relocatable. Set CODE_SIGN_ENTITLEMENTS to the new entitlements file
     19          if the domain extension entitlement is needed.
     20
     21        * WebKit2.xcodeproj/project.pbxproj: Added reference to new file.
     22
    1232016-03-13  Dean Jackson  <dino@apple.com>
    224
  • trunk/Source/WebKit2/Configurations/DebugRelease.xcconfig

    r196068 r198089  
    5151WK_XPC_SERVICE_SUFFIX[sdk=macosx*] = .Development;
    5252WK_XPC_SERVICE_SUFFIX[sdk=*simulator*] = .Development;
     53
     54WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT = NO;
  • trunk/Source/WebKit2/Configurations/WebContentService.xcconfig

    r195795 r198089  
    2626WK_XPC_SERVICE_IOS_ENTITLEMENTS_BASE = WebContent-iOS;
    2727
     28CODE_SIGN_ENTITLEMENTS[sdk=macosx*] = $(CODE_SIGN_ENTITLEMENTS_OSX_WITH_XPC_DOMAIN_EXTENSION_$(WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT));
     29CODE_SIGN_ENTITLEMENTS_OSX_WITH_XPC_DOMAIN_EXTENSION_YES = Configurations/WebContent-OSX.entitlements;
     30
    2831PRODUCT_NAME = com.apple.WebKit.WebContent$(WK_XPC_SERVICE_SUFFIX);
    2932INFOPLIST_FILE[sdk=iphone*] = WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist;
     
    3336OTHER_LDFLAGS_PLATFORM[sdk=macosx*] = -framework AppKit $(OTHER_LDFLAGS_SHIM_$(WK_LINK_SHIM));
    3437OTHER_LDFLAGS_SHIM_YES = $(BUILT_PRODUCTS_DIR)/WebProcessShim.dylib;
     38
     39WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT = $(WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT_$(WK_EMPTY_$(WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT)));
     40WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT_ = $(WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT_NO);
     41WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT_NO = $(WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT);
     42WK_WEBCONTENT_SERVICE_NEEDS_XPC_DOMAIN_EXTENSION_ENTITLEMENT_YES = $(WK_RELOCATABLE_FRAMEWORKS);
  • trunk/Source/WebKit2/WebKit2.xcodeproj/project.pbxproj

    r198070 r198089  
    27832783                37A64E5418F38E3C00EB30F1 /* _WKInputDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKInputDelegate.h; sourceTree = "<group>"; };
    27842784                37A64E5618F38F4600EB30F1 /* _WKFormInputSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKFormInputSession.h; sourceTree = "<group>"; };
     2785                37B418EB1C9624F20031E63B /* WebContent-OSX.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "WebContent-OSX.entitlements"; sourceTree = "<group>"; };
    27852786                37B5045119EEF31300CE2CF8 /* WKErrorPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKErrorPrivate.h; sourceTree = "<group>"; };
    27862787                37BEC4DE19491486008B4286 /* CompletionHandlerCallChecker.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CompletionHandlerCallChecker.mm; sourceTree = "<group>"; };
     
    42304231                                1A4F976E100E7B6600637A18 /* Version.xcconfig */,
    42314232                                7C0BB9A818DCDE890006C086 /* WebContent-iOS.entitlements */,
     4233                                37B418EB1C9624F20031E63B /* WebContent-OSX.entitlements */,
    42324234                                BCACC40E16B0B8A800B6E092 /* WebContentService.xcconfig */,
    42334235                                BCB86F4B116AAACD00CE20B7 /* WebKit.xcconfig */,
Note: See TracChangeset for help on using the changeset viewer.