うぇぶ会議室の部屋3への投稿
記事番号00068へのフォローを投稿します。
引用記事中のHTMLをエスケープせずに
そのまま引用
することも出来ます。
お名前(ペンネイムで結構ですが必要です)
(
ブラウザに個人情報を覚えさせない)
電子メイルアドレス(必要です)
題名(必要です)
Home Page がある方はリンク希望先の URL を記載して下さい
会議室に載せたい内容を以下へお書き下さい (
HTMLを解釈せずにそのまま表示)
2月2日に、にあさんは書きました。 >2月1日に、Radcliffeさんは書きました。 > >>実行結果全文です。 >> >書き込みエラーの原因は分かった様で、今回の事はwww2sサーヴァの問題では無いと >言うことで一安心なのですが、まあ、将来のこともありますので、もうチョット >おつきあい下さい。(^^) > >>HP-UX bgsv105 B.10.20 A 9000/889 233824361 two-user license >> >今の所は、まだ、HP-UX 10.20を使っているようですね。 > >>This is perl, version 4.0 >> >>$RCSfile: perl.c,v $$Revision: 4.0.1.8 $$Date: 1993/02/05 19:39:30 $ >>Patch level: 36 >> >S号機のperl4も4.036で1号機と同じ様ですね。 >これはperl4の最終ヴァージョンなのでまあ安心です。 > >>This is perl, version 5.003 with EMBED >> built under hpux at Feb 10 1997 14:42:28 >> + suidperl security patch >> >あ、いーなー S号機のperl5は5.003+suidperlパッチなのか。 >この辺のヴァージョンは比較的良いはずです。少なくとも1号機の >5.001無印みたいにバグバグではない。(^^) > >さて、Radcliffeさんは「うぇぶ会議室」の実行にどちらのヴァージョンのperlを >使っていますか? つまりスクリプトの最初の行の「#!/usr/local/bin/perl」と >言うのを変更していますか、いませんか? > >既に「#!/usr/local/bin/perl5」に変更済みでしたら、以下は蛇足だと思います。 > ><A HREF="./00059.html">先の記事</A>に書いたように、HP-UX等ではperl4とperl5とではflock()に関する >動作が異なるはずです。確かに手元のHP-UX9.07マシンではそうなるし、S号機でも >初期の頃はそうだという事を確認してました。 > >その後、S号機がSetUIDで動いている事に目を奪われていて (^^;; エラー報告が >あった時に perl4 で動かしているのかどうかをチェックするのを忘れていました。 >と言うことで、出来れば現在のS号機の状態を確認しておきたいので、以下の簡単な >スクリプトを実行していただけませんか? > ><HR>#!/bin/sh - > >exec 2>&1 > >echo "Content-Type: text/plain" >echo > >tmpfile="/tmp/locktest.tmp" >perl4="/usr/local/bin/perl" >perl5="/usr/local/bin/perl5" > >script='open(FILE, "+<$ARGV[0]") || exit(1); >flock(FILE, 6) || exit(2); >sleep(5); >flock(FILE, 8) || exit(3); >close(FILE) || exit(4); >exit(0);' > >touch $tmpfile >chmod 666 $tmpfile >($perl4 -e "$script" "$tmpfile" ; echo "perl4,1=$?") & >($perl4 -e "$script" "$tmpfile" ; echo "perl4,2=$?") & >wait >($perl5 -e "$script" "$tmpfile" ; echo "perl5,1=$?") & >($perl5 -e "$script" "$tmpfile" ; echo "perl5,2=$?") & >wait >rm $tmpfile > >exit 0 ><HR> >内容は、perl4、perl5のそれぞれに付いてファイルロックの試験をして、その >結果を返します。例えば、1号機(SunOS4.1.3_U1)で実行すると、 > >perl4,1=2 >perl4,2=0 >perl5,1=2 >perl5,2=0 > >となり、perl4、perl5のどちらも正常にflock()が働いているのが確認できます。 ># ,1と,2のどちらかが正常終了(=0)、他方がロック不可(=2)なら正常です。 > >手元のHP-UX9.07のサーヴァで実行すると、 > >The flock() function is unimplemented on this machine at /tmp/perl-ea07418 line 2. >perl4,1=2 >The flock() function is unimplemented on this machine at /tmp/perl-ea07420 line 2. >perl4,2=2 >perl5,2=2 >perl5,1=0 > >となり、perl5ではflock()が利きますが、perl4にはflock()がインプリメント >されていないのが分かります。
ホームペーヂに戻る
nir@mvg.biglobe.ne.jp
Last Update: 2 December 1999