|
|
1.1 root 1: /*
2: * uname(s)
3: * struct utsname *s;
4: *
5: * tell something about which system version we're on
6: */
7:
8: #include <sys/utsname.h>
9:
10: #define WHOFILE "/etc/whoami"
11:
12: int
13: uname(s)
14: struct utsname *s;
15: {
16: static struct utsname clear;
17:
18: register int fd, i;
19:
20: *s = clear;
21:
22: /* read the system identity */
23: fd = open (WHOFILE, 0);
24: if (fd < 0)
25: return -1;
26: read (fd, s->nodename, sizeof (s->nodename) - 1);
27: close(fd);
28:
29: /* find the trailing \n if any and make it \0 */
30: for (i = 0; i < sizeof (s->nodename); i++)
31: if (s->nodename[i] == '\n')
32: s->nodename[i] = '\0';
33:
34: /* provide additional identifying information */
35: strcpy (s->sysname, s->nodename);
36: strcpy (s->release, "V8");
37: strcpy (s->version, "0");
38:
39: return 0;
40: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.