process events connector - uid_t gid_t size issues
PATCH 1/1 process events connector - uid_t gid_t size issues
Andrew,
I noticed this follow up patch did not make it's way into -mm and
subsequently to 2.6.15-rc2. The uid_t and gid_t fields appear to present a 32/64-bit userspace/kernel problem for some archs.
This patch addresses the problem by fixing the size to the largest
size for uid_t/gid_t used in the kernel. This preserves the total size of the event structure while ensuring that the layouts of the ID change event match in 32 and 64-bit kernels and applications.
Please apply.
Signed-off-by Matt Helsley <[email protected]>
---
include/linux/cn_proc.h +4 -4
@@ -84,16 +84,16 @@ struct proc_event {struct id_proc_event {pid_t process_pid;pid_t process_tgid;union { -uid_t ruid;/* current->uid */ -gid_t rgid;/* current->gid */ +__u32 ruid;/* task uid */ +__u32 rgid;/* task gid */ } r;union { -uid_t euid; -gid_t egid; +__u32 euid; +__u32 egid; } e; } id;struct exit_proc_event {pid_t process_pid;