mirror of
https://github.com/SELinuxProject/selinux
synced 2024-12-23 22:42:06 +00:00
ed7a6ba24a
Change-Id: I7da601767c3a4ebed7274e33304d8b589a9115fe Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
64 lines
1.8 KiB
C
64 lines
1.8 KiB
C
#ifndef _SEPOL_IFACE_RECORD_H_
|
|
#define _SEPOL_IFACE_RECORD_H_
|
|
|
|
#include <sepol/handle.h>
|
|
#include <sepol/context_record.h>
|
|
#include <sys/cdefs.h>
|
|
|
|
__BEGIN_DECLS
|
|
|
|
struct sepol_iface;
|
|
struct sepol_iface_key;
|
|
typedef struct sepol_iface sepol_iface_t;
|
|
typedef struct sepol_iface_key sepol_iface_key_t;
|
|
|
|
/* Key */
|
|
extern int sepol_iface_compare(const sepol_iface_t * iface,
|
|
const sepol_iface_key_t * key);
|
|
|
|
extern int sepol_iface_compare2(const sepol_iface_t * iface,
|
|
const sepol_iface_t * iface2);
|
|
|
|
extern void sepol_iface_key_unpack(const sepol_iface_key_t * key,
|
|
const char **name);
|
|
|
|
extern int sepol_iface_key_create(sepol_handle_t * handle,
|
|
const char *name,
|
|
sepol_iface_key_t ** key_ptr);
|
|
|
|
extern int sepol_iface_key_extract(sepol_handle_t * handle,
|
|
const sepol_iface_t * iface,
|
|
sepol_iface_key_t ** key_ptr);
|
|
|
|
extern void sepol_iface_key_free(sepol_iface_key_t * key);
|
|
|
|
/* Name */
|
|
extern const char *sepol_iface_get_name(const sepol_iface_t * iface);
|
|
|
|
extern int sepol_iface_set_name(sepol_handle_t * handle,
|
|
sepol_iface_t * iface, const char *name);
|
|
|
|
/* Context */
|
|
extern sepol_context_t *sepol_iface_get_ifcon(const sepol_iface_t * iface);
|
|
|
|
extern int sepol_iface_set_ifcon(sepol_handle_t * handle,
|
|
sepol_iface_t * iface, sepol_context_t * con);
|
|
|
|
extern sepol_context_t *sepol_iface_get_msgcon(const sepol_iface_t * iface);
|
|
|
|
extern int sepol_iface_set_msgcon(sepol_handle_t * handle,
|
|
sepol_iface_t * iface, sepol_context_t * con);
|
|
|
|
/* Create/Clone/Destroy */
|
|
extern int sepol_iface_create(sepol_handle_t * handle,
|
|
sepol_iface_t ** iface_ptr);
|
|
|
|
extern int sepol_iface_clone(sepol_handle_t * handle,
|
|
const sepol_iface_t * iface,
|
|
sepol_iface_t ** iface_ptr);
|
|
|
|
extern void sepol_iface_free(sepol_iface_t * iface);
|
|
|
|
__END_DECLS
|
|
#endif
|