Files
9base/lib9/sysname.c
garbeam@wmii.de e5f0f74b8a initial import
2005-11-20 18:27:27 +02:00

31 lines
420 B
C

#include <u.h>
#include <libc.h>
char*
sysname(void)
{
static char buf[512];
char *p, *q;
if(buf[0])
return buf;
if((q = getenv("sysname")) != nil && q[0] != 0){
utfecpy(buf, buf+sizeof buf, q);
free(q);
return buf;
}
if(q)
free(q);
if(gethostname(buf, sizeof buf) >= 0){
buf[sizeof buf-1] = 0;
if((p = strchr(buf, '.')) != nil)
*p = 0;
return buf;
}
strcpy(buf, "gnot");
return buf;
}