Home | History | Annotate | Download | only in src
      1 #ifndef _SEPOL_INTERNAL_CONTEXT_H_
      2 #define _SEPOL_INTERNAL_CONTEXT_H_
      3 
      4 #include <stddef.h>
      5 #include "context_internal.h"
      6 #include <sepol/policydb/context.h>
      7 #include <sepol/policydb/policydb.h>
      8 #include <sepol/handle.h>
      9 
     10 /* Create a context structure from high level representation */
     11 extern int context_from_record(sepol_handle_t * handle,
     12 			       const policydb_t * policydb,
     13 			       context_struct_t ** cptr,
     14 			       const sepol_context_t * data);
     15 
     16 extern int context_to_record(sepol_handle_t * handle,
     17 			     const policydb_t * policydb,
     18 			     const context_struct_t * context,
     19 			     sepol_context_t ** record);
     20 
     21 /* Create a context structure from string representation */
     22 extern int context_from_string(sepol_handle_t * handle,
     23 			       const policydb_t * policydb,
     24 			       context_struct_t ** cptr,
     25 			       const char *con_str, size_t con_str_len);
     26 
     27 /* Check if the provided context is valid for this policy */
     28 extern int context_is_valid(const policydb_t * policydb,
     29 			    const context_struct_t * context);
     30 
     31 /* Extract the context as string */
     32 extern int context_to_string(sepol_handle_t * handle,
     33 			     const policydb_t * policydb,
     34 			     const context_struct_t * context,
     35 			     char **result, size_t * result_len);
     36 
     37 #endif
     38