Messages in this thread Patch in this message | | | Date | Thu, 4 Mar 2004 09:12:21 -0900 (AKST) | From | Arthur Corliss <> | Subject | [PATCH] 2.4.x BSD Process Accounting w/High UID |
| |
Greetings:
The patch only changes two lines of code which redefine the ac_uid/ac_gid fields as uid_t/gid_t respectively. Fixes accounting for high uid/gids.
--Arthur Corliss Bolverk's Lair -- http://arthur.corlissfamily.org/ Digital Mages -- http://www.digitalmages.com/ "Live Free or Die, the Only Way to Live" -- NH State Motto--- linux-2.4.25/include/linux/acct.h 2004-03-04 07:50:49.000000000 -0900 +++ linux/include/linux/acct.h 2004-03-04 09:07:18.000000000 -0900 @@ -38,11 +38,13 @@ { char ac_flag; /* Accounting Flags */ /* - * No binary format break with 2.0 - but when we hit 32bit uid we'll - * have to bite one + * The pure linux source defines uid_t & gid_t as u32 by default + * on most platforms. This breaks compatibility with older utilities + * and account files compiled ith ac_uid/ac_gid as __u16. Unfortunately, + * this has to happen if you actually use high uid/gids. */ - __u16 ac_uid; /* Accounting Real User ID */ - __u16 ac_gid; /* Accounting Real Group ID */ + uid_t ac_uid; /* Accounting Real User ID */ + gid_t ac_gid; /* Accounting Real Group ID */ __u16 ac_tty; /* Accounting Control Terminal */ __u32 ac_btime; /* Accounting Process Creation Time */ comp_t ac_utime; /* Accounting User Time */ | |