ref: babf901b4a508c3ec5d1f89655f10377bbdf9637
dir: /appl/cmd/whoami.b/
implement Whoami;
# Who are you?
include "sys.m";
sys: Sys;
include "draw.m";
Whoami: module {
init: fn(nil: ref Draw->Context, nil: list of string);
};
init(nil: ref Draw->Context, nil: list of string) {
sys = load Sys Sys->PATH;
sys->print("%s\n", readfile("/dev/user"));
exit;
}
# Reads a (small) file into a string
readfile(f: string): string {
fd := sys->open(f, sys->OREAD);
if(fd == nil)
return nil;
buf := array[8192] of byte;
n := sys->read(fd, buf, len buf);
if(n < 0)
return nil;
return string buf[0:n];
}