Provided by: manpages-ru-dev_4.19.0-7_all
ИМЯ
getdomainname, setdomainname - получить/установить имя домена NIS
LIBRARY
Standard C library (libc, -lc)
СИНТАКСИС
#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 узла системы. Точнее говоря, они работают с именем домена NIS, связанным с пространством имён UTS вызывающего процесса. setdomainname() изменяет доменное имя на значение, указанное в массиве символов name. В аргументе len задаётся количество байт в name. (То есть name может не завершаться байтом с null.) getdomainname() возвращает доменное имя с null на конце в массиве символов name, который имеет длину len байт. Если для доменного имени с null на конце требуется больше чем len байт, то getdomainname() возвращает первые len байт (glibc) или возвращает ошибку (libc).
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
On success, zero is returned. On error, -1 is returned, and errno is set to indicate the error.
ОШИБКИ
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, ограничена 64 байтами. В более старых ядрах ограничение было 8 байт. На большинстве архитектур Linux (включая x86), системный вызов getdomainname() отсутствует; вместо него в библиотеке glibc реализована функция getdomainname(), которая возвращает копию поля domainname, которую возвращает вызов uname(2).
СМ. ТАКЖЕ
gethostname(2), sethostname(2), uname(2), uts_namespaces(7)
ПЕРЕВОД
Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry Bolkhovskikh <d20052005@yandex.ru>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com> Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на ⟨man-pages-ru-talks@lists.sourceforge.net⟩.