Sambaがマスタブラウザの時に日本語のコンピュータ名が文字化けする
KB番号 | J0007 |
最終更新日 | 2001/09/01 |
作成者 | たかはしもとのぶ |
最終更新者 |
対象
この文書は、以下のプロダクトに付いて説明したものです。
- Samba 2.0.10 日本語版リリース1.0
- Samba 2.0.9 日本語版
- Samba 2.0.7 日本語版リリース2.2
- Samba 2.0.7 日本語版リリース2.1
- Samba 2.0.7 日本語版リリース2.0
- Samba 2.0.7 日本語版リリース1.2.1
- Samba 2.0.7 日本語版リリース1.2
- Samba 2.0.7 日本語版リリース1.1
- Samba 2.0.7 日本語版リリース1.0
- Samba 2.0.7
概要
Sambaがセグメントのマスタブラウザ(セグメントマスタブラウザ、ローカルマスタブラウザ)の場合、ブラウズリスト中の日本語が文字化けします。
詳細
複数セグメントにわたるワークグループ(ドメイン)構成のネットワークでは、ドメインマスタブラウザ(DMB)とドメインマスタブラウザが存在しない各セグメント毎に存在するローカルマスタブラウザ(LMB)との間で各マスタブラウザが収集したセグメントのブラウズリストを交換することで、ワークグループ全体のブラウズリストを維持します。 また、セグメントのマスタブラウザは定期的にセグメントのバックアップブラウザに対してブラウズリストを送信します。
しかし、この際にブラウズリスト中の文字コードをシフトJISに変換するロジックが抜けているため、coding system = SJIS以外で運用を行なっているSambaがマスタブラウザの場合、ブラウズリストの交換を行なう際に文字化けしたリストを送信してしまいます。 この為、ブラウズリスト中のコンピュータ名やその説明がEUC、CAPやHEX等のまま扱われてしまい、意味不明の文字列が表示されます。
なお、Samba 2.0.6の場合、またSambaがドメインマスタブラウザ(DMB)の場合も本現象は発生すると考えられますが、確認は行なっていません。
Samba 2.0.5a(日本語版を含む)以前では、coding system パラメータによって利用する文字コードを動的に変化するロジックが実装されていなかったため、この問題の影響を受けません。
原因
source/smbd/password.c 中のロジックの不備によるものです。なお、Samba 2.2.0-alpha2 でも該当するロジックに不備があると考えられますが、確認はしていません。
対処方法
この問題に対する対処を行なったSamba 2.0.7日本語版リリース1.3 もしくは、Samba 2.0.10日本語版リリース1.1以降を利用してください。
Samba 2.0.7日本語版リリース2.0からSamba 2.0.10日本語版リリース1.0まではオリジナル版の修正箇所を適用した結果、本問題が再発していますので注意してください。