From f9b3218dedaf3a5af51c489695d9666ca644902d Mon Sep 17 00:00:00 2001 From: weishu Date: Tue, 14 Feb 2023 14:41:00 +0700 Subject: [PATCH] kernel: fix policydb length --- kernel/selinux/sepolicy.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/kernel/selinux/sepolicy.c b/kernel/selinux/sepolicy.c index f1fa0444..46ed5df8 100644 --- a/kernel/selinux/sepolicy.c +++ b/kernel/selinux/sepolicy.c @@ -128,14 +128,13 @@ static struct avtab_node *get_avtab_node(struct policydb *db, /* this is used to get the node - insertion is actually unique */ node = avtab_insert_nonunique(&db->te_avtab, key, &avdatum); - int grow_size = sizeof(u16) * 4; + int grow_size = sizeof(struct avtab_key); + grow_size += sizeof(struct avtab_datum); if (key->specified & AVTAB_XPERMS) { grow_size += sizeof(u8); grow_size += sizeof(u8); grow_size += sizeof(u32) * ARRAY_SIZE(avdatum.u.xperms->perms.p); - } else { - grow_size += sizeof(u32) * 1; } db->len += grow_size; }