union security_list_options { #define LSM_HOOK(RET, DEFAULT, NAME, ...) RET (*NAME)(__VA_ARGS__); #include"lsm_hook_defs.h" #undef LSM_HOOK void *lsm_func_addr;
};
/* *@key:staticcallkeyasdefinedbySTATIC_CALL_KEY *@trampoline:staticcalltrampolineasdefinedbySTATIC_CALL_TRAMP *@hl:Thesecurity_hook_listasinitializedbytheowningLSM. *@active:EnabledwhenthestaticcallhasanLSMhookassociated.
*/ struct lsm_static_call { struct static_call_key *key; void *trampoline; struct security_hook_list *hl; /* this needs to be true or false based on what the key defaults to */ struct static_key_false *active;
} __randomize_layout;
/* *Securityblobsizeoroffsetdata.
*/ struct lsm_blob_sizes { int lbs_cred; int lbs_file; int lbs_ib; int lbs_inode; int lbs_sock; int lbs_superblock; int lbs_ipc; int lbs_key; int lbs_msg_msg; int lbs_perf_event; int lbs_task; int lbs_xattr_count; /* number of xattr slots in new_xattrs array */ int lbs_tun_dev; int lbs_bdev;
};
enum lsm_order {
LSM_ORDER_FIRST = -1, /* This is only for capabilities. */
LSM_ORDER_MUTABLE = 0,
LSM_ORDER_LAST = 1, /* This is only for integrity. */
};
struct lsm_info { constchar *name; /* Required. */ enum lsm_order order; /* Optional: default is LSM_ORDER_MUTABLE */ unsignedlong flags; /* Optional: flags describing LSM */ int *enabled; /* Optional: controlled by CONFIG_LSM */ int (*init)(void); /* Required. */ struct lsm_blob_sizes *blobs; /* Optional: for blob sharing. */
};
/* DO NOT tamper with these variables outside of the LSM framework */ externchar *lsm_names; externstruct lsm_static_calls_table static_calls_table __ro_after_init; externstruct lsm_info __start_lsm_info[], __end_lsm_info[]; externstruct lsm_info __start_early_lsm_info[], __end_early_lsm_info[];
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.11Bemerkung:
(vorverarbeitet am 2026-09-29)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.