EN JA
LOGIN_OK(3)
LOGIN_OK(3) FreeBSD Library Functions Manual LOGIN_OK(3)

名称

auth_ttyok, auth_hostok, auth_timeokログイン規制に基づくログインクラスをチェックする関数

ライブラリ

System Utilities Library (libutil, -lutil)

書式

#include < sys/types.h>
#include < time.h>
#include < login_cap.h>

int
auth_ttyok( login_cap_t *lc, const char *tty);

int
auth_hostok( login_cap_t *lc, const char *host, char const *ip);

int
auth_timeok( login_cap_t *lc, time_t t);

解説

この関数セットは、 login.conf(5) ログインデータベースのログインクラスケーパビリティエントリに基づきログインが許可できるかどうかを判定します。

auth_ttyok() 関数は、指定された tty が特定のクラスのユーザに利用可能かどうかを判定します。また ttys.allow アクセスリストにあり、 ttys.deny アクセスリストにないこともチェックします。空の ttys.allow リスト (または、そのような与えられたログインクラスのケーパビリティが存在しない場合) は空でない ttys.deny リストが存在しない、ディバイスかその tty グループ ( ttys(5) 参照) がリストになければ、任意の tty デバイスからのログインを許可します。 tty アクセスは tty デバイス名により、明確に許可されたり制限されます。 tty デバイス名はワイルドカード (例えば、ttyD* または cuaD*) を含むデバイス名か、 /etc/ttys で指定された group=<name>タグである ttygroup 名です。 tty と ttygroup のマッチ(比較)は大文字小文字を区別します。 tty パラメータとして NULL か空文字列を渡されると関数は 0 でない値を返します。

auth_hostok() 関数は、リモートログインのための任意のホストの制限をチェックします。この関数は、 host.allowhost.deny ログインクラスケーパビリティ対して、ホスト名と IP アドレス (一般的に n.n.n.n のようなテキスト形式で指定されます) の両方をチェックします。 ttys およびそれらのグループについてワイルドカードと文字クラスはホストの許可、拒否ケーパビリティレコードとして使えます。 fnmatch(3) 関数はマッチするために使われます。ホスト名は大文字小文字を区別しないマッチです。この関数はホスト名が完全拡張され (すなわち、必要ならばローカルドメイン名が追加されます)、 IP アドレスは正規の形式であることを期待していることに注意してください。ホスト名やアドレスの検索は試みられません。

ホスト名か IP アドレスが不足しても (すなわち NULL) この関数を呼び出すことができます。そして、照合(マッチ)は与えられたパラメータに基づいて実行されます。両方のパラメータに NULL か空の文字列が渡されると、0 以外の値が返されます。

auth_timeok() 関数は、与えられた時間の値が times.deny アクセスリストではなく、 times.allow ログインクラスケーパビリティ内にあるかチェックします。空か times.allow リストが存在しないならば、与えられた時間が times.deny リストの期間の範囲に収まるかどうかを除いて、いつでもアクセスを許します。 times.allowtimes.deny 両方のケーパビリティフィールドに含まれている時間帯レコードの形式は、 login_times(3) マニュアルページに詳細に説明されます。

戻り値

これらの関数どれも戻り値が 0 でない場合、ログインアクセスが許可されることを示します。戻り値が 0 の場合は、テストされているアイテムが allow アクセスリストにないか deny アクセスリストにあるかのどちらかを意味します。
January 2, 1997 FreeBSD