Документация по LinuxLinuxDoc.Ru 🔍

gethostname, sethostname - определяет/устанавливает имя узла

НАЗВАНИЕ
gethostname, sethostname - определяет/устанавливает имя
узла

СИНТАКСИС
#include

int gethostname(char *name, size_t len);
int sethostname(const char *name, size_t len);

ОПИСАНИЕ

Эти функции используются для определения или изменения
имени машины. Функция gethostname() возвращает
оканчивающуюся NUL строку с именем машины (установленным
ранее функцией sethostname()) в массиве name, который
имеет длину len байт. Если имя машины, оканчивающееся
NUL, не помещается в массив, то функция не вернет ошибку,
хотя имя машины будет обрезано. Не определено, будет ли
обрезаное имя оканчиваться NUL.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При удачном завершении вызова возвращается ноль. При
ошибке возвращается -1, а переменной errno присваивается
соответствующее значение.

КОДЫ ОШИБОК

EINVAL len отрицательно или больше допустимого размера
(для sethostname), или меньше действительного
значения (для gethostname в Linux/i386 в этом
случае использует ENAMETOOLONG).

EPERM вызов был произведен без прав суперпользователя
(для sethostname).

EFAULT name не является правильным адресом.

СООТВЕТСТВИЕ СТАНДАРТАМ

SVr4, 4.4BSD (эта функция появилась в 4.2BSD). POSIX
1003.1-2001 описывает gethostname, однако не описывает
sethostname.

НАЙДЕННЫЕ ОШИБКИ
Для многих сочетаний ядра Linux / libc gethostname будет
возвращать ошибку вместо обрезанного имени.

ЗАМЕЧАНИЯ
SUSv2 гарантирует, что `Имя машины ограничено 255
байтами'. POSIX 1003.1-2001 гарантирует, что `Имя машины
(не включая конечный NUL) ограничено HOST_NAME_MAX
байтами.
Читать новости Linux в Telegram
Linux - gethostname, sethostname - определяет/устанавливает имя узла
Мы в соцсетях ✉