hackedteam/core-android-native

View on GitHub
selinux_native/jni/libsepol/src/context.h

Summary

Maintainability
Test Coverage
#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