ref: b143811a53bf25824e74b7e6e6c2ee7af8c7a954
dir: /sys/src/ape/lib/bsd/gethostname.c/
/* posix */ #include <sys/types.h> #include <unistd.h> #include <stdlib.h> #include <fcntl.h> #include <string.h> int gethostname(char *name, int namelen) { int n, fd; char buf[128]; fd = open("/dev/sysname", O_RDONLY); if(fd < 0) return -1; n = read(fd, buf, sizeof(buf)-1); close(fd); if(n <= 0) return -1; buf[n] = 0; strncpy(name, buf, namelen); name[namelen-1] = 0; return 0; }