diff options
| author | Paul Moore <paul@paul-moore.com> | 2025-07-12 16:27:39 -0400 |
|---|---|---|
| committer | Paul Moore <paul@paul-moore.com> | 2025-10-22 19:24:17 -0400 |
| commit | 92ed3500c9a91f43e094c9b8fb4bab9976565d74 (patch) | |
| tree | c25d377428e10628d043607c0c60e76e0f0d0736 /security/lsm_init.c | |
| parent | cb1513db7a6ed82d22853608d78bbf72ad8c67c1 (diff) | |
lsm: integrate lsm_early_cred() and lsm_early_task() into caller
With only one caller of lsm_early_cred() and lsm_early_task(), insert
the functions' code directly into the caller and ger rid of the two
functions.
Reviewed-by: Casey Schaufler <casey@schaufler-ca.com>
Reviewed-by: John Johansen <john.johhansen@canonical.com>
Reviewed-by: Mimi Zohar <zohar@linux.ibm.com>
Signed-off-by: Paul Moore <paul@paul-moore.com>
Diffstat (limited to 'security/lsm_init.c')
| -rw-r--r-- | security/lsm_init.c | 35 |
1 files changed, 5 insertions, 30 deletions
diff --git a/security/lsm_init.c b/security/lsm_init.c index 09afa7ad719e..8bb473aca113 100644 --- a/security/lsm_init.c +++ b/security/lsm_init.c @@ -291,34 +291,6 @@ static void __init ordered_lsm_parse(const char *order, const char *origin) kfree(sep); } -/** - * lsm_early_cred - during initialization allocate a composite cred blob - * @cred: the cred that needs a blob - * - * Allocate the cred blob for all the modules - */ -static void __init lsm_early_cred(struct cred *cred) -{ - int rc = lsm_cred_alloc(cred, GFP_KERNEL); - - if (rc) - panic("%s: Early cred alloc failed.\n", __func__); -} - -/** - * lsm_early_task - during initialization allocate a composite task blob - * @task: the task that needs a blob - * - * Allocate the task blob for all the modules - */ -static void __init lsm_early_task(struct task_struct *task) -{ - int rc = lsm_task_alloc(task); - - if (rc) - panic("%s: Early task alloc failed.\n", __func__); -} - static void __init ordered_lsm_init(void) { unsigned int first = 0; @@ -382,8 +354,11 @@ static void __init ordered_lsm_init(void) blob_sizes.lbs_inode, 0, SLAB_PANIC, NULL); - lsm_early_cred((struct cred *) current->cred); - lsm_early_task(current); + if (lsm_cred_alloc((struct cred __rcu *)current->cred, GFP_KERNEL)) + panic("%s: early cred alloc failed.\n", __func__); + if (lsm_task_alloc(current)) + panic("%s: early task alloc failed.\n", __func__); + lsm_order_for_each(lsm) { initialize_lsm(*lsm); } |