1/*
2 * Copyright (c) 2013 Apple Inc.
3 * All rights reserved.
4 */
5
6#ifndef __SYSTEMCONFIGURATION_SNHELPER_PRIVATE_H__
7#define __SYSTEMCONFIGURATION_SNHELPER_PRIVATE_H__
8
9#include <xpc/xpc.h>
10
11#define kSNHelperService		"com.apple.snhelper"
12
13#define kSNHelperMessageType	"message-type"
14#define kSNHelperMessageUUID	"uuid"
15#define kSNHelperMessageAppID	"app-id"
16#define kSNHelperMessageResult	"result-code"
17#define kSNHelperMessageResultData "result-data"
18
19enum {
20	kSNHelperMessageTypeFlowDivertUUIDAdd,
21	kSNHelperMessageTypeFlowDivertUUIDRemove,
22	kSNHelperMessageTypeFlowDivertUUIDClear,
23	kSNHelperMessageTypeGetUUIDForApp,
24};
25
26int snhelper_flow_divert_uuid_policy_add(const uuid_t uuid);
27int snhelper_flow_divert_uuid_policy_remove(const uuid_t uuid);
28int snhelper_flow_divert_uuid_policy_clear(void);
29int snhelper_get_uuid_for_app(const char *, uuid_t);
30
31bool isa_xpc_connection(xpc_object_t obj);
32bool isa_xpc_bool(xpc_object_t obj);
33bool isa_xpc_dictionary(xpc_object_t obj);
34bool isa_xpc_error(xpc_object_t obj);
35
36#endif /* __SYSTEMCONFIGURATION_SNHELPER_PRIVATE_H__ */
37