« March 2004 | Main | May 2004 »

今日までのSamba(2004/4/16)

Subversion-1.0.1を試してみましたが、APRとかがバンドルされているので クライアント側(svnコマンド)だけならハードルは低かった(サーバ側は Berkeley DB-4.1が必須らしい)。

また、3.0系をコンパイルする機会があったのですが、--with-mandir オプションは--mandirオプションと どう違うのかがよく分からなかったです。

  • privilege機能をldapsamでも利用できるようにしたらしい。
  • この時点で3.0.3pre1がアナウンスされた。
  • 3/23頃、jerry氏が3.0.3pre1のダウンロード数を取り上げている。
  • 拡張属性のクライアント側(libsmb)実装がされたらしい。
  • (3/23頃)テキストベースの設定が出来るidmap実装を本体へのパッチで 実装された方が いらっしゃったが、モジュールで実装したらどうかとのmetze氏の返事あり。 しばらくして(4/6頃)そのモジュールをsamba-technicalに投稿している。 (その反応は気付いた限りではなさそうだ。)
  • MSDFSのクライアント側サポートはないか、との問いに対し、jra/tpot氏が 今のところないと回答。jCIFSはサポートしている、との意見もあり。
  • (TNG) configureに --enable-really-no-securityオプションを追加したそうだ。 このモードではUNIX的なセキュリティは無効化されるそうだ(主に趣味用らしい…)。
  • (TNG)rpcclientのsam系サブコマンドでの出力はメインループでのそれでまかなえる らしく、削除することにしたそうだ。成功した場合の出力は不要とこれも削除。
  • (TNG)名前つきパイプのエミュレーションサポートの一部をmsrpcd_process.cから lib/msrpc-client.cに移動したそうだ。後者のファイル名を実態に合わせて変更したい とおっしゃっている。

| | TrackBack (0)

今日までのSamba (2004/4/14)

4/6頃に3.0.3pre2が出ているのですが、それよりもソースツリーがSubversionになってしまったのが大弱り。 一から構築するにはハードルが高すぎる。

  • MSDFSが3.0.2a辺りから動かなくなっていたので修正したそうだ。
  • 「\」が入る(unsafeな)文字コードをファイル名に使う時のみ回避ルーチンを 使うように変更したそうだ。
  • LDAPのMunged Dial (Terminal Server ?)に関して修正したらしい。
  • MSDFS機能で使うsymlink文法をより寛大にし、msdfs:/server/share/path/in/share といった名前へのsymlinkでも通すようにしたそうだ。
  • vfs_recycleモジュールでサイズの誤計算による文字列オーバフローを修正した そうだ。
  • <1C> グループ名(DC名)の登録についての挙動を変更したようだ。
  • 森山氏による、マルチバイト文字列の入ったNetBIOS名に関する修正が 取り込まれたようだ(null-terminatedを保証する関数を使う、内部処理に unstring(64バイト)という新しい型(当初はfstring流用)を使う)。
  • passdbモジュールに{find,create,delete}_alias、{get,set}_aliasinfo APIを 追加したそうだ。winbindd_passdbで使う?
  • その他alias関連で追加・削除ができるようになったり
  • lpqキャッシュの(?)pid更新でバイトオーダー関連の問題があったので修正 されたらしい。
  • security=ads やwinbind use default domain = yes時のセカンダリグループに 関するバグを修正したらしい (Bugzilla #1165/1126)。
  • HPによるアプライアンスからprint change notifyの修正をマージしたらしい。
  • AIXでのクオータ表示を修正したそうだ(Bugzilla #979)。
  • i18n problemの一環として(?) 次のマルチバイト文字のバイト長を調べる関数 (next_mb_char_size())を使ってcheck_path_syntax()をより一般化したらしい。
  • rpc_bind時にはパイプ名が埋められていない実装が見られるのでそれに合わせた そうだ。
  • ログオン時に渡されるワークステーション名から「\」を削除するように変更した らしい?
  • AMANDA(?)というオープンソースなバックアップソフトでSMB共有のバックアップを smbtar(?)で行うことを考えているが、除外するファイル名を複数(オプションで)指定することは 可能か、という質問がきているようだ。Bugzilla #389にあるパッチをアレンジして 適用したようだ。
    jerry氏曰く、「Samba開発の第一の法則: 日頃開発者が使わないものは壊れる」。
  • 文字数のカウント方法を修正したそうだ(さとう氏による)。
  • LDAPでのパスワードロックアウトに関する機能が実装されたらしい。ポリシーで 設定された回数を越えるかリセットする場合以外はローカルで自動ロック・間違い回数・ 間違った時間を覚えておくらしい。
  • この頃、ドイツのPC Professionell誌でInnovation of the years 2003/2004を 受賞したとトップページにアナウンスが出ている。
  • configureに--with-mandir / --with-libdirオプションを追加したそうだ。 --with-fhsとの兼ね合いかららしいが詳細はよく分からない。
  • (TNG) rpcclient終了時にvuid.tdb(?)を閉じる関数がなかったので追加したようだ。
  • (TNG)信頼されるドメインについての情報はlsarpcd / netlogondのみ知るべき 情報なので、それを取得する関数は分離して当該デーモンのみ呼び出すように 変更したらしい。
  • (TNG)クライアント側の接続キャッシュに関するコードを追加したそうだ。 (3/17時点ではまだ有効になっていないそうだ。)
  • (TNG)libsmbでのパスワード関係コードで(?)バッファ長のチェックと文字コード 変換をするようにしたそうだ。
  • (TNG)share_mode_entryのアラインメント問題などを修正したらしい。

| | TrackBack (0)

今日までのSamba (2004/4/1)

現時点での動きとしては国際化対応済みSamba 3.0([samba-jp:16233]参照)とか、 Samba-3.5への提案(4系のコードのマージ) by tridge氏とかいろいろあるのですが、 まだまだ数週間前の状況を追いかけるので手一杯です…。

  • 共有毎にprintingパラメータを指定できるようにしたそうだ。PDF生成サービス などでデフォルトの印刷システムとは別のものを選ぶ必要があるときに役立つそうだ。
  • installswat.shがイメージファイルをインストールしないという やまだ氏の 指摘(Bugzilla #1129)により修正されたらしい。
  • ネットワーク経由で受け取るパス名の処理を共通関数でまかなうことにした そうだ。WinSV 2003互換を目指すようだ。
  • smbclientのhardlinkコマンドを実装したそうだ。NT renameを使い、CIFS UNIX拡張でも使えるらしい。
  • winbinddローカルユーザ・グループが既にtdbにあるか調べ、二重作成しないように 変更したそうだ(Bugzilla #848)。
  • all_string_sub()関数が「/」「\」が入っているマルチバイト文字列を 正しく処理できないため、まずreduce_name()内でwide linkチェックを止め、その後 修正…?
  • smbgetコマンドに-O (取得したファイルを標準出力に表示)オプションを追加した そうだ。
  • i18n questionを受けて? パスの検査をする部分の変更が続いているように 見える。一旦UCS2に変換して探すstrstr_m()関数も追加されたが、当初は問題が あったようだ。ヤマダ氏からも「\\」がうまく取り扱えない、パスが長すぎると fstringで確保した領域に変換結果が収まらずうまくいかない、などの報告があり、 それに応じて修正をしているようだ。
  • クライアント側で「opportunistic signing」(サーバのサポート状況に応じて SMB署名の有無を決める)を実装したそうだ。その後(3/27頃?)3.0系にもマージした ようだ。
  • passdbモジュールのAPIにsettrustpwent / gettrustpwentを追加したらしい。
  • (TNG) trim_char()関数をmainからマージし、それを各所で(trim_string()の 代わりに?)呼び出すようにしたそうだ。
  • (TNG)デーモン関連の関数を、新たに作成したlib/daemon.c や smbd/vfs.c に 移したそうだ。

i18n question 関連については別にまとめてみました。多分原文やsugj-techのアーカイブを 参照した方がよいと思います。

  • はじめはjra氏による、パスの取り扱いを(4系と同様?)Windows互換関数を使い ファイル名に使えない「\」や「/」の処理を楽にしようという考えの表明だったようだ。 そうすると元々「\」が入るCP932/UHC(韓国語)/GB18030(簡体中国語)/Big5(繁体中国語) では処理が遅くなるという問題があるらしい。その処理は例外として後で実装しよう という返事を同氏がされている。
  • すると全部UCS2/UTF8でやればどうか(奥山氏)、UCS2だとまだUCS2-LEへの変換が 必要なので何の助けにもならない(jra氏)というやり取りがある。
  • さらに、UNIX側の文字コードをUTF8にしておけば幸せになれる(abartlet氏)、 しかし(特にCJKな圏内では)それを望むのは難しい(奥山氏)、というやり取りも あるようだ。
  • たかはし氏も提案しているが、内部処理をUCS2でやるのはMSですら使わないのに (UTF16に移行)やめておくべきだ、一文字固定バイト文字コードはもうないのと同じ (tridge氏)、UTF16がネットワーク上を流れている証拠は不明だがそれでも構わない (たかはし氏)とか応答があるような気もする。
  • ファイル名の文字コード変換をすればよい、という意見も散見する。
  • 文字コードの問題点について繰り返し諭している感じ? glibc/libiconvの問題を 解決したいところだ…
  • Unicodeサポートは確かに日本(の特にオープンソフト界)ではいまいちなので、 それに変えたくないのではという意見まで出ている(様に思える)。
  • Samba内部コードではファイル名をUnicodeの眷属で取り扱うというのには 賛成できない、とtridge / jra / abartlet氏。
  • tridge氏がVFSモジュールでファイル名の文字コード変換を提案されている。 これで奥山氏はよいと判断されたようだ(Samba 5まで保留でき得る?)。それを受けて 4系でNTVFS パススルーモジュールを作成したらしい。
  • Mac OS Xでのファイル名エンコーディングとの問題もあるらしい? (decomposed UTF-8 とは?)
  • tridge氏が香港のLinuxユーザと会い、いわゆる漢字ではcase insensitiveとみなせば アルファベットのみの場合より高速に日本語・中国語を 処理できるという提案をしている。 それに対し たかはし氏はそう当てはまらない場合もある(全角アルファベットなど)と指摘しているが 多くの人にとってはよさそうなアイデアだとtridge氏は回答。まずUTF-8/Big5などで判定関数を 作成し、それを他の文字コードにも拡張できる仕組みがあればよさそうだとしている(lib/iconv/utf8.c といった 形で作成しても構わないともおっしゃっている)。

| | TrackBack (0)

« March 2004 | Main | May 2004 »