]> git.saurik.com Git - apple/security.git/blob - OSX/authd/engine.h
Security-57740.1.18.tar.gz
[apple/security.git] / OSX / authd / engine.h
1 /* Copyright (c) 2012-2013 Apple Inc. All Rights Reserved. */
2
3 #ifndef _SECURITY_AUTH_ENGINE_H_
4 #define _SECURITY_AUTH_ENGINE_H_
5
6 #include "credential.h"
7 #include <Security/Authorization.h>
8
9 #if defined(__cplusplus)
10 extern "C" {
11 #endif
12
13 AUTH_WARN_RESULT AUTH_MALLOC AUTH_NONNULL_ALL AUTH_RETURNS_RETAINED
14 engine_t engine_create(connection_t, auth_token_t);
15
16 AUTH_NONNULL1 AUTH_NONNULL2
17 OSStatus engine_authorize(engine_t, auth_rights_t rights, auth_items_t environment, AuthorizationFlags);
18
19 AUTH_NONNULL_ALL
20 OSStatus engine_verify_modification(engine_t, rule_t, bool remove, bool force_modify);
21
22 AUTH_NONNULL_ALL
23 auth_rights_t engine_get_granted_rights(engine_t);
24
25 AUTH_NONNULL_ALL
26 CFAbsoluteTime engine_get_time(engine_t);
27
28 AUTH_NONNULL_ALL
29 void engine_destroy_agents(engine_t);
30
31 AUTH_NONNULL_ALL
32 void engine_interrupt_agent(engine_t engine);
33
34 #if defined(__cplusplus)
35 }
36 #endif
37
38 #endif /* !_SECURITY_AUTH_ENGINE_H_ */