tail head cat sleep
QR code linking to this page

Manual Pages  — GETHOSTNAME


gethostname, sethostname – get/set name of current host



Standard C Library (libc, -lc)


#include <unistd.h>

gethostname(char *name, size_t namelen);

sethostname(const char *name, int namelen);


The gethostname() function returns the standard host name for the current processor, as previously set by sethostname(). The namelen argument specifies the size of the name array. The returned name is null-terminated unless insufficient space is provided.

The sethostname() function sets the name of the host machine to be name, which has length namelen. This call is restricted to the super-user and is normally used only when the system is bootstrapped.

Applications should use sysconf(_SC_HOST_NAME_MAX) to find the maximum length of a host name (not including the terminating null).


Upon successful completion, the value 0 is returned; otherwise the value -1 is returned and the global variable errno is set to indicate the error.


The following errors may be returned by these calls:
  The name or namelen argument gave an invalid address.
  The current host name is longer than namelen. (For gethostname() only.)
  The caller tried to set the host name and was not the super-user.


sysconf(3), sysctl(3)


The gethostname() function conforms to IEEE Std 1003.1-2001 ("POSIX.1"). Callers should be aware that { HOST_NAME_MAX} may be variable or infinite, but is guaranteed to be no less than { _POSIX_HOST_NAME_MAX}. On older systems, this limit was defined in the non-standard header <sys/param.h> as MAXHOSTNAMELEN, and counted the terminating null. The sethostname() function and the error returns for gethostname() are not standardized.


The gethostname() function appeared in BSD 4.2 . The namelen argument to gethostname() was changed to size_t in FreeBSD 5.2 for alignment with IEEE Std 1003.1-2001 ("POSIX.1").

GETHOSTNAME (3) July 13, 2020

tail head cat sleep
QR code linking to this page

Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

Unix’s “power tools” are more like power switchblades that slice off the operator’s fingers quickly and efficiently.
— The Unix Haters' handbook