1/* Copyright (c) 2012 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) 10extern "C" { 11#endif 12 13AUTH_WARN_RESULT AUTH_MALLOC AUTH_NONNULL_ALL AUTH_RETURNS_RETAINED 14engine_t engine_create(connection_t, auth_token_t); 15 16AUTH_NONNULL1 AUTH_NONNULL2 17OSStatus engine_authorize(engine_t, auth_rights_t rights, auth_items_t enviroment, AuthorizationFlags); 18 19AUTH_NONNULL_ALL 20OSStatus engine_verify_modification(engine_t, rule_t, bool remove, bool force_modify); 21 22AUTH_NONNULL_ALL 23auth_rights_t engine_get_granted_rights(engine_t); 24 25AUTH_NONNULL_ALL 26CFAbsoluteTime engine_get_time(engine_t); 27 28AUTH_NONNULL_ALL 29void engine_destroy_agents(engine_t); 30 31AUTH_NONNULL_ALL 32void engine_interrupt_agent(engine_t engine); 33 34#if defined(__cplusplus) 35} 36#endif 37 38#endif /* !_SECURITY_AUTH_ENGINE_H_ */ 39