[cvs-jp-info 381] Re: CVSWEB.CGI でエラー

Back to archive index

Shun-ichi GOTO gotoh****@taiyo*****
2004年 1月 21日 (水) 16:55:29 JST


>>>>> at Wed, 21 Jan 2004 13:07:03 +0900,
>>>>> "H.Watabe" <watab****@fuji-*****> said,

> > /var/aaa/bbb/CVSROOT への書き込み権限はあるんでしょうか? 
> > このディレクトリにロックファイルを作る必要があるとメッセージは言ってますけど。
> 
> レス有難う御座います。
> はい、CVSROOTには権限は与えてあります(775で)。
> historyファイルにも同様に与えてあります。

元のメールにあったエラーメッセージを見ると

> Error: Unexpected output from cvs co: cvs [checkout aborted]: 
>     Absolute module reference invalid: `/src/com/aaa/****.java' 

とありますね。
これは cvs-1.12.4 の src/module.c でだしているようで、そこの部分の
コメントによると、モジュール名として絶対パスをしているものはセキュリティ
上の問題から弾いているのだということのようです。

    /* Don't process absolute directories.  Anything else could be a security
     * problem.  Before this check was put in place:
     *
     *   $ cvs -d:fork:/cvsroot co /foo
     *   cvs server: warning: cannot make directory CVS in /: Permission denied
     *   cvs [server aborted]: cannot make directory /foo: Permission denied
     *   $
     */
    if (isabsolute (mname))
        error (1, 0, "Absolute module reference invalid: `%s'", mname);


でもって、cvsweb はcvs に対して /src/com/aaa/****.java を与えているわけ
ですから、それで弾かれていると。

2003-11-18 のcommit によるもののようですので、かなり最近(1.12.2 から)の
機能ではないかと思います。

ぱっと見、この制限を解除する方法はなさそうです。
後向きにいえば、自分でこの部分をコメントアウトしてビルドするとか
cvs を少し古いものを使うとかいう方法があるでしょう。

正しくはcvsweb の問題を解決することでしょうね。
cvsweb は使ってないので設定の問題かどうかはよくわかりませんが、
思い当たる節があるなら、絶対パスの使用を止めるようにすれば良いかも
しれません。cvsweb のコードが原因だとするなら、あちこちで問題と
なっているかと想像できますので、最新版をチェックしてみるのもよいで
しょう。

--- Regards,
 Shun-ichi Goto  <gotoh****@taiyo*****>
   R&D Group, TAIYO Corp., Tokyo, JAPAN



CVS-JP-info メーリングリストの案内
Back to archive index