1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
#include <u.h> #include <libc.h> char * getuser(void) { static char user[64]; int fd; int n; fd = open("/dev/user", OREAD); if(fd < 0) return "none"; n = read(fd, user, (sizeof user)-1); close(fd); if(n <= 0) strcpy(user, "none"); else user[n] = 0; return user; }