From 7137aa91d8f14f3791392122b5b246f204696c82 Mon Sep 17 00:00:00 2001 From: zfeixiang Date: Thu, 26 Feb 2026 14:35:43 +0800 Subject: [PATCH] add file verification Signed-off-by: zfeixiang --- code_sign/code_sign_elf.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/code_sign/code_sign_elf.c b/code_sign/code_sign_elf.c index 0745061..d4a74c5 100644 --- a/code_sign/code_sign_elf.c +++ b/code_sign/code_sign_elf.c @@ -224,6 +224,7 @@ int elf_file_enable_fs_verity(struct file *file) code_sign_log_error("alloc mem for path_buf failed"); return -ENOMEM; } + struct inode *original_inode = file_inode(file); int err = 0; char *real_path = file_path(file, path_buf, PATH_MAX - 1); if (IS_ERR_OR_NULL(real_path)) { @@ -242,7 +243,12 @@ int elf_file_enable_fs_verity(struct file *file) if (!inode) { code_sign_log_error("file_inode failed"); err = -EFAULT; - goto filp_close_out;; + goto filp_close_out; + } + if (!original_inode || inode->i_ino != original_inode->i_ino || inode->i_sb != original_inode->i_sb) { + code_sign_log_error("file_inode is inconsistent"); + err = -EFAULT; + goto filp_close_out; } long long fsize = inode->i_size;