Developer's Daily | Unix by Example |
main | java | perl | unix | dev directory | web log |
gethostname, sethostname ? get/set host name |
#include <unistd.h> int gethostname(char *name, size_t
len); |
These functions are used to access or to change the host name of the current processor. |
On success, zero is returned. On error, ?1 is returned, and errno is set appropriately. |
EINVAL |
len is negative or, for sethostname, len is larger than the maximum allowed size, or, for gethostname on Linux/i386, len is smaller than the actual size. |
||
EPERM |
For sethostname, the caller was not the superuser. |
||
EFAULT |
name is an invalid address. |
SVr4, 4.4BSD (this function first appeared in 4.2BSD). POSIX.1 does not define these functions, but ISO/IEC 9945-1:1990 mentions them in B.4.4.1. |
Some other implementations of gethostname successfully return len bytes even if name is longer. Linux/Alpha complies with this behaviour. Linux/i386, however, returns EINVAL in this case (as of DLL 4.6.27 libraries). |
Under Linux/Alpha, gethostname is a system call. Under Linux/i386, gethostname is implemented at the library level by calling uname(2). |
getdomainname(2), setdomainname(2), uname(2) |