昨日までのSamba (2005/2/11)

世間ではもう3.0.11とかいう時にこんなのでいいのでしょうか。 このBlogのあり方を考え直すときかも。

  • 対応しているOSではnet rpc shutdownは INITSHUTDOWNパイプを利用して 関連操作を試みるようにしたらしい(r3774)。
  • (4系)ldb モジュールサポートを追加したらしい(r3754)。関連コマンドでは モジュールを有効にする(?) -o オプションが追加されたようだ。
  • このころsamba.orgのミラーについての記述が変わっているようだ。詳細は 読んでいない。
  • UNIX拡張用のコードにPOSIX ACLの設定機能を追加したらしい(r3795)。 この時点ではfile ACLの削除が未実装だったが、r3815で追加されているようだ。
  • スタートメニューにフォルダアイコンを設定した場合、そのプロファイルを Samba上の共有に保存するとその設定は消えてしまう、という問題を修正 したそうだ(r3812)。アイコンを設定したフォルダは読み取り専用である必要が あるようだ。profile aclsパラメータで制御できる。
  • smbdのmax_fdを正しく計算するようにしたそうだ(r3818、Bugzilla #2050)。 その後nmbdでも同様の修正が行われているようだ(r3865)。さらに修正が加えられて いる(r3878)。
  • follow symlinks = noの時に返すべきエラーコードが誤っている部分があった ため、修正したそうだ(r3822)
  • (2004/12/30の)rewinddirの修正はr3845で行われていた。
  • CUPSライブラリは使っているが印刷バックエンドとして他のシステムを使ってる 場合に問題があるらしく、パラメータの初期化 (init_globals())内でprinting パラメータをcupsにしないよう変更したそうだ(r3874)。
  • (4系)セキュリティ記述子の問い合わせ・設定コードをファイル情報の対応する 動作に統合できるらしく、その修正が行われたようだ(r3830)。
  • この頃3.0.9がアナウンスされた。公開鍵を変更する時には古い鍵で署名すると よいらしい。
  • (TNG)configure.inはautoconf-2.5xで処理するように限定したそうだ。
  • この頃、tridge氏がSamba4の拡張属性の処理速度の統計を取っているようだ。 関連して、Linux上でサポートされているファイルシステムでの速度の問題なども 取り上げているようだ。
  • send()でヘッダ部分を送りその後のsendfile()が失敗した場合は send()を使うハックを入れたようだ(r3943)。
  • 4系のパスワード変更関連コードをマージしたらしい(r3955)。LM/NT verifiers の検証をするらしい。
  • inherit permissionパラメータが新規に作られるファイルだけでなく既存の ファイルにも影響していたらしく、修正されたようだ(r4006、Bugzilla #2088)。
  • GECOSフィールド内に「&」があるとユーザ名に展開する機能があるが、それを Sambaでは行うのか、という話が出ているようだ。この議論は細々と続き、パッチは 既にBugzilla (#2154)に投稿されているらしい。しかし(1/5頃)jerry氏はこんな機能を 使ったところを見たことがないのでもし3~4人位賛成意見があれば取り込む、 というハードルを課している。
  • Kerberosで、認証データがない場合にクラッシュする問題を修正したようだ (r4021)。
  • (4系)lsa_LookupSids2()のサーバ側の実装(r3979)などをして、Win2003からの ACL編集がよく(早く)動くようになったらしい。
  • (4系)uid/gidからSIDへの線形アルゴリズムを利用したマッピングを実装した らしい。
  • (4系)clitarなどが消されたらしい(r4013)。
  • (4系)Realloc()などの関数をtype safeな関数を使うように変更したという (r4054,4055)。
  • (TNG)あるクライアントはlmhashなパスワード長が0にして送るらしい(nthashの 方には代入されている)。そういうものをパスワードなしと誤認しないように したらしい。
  • (TNG)unix_to_dos()の2番目のパラメータ(1番目のパラメータに変換後の 文字列を代入するか否か)を削除したらしい。
  • このころtridge氏が開発者ガイドを書いたとのアナウンスを出している。 http://samba.org/ftp/unpacked/samba4/howto.txt など。
  • mallocなどメモリ確保関数を使っているところを総チェックしたようだ (r4090)。
  • (4系)samdb関係コードを source/dsdb/ に移したそうだ(r4096)。さらに拡張する 計画があるそうだ。
  • (TNG)readline関連コードを lib/readline.c に移動したそうだ。
  • samba-fuモジュールを3.0系用に作り直した、という投稿があるようだ。
  • lock timeoutパラメータがミリ秒単位で解釈されるように修正されたようだ (r4104)。
  • Cロケールにして、toupper/lower()が正しく動くように設定したそうだ (r4125, Bugzilla #2040)。
  • strict lockingパラメータを拡張、デフォルトはautoで、oplock最適化をする らしい(r4144)。
  • (4系)このころ、privilegeを取り扱うための変更が加えられているようだ。
  • (4系)OS/2なクライアントでファイル削除に問題があったため修正したらしい (r4162-4163)。

(1/18頃)(JP)tridge氏がOSDLに移籍したという[samba-jp:17492]。 奥山氏による、内部研究に使えそうにないと判断されオープンソースで使える人を OSDLに移籍させている、というIBMの方針についての記述[samba-jp:17494]が興味深い。

| | TrackBack (0)

今日までのSamba (2004/12/30)

今回も(基本的に)一月以上前のSambaだったりします。

  • interactivelyに呼び出された時には終了時にtallocの内容を(未解放なら) 表示するようにしたらしい(r3560)。
  • queryuseraliases呼び出し関連コードを書き換えたそうだ(r3567)。これにより より正しい処理ができ、LDAP呼び出しも一度で済ませられるらしい。
  • (4系)サブシステムとモジュールでは必ず初期化関数を持つようにしたらしい (r3586)。各モジュールは.mk ファイル内でINIT_FUNCTION変数を指定する必要がある? モジュールなどを呼び出す側では SUBSYSTEM_init_static_modules() / BINARY_init_subsystems() を呼び出すことがあるようだ。
  • (4系)DCOM-SIMPLEテストが通るようになったらしい(r3611)。
  • (TNG)CIFSパケットの文字列処理を改善しようとしているらしい。
  • (TNG)Unicode化を進め、WinXPに対して動作するようになったらしい。
  • このころ、3.0.8がリリースされた。
  • seekdir/telldir/rewinddir についてVFSモジュール内でまかなうことにした らしい(r3641)。しかしSolarisのようにrewinddirをマクロで定義している場合 コンパイルに失敗するのでその後修正が加えられている(r?)。最近ではAIXで 他の関数でも問題があるらしい
  • 分割された場合の(?)secondary trans2 requestsについてのチェックが 厳しすぎたので修正したそうだ(r3664-3665)。また、2パケット目以降の max dataフィールドの値は当てにならないので1パケット目のそれを使用するよう 変更したらしい(r3675)。
  • (GNU fileutilsに付いている?)libmagic を使って、MIME typeによって書き込む かを判断するVFSモジュールを投稿されている方がいらっしゃる。
  • vlendec氏がgetpwnamのキャッシュコードを追加したらしい(r3701)。nss_ldap などの遅いバックエンドで運用している場合に役立つだろうとしている。でも 以前もそんな感じのコードが追加されて削除されたような気がする。その後 passdbに対しても似たコードが追加されたようだ(r3703)。
  • CIFS UNIX拡張でPOSIX ACLが取得できるようにしたらしい(r3712,3713)。
  • (4系)--with-eparserdir オプションをconfigureに追加したそうだ(r3651)。 Etherealのpidlプラグインが必要なファイルを生成するらしい。
  • (4系)RPC-SAMSYNCテストの結果、特定のユーザセンシティブな情報が格納 されているフィールドを解析できるようになったらしい(r3716)。
  • (4系)register_subsystem() / register_backend()の代わりに それぞれのシステムでの登録関数を使うようにしたらしい(r3737)。 どうやらビルドシステムのPerlベースへの変更によるものらしいが、その後異論が出て 元に戻した…? 議論はシェアードライブラリの構築システム(と現状Libtoolが 抱えている問題)について移っているようにも見える。
  • (TNG)malloc()系関数で確保する量の(余裕としてとる)マージンをマクロ化し、 その値も1024→4096と増やしたそうだ。これでmainでクラッシュするというバグに 対応するところは直るのではないかとelrond氏はcommitメッセージで述べている。
  • (12/14頃) samba-announce宛からいくつか不審なメールが来ておかしいと思ったが、 実はFrom: がたまたま合っていたものだったようだ。その後moderator制にすると jerry氏がアナウンスしている。
  • (12/16頃) jra氏のアナウンスによると、lkcl氏をsamba-* MLに3か月 投稿できないように設定したそうだ。内容は読んでいないが、多分以前lkcl氏が 受けた(と主張する)仕打ちについて蒸し返して、Samba Foundationを作るという 話をしようとしたためと思われる。その後も別アドレスを作って投稿しようとしていたが、 とりあえずtng-*系のみの投稿に落ち着いたようだ。この辺りはまとめたい気分ではあるが…。
  • (12/16頃)(JP)今月のWinXP用セキュリティ修正を適用すると2.2.x-jaのごみ箱機能が 削除時にうまく働かないという投稿がある。[samba-jp:17428]によると、 ファイルを削除した時の挙動が変更されたからではないかという指摘がある。
  • (12/19頃)3.0.10で修正されたCAN-2004-1154対応だが、2.2系(以前)ではかねてよりの方針により 修正しないことになっている。そのため2.2系でののパッチについてはそれぞれで取り組んでいて、SuSE Linux の場合はftp://ftp.SuSE.com/pub/projects/samba/2.2/samba-CAN-2004-1154.diff にある、というメールが流れていた。samba-jp MLでもいくつか(他の?)ポインタが出されているようだ。 いずれ他の修正もまとめてsamba-2.2.12-jaとしてリリースしたいとのこと([samba-jp:17455]、武田氏談)。

| | TrackBack (0)

今日までのSamba (2004/12/12)

相変わらず一月前の状況です。

  • POSIX aclコードにメモリリークがあったので修正したそうだ (r3116, Bugzilla #1954)。エラーコードの誤りも修正したらしい (r3119, Bugzilla #1955)。
  • Sumit Bose氏によるidmap_ridプラグインが導入されたらしい(r3145)。 idmap-rangeパラメータ(ex. idmap backend = idmap_rid:"MYDOMAIN=1000-9999 OTHER=10000-19999")を指定することでRIDとUID/GIDの静的マッピングができるらしい。
  • (4系) -Uに'\\administrator@w2k3.vmnet1.vm.base' の形式で指定すると ドメインを空文字列で送ることができるようにしたらしい(r3100)。
  • (4系)pvfsモジュールの強化が進んでいるようだ。
  • (4系)3.0系ではSPNEGOの際にASN.1の「optional」な部分を使用しているので それは使用するように修正したらしい(r3187)。commitメッセージによると、3.0系側で 修正するのは(この修正よりも)難しいので4系を修正したそうだ。しかしその後 (r3219)vlendec氏により(一時的に?)無効にされている。さらに修正が必要の模様。
  • (4系)case insensitive filesystemパラメータで、backend(モジュール?)に 当該ファイルシステムは大文字・小文字を区別しない(そのあたりの処理を省略可能) と知らせることができるようにしたらしい(r3227)。
  • このころ3.0.8pre2がアナウンスされた。
  • libsmbclientをSolaris上のマルチスレッドプログラムで動作させるための LDFLAGS変更が行われたらしい(r3292)。
  • さとう氏の指摘により(Bugzilla #1498)、ACLの順が正しく並ぶようにしたらしい (r3297)。
  • (4系) 「uuid(1ff70682-0a51-30e8-076d-740be8cee98b)」のように引用符なしで 記述するのは一部のCプリプロセッサが好まないようなので引用符付きでIDLファイルを 記述できるようにしたそうだ(r3282,3283)。
  • このころsendfile support パラメータのデフォルト値をfalse(no)にしている ようだ。
  • (4系)ノン・ブロッキングなsocketの使用が可能になったらしい? socket:testnonblock をつけるとテストできるらしい(r3314など)。
  • このころwebsvn.samba.org でのViewCVSインタフェースが使えるようになった というアナウンスがderyck氏から出されている。
  • (4系)IPv6をサポートするコードが追加されたらしい(r3329)。r3335の時点では gethostbyname2()の存在の有無か明示的にオプションで指定するかで判別している ようだ。コンパイル後は socket:noipv6で無効にできるらしい(r3334)。
  • (4系)tdb_wrap_open()内で使われる属性のTDB_CLEAR_IF_FIRSTは大規模な 接続に対しては効率的ではないため、 使わないようにしたらしい(r3357)。その代わり(起動時に?) {openfiles,brlock,unexpec ted}.tdbを 削除するようにしたらしい。
  • (4系)一時ファイルは var/locks/smbd.tmp/ の下に展開するようにしたらしい (r3360)。
  • (4系)3.0系のwinbindを使えるようにしたらしい(r3361)。また、ドメイン メンバシップの実装も始まったらしい。
  • (4系)talloc_free()がO(1)で実行できるように内部処理を削ったらしい(r3366)。 当初はそうだったが壊れたらしい。
  • このころ、tridge氏が、妻のファイルサーバに4系Sambaをインストールして 使うようにしたというアナウンスを出している。("Susan" Stage と表現している。) 結構茶目っ気のあるアナウンスだが、彼女が同氏の開発の動機となっているのであれば それは素晴らしいことである。
  • (4系)RPC経由のレジストリ操作(? RPC-WINREG)のtortureテストを通過するほどの 実装が完了したらしい(r3369)。これによりレジストリツリー ⇔smbd⇔ NTUSER.DAT の構築ができるという。なんかすごそう。
  • Kerberosのkeytabなどの修正(Nalin Dahyabhai氏による)が入っているようだ (r3376など, Bugzilla #1717)。
  • 12/6現在もSambaのアーキテクチャにthreadモデルを導入することの是非を 論じているようだが、どうなんだろう。tridge氏は同氏が触ったシステムでは プロセスを利用した方が早いと述べている。
  • Kerberosのないプラットフォームでの構築を修正した(r3439)とgd氏が述べている。 この変更点を見ると、各関数の定義の行頭に空白文字を足しているのが興味深い。 それ以前にもいろいろ変更されているので単なるインデントの変更のような ものかもしれない。
  • (4系)インクルードファイルの変更をしたらしい(r3443)。システムごとに 違う定義(通常は#ifdef HAVE_XXX で記述するところ)は source/include/system/*.h で吸収するようにしているようだ。(r3447ほかも 関連しているだろう)
  • (4系)pvfs openの遅延応答のため、イベント関連コードをミリ秒単位で 実行できるようにしたらしい(r3507)。time_tの代わりにstruct timevalを 使用するらしい。その後、posix:sharedelayパラメータ(単位:マイクロ秒)で 共有違反の遅れを指定できるようになったらしい(r3532)。
  • (4系)これまでもいろいろcommitされていたが、DCOM(の基盤)サポートが 追加されたらしい(r3513)。DCERPC呼び出しでオブジェクトUUID越しに(?)送信する ことができるようになったりしたらしい。
  • (4系)Squid-3.0で対応するマルチプレックス認証ヘルパーに対応させたらしい (r3541)。リクエストに番号が付くらしい。
  • (4系)DOS拡張属性をIDLで記述するようにした?(r3545, 3549)
  • (4系)--enable-{krb5,gtk}developer オプションを廃止したそうだ(r3556)。

(JP)(12/7頃)UTF-8でswatが文字化け、という話題があり、森山氏が [samba-jp:17380]にて3.0.8以降ではswatはdisplay charset パラメータに 依存しなくなったという解説をされている。

| | TrackBack (0)

今日までのSamba (2004/11/22)

3.0.9も出たそうですが、まだまだ一月以上前のお話ですみません。 (この差を詰められそうな状況でもなく…。)

  • プリンタのデータをLDAP内に格納する枠組みをcommitしたらしい。r2976の時点では 使用せず。
  • 読み取り専用ファイルでdelete on close機能を無効にするようにしたらしい (r3003、Bugzilla #1886)?
  • force printernameパラメータが追加されたようだ(r3070)。プリンタ名を共有名 として使うときに有効にするとよいらしい。
  • (4系)pidlで、変数の取りうる範囲を指定するようにしたらしい(r2949)。
  • (4系)tdb_{lock,unlock}keys()は4年も壊れたままなので削除されたそうだ (r2985)。SourceForgeから取り込んだときにも完成していなかったらしい。 mainではr2998、3.0系でもr2999で削除。
  • (4系)pidlで、ndr_size_*()関数を自動生成できるようにしたらしい(r2990)。 「[gensize]」プロパティで指定できるらしい。
  • (4系)POSIX vfsモジュールでバイト単位ロックをサポートするコードが追加 されたようだ(r3012)。当初の時点ではロックのタイムアウトなどはサポートされない らしい。
  • (4系)UNIXドメインソケットベースの(プロセス間)メッセージング機構を 追加したそうだ(r3016)。
  • (4系)ntvfsモジュールで非同期モードを使う際ntvfs_async_setup()を実行して 正しく動くようにしたらしい(r3039)。また、Linux-2.6からid →ポインタの構造体 (radix木の一種)を導入して大規模化したらしい(r3056)。
  • (4系)metze氏が、ldb_rename()関数を追加したそうだ(r3093)。

| | TrackBack (0)

今日までのSamba (2004/11/13)

そろそろ3.0.9がリリースされるというのに、まだ一月前のまとめをしています…

  • 保存するパスワード履歴が15よりも多く指定された時には 15に戻すよう変更したらしい(r2819)。
  • password chat パラメータに%uが存在しない場合はエラーを出すようにした そうだ(r2827)。
  • 信頼関係パスワード(?)をpassdbに新設したAPIでまかなうよう変更したらしい (r2838-2849)。
  • RPC end-point mapperのコードは研究のスタート点としてはよいが削除した そうだ(r2869)。
  • ユーザがどのグループに属しているかをsys_getgroups()で行うように 変更したらしい(r2870)。従来は(何かのバグの対処で?)全グループを走査して 対象ユーザがそのグループに属しているかを調べていたようだ。
  • (4系)unixuid というNTVFSモジュールが追加されたそうだ(r2794)。posix モジュールと(自動的に?)併用してsamdb(LDAPなど)で指定されたuid(あるいはユーザ名と 同名のUNIXユーザのuid)を反映させることができるらしい。
  • (4系)UCS2文字列との変換の時間を省くため(?) smb_ucs2_t / wpstring / fpstring 型を利用するのを取りやめ、next_codepoint() / push_codepoint() で 間接的に取り出すようにした(?) (r2857)。
  • (4系)ldbでのrootDSEサポートを実装したらしい?(r2874)
  • (TNG)WinXP SP2だとspoolssdが落ちるらしいのでその対策をしたらしい。
  • (TNG)CAN-2004-0815(2.2.11 / 3.0.2a以前にあった問題)の修正も 取り込まれたようだ。ただし現バージョンには影響しない・コードを(?)壊すことも ないとelrond氏はcommitメッセージに書いている。
  • このころlibsmbclientのPerl bindingsを作るという話がsamba-technicalで 出ている。FileSys::SmbClientモジュールが既にある、それはリモートファイルに アクセスするためだけのものだ、4系のswigコードが参考になる、などのやり取りが あったようだ。
  • (4系)hash2での8.3ファイル名へのmanglingに関連するコードが取り込まれた そうだ(r2927)。
  • (4系)CONなどの予約済みファイル名についてのサポートがより充実した らしい(r2928)。

| | TrackBack (0)

今日までのSamba (2004/11/6)

  • 非WindowsなSMB/CIFSクライアントからのroundup問題(?)を修正したらしい (r2636)。
  • smbclientにstatサブコマンドを追加したらしい。CIFS UNIX拡張を使用している らしい(r2652)。
  • (4系)tallocコードでメモリ追跡をできるらしく、--leak-report (当初は --leak-check)オプションを 各コマンドに追加したらしい(ただしスレッドで安全ではないらしい)(r2640)。 Valgrindで見つけにくい種類のメモリリークをこの機能で見つけられるらしく、 その後いくつかのメモリリークの修正がされているようだ。 さらにr2674で--leak-report(名称変更)のほかに 全てのメモリ確保のツリー表示を する --leak-report-fullオプションも追加したそうだ。
  • (TNG)unix_gidを sam_passwd構造体からはずしたそうだ。
  • さとう氏の指摘(Bugzilla #1732)により、RAPが返す共有名の長さ制限が UNIX側の文字コードで測られていたのを修正したそうだ(r2698)。
  • Bj?\195?\182rn Jacke氏(文字コード不明、commitメッセージのまま)による SWAT関連の変更が入っている(r2715、r2771)。関連するメッセージファイルの 文字セットは UTF-8に固定されてしまった。これがどう影響を及ぼすのかは不明。
  • ldapsam_compatでhomeDrive属性のつづりを誤っていた(らしい)のを 修正したそうだ(r2730)。
  • _samr_query_useraliases RPC呼び出しはやや壊れているらしく、回避措置を 行ったらしい(r2753)。今後pdb_enum_alias_memberships()を使って書き直される べきだとgd氏はcommitメッセージ中で述べている。
  • winbindd / wbinfoで client ntlmv2 authパラメータが正しく働くよう 修正したらしい(r2756)。
  • この頃 2.2.12 アナウンスがあったようだ。SVNツリーにはしばらくしてから commitされたようだ(r2947)。
  • open_printer_ex()で渡されたホスト名を記録してその後のspoolss応答で 再利用できるようにしたそうだ(r2769、Bugzilla #1519)。

| | TrackBack (0)

今日までのSamba (2004/10/31)

  • quotaファイルの開き方を修正したらしい(r2394)。
  • LDAPの(以前使用していた?)属性を削除するためのコードが追加されたようだ(r2445)。 jmcd氏のパッチを基にしているそうだ(commitしたのはvlendec氏)。
  • winbinddがグループ用配列を大きくするべきときに(?)正しいグループ数を 返さない場合があるのを修正したらしい(r2452)。(Squidの)Henrik Nordstrom氏に よる。それまでにsamba-technicalで議論があったと思う。
  • cliconnect.c でメモリ解放のし忘れがあったらしいので修正されたらしい (r2467)。
  • heimdal-0.6.1rc3を使用している環境ではデーモンが落ちるので free系関数を呼び出さないようにしていたが、それはメモリリークを 引き起こすらしい。元に戻された(r2474)。0.6.1以降を使うべきだとされている。
  • (4系) POSIX vfsに関する機能を実装し始めたらしい(r2404)。その後 r2436にて大きな追加がされたようだ。
  • この頃Guenther Deschner氏(gd氏)がチーム一覧ページに自分の名前を入れている。 以前からよく発言されていた人ですね。
  • ユーザ削除の際にはpdb(LDAPなど)の削除をUNIXユーザの削除より先に行うように したそうだ(r2480)。Igor Belyi氏による。
  • 3.0系からのマージが続いたようだ(r2522位まで)。
  • nt acl supportパラメータが無効になっている共有にはセキュリティ ディスクリプタを設定しないようにしたらしい(r2549)。
  • 4系からのマージで、「マルチバイト文字セットでは2バイト目に 0x3Fより小さい値が来ることはない」性質を利用してstr(r)chr_m()を最適化した (r2579、3.0系はr2578)と述べているが、大丈夫なんだろうか(UnicodeならOK?)。 gd氏からすぐクラッシュするとの 指摘があり、typo修正(r2604, 3.0系はr2605)がされたようだ。
  • (4系)IPv6でのMSRPCをサポートするようにしたらしい(Server2003でテストした そうだ)(r2538)。
  • (4系)文字コード変換部分の更新(r2552)? strlen_m()は固定バッファを 使わないようにしたらしい。
  • (4系)ntvfsモジュールの組み合わせるコードの修正が行われ、例えば nbenchモジュールを複数通すことが可能になったという(r2561)。
  • (4系)hosts allow/deny パラメータによるsmbdのアクセス制限が可能になった そうだ。
  • この頃、news.samba.orgレポートに関するボランティアをderyck氏が募集している ようだ。
  • この頃、3.0.8pre1 / 3.1.0がアナウンスされている。
  • LDAPサーバがサポートしている場合に限り拡張パスワード変更操作を取り扱う 変更をしたらしい(r2620、Bugzilla #1823,#1545)。

|

今日までのSamba (2004/10/22)

まだまだ(一部を除き)1か月以上前の話ですみません。

  • (4系) talloc関連の実装が一新されたらしい(r1983)。 talloc_{free,realloc,steal}()の第一引数は廃止 / 任意のtallocポインタをtallocコンテキストとしてメモリを確保できるようになった / 名前つきtallocポインタを作成できるらしい(talloc_named()) / 利用側はより簡潔に複雑な構造体のメモリ確保が書ける などの変更があったようだ。
    さらにtalloc用のdestructorを自分で書けるようになったりレファレンス回数を 記録して参照がなくなったとき初めてfree()相当の処理をするようになったり したらしい(r2049)。 samdbはこの機能を使って実装されているらしい(r2051)。
  • (8/23頃)abartlet氏が4系のサーバにWinXP SP2マシンからADSマシンとして ログオンができたという報告がされているようだ。
  • statcacheコードをin-memory tdbで使うようにしたそうだ(r2025)。 それに伴い以前のディレクトリキャッシュコードは削除されたようだ(r2075)。
  • AFS関係の問い合わせをwinbinddに中継するパッチを書いたがIBM public License になってしまう、Sambaのexamples ディレクトリに入れられるか、とvlendec氏が おっしゃっている。しかしGPLと矛盾するため無理だろうということになり、 いつの間にかクリーンルーム開発の話に移っている。
  • net コマンドによる静的移行が可能になったらしい? (r2080)
  • (4系)Server2003に接続する際のNTLMSSP RPC sealingを修正したらしい(rev2041)。
  • (4系)net timeコマンドを実装したそうだ(rev2066)。できれば3系と同等の 機能(SMB negprotの応答から抽出)を持ってほしいとtridge氏。それに対して 今はその機能を実装する枠組みがないのでできないとmetze氏が述べている。
  • この頃3.0.7へのリリース予告メールに書かれたjerry氏の文章より:
    • Windowsドメインメンバからの再ログインでホームディレクトリのsnumが不一致になる
    • getent passwd domain\suserが失敗するwinbinddのバグ修正
    • 印字バグ・XPクライアントでのバグ
  • 外部のlibiconvを使っているときにはUTF-16文字にも対応できるようにした らしい(r2115、4系からのマージ)。
  • statcacheのtdbメモリハッシュサイズを1031に変更したらしい。large enough らしい(r2117)。
  • SMB署名でのメモリリークを修正したらしい(r2140)。
  • 最後が「.」で終わる(ファイル)名前の処理を修正したらしい(r2149)。
  • (4系)DCERPCのクライアント側ライブラリを再び動くようにしたらしい(r2100)。 非同期にRPCパケットを処理できるらしい?
  • (4系)UTF-16ベースに変更することにしたらしい(r2159)。commitメッセージに よれば、以前は不要と思っていたが、拡張UTF-16文字をUTF-8としてディスクに 保存できないことを指摘されたかららしい。main/3.0系のビルトイン(?)iconv ルーチンには一部マージされているらしい(r2162)。
  • この頃 さとう氏が出されていたstrupper_m/strlower_m()内のerrnoを 保存するパッチがcommitされた(r2174、Bugzilla #1546)。
  • 印刷ジョブにpidを入れ、すでにいないpidからのジョブはtdbから削除できる ようにしたらしい(r2193、3.0系はr2191)。
  • パス名の解析ルーチンを、WinServer2003の処理に似せて実装しなおした? (r2195)
  • 不正なNetBIOSパケットに対してのnmbdのチェックを強化したらしい。(r2225)
  • tdb内の可変引数関数にgcc-3.x系以降の引数チェックを追加したらしい(r2248)。 2.x系ではうまく取り扱えないらしい。
  • (4系)TCP上のLSAセッション鍵が働くようになったという(r2266)。今までは NCACN_NP(何の略?)に強制設定して動作させていたらしい。
  • (TNG)UNISTR2処理でのmemory corruptionを指摘され、修正したらしい。
  • (TNG)OS/2の拡張属性(?)の変なところを修正したらしい。
  • (TNG)lsa query info(rpcclient?)でmemory corruption問題が別にあったので 修正したらしい。
  • (JP) このころ2.2.11-ja1.0がリリースされた。
  • (4系)NTLM2 の署名・暗号化(?)について修正し、NTLMも含めてsign / sign + seal ができるようになったらしい(r2294)。
  • (4系)ntlmssp_server / ntlmssp_client パラメータでNTLMSSPの挙動を 変更できるようにしたらしい(r2303)。当初の時点では 128bit / keyexchangeの 2つが設定できるようだ。
  • このころ3.0.7がリリースされた。
  • check password scriptパラメータでパスワードの内容をチェックする 外部スクリプトを指定できるようにしたらしい(r2329)。スクリプトの例は examples/auth/crackcheck/ にある
  • 3.0.7に取り込まれたASN.1の問題をマージしたという(r2354)。
  • ユーザマネージャでの信頼関係の操作で問題があったらしく修正した そうだ(r2368)。
  • (10/1頃)wide links = yes(デフォルト)の際に共有として指定した ディレクトリツリー以外へのアクセスが可能となるセキュリティホールが判明。 2.2.12がリリースされた。3.0系は3.0.6の段階で対処済み。 どのrevのcommitが該当するかは不明(13時現在SVNソースツリーに入っていない?)。
  • (10/11頃) 10/6頃に上げられた2.2系用のdaemontools対応パッチについて、 その投稿者から2.2系のサポート終了が早すぎるとの指摘あり。メンテナーが いれば厳密にバグ修正・セキュリティ修正に限ってしてもよいとのjerry氏の見解。

|

今日までのSamba (2004/9/26)

3.0.8pre1とか3.1.0とかリリースされていますが、まだまだここで触れるのは先の話になりそう…。 今回からSubversionのrevisionを(覚えているものは)入れてみることにしました。

  • LDAP検索のインタフェースを実装し始めたそうだ。詳細はよく分からない。
  • (4系)古いシステムやWin2003(非互換部分)からの(?)cli_list*()に対応するように したらしい。
  • このころSubversionのcommit時のフックスクリプトを変更、commitメッセージを 先に出すようにして100行以内のdiffは文中に含めることにしたそうだ。
  • パスワード履歴のフォーマットを変更、生で格納するのをやめて 16バイトのsaltとsalt+以前のパスワードのMD5ハッシュにしたらしい。
  • 一部LDAPフィールドのOIDにエラーがあったので修正したそうだ。
  • sendfile()が正しく動作しないシステム(Linuxの一部のバージョン?)では自動的に 無効にするように変更したそうだ。
  • この時点で3.0.6rc2のアナウンスがされた。
  • CUPSのsmbspoolバックエンドからKerberos認証でWindows Server2003に 印刷するパッチをTom Shaw氏という方が出されている。
  • (2.2系)snprintf()の変更がbackportされたそうだ。
  • (4系)pidlに[relative]という記法を追加したそうだ。
  • このころnews.samba.orgについてのアナウンスが出されたそうだ。
  • ファイル名で変換できない文字があった場合は削除するのではなく 「_」で置き換えるように変更したそうだ。(Bugzilla #1578)
  • winbinddはドメインコントローラ名を探す際にノードステータス要求ではなく getdc要求を発行するように変更したそうだ。
  • さらにwinbinddは(複数のドメイン(?)を)一つのデーモンでこなすmulti-socket 構造をやめたという。
  • IA64用のプリンタドライバを格納できるように変更したらしい。
  • net rpc {printer,share} migrate コマンドを実装し始めたらしい。完成すれば 複数サーバへのRPC呼び出し発行で複数台のサーバに同時に適用できる(??)ように 読み取れるが、よく分からない(rev.1693)。
  • さらにwinbinddがLDAP Proxy的な役目を果たすコードを入れたという(rev.1713)。
  • pcapファイルをnbench用入力に変換するpcap2nbench (aliguori at us.ibm.com氏) を取り込んだそうだ。また、同氏によるsmbconf_editコマンド(コマンドラインで 内容を変更できる?)も取り込んだようだ。
  • ldb_*()からldap_*()へ関数名を変更(?)、SASLにも対応させたらしい?
  • アカウント情報内のログオン時間の内容に従ってログオンを許可・拒否するようにし たようだ。
  • (2.2系)WinXP SP2では本来FindNextPrintChangeNotify()に先立って呼ばれるべき iFindFirstPrintChangeNotify()を発行しない 挙動があり、そのためにsmbdがクラッシュしない対策をとったらしい。
  • (4系)IDLに既知のExchange用パイプでの呼び出しの記述を行ったらしい。また、 既知のUUIDを多数追加したようだ。
  • (4系)サーバ側のSPNEGOを有効にしたそうだ。
  • この頃2.2.11がリリースされた。
  • 信頼関係のパスワードをsecrets.tdbから現在のpdbバックエンドに移行する 関数を追加したそうだ。その後さらに修正が加えられたようだ。

(8/15頃)jerry氏によるCIFS Conferenceの覚え書きが出された。4系の成果を 3系にマージする3.1の進展は同期させる目標が多すぎるため(?)、3.0はそのまま 進めて(完成次第)4系に単純置き換えすることにしたらしい。すなわち3.1.0を (3.0-alpha系と同じ位置付けで)開発リリースとして出し、3.0系のソースツリーは production releaseとして継続する。3.1の新機能が安定したら3.0系にマージ、 3.1系が相当数の(安定した)変更を抱えるようになったら3.2をリリース…という 流れになるらしい。
3.0系のソースツリーをtrunk(HEAD?)に同期させ、いくつかのユーザ・グループ 基盤をマージ。それができたら(8月末目標?)3.1.0をリリース(実際は9/25頃)。その他jra氏が smbdにSAM複製を追加しようとしているそうだ。

  • SWATで「…/」とディレクトリを要求された場合はindex.htmlを表示するよう 変更したそうだ。(James Peach氏による。)trunkにマージされたのは9/8頃のこと。
  • Win9x/DOSに対してはsendfile()を無効にするようにしたそうだ。また、 DOSのchained commandsに対応したらしい。(Bugzilla #1606)
  • 3.0系のAFS用ACL変換(vfs)モジュールが改良されてmainにも取り込まれたようだ。
  • とあるPowerPoint用(?)ソフトを使ってたくさんのファイルがあるディレクトリに 対して操作すると遅くなるらしい。で、いろいろ対策が出ているようだ。(一応解決 したらしい)
  • wide links、follow symlinksが両方とも無効になっていると共有に アクセスできないのを修正したようだ(Bugzilla #1602)。(r1865)
  • (4系)netコマンドのディレクトリを変更、コードを書き直したそうだ。(r1876の 時点ではほとんどできなさそうにも見えるが…。)
  • この頃3.0.6がリリースされた。
  • printing.cの内部構造を共有番号ではなくプリンタ名で表すよう変換する コードの実装が始まったようだ。当初はそうしていたはずなのになぜ変更したのか 分からない、とjra氏。
  • net share migrate関係のコマンドにDOS属性やタイムスタンプを保持する 機能が追加されたようだ。
  • (4系)net password set user の形式のパスワード設定ができるようになった らしい。
  • (9/10頃) (JP) samba-2.2.11-ja1.0リリースのアナウンスあり。
  • (9/14頃) 3.0.7リリース。smbd/nmbdのリモートからの攻撃に対応。

|

昨日までのSamba (2004/9/3)

そろそろ3.0.7の模様ですね…。でも一月前の状況を記録していきます。

  • netlogon schannel失敗はWinXPクライアントがよく出すものなので、それに関する ログエントリのデバッグレベルを下げたそうだ。
  • writable パラメータで書き込み許可された共有でもセキュリティ記述子で 読み込み許可しか与えられていない場合書き込めないので、そのチェックを 加えたようだ。
  • Win95クライアントに対してはsendfile()を使用できないので、lp_use_sendfile() 内で判定するようにしたそうだ。
  • LDAP/tdbsam バックエンド内にパスワードの履歴を格納するパッチ (Jianliang Lu氏による)をマージしたそうだ。その後samba-technicalでの反応を 元に修正を施したようだ。
  • この時点で3.0.5rc1がリリースされたようだ。
  • idmap backendパラメータで複数ホストを記述できるようになったらしい。 「idmap backend = ldap:"ldap://localhost/ ldap://fallback/"」的な記述が できるそうだ。
  • CIFSクライアントからmknod操作ができなかったのを修正したそうだ。Unix ドメインソケットが書き込めるようになったという。
  • /dev/urandom が存在する場合はfork()の度にsecrets.tdb を更新しない ようになったらしい。それ以外でのシステムでもfork()毎にランダム種の 再設定が実行され、従来(操作毎)よりも回数が減ったらしい。
  • pdbeditで(?)印刷用アカウントのbas password(?)とアカウントロックアウト フラグをリセットしてしまうのを修正したそうだ。
  • winbinddが複数のドメインコントローラに同時に接続できるコードを 実装したらしい?
  • rpcclientで共有自身のACLエントリを表示できるようにしたらしい。
  • (3.0系?) WinXP SP2 RC2でspoolssに関する呼び出しの順序が違う(バグ?)ため、 それに対処したそうだ。
  • (4系)jelmer氏がgwcrontabという(Gtk使用の対Windows 定時実行タスク 設定?)ツールを作成されたそうだ。その他Gtk関連コードの移動など。 その後、gwsamというツールが追加されたり、--enable-gtkdeveloper オプション (configure)が追加されたりしているようだ。
  • (4系)gensecでKerberosが取り扱える基盤ができた?
  • (4系)PCH(Cヘッダのプレコンパイル?)を通常のオブジェクトと同じオプションで 作り直すよう調整したらしい。
  • (4系)汎用サーバ基盤なるものを実装し始めたそうだ。smb, dcerpc, swatなどの サービスをモジュール(スレッド?)として持つらしい。
  • (4系)NT3.1からRPC PDUについて末尾に追加データが付くが、それは(エラーにせず) 無視するように変更したそうだ。
  • (4系)サーバ・クライアントの両実装で同じSMB署名に関するコードを使用するよう 修正したそうだ。
  • (7/20頃) Revision 1549のcommitメッセージで、jerry氏が3.2系の 進行状況をまとめている。できたのがnmbd(ブラウズリストの同期を除く)、 (smbclient/testparm/nmbdlookupなど)主なクライアント(net/smbpasswd/smbcacls などはまだTODO扱い)、一部のPAM/NSSモジュールだとしている。
  • (4系) krb5用のPACパーザをIDLで記述したらしい。
  • この頃、3.0.5 / 2.2.10がリリースされた。SWAT内のBASE64デコードルーチン 問題(3.0.2以降、2系は除く?)とmangling methodがhash (2系ではこれのみなので全て) の場合バッファオーバーランが生じる問題(2.2.9以前、3.0.0以降?)を解決したという。 pstrcpy()/pstrcat()だったものが saef_strcpy()/safe_strcat()に置き換わり、 その他バッファ長に注意した処理を追加しているようだ。 (よく不等号の意味が取れていない)
  • LDAPタイムアウト/サーバ切り替えについて、処理を修正したらしい。 LDAP問い合わせ中に (タイムアウトで?)中止しないように(?) 全ての(一連の?)操作のタイムアウトを 測るようにしたようだ。ldap timeout のデフォルトは(従来の5秒から)15秒に 延ばしたそうだ。その後、LDAPサーバ接続に関しての別の変更も組み込んでいる ようだ。
  • lib/snprintf.c内のコードをちゃんと使うための修正はJames Peach氏により 報告され、8/5までにcommitされたようだ。
  • (4系) クライアント側の非同期再書き込みができるコードを実装し始めた らしい? commitメッセージに詳細が書いているが、よく理解できない。
  • (TNG)ディレクトリのキャッシュについてのコードは smbd/dir.c から smbd/dir_cache.cに分離したそうだ。その他、ファイル名manglingの修正も 含まれているそうだ。
  • (8/14頃) 2.2.11リリース。WinXP SP2クライアントからアクセスすると特定 要求でsmbdがクラッシュするバグを修正したそうだ。
  • (8/14頃)abartlet氏がsamba-cvs MLをなくしてsamba-technical内で配送する ようにしたらどうか(主な話し合いはIRC上でしているし)という提案をしている。 tpot / vlendec / jerry氏はその提案には疑問を呈している。
  • (8/20頃)3.0.6リリース。
  • (8/23頃)WebSVNが動いていない。変更点の確認ができないので弱った(最近のsamba-cvsでは diffがついている)…。 今 http://websvn.samba.org/ を確認すると、同ホストのViewCVSかbuild.samba.orgのRecent Checkins 機能を使うよう記載されている。

|

より以前の記事一覧

その他のカテゴリー

Samba | TOWNS