GETHOSTNAME(3) BSD Programmer's Manual GETHOSTNAME(3)
gethostname, sethostname - get/set name of current host
#include <unistd.h> int gethostname(char *name, size_t namelen); int sethostname(const char *name, size_t namelen);
The gethostname() function returns the standard host name for the current processor, as previously set by sethostname(). The parameter namelen specifies the size of the name array. If insufficient space is provided, the returned name is truncated. The returned name is always NUL terminat- ed. sethostname() sets the name of the host machine to be name, which has length namelen. This call is restricted to the superuser and is normally used only when the system is bootstrapped.
If the call succeeds a value of 0 is returned. If the call fails, a value of -1 is returned and an error code is placed in the global variable errno.
The following errors may be returned by these calls: [EFAULT] The name parameter gave an invalid address. [EPERM] The caller tried to set the hostname and was not the su- peruser.
hostname(1), getdomainname(3), gethostid(3), sysctl(3), sysctl(8), yp(8)
The gethostname() function call conforms to X/Open Portability Guide Issue 4, Version 2 ("XPG4.2").
The gethostname() function call appeared in 4.2BSD.
Host names are limited to MAXHOSTNAMELEN (from <sys/param.h>) characters, currently 256. This includes the terminating NUL character. If the buffer passed to gethostname() is smaller than MAXHOSTNAMELEN, other operating systems may not guarantee termination with NUL. MirBSD #10-current June 4, 1993 1