.\" Copyright (c) 1987, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)dm.8 8.1 (Berkeley) 5/31/93 .\" %FreeBSD: src/games/dm/dm.8,v 1.3.2.1 2000/12/08 13:40:03 ru Exp % .\" $FreeBSD$ .\" .Dd May 31, 1993 .Dt DM 8 .Os .Sh 名称 .Nm dm .Nd ダンジョンマスタ .Sh 書式 .Nm ln .Fl s Cm dm Ar game .Sh 解説 .Nm はゲームプレイを統制するプログラムです。 ユーザは、プレイしたいゲームの名前で .Nm を起動することになります。それには、 .Pa /usr/games 中の統制対象となるゲームの名前すべてで .Nm へのシンボリックリンクをつくります。 これらのゲームのバイナリ本体は、 .Dq 隠された ディレクトリ .Pa /usr/games/hide に置かなくてはなりません。 このディレクトリは .Nm プログラムのみアクセス可能となっているでしょう。 .Nm は要求されたゲームを使用可能か判定し、もし使用可能ならば実行します。 ファイル .Pa /etc/dm.conf がどのゲームを実行可能かどうかを制御します。 .Pp ファイル .Pa /etc/nogames を使用すると、ゲームプレイを .Dq 禁止 します。 このファイルが存在すると、ゲームプレイを許しません; ゲームをしようとしたユーザに対して、このファイルの内容を表示します。 .Sh 関連ファイル .Bl -tag -width /var/log/games.log -compact .It Pa /etc/dm.conf 設定ファイル .It Pa /etc/nogames ゲームプレイを禁止 .It Pa /usr/games/hide ``実際の'' バイナリを保持するディレクトリ .It Pa /var/log/games.log ゲームをログするファイル .El .Sh 関連項目 .Xr dm.conf 5 .Sh バグ .Nm が .Dq games に setuid されたゲームを走らせることで、問題が 2 つ出てきます。 第 1 に、 .Tn UNIX コマンドの実行をユーザに許すゲームは、 コマンド実行前に実/実効ユーザ ID 両方を適切に設定しなければならないことです。 おそらくより重要なことは、 .Nm を .Dq games 以外に setuid してはならないことです。 これを守っておけば、ゲームを不正に利用されたとしても、 せいぜいユーザが自由にゲームをできるようになるだけです。 第 2 は、それまで setuid させて走らせずに済んでいたゲームで、 ユーザファイルにアクセスするものは、 修正しなければならないかもしれないことです。 .Sh 歴史 .Nm コマンドは .Bx 4.3 tahoe から登場しました。