Yolinux.com

getdomainname manpage

Search topic Section


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



NAME
       getdomainname, setdomainname - get/set NIS domain name

SYNOPSIS
       #include <unistd.h>

       int getdomainname(char *name, size_t len);
       int setdomainname(const char *name, size_t len);

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

       getdomainname(), setdomainname():
	   Since glibc 2.21:
	       _DEFAULT_SOURCE
	   In glibc 2.19 and 2.20:
	       _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
	   Up to and including glibc 2.19:
	       _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)

DESCRIPTION
       These  functions are used to access or to change the NIS domain name of
       the host system.

       setdomainname() sets the domain name to the value given in the  charac-
       ter  array  name.   The	len  argument specifies the number of bytes in
       name.  (Thus, name does not require a terminating null byte.)

       getdomainname() returns the null-terminated domain name in the  charac-
       ter  array  name,  which has a length of len bytes.  If the null-termi-
       nated domain name requires more than len bytes, getdomainname() returns
       the first len bytes (glibc) or gives an error (libc).

RETURN VALUE
       On  success,  zero is returned.	On error, -1 is returned, and errno is
       set appropriately.

ERRORS
       setdomainname() can fail with the following errors:

       EFAULT name pointed outside of user address space.

       EINVAL len was negative or too large.

       EPERM  The caller did not have the CAP_SYS_ADMIN capability in the user
	      namespace associated with its UTS namespace (see namespaces(7)).

       getdomainname() can fail with the following errors:

       EINVAL For  getdomainname()  under libc: name is NULL or name is longer
	      than len bytes.

CONFORMING TO
       POSIX does not specify these calls.

NOTES
       Since Linux 1.0, the limit on the length of a  domain  name,  including
       the  terminating	 null  byte,  is 64 bytes.  In older kernels, it was 8
       bytes.

       On most Linux architectures (including x86),  there  is	no  getdomain-
       name()  system  call;  instead,	glibc  implements getdomainname() as a
       library function that returns a copy of the domainname  field  returned
       from a call to uname(2).

SEE ALSO
       gethostname(2), sethostname(2), uname(2)

COLOPHON
       This  page  is  part of release 4.10 of the Linux man-pages project.  A
       description of the project, information about reporting bugs,  and  the
       latest	  version     of     this    page,    can    be	   found    at
       https://www.kernel.org/doc/man-pages/.



Linux				  2016-10-08		      GETDOMAINNAME(2)