mirror of
https://gitlab.com/apparmor/apparmor.git
synced 2025-03-04 16:35:02 +01:00
38 lines
776 B
C
38 lines
776 B
C
![]() |
#ifndef __MODULEINTERFACE_H
|
||
|
#define __MODULEINTERFACE_H
|
||
|
|
||
|
/* Codes of the types of basic structures that are understood */
|
||
|
#define SD_CODE_BYTE (sizeof(u8))
|
||
|
#define INTERFACE_ID "INTERFACE"
|
||
|
|
||
|
#define SUBDOMAIN_INTERFACE_VERSION 2
|
||
|
|
||
|
enum sd_code {
|
||
|
SD_U8,
|
||
|
SD_U16,
|
||
|
SD_U32,
|
||
|
SD_U64,
|
||
|
SD_NAME, /* same as string except it is items name */
|
||
|
SD_DYN_STRING,
|
||
|
SD_STATIC_BLOB,
|
||
|
SD_STRUCT,
|
||
|
SD_STRUCTEND,
|
||
|
SD_LIST,
|
||
|
SD_LISTEND,
|
||
|
SD_OFFSET,
|
||
|
SD_BAD
|
||
|
};
|
||
|
|
||
|
/* sd_ext tracks the kernel buffer and read position in it. The interface
|
||
|
* data is copied into a kernel buffer in subdomainfs and then handed off to
|
||
|
* the activate routines.
|
||
|
*/
|
||
|
struct sd_ext {
|
||
|
void *start;
|
||
|
void *end;
|
||
|
void *pos; /* pointer to current position in the buffer */
|
||
|
u32 version;
|
||
|
};
|
||
|
|
||
|
#endif /* __MODULEINTERFACE_H */
|