橋谷と申します。 しばらく井村さん作/大場さん修正版のkiconvパッチをありがたく使わせていただいて いたのですが、このところパッチを当てたRELENG_8で漢字ファイル名のあるFATメディ アへアクセスするとハングする(panicしている?)という現象がでて困っていました。
やっと原因がつかめたので、修正を加えたものを流しておきます。RELENG_8(20100916 付近)に対する一括パッチです。/usr/srcにてpatch -p1で適用するといいはずです。 原因は、大元のパッチに関数からauto変数バッファへのポインタを返している箇所が あり、これがデータ化け→存在するべき'\0'がなくなってしまう→文字列コピーで buffer overflowという結果になっているようでした。 関数の呼び出し元でバッファを確保し、そのアドレスを渡すように変更してあります。 あと、一時的なファイル名バッファの長さが足りないケースがあるようなので、それ も長くしてあります。 私の探した範囲では問題になりそうなところはsys/fs/msdosfsとsys/fs/ntfsにあり ました。一応両方修正しましたが、ntfsの方は使用していないので、ちゃんと直って いるかどうかわかりません。(portsのsysutils/fusefs-ntfsを使用しているもので) 以上、何かのお役に立てればと思います。
kiconv_enhancement_RELENG_8-20100916.diff.gz
Description: Binary data