Messages in this thread | | | Date | Fri, 18 Dec 1998 14:31:25 -0500 (EST) | From | Christopher Allen Wing <> | Subject | 32-bit UIDs for Linux [PATCH] |
| |
Hi. A little over a month ago, I wrote a patch against Linux 2.0 to allow the use of 32-bit UIDs and GIDs. I'm submitting this to the kernel list to see who else is interested and what thoughts you may have on what I've done.
I've taken the syscalls in Linux that involve a UID or GID and added corresponding new syscalls which can handle 32-bit UIDs/GIDs. By recompiling glibc using the new kernel headers, old binaries linked against glibc can use high UIDs without a recompile. (because glibc for the most part uses 32-bit UIDs and GIDs). I've also made a simple modification to the ext2 filesystem so that it can store high-UIDs as well. This modification does not break compatibility with existing ext2 filesystems, or the standard ext2 driver.
I've tried to keep everything forwards and backwards compatible; all existing system calls and kernel interfaces will still work as expected with 16-bit UIDs, old programs, and old libraries.
I did this work on behalf of the University of Michigan, College of Engineering computer network (CAEN). U-M is (probably) one of the few organizations that needs 32-bit UID support, as we have over 100,000 users in a campus-wide shared Unix environment. (files and home directories are stored in AFS, /afs/*umich.edu)
This is an experimental work which is not officially endorsed by the University of Michigan nor intended to be part of the "official" kernel. We would, however, like to work on getting 32-bit UID support into the next development kernel (2.3) as soon as it is convenient.
I have patches against the kernel and C library as distributed in Red Hat Linux 5.1. (kernel 2.0.35 and glibc 2.0.7) The kernel patches are specific to i386 so far; I will probably do further work on other platforms and port the changes to the 2.1/2.2 kernel. When I have time in the near future I will update it to 2.0.36/37.
It hasn't crashed my machine so far and yes, it actually works.
Patches, source and binary RPMs, as well as extensive documentation, are located at:
http://www-personal.engin.umich.edu/~wingc/uid32
Please write back to me with any thoughts and questions.
Thanks, Chris Wing
wingc@engin.umich.edu
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |