feat: detect proc_ops support via header parsing instead of version check. (#411)
Some kernels (e.g. 5.4 with backports) include proc_ops despite being older than 5.6.0. Replace hardcoded version check with runtime header detection to handle these cases. - Check for "struct proc_ops" in include/linux/proc_fs.h - Use KSU_COMPAT_HAS_PROC_OPS macro for conditional compilation - Fixes build failures on kernels with backported proc_ops Signed-off-by: JackAltman
This commit is contained in:
@@ -78,7 +78,7 @@ static ssize_t uid_scanner_write(struct file *file, const char __user *buffer,
|
||||
return count;
|
||||
}
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)
|
||||
#ifdef KSU_COMPAT_HAS_PROC_OPS
|
||||
static const struct proc_ops uid_scanner_proc_ops = {
|
||||
.proc_open = uid_scanner_open,
|
||||
.proc_read = seq_read,
|
||||
@@ -133,4 +133,4 @@ void ksu_throne_comm_exit(void)
|
||||
}
|
||||
|
||||
pr_info("throne communication cleaned up\n");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user