Changeset 198967 in webkit


Ignore:
Timestamp:
Apr 1, 2016, 8:21:38 PM (9 years ago)
Author:
dbates@webkit.org
Message:

Attempt to fix the Apple Internal Yosemite and El Capitan builds following
<http://trac.webkit.org/changeset/198933> (https://bugs.webkit.org/show_bug.cgi?id=155455)
<rdar://problem/25502181>

Only check the code signature of the client app if the "user-directory-suffix" sandbox
initialization parameter will not be used. This parameter is only used/passed as an
initialization parameter if the client app is not sandboxed, which seems sufficient
criterion to determine whether it is safe to honor it.

  • Shared/mac/ChildProcessMac.mm:

(WebKit::ChildProcess::initializeSandbox):

Location:
trunk/Source/WebKit2
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r198956 r198967  
     12016-04-01  Daniel Bates  <dabates@apple.com>
     2
     3        Attempt to fix the Apple Internal Yosemite and El Capitan builds following
     4        <http://trac.webkit.org/changeset/198933> (https://bugs.webkit.org/show_bug.cgi?id=155455)
     5        <rdar://problem/25502181>
     6
     7        Only check the code signature of the client app if the "user-directory-suffix" sandbox
     8        initialization parameter will not be used. This parameter is only used/passed as an
     9        initialization parameter if the client app is not sandboxed, which seems sufficient
     10        criterion to determine whether it is safe to honor it.
     11
     12        * Shared/mac/ChildProcessMac.mm:
     13        (WebKit::ChildProcess::initializeSandbox):
     14
    1152016-04-01  Jiewen Tan  <jiewen_tan@apple.com>
    216
  • trunk/Source/WebKit2/Shared/mac/ChildProcessMac.mm

    r198933 r198967  
    209209    }
    210210
     211    if (willUseUserDirectorySuffixInitializationParameter)
     212        return;
    211213    error = noErr;
    212214    String clientCodeSigningIdentifier = codeSigningIdentifierForProcess(xpc_connection_get_pid(parameters.connectionIdentifier.xpcConnection.get()), error);
    213215    bool isClientCodeSigned = !clientCodeSigningIdentifier.isNull();
    214     if (isClientCodeSigned && willUseUserDirectorySuffixInitializationParameter) {
    215         WTFLogAlways("%s: Only unsigned clients can specify parameter user-directory-suffix\n", getprogname());
    216         exit(EX_NOPERM);
    217     }
    218216    if (isClientCodeSigned && clientCodeSigningIdentifier != parameters.clientIdentifier) {
    219217        WTFLogAlways("%s: Code signing identifier of client differs from passed client identifier: %ld\n", getprogname(), static_cast<long>(error));
Note: See TracChangeset for help on using the changeset viewer.