.\" -*- coding: UTF-8 -*- .\" Copyright (c) 1995 Jim Van Zandt .\" .\" %%%LICENSE_START(GPLv2+_DOC_FULL) .\" This is free documentation; you can redistribute it and/or .\" modify it under the terms of the GNU General Public License as .\" published by the Free Software Foundation; either version 2 of .\" the License, or (at your option) any later version. .\" .\" The GNU General Public License's references to "object code" .\" and "executables" are to be interpreted as the output of any .\" document formatting or typesetting system, including .\" intermediate and printed output. .\" .\" This manual is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public .\" License along with this manual; if not, see .\" . .\" %%%LICENSE_END .\" .\" Modified 2001-12-13, Martin Schulze .\" Added ttyname_r, aeb, 2002-07-20 .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH TTYNAME 3 "10 октября 2019 г." Linux "Руководство программиста Linux" .SH ИМЯ ttyname, ttyname_r \- возвращает имя терминала .SH СИНТАКСИС .nf \fB#include \fP .PP \fBchar *ttyname(int \fP\fIfd\fP\fB);\fP .PP \fBint ttyname_r(int \fP\fIfd\fP\fB, char *\fP\fIbuf\fP\fB, size_t \fP\fIbuflen\fP\fB);\fP .fi .SH ОПИСАНИЕ Функция \fBttyname\fP() возвращает указатель на завершаемый нулевым символом путь устройства терминала, на котором был открыт файловый дескриптор \fIfd\fP, или NULL в случае ошибки (например, если \fIfd\fP не подключен к терминалу). Возвращаемое значение может указывать на статические данные, которые могут быть перезаписаны при следующем вызове. Функция \fBttyname_r\fP() сохраняет имя пути в буфере \fIbuf\fP длиной \fIbuflen\fP. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" При успешном выполнении функция \fBttyname\fP() возвращает указатель на имя пути. В случае ошибки возвращается NULL, в \fIerrno\fP устанавливается код ошибки. При успешном выполнении функция \fBttyname_r\fP() возвращает 0, а в случае ошибки — номер ошибки. .SH ОШИБКИ .TP \fBEBADF\fP Неправильный дескриптор файла. .TP .\" glibc commit 15e9a4f378c8607c2ae1aa465436af4321db0e23 \fBENODEV\fP \fIfd\fP refers to a slave pseudoterminal device but the corresponding pathname could not be found (see NOTES). .TP \fBENOTTY\fP \fIfd\fP does not refer to a terminal device. .TP \fBERANGE\fP (\fBttyname_r\fP()) Значение \fIbuflen\fP мало для хранения имени пути. .SH АТРИБУТЫ Описание терминов данного раздела смотрите в \fBattributes\fP(7). .TS allbox; lb lb lb l l l. Интерфейс Атрибут Значение T{ \fBttyname\fP() T} Безвредность в нитях MT\-Unsafe race:ttyname T{ \fBttyname_r\fP() T} Безвредность в нитях MT\-Safe .TE .SH "СООТВЕТСТВИЕ СТАНДАРТАМ" POSIX.1\-2001, POSIX.1\-2008, 4.2BSD. .SH ЗАМЕЧАНИЯ Процесс, сохранивший файловый дескриптор, указывающий на устройство \fBpts\fP(4), открытым при переключении в другое пространство имён монтирования, в котором используется другой экземпляр \fI/dev/ptmx\fP, может неожиданно обнаружить, что существует путь устройства с тем же именем как у этого файлового дескриптора. Однако данный путь указывает на другое устройство и поэтому не может использоваться для доступа к устройству, на который указывает файловый дескриптор. Вызов \fBttyname\fP() или \fBttyname_r\fP() с файловым дескриптором в новом пространстве имён монтирования приведёт к тому, что эти функции вернут NULL и присвоят \fIerrno\fP значение \fBENODEV\fP. .SH "СМ. ТАКЖЕ" \fBtty\fP(1), \fBfstat\fP(2), \fBctermid\fP(3), \fBisatty\fP(3), \fBpts\fP(4) .SH ЗАМЕЧАНИЯ Эта страница является частью проекта Linux \fIman\-pages\fP версии 5.10. Описание проекта, информацию об ошибках и последнюю версию этой страницы можно найти по адресу \%https://www.kernel.org/doc/man\-pages/. .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства был сделан Azamat Hackimov , Dmitry Bolkhovskikh , Yuri Kozlov и Иван Павлов . .PP Этот перевод является бесплатной документацией; прочитайте .UR https://www.gnu.org/licenses/gpl-3.0.html Стандартную общественную лицензию GNU версии 3 .UE или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. .PP Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на .MT man-pages-ru-talks@lists.sourceforge.net .ME .