gethostname

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
GETHOSTNAME(2)		  Linux Programmer’s Manual	       GETHOSTNAME(2)



NAME
       gethostname, sethostname - get/set host 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 or to change the host name of the
       current processor.  The gethostname() function  returns	a  NUL-termi-
       nated  hostname	(set earlier by sethostname()) in the array name that
       has a length of len bytes.  In case the NUL-terminated  hostname	 does
       not  fit,  no  error 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, -1 is returned, and errno  is
       set appropriately.

ERRORS
       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.	 (In this last case glibc 2.1
	      uses ENAMETOOLONG.)

       EPERM  For sethostname, the caller was not the superuser.

       EFAULT name is an invalid address.

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

BUGS
       For  many  Linux kernel / libc combinations gethostname will return an
       error 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(2)



Linux 2.5.0			  2001-12-15		       GETHOSTNAME(2)