handle.h revision fb82f8ed213dd54eebc6bdd5557984c3ba870496
1255e72915d4cbddceb435e13d81601755714e9fSE Android#ifndef _SEPOL_HANDLE_H_
2255e72915d4cbddceb435e13d81601755714e9fSE Android#define _SEPOL_HANDLE_H_
3255e72915d4cbddceb435e13d81601755714e9fSE Android
4255e72915d4cbddceb435e13d81601755714e9fSE Androidstruct sepol_handle;
5255e72915d4cbddceb435e13d81601755714e9fSE Androidtypedef struct sepol_handle sepol_handle_t;
6255e72915d4cbddceb435e13d81601755714e9fSE Android
7255e72915d4cbddceb435e13d81601755714e9fSE Android/* Create and return a sepol handle. */
8255e72915d4cbddceb435e13d81601755714e9fSE Androidsepol_handle_t *sepol_handle_create(void);
9255e72915d4cbddceb435e13d81601755714e9fSE Android
10255e72915d4cbddceb435e13d81601755714e9fSE Android/* Get whether or not dontaudits will be disabled, same values as
11255e72915d4cbddceb435e13d81601755714e9fSE Android * specified by set_disable_dontaudit. This value reflects the state
12255e72915d4cbddceb435e13d81601755714e9fSE Android * your system will be set to upon commit, not necessarily its
13255e72915d4cbddceb435e13d81601755714e9fSE Android * current state.*/
14255e72915d4cbddceb435e13d81601755714e9fSE Androidint sepol_get_disable_dontaudit(sepol_handle_t * sh);
15255e72915d4cbddceb435e13d81601755714e9fSE Android
16255e72915d4cbddceb435e13d81601755714e9fSE Android/* Set whether or not to disable dontaudits, 0 is default and does
17255e72915d4cbddceb435e13d81601755714e9fSE Android * not disable dontaudits, 1 disables them */
18255e72915d4cbddceb435e13d81601755714e9fSE Androidvoid sepol_set_disable_dontaudit(sepol_handle_t * sh, int disable_dontaudit);
19255e72915d4cbddceb435e13d81601755714e9fSE Android
20255e72915d4cbddceb435e13d81601755714e9fSE Android/* Set whether module_expand() should consume the base policy passed in.
21255e72915d4cbddceb435e13d81601755714e9fSE Android * This should reduce the amount of memory required to expand the policy. */
22255e72915d4cbddceb435e13d81601755714e9fSE Androidvoid sepol_set_expand_consume_base(sepol_handle_t * sh, int consume_base);
23255e72915d4cbddceb435e13d81601755714e9fSE Android
24255e72915d4cbddceb435e13d81601755714e9fSE Android/* Destroy a sepol handle. */
25255e72915d4cbddceb435e13d81601755714e9fSE Androidvoid sepol_handle_destroy(sepol_handle_t *);
26255e72915d4cbddceb435e13d81601755714e9fSE Android
27fb82f8ed213dd54eebc6bdd5557984c3ba870496Stephen Smalley/* Get whether or not needless unused branch of tunables would be preserved */
28fb82f8ed213dd54eebc6bdd5557984c3ba870496Stephen Smalleyint sepol_get_preserve_tunables(sepol_handle_t * sh);
29fb82f8ed213dd54eebc6bdd5557984c3ba870496Stephen Smalley
30fb82f8ed213dd54eebc6bdd5557984c3ba870496Stephen Smalley/* Set whether or not to preserve the needless unused branch of tunables,
31fb82f8ed213dd54eebc6bdd5557984c3ba870496Stephen Smalley * 0 is default and discard such branch, 1 preserves them */
32fb82f8ed213dd54eebc6bdd5557984c3ba870496Stephen Smalleyvoid sepol_set_preserve_tunables(sepol_handle_t * sh, int preserve_tunables);
33fb82f8ed213dd54eebc6bdd5557984c3ba870496Stephen Smalley
34255e72915d4cbddceb435e13d81601755714e9fSE Android#endif
35