GETHOSTNAME(3) | Library Functions Manual | GETHOSTNAME(3)

# NAME

`gethostname`, `sethostname` —
get/set name of current host

# LIBRARY

Standard C Library (libc, -lc)

# SYNOPSIS

`#include <unistd.h>`

int
`gethostname`(char *name, size_t namelen);

int
`sethostname`(const char *name, size_t namelen);

# DESCRIPTION

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

`sethostname`() 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.

# RETURN VALUES

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 location errno.

# ERRORS

If the `gethostname`() or `sethostname`() functions fail, they will set errno for any of the errors specified for the routine sysctl(3).

# SEE ALSO

gethostid(3), sysctl(3), sysctl(8)

# STANDARDS

The `gethostname`() function conforms to X/Open Portability Guide Issue 4, Version 2 (“XPG4.2”).

# HISTORY

The `gethostname` function call appeared in 4.2BSD.

# BUGS

Host names are limited to `MAXHOSTNAMELEN` (from ⟨sys/param.h⟩) characters including null-termination, currently 256.

September 2, 2015 | NetBSD 9.2