perl5144delta - perl v5.14.4 での変更点
この文書は 5.14.3 リリースと 5.14.4 リリースの変更点を記述しています。
5.12.0 のような以前のリリースから更新する場合は、まず 5.12.0 と 5.14.0 の 違いについて記述している perl5140delta を読んでください。
5.14.0 からの変更点はありません。
このリリースは重大なものが一つ、中程度のもの、および複数の軽微なセキュリティ 修正を含んでいます。 後者は主に、clang コンパイラのアドレスサニタイズ機能でテストスイートが クリーンに成功するようにするためのものです。
注意深く細工されたハッシュキーの集合(例えば URL の引数)によって、 ハッシュが大量のメモリと CPU パワーを消費させることが可能になり、 サービス拒否攻撃を行える可能性がありました。
この問題は修正されました。
Encode.xs の UTF-8 エンコーディング実装のメモリリークは修正されました。
sockaddr
バッファをコピーするときに読み込みバッファオーバーフローが 起きることがありました。 ほぼ無害です。
この問題は修正されました。
一部の文字列リテラルについて余分なバイトがコピーされていました。 ほぼ無害です。
この問題は修正されました。
文字列リテラルが文字列の末尾を超えて 2 バイトを含んで使われていました。 ほぼ無害です。
この問題は修正されました。
デバッグビルドにおいて、最適化されて削除された正規表現ノードは OPTIMIZED
型として印が付けられますが、正確なテキストのブロックを ノードのように扱うことがあり、SEGV を起こすことがありました。 ほぼ無害です。
この問題は修正されました。
local $[;
文が eval
の前に置かれ、代入の一部でない場合、 クラッシュすることがありました。 ほぼ無害です。
この問題は修正されました。
2**31 バイト以上ある文字列を読み書きすると整数が回り込んで セグメンテーションフォルトすることがありました。
この問題は修正されました。
故意に、5.14.0 から互換性がなくなるようにした変更はありません。 もし 5.14.0 との互換性がなければ、それはバグですので、 どうか報告してください。
5.14.0 以降に廃止予定になったものはありません。
なし
以下のモジュールは "Security" に上述した軽微なコード修正が行われました (バージョン番号は変わっていません):
Encode バージョン 2.42_01 から 2.42_02 に更新されました。
Module::CoreList はこのリリースの情報を追加するためにバージョン 2.49_06 に 更新されました。
なし。
なし。
なし。
新規や変更された診断メッセージはありません。
なし
変更はありません。
なし。
なし。
5.14.3 は、userelocatableinc
と usesitecustomize
を同時に 使えるようにするための複数のパッチの適用が不完全だったために VMS では コンパイルに失敗していました。 その他のプラットフォームは影響を受けず、この問題は修正されました。
Perl 5.14.0 では、$tainted ~~ @array
は適切に動作しなくなっていました。 時々これは間違って失敗したり($tainted
が最初の要素の 後 の配列に 現れる文字列を含んでいる場合)、間違って成功したり (最初の要素の後に undef
がある場合) していました [perl #93590]。
なし。
Perl 5.14.4 は、Perl 5.14.3 以降、12 人の作者によって、 49 のファイルに約 1,700 行の変更を加えて、 約 5 ヶ月開発されてきました。
Perl は、活気のあるユーザーと開発者のコミュニティのおかげで 20 年を超えて 繁栄しています。 以下の人々が、Perl 5.14.4 になるための改良に貢献したことが分かっています:
Andy Dougherty, Chris 'BinGOs' Williams, Christian Hansen, Craig A. Berry, Dave Rolsky, David Mitchell, Dominic Hargreaves, Father Chrysostomos, Florian Ragwitz, Reini Urban, Ricardo Signes, Yves Orton.
これはバージョンコントロール履歴から自動的に生成しているので、ほぼ確実に 不完全です。 特に、Perl バグトラッカーに問題を報告をしてくれた (とてもありがたい)貢献者の 名前を含んでいません。
全ての Perl の歴史的な貢献者のより完全な一覧については、どうか Perl ソース 配布に含まれている AUTHORS を参照してください。
もしバグと思われるものを見つけたら、comp.lang.perl.misc ニュースグループに 最近投稿された記事や http://rt.perl.org/perlbug/ にある perl バグ データベースを確認してください。 Perl ホームページ、http://www.perl.org/ にも情報があります。
もしまだ報告されていないバグだと確信したら、そのリリースに含まれている perlbug プログラムを実行してください。 バグの再現スクリプトを十分小さく、しかし有効なコードに切りつめることを 意識してください。 バグレポートは perl -V
の出力と一緒に perlbug@perl.org に送られ Perl porting チームによって解析されます。
もし報告しようとしているバグがセキュリティに関するもので、公開されている メーリングリストに送るのが不適切なものなら、 perl5-security-report@perl.org に送ってください。 このアドレスは、問題の影響を評価し、解決法を見つけ、Perl が対応している 全てのプラットフォームで問題を軽減または解決するパッチをリリースするのを 助けることが出来る、全てのコアコミッタが参加している非公開の メーリングリストになっています。 このアドレスは、独自に CPAN で配布されているモジュールではなく、 Perl コアのセキュリティ問題だけに使ってください。
変更点の完全な詳細を見る方法については Changes ファイル。
Perl のビルド方法については INSTALL ファイル。
一般的なことについては README ファイル。
著作権情報については Artistic 及び Copying ファイル。