Provided by: manpages-ru-dev_4.18.1-1_all bug

ИМЯ

       getsockname - получить имя сокета

LIBRARY

       Standard C library (libc, -lc)

СИНТАКСИС

       #include <sys/socket.h>

       int getsockname(int sockfd, struct sockaddr *restrict addr,
                       socklen_t *restrict addrlen);

ОПИСАНИЕ

       getsockname()  возвращает  текущий  адрес,  к  которому  привязан  сокет sockfd, в буфере,
       указываемом addr. В параметре addrlen должно  быть  указано,  сколько  места  выделено  (в
       байтах),  на  которое  указывает  addr.  При возврате в этом параметре передается реальный
       размер адреса сокета.

       Возвращаемый адрес урежется, если предоставленный буфер окажется слишком маленьким; в этом
       случае в addrlen будет возвращено значение большее чем было в вызове.

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

       On  success, zero is returned.  On error, -1 is returned, and errno is set to indicate the
       error.

ОШИБКИ

       EBADF  Аргумент sockfd не является допустимым файловым дескриптором.

       EFAULT Аргумент addr указывает на память в  недопустимой  части  адресуемого  пространства
              процесса.

       EINVAL Неправильное значение аргумента addrlen (например, отрицательное).

       ENOBUFS
              Недостаточно ресурсов в системе для выполнения операции.

       ENOTSOCK
              Файловый дескриптор sockfd указывает не на каталог.

СТАНДАРТЫ

       POSIX.1-2001, POSIX.1-2008, SVr4, 4.4BSD, (getsockname() впервые появился в 4.2BSD).

ЗАМЕЧАНИЯ

       Описание типа socklen_t смотрите в accept(2).

СМ. ТАКЖЕ

       bind(2), socket(2), getifaddrs(3), ip(7), socket(7), unix(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⟩.