名前


ttyname, ttyname_r - 端末名を返す

書式


#include <unistd.h>

char *ttyname(int fd); int ttyname_r(int fd, char *buf, size_t buflen);

説明


ttyname() 関数は、ファイルディスクリプタ fd がオープンしている端末デバイスの NULL 終端されたパス名へのポインタを返す。 エラーが起きたならば NULL を返す (たとえば、fd が端末を参照していないとき)。 返り値は静的データを指しているので、次の呼び出しで上書きされる可能性がある。 ttyname_r() 関数は、このパス名を長さ buflen のバッファ buf に格納する。

返り値


ttyname() 関数は、成功時はパス名へのポインタを返す。 エラー時は NULL を返し、 errno が適切に設定される。 ttyname_r() 関数は、成功時には 0 を返し、エラー時にはエラー番号を返す。

エラー


ttyname() が失敗した場合に errno に設定される、また ttyname_r() が失敗した場合に返される値は以下の通り:
EBADF ファイルディスクリプタが不正。
ENOTTY ファイルディスクリプタが端末デバイスを示していない。
ERANGE buflen がパス名を格納するには短すぎる。

準拠


4.2BSD, POSIX.1-2001.

関連項目


fstat(2), isatty(3)

openSUSE Logo

コンテンツ