code: plan9front

ref: 75d6267a5f788162d92e7a5ae126cd8b0770aa8a
dir: /sys/src/libc/9sys/getuser.c/

View raw version
#include <u.h>
#include <libc.h>

char *
getuser(void)
{
	static char user[64];
	char name[32];
	Dir *dir;

	snprint(name, sizeof(name), "/proc/%lud/status", (ulong)getpid());
	if((dir = dirstat(name)) == nil)
		return "none";
	snprint(user, sizeof(user), "%s", dir->uid);
	free(dir);
	return user;
}