78 lines
2.4 KiB
Text
78 lines
2.4 KiB
Text
// Copyright 2014 The Chromium Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
#ifndef SANDBOX_MAC_XPC_STUBS_HEADER_FRAGMENT_
|
|
#define SANDBOX_MAC_XPC_STUBS_HEADER_FRAGMENT_
|
|
|
|
#include <bsm/libbsm.h>
|
|
#include <stddef.h>
|
|
#include <stdint.h>
|
|
|
|
#include "sandbox/sandbox_export.h"
|
|
|
|
// Declare or include public types.
|
|
#if !defined(MAC_OS_X_VERSION_10_7) || \
|
|
MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_7
|
|
|
|
extern "C" {
|
|
typedef void* xpc_object_t;
|
|
} // extern "C"
|
|
|
|
#else
|
|
|
|
#include <xpc/xpc.h>
|
|
|
|
#endif
|
|
|
|
// Declare private types.
|
|
extern "C" {
|
|
typedef struct _xpc_pipe_s* xpc_pipe_t;
|
|
} // extern "C"
|
|
|
|
#if defined(MAC_OS_X_VERSION_10_7) && \
|
|
MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_7
|
|
// Redeclare methods that only exist on 10.7+ to suppress
|
|
// -Wpartial-availability warnings.
|
|
extern "C" {
|
|
XPC_EXPORT XPC_NONNULL1 XPC_NONNULL2 void
|
|
xpc_dictionary_set_int64(xpc_object_t xdict, const char* key, int64_t value);
|
|
|
|
XPC_EXPORT XPC_NONNULL1 void xpc_release(xpc_object_t object);
|
|
|
|
XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL_ALL
|
|
bool xpc_dictionary_get_bool(xpc_object_t xdict, const char* key);
|
|
|
|
XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL_ALL int64_t
|
|
xpc_dictionary_get_int64(xpc_object_t xdict, const char* key);
|
|
|
|
XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL_ALL
|
|
const char* xpc_dictionary_get_string(xpc_object_t xdict, const char* key);
|
|
|
|
XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL_ALL uint64_t
|
|
xpc_dictionary_get_uint64(xpc_object_t xdict, const char* key);
|
|
|
|
XPC_EXPORT XPC_NONNULL1 XPC_NONNULL2 void
|
|
xpc_dictionary_set_uint64(xpc_object_t xdict, const char* key, uint64_t value);
|
|
|
|
XPC_EXPORT XPC_NONNULL1 XPC_NONNULL2
|
|
void xpc_dictionary_set_string(xpc_object_t xdict, const char* key,
|
|
const char* string);
|
|
|
|
XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT xpc_object_t
|
|
xpc_dictionary_create(const char* const* keys,
|
|
const xpc_object_t* values,
|
|
size_t count);
|
|
XPC_EXPORT XPC_MALLOC XPC_RETURNS_RETAINED XPC_WARN_RESULT XPC_NONNULL_ALL
|
|
xpc_object_t
|
|
xpc_dictionary_create_reply(xpc_object_t original);
|
|
|
|
XPC_EXPORT XPC_WARN_RESULT XPC_NONNULL1 XPC_NONNULL2
|
|
xpc_object_t xpc_dictionary_get_value(xpc_object_t xdict, const char* key);
|
|
|
|
XPC_EXPORT XPC_MALLOC XPC_WARN_RESULT XPC_NONNULL1
|
|
char* xpc_copy_description(xpc_object_t object);
|
|
} // extern "C"
|
|
#endif
|
|
|
|
#endif // SANDBOX_MAC_XPC_STUBS_HEADER_FRAGMENT_
|