1. DJB/netqmail/man/man8/qmail-getpw
について、ここに記述してください。
/qmail-getpw /qmail-lspawn /qmail-newu /qmail-pw2u /qmail-smtpd |
1.1. qmail-getpw
- メイルアドレスから利用者を決める
使用形式
qmail-getpw local
1.2. 説明
qmailでは利用者はいろいろなローカルメイルアドレスを使う(制御する) ことができる。 qmail-getpwは引数で指定されたアドレス(local)を制御している利用者を探す。 以下の6つの情報をそれぞれNULで終端して出力する: user; uid; gid; homedir; dash; extである。
- 利用者のアカウント名は user; 利用者の uid と gid の10進表現は uid, gid; 利用者の ホームディレクトリは homedir; local へのメッセージは homedir/.qmaildashextにより 指示される。
なにか不都合がおきた場合、qmail-getpwは0でない終了コードで終了する。 特にメッセージは出力されない。
1.3. 警告:
- OSの getpwnam 関数、それは qmail-getpwの中核であるが、本質的に信頼できない: 一時エラーと存在しない利用者とを区別できないのだ。 あるべき姿の getpwnam は 一時エラーのときは ETXTBSY を返し、 存在しないユーザのときは ESRCH を返すようにすべきだ。
1.4. 規則
qmail-getpw は/etc/passwdにあるアカウントについて、 以下の条件が成り立つとき、ユーザであるとする。 (1) uidが0でないこと、 (2) ホームディレクトリが存在していて、qmail-getpwに読めること、 (3) ホームディレクトリの持ち主であること。 英大文字を含むアカウント(ユーザ)名は無視される。 アカウント名は32文字未満であることを仮定している。
qmail-getpw は 各 user が userという基本のアドレスと user-anythingという形のすべてのアドレスを制御できるようにする。
- localがuserと一致したとき、dashとextは空になる。 localがuser-anythingの形のとき、dashはhyphenで extがanythingとなる。
userは大文字小文字の任意の組合せとして localの先頭にあらわれてよい。
aliasはこれら以外の(該当するものがなかった)すべてのアドレスを扱う。
- この場合、extはlocalになり、dashはhyphen(-)となる。
qmail-getpwの決定に優先する qmail-users機構が存在する。
- qmail-usersの方が信頼性が高く、より柔軟に構成でき、高速である。
qmail-users(5), qmail-lspawn(8)