getdomainname(2)

НАИМЕНОВАНИЕ
getdomainname, setdomainname - получить/установить имя домена NIS

БИБЛИОТЕКА
Стандартная библиотека языка C (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).

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успешном выполнении возвращается 0. При ошибке возвращается -1, а в errno содержится код ошибки.

ОШИБКИ
setdomainname() может завершиться со следующими ошибками:

EFAULT
    name указывает за пределы пользовательского адресного пространства.

EINVAL
    Значение len отрицательно или слишком большое.

EPERM
    У вызывающего нет мандата CAP_SYS_ADMIN в пользовательском пространстве имён, связанном с его пространством имён UTS (смотрите namespaces(7)).

getdomainname() может завершиться со следующими ошибками:

EINVAL
    Для getdomainname() в libc: значение name равно NULL или name длиннее чем len байт.

ВЕРСИИ
На большинстве архитектур Linux (включая x86), системный вызов getdomainname() отсутствует; вместо него в библиотеке glibc реализована функция getdomainname(), которая возвращает копию поля domainname, которую возвращает вызов uname(2).

СТАНДАРТЫ
Отсутствуют.

ИСТОРИЯ
Начиная с Linux 1.0, длина доменного имени, включая завершающий байт с null, ограничена 64 байтами. В более старых ядрах ограничение было 8 байт.

СМОТРИТЕ ТАКЖЕ
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> и Kirill Rekhov <krekhov.dev@gmail.com>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков (<debian-l10n-russian@lists.debian.org>).