ИМЯ getdomainname, setdomainname - получить/установить имя домена NIS
ОБЗОР #include <unistd.h>
int getdomainname(char *name, size_t len); int setdomainname(const char *name, size_t len);
Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):
getdomainname(), setdomainname(): начиная с glibc 2.21: _DEFAULT_SOURCE в glibc 2.19 и 2.20: _DEFAULT_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500) до glibc 2.19, включительно: _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
ОПИСАНИЕ Эти функции используются для доступа к имени узла домена NIS или для его изменения.
setdomainname() изменяет доменное имя на значение, указанное в массиве символов name. В аргументе len задаётся количество байт в name. (То есть name может не завершаться байтом с null.)
getdomainname() возвращает доменное имя с null на конце в массиве символов name, который имеет длину len байт. Если для доменного имени с null на конце требуется больше чем len байт, то getdomainname() возвращает первые len байт (glibc) или возвращает ошибку (libc).
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ При успешном выполнении возвращается 0. В случае ошибки возвращается -1, а errno устанавливается в соответствующее значение.
ОШИБКИ setdomainname() может завершиться со следующими ошибками:
EFAULT name указывает за пределы пользовательского адресного пространства.
EINVAL Значение len отрицательно или слишком большое.
EPERM У вызывающего нет мандата CAP_SYS_ADMIN в пользовательском пространстве имён, связанном с его пространством имён UTS (смотрите namespaces(7)).
getdomainname() может завершиться со следующими ошибками:
EINVAL Для getdomainname() в libc: значение name равно NULL или name длиннее чем len байт.
СООТВЕТСТВИЕ СТАНДАРТАМ В POSIX нет этих вызовов.
ЗАМЕЧАНИЯ Начиная с Linux 1.0, длина доменного имени, включая завершающий байт с null,
|