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.15 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 2017-09-15 GETDOMAINNAME(2)