diff options
Diffstat (limited to 'libsepol/src/context.h')
-rw-r--r-- | libsepol/src/context.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/libsepol/src/context.h b/libsepol/src/context.h new file mode 100644 index 00000000..d25ca8a0 --- /dev/null +++ b/libsepol/src/context.h @@ -0,0 +1,37 @@ +#ifndef _SEPOL_INTERNAL_CONTEXT_H_ +#define _SEPOL_INTERNAL_CONTEXT_H_ + +#include <stddef.h> +#include "context_internal.h" +#include <sepol/policydb/context.h> +#include <sepol/policydb/policydb.h> +#include <sepol/handle.h> + +/* Create a context structure from high level representation */ +extern int context_from_record(sepol_handle_t * handle, + const policydb_t * policydb, + context_struct_t ** cptr, + const sepol_context_t * data); + +extern int context_to_record(sepol_handle_t * handle, + const policydb_t * policydb, + const context_struct_t * context, + sepol_context_t ** record); + +/* Create a context structure from string representation */ +extern int context_from_string(sepol_handle_t * handle, + const policydb_t * policydb, + context_struct_t ** cptr, + const char *con_str, size_t con_str_len); + +/* Check if the provided context is valid for this policy */ +extern int context_is_valid(const policydb_t * policydb, + const context_struct_t * context); + +/* Extract the context as string */ +extern int context_to_string(sepol_handle_t * handle, + const policydb_t * policydb, + const context_struct_t * context, + char **result, size_t * result_len); + +#endif |