SWATでnmbdの起動ステータスが取得できない
提供:Samba-JP
ナビゲーションに移動検索に移動
KB番号 | J0051 |
最終更新日 | 2001/08/07 |
作成者 | たかはしもとのぶ |
最終更新者 |
対象
この文書は、以下のプロダクトに付いて説明したものです。
- Samba 2.0.10日本語版リリース1.0
現象
Samba 2.0.10 日本語版リリース1.0にバージョンアップすると、以下のような現象が発生することがあります。
- SWATで「動作状況」からnmbdの動作状況を確認すると、常に「停止中」にみえる
- Sambaがマスタブラウザとして機能しない
- ブラウズリスト上でSambaサーバが確認できない
原因
これはSamba 2.0.10日本語版リリース1.0の不具合で、シングルバイトのcoding systemパラメータを指定した場合(デフォルトの場合)に発生します。
lib/util_str.c 中の Strncpy() および Strncpy_fill() 関数は、global_is_multibyte_codepage が False の場合に、while() 中で n が一つ余計に減算されてしまいます。 この為、文字列が 15 文字未満の場合には空文字の数が一つ狂うことで、文字列の長さが1バイト短くなってしまい、予想外の事象が発生する可能性があります。また15 文字以上あった場合には MAX_INT ほど buffer overrun してしまいます。これは非常に危険です。
対処策
この問題に対応したSamba 2.0.10日本語版リリース1.1を利用してください。
この技術情報は sugj-tech:3872, samba-jp:10452 からの一連のスレッドの議論を元に作成されています。