1 #include "tests.h"
2 #include <asm/unistd.h>
3
4 #ifdef __NR_uname
5
6 # include <stdio.h>
7 # include <sys/utsname.h>
8 # include <unistd.h>
9
main(int ac,char ** av)10 int main(int ac, char **av)
11 {
12 int abbrev = ac > 1;
13 struct utsname *const uname = tail_alloc(sizeof(struct utsname));
14 int rc = syscall(__NR_uname, uname);
15 printf("uname({sysname=\"");
16 print_quoted_string(uname->sysname);
17 printf("\", nodename=\"");
18 print_quoted_string(uname->nodename);
19 if (abbrev) {
20 printf("\", ...");
21 } else {
22 printf("\", release=\"");
23 print_quoted_string(uname->release);
24 printf("\", version=\"");
25 print_quoted_string(uname->version);
26 printf("\", machine=\"");
27 print_quoted_string(uname->machine);
28 # ifdef HAVE_STRUCT_UTSNAME_DOMAINNAME
29 printf("\", domainname=\"");
30 print_quoted_string(uname->domainname);
31 # endif
32 printf("\"");
33 }
34 printf("}) = %d\n", rc);
35
36 puts("+++ exited with 0 +++");
37 return 0;
38 }
39
40 #else
41
42 SKIP_MAIN_UNDEFINED("__NR_uname")
43
44 #endif
45