Seth Woolley's Man Viewer

gethostname(2) - gethostname, sethostname, gethostname, sethostname - get/set host name - man 2 gethostname

([section] manual, -k keyword, -K [section] search, -f whatis)
man plain no title

GETHOSTNAME(2)             Linux Programmer's Manual            GETHOSTNAME(2)



NAME
       gethostname, sethostname - get/set(7,n,1 builtins) host(1,5) name

SYNOPSIS
       #include <unistd.h>

       int gethostname(char *name, size_t len);
       int sethostname(const char *name, size_t len);

DESCRIPTION
       These  functions  are  used to access(2,5) or to change the host(1,5) name of the
       current processor.  The gethostname() function returns a NUL-terminated
       hostname  (set(7,n,1 builtins)  earlier  by sethostname()) in(1,8) the array name that has a
       length of len bytes.  In case the NUL-terminated hostname does not fit,
       no  error(8,n) is returned, but the hostname is truncated. It is unspecified
       whether the truncated hostname will be NUL-terminated.

RETURN VALUE
       On success, zero is returned.  On error(8,n), -1 is returned, and  errno  is
       set(7,n,1 builtins) appropriately.

ERRORS
       EFAULT name is an invalid address.

       EINVAL len is negative or, for sethostname, len is larger than the max-
              imum allowed size, or, for gethostname  on  Linux/i386,  len  is
              smaller than the actual size.  (In this last case glibc 2.1 uses
              ENAMETOOLONG.)

       EPERM  For sethostname, the caller did not have the CAP_SYS_ADMIN capa-
              bility.

CONFORMING TO
       SVr4,   4.4BSD   (this  function  first  appeared  in(1,8)  4.2BSD).   POSIX
       1003.1-2001 specifies gethostname but not sethostname.

BUGS
       For many Linux kernel / libc combinations gethostname  will  return  an
       error(8,n) instead of returning a truncated hostname.

NOTES
       SUSv2  guarantees  that  `Host  names are limited to 255 bytes'.  POSIX
       1003.1-2001 guarantees that `Host names (not including the  terminating
       NUL) are limited to HOST_NAME_MAX bytes'.

SEE ALSO
       getdomainname(2), setdomainname(2), uname(1,2)(2)



Linux 2.6.7                       2004-06-17                    GETHOSTNAME(2)

References for this manual (incoming links)