diff options
author | Tom Ryder <tom@sanctum.geek.nz> | 2016-03-18 10:36:22 +1300 |
---|---|---|
committer | Tom Ryder <tom@sanctum.geek.nz> | 2016-03-18 10:36:22 +1300 |
commit | 79807255feef41b15e91f5c0e82124f83c582517 (patch) | |
tree | c799b900fcadca5c736ac5a2ad98462f594a6209 | |
parent | Wrote whoami(1) (diff) | |
download | tunics-79807255feef41b15e91f5c0e82124f83c582517.tar.gz tunics-79807255feef41b15e91f5c0e82124f83c582517.zip |
Add hostname(1) implementation
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | Makefile | 7 | ||||
-rw-r--r-- | hostname.c | 13 | ||||
-rw-r--r-- | hostname.h | 9 |
4 files changed, 28 insertions, 2 deletions
@@ -1,3 +1,4 @@ +hostname ls pwd sort @@ -3,7 +3,10 @@ CC = clang CFLAGS = -std=c90 -Weverything -all : ls pwd sort whoami +all : hostname ls pwd sort whoami + +hostname : hostname.c hostname.h + $(CC) $(CFLAGS) hostname.c -o hostname ls : ls.c ls.h $(CC) $(CFLAGS) ls.c -o ls @@ -19,5 +22,5 @@ whoami : whoami.c whoami.h clean : rm -f -- *.o - rm -f ls pwd sort whoami + rm -f hostname ls pwd sort whoami diff --git a/hostname.c b/hostname.c new file mode 100644 index 0000000..532fc16 --- /dev/null +++ b/hostname.c @@ -0,0 +1,13 @@ +#include "hostname.h" + +int main(void) { + struct utsname *name; + name = malloc(sizeof(struct utsname)); + if (uname(name) == -1) { + perror("uname"); + exit(EXIT_FAILURE); + } + fprintf(stdout, "%s\n", name->nodename); + exit(EXIT_SUCCESS); +} + diff --git a/hostname.h b/hostname.h new file mode 100644 index 0000000..4eb0b32 --- /dev/null +++ b/hostname.h @@ -0,0 +1,9 @@ +#ifndef __HOSTNAME_H +#define __HOSTNAME_H + +#include <stdio.h> +#include <stdlib.h> +#include <sys/utsname.h> + +#endif + |