Provided by: manpages-dev_3.15-1_all bug

NAME

       gethostid,  sethostid - get or set the unique identifier of the current
       host

SYNOPSIS

       #include <unistd.h>

       long gethostid(void);
       int sethostid(long hostid);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       sethostid(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

DESCRIPTION

       Get or set a unique 32-bit identifier for  the  current  machine.   The
       32-bit  identifier  is  intended to be unique among all Unix systems in
       existence.  This normally resembles the Internet address for the  local
       machine,  as returned by gethostbyname(3), and thus usually never needs
       to be set.

       The sethostid() call is restricted to the superuser.

       The hostid argument is stored in the file /etc/hostid.

RETURN VALUE

       gethostid() returns the 32-bit identifier for the current host  as  set
       by sethostid().

FILES

       /etc/hostid

CONFORMING TO

       4.2BSD;   these  functions  were  dropped  in  4.4BSD.   SVr4  includes
       gethostid() but not sethostid().   POSIX.1-2001  specifies  gethostid()
       but not sethostid().

NOTES

       In  the  glibc  implementation, if gethostid() cannot open /etc/hostid,
       then it obtains the hostname using gethostname(2), passes that hostname
       to  gethostbyname_r(3)  in order to obtain the host’s IPv4 address, and
       returns a value obtained by  bit-twiddling  the  IPv4  address.   (This
       value may not be unique.)

SEE ALSO

       hostid(1), gethostbyname(3)

COLOPHON

       This  page  is  part of release 3.15 of the Linux man-pages project.  A
       description of the project, and information about reporting  bugs,  can
       be found at http://www.kernel.org/doc/man-pages/.