From 9a292385440df3da10f7eaeff6678ce5d4d49c60 Mon Sep 17 00:00:00 2001 From: Thomas Fitzsimmons Date: Fri, 24 May 2002 18:50:29 +0000 Subject: * libc/sys/linux/sys/cdefs.h: Add __weak_reference macros. * libc/sys/linux/sys/time.h: Add conversion macros. * libc/sys/linux/sys/types.h: Add FD_ macros. Include . * libc/sys/linux/ids.c: Add setresuid and syslog syscalls. * libc/sys/linux/gethostname.c: New file. * libc/sys/linux/seteuid.c: New file. * libc/sys/linux/sysctl.c: New file. --- newlib/libc/sys/linux/gethostname.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 newlib/libc/sys/linux/gethostname.c (limited to 'newlib/libc/sys/linux/gethostname.c') diff --git a/newlib/libc/sys/linux/gethostname.c b/newlib/libc/sys/linux/gethostname.c new file mode 100644 index 000000000..d5ebe58a2 --- /dev/null +++ b/newlib/libc/sys/linux/gethostname.c @@ -0,0 +1,30 @@ +/* Copyright 2002, Red Hat Inc. */ + +#include +#include +#include +#include + +int +gethostname (char *name, size_t len) +{ + struct utsname nodebuf; + size_t nodelen; + + if (uname (&nodebuf)) + return -1; + + nodelen = strlen (nodebuf.nodename) + 1; + if (len < nodelen) + memcpy (name, nodebuf.nodename, len); + else + memcpy (name, nodebuf.nodename, nodelen); + + if (nodelen > len) + { + errno = ENAMETOOLONG; + return -1; + } + return 0; +} + -- cgit v1.2.3