eCos Reference Manual
Prev | Chapter 42. TCP/IP Library Reference | Next

# gethostname

    GETHOSTNAME(3)           BSD Library Functions Manual           GETHOSTNAME(3)

    NAME
         gethostname, sethostname - get/set name of current host

    SYNOPSIS
         #include <unistd.h>

         int
         gethostname(char *name, size_t namelen);

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

    DESCRIPTION
         The gethostname() function returns the standard host name for the current
         processor, as previously set by sethostname().  The parameter namelen
         specifies the size of the name array.  If insufficient space is provided,
         the returned name is truncated.  The returned name is always null termi-
         nated.

         sethostname() sets the name of the host machine to be name, which has
         length namelen.  This call is restricted to the superuser 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 vari-
         able errno.

    ERRORS
         The following errors may be returned by these calls:

         [EFAULT]           The name or namelen parameter gave an invalid address.

         [EPERM]            The caller tried to set the hostname and was not the
                            superuser.

    SEE ALSO
         hostname(1), getdomainname(3), gethostid(3), sysctl(3), sysctl(8), yp(8)

    STANDARDS
         The gethostname() function call conforms to X/Open Portability Guide
         Issue 4.2 (``XPG4.2'').

    HISTORY
         The gethostname() function call appeared in 4.2BSD.

    BUGS
         Host names are limited to MAXHOSTNAMELEN (from <sys/param.h>) characters,
         currently 256.  This includes the terminating NUL character.

         If the buffer passed to gethostname() is smaller than MAXHOSTNAMELEN,
         other operating systems may not guarantee termination with NUL.

    BSD                              June 4, 1993                              BSD

Prev | Home | Next
TCP/IP Library Reference | Up | byteorder