GETTTYENT(3) — UNIX Programmer’s Manual
名称
getttyent, getttynam, setttyent, endttyent − ttyファイルのエントリを得る
形式
#include <ttyent.h>
struct ttyent ∗getttyent()
struct ttyent ∗getttynam(name)
char ∗name;
setttyent()
endttyent()
解説
getttyent と getttynam はそれぞれ、 次のような構造を 持つ構造体へのポインタを 返します。 この構造体は、 tty 記述ファイルの中の 1行を いくつかに区切ったフィールドを 含んでいます。
/∗
∗ @(#)ttyent.h 5.1(Berkeley) 5/30/85
∗/
struct ttyent{
/∗ getttyent(3)を参照 ∗/
char∗ty_name;/∗ 端末デバイス名 ∗/
char∗ty_getty;/∗ 実行するコマンド、通常は getty ∗/
char∗ty_type;/∗ termcap(3X) 用の端末タイプ ∗/
int∗ty_status;/∗ ステータスフラグ(以下の定義を参照)∗/
char∗ty_window;/∗ ウィンドウ管理を開始するコマンド ∗/
char∗ty_comment;/∗ 普通は端末の設置場所 ∗/
};
#define TTY_ON 0x1/∗ ログインを許可する(gettyのスタートアップ)∗/
#define TTY_SECURE 0x2/∗ ルートのログインを許可する ∗/
extern struct ttyent ∗gettyent();
extern struct ttyent ∗gettynam();
ty_name“/dev”のディレクトリにあるキャラクタスペシャルファイルの名前です。 さまざまな理由から、 これは“/dev”中になければなりません。
ty_gettyinit が呼び出すコマンド(ふつうは getty(8) )で、 tty 回線を 初期化します。 実際、 任意のコマンドを 使用できます。 一般的な使用法は、 ウィンドウシステムの端末エミュレータを 初期化することです。
ty_typeこの tty 回線に接続されているデフォルトの端末タイプの名前です。 これは一般的には、 termcap(5) データベースからの名前です。 環境変数の‘TERM’は、 getty(8) または login(1) によって、 この名前で初期化されます。
ty_statusビットフィールドのマスクで、 この tty 回線で許可されているさまざまな動作を 表します。 各フラグの説明は次の通りです。
TTY_ONログインを 可能にします(すなわち、 init(8) はこのエントリで指定された“getty”コマンドを 開始することになります)。
TTY_SECUREこの端末上でルートのログインを 可能にします。 これには‘TTY_ON’が含まれていることになる点に注意してください。
ty_windowこの回線に接続するウィンドウシステムに対して実行するコマンドです。 ウィンドウシステムは、 ty_getty エントリで指定されているコマンドが実行される前に、 起動されます。 何も指定されていない場合には、 これはナルとなります。
ty_comment後続するコメントフィールドです。 これがある場合には、 先行するデリミタと空白は削除されることになります。
getttyent は、 必要ならファイルを オープンして、 tty ファイルから次の行を 読み込みます。
setttyent は、 ファイル の先頭にポインタをセットします。 endttyent は、 ファイルを クローズします。
getttynam は、 マッチする name が見つかるまで(あるいはEOFに出合うまで)、 ファイルの先頭から順次に検索を 行います。
関連ファイル
/etc/ttys
関連事項
login(1), ttyslot(3), ttys(5), gettytab(5), termcap(5), getty(8), init(8)
診断
EOFまたはエラーのときには、 ナルポインタ(0)が返されます。
バグ
すべての情報は、 静的領域の中に含まれているため、 セーブしようとする場合には、 コピーしなければなりません。
NEWS-OSRelease 3.3