Namazu-devel-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 妙なNMZ.pができる問題



寺西です。

SATOH Fumiyasu wrote:
> 
> At Tue, 06 Apr 2004 01:25:53 +0900,
> Tadamasa Teranishi wrote:
> > perldelta をきちんと調べていないのですが、5.8.2, 5.8.3 のどこかで
> > 元に戻ったのかもしれません。
...
> perl582delta に記述されている、以下は関係ないでしょうか。
> 
>        Hash Randomisation
> 
>        The hash randomisation introduced with 5.8.1 has been
>        amended. It transpired that although the implementa-
>        tion introduced in 5.8.1 was source compatible with
>        5.8.0, it was not binary compatible in certain cases.
>        5.8.2 contains an improved implementation which is
>        both source and binary compatible with both 5.8.0 and
>        5.8.1, and remains robust against the form of attack
>        which prompted the change for 5.8.1.

あぁ、多分、これでしょうね。

Yukio USUDA wrote:
> > Cygwinで使っているPerl5.8.2では問題が起きていないので
> Perl5.8.1での仕様変更?でmknmzの結果に問題がおきることが確認されているが
> 5.8.2以降では5.8.0以前と同じように振舞うように戻されたので問題ない
> ということなのかもしれませんね。

という内容とも合致するようですし。
(バグというのは言いすぎでしたが、5.8.1で仕様が変更になって、
5.8.2 で更に仕様が変更になったということだったわけですね。)

ただ、binary が非互換になったからといって NMZ.p が変わるというのは
謎なんですが、その原因を突き止めるのはもはや不毛なので、単純に
Perl 5.8.1 では 環境変数にPERL_HASH_SEED=0 を設定することという
対処方法をしめすことにします。

=====================================================================
寺西 忠勝(TADAMASA TERANISHI)  yw3t-trns@xxxxxxxxxxxxxxx
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint =  474E 4D93 8E97 11F6 662D  8A42 17F5 52F4 10E7 D14E