Linux World Expo最終日

午前中豊洲に行って会議に出席してから、ゆりかもめで国際展示場に向かった。初日、二日目、三日目と対応を行い、はっきりとこれまでとの違いを感じた。TOMOYO Linuxに興味を持ってくれる人、話を聞いてくれる人は確実に増えている。OSSの関係者、セキュアOSの関係者以外の方がTOMOYO Linuxの話を聞きにきてくれていて、訪れる人の「層」の広がりを感じた。また、SDの連載を読んでいてくれたという人や「ユーザのサポートが良いと聞いていますのように話してくれる人もいた。今まで続けてきたささやかな活動が、今になって目に見える形でたまってきたのかなと思った。それを目指して取り組んできたわけではないけれど、とてもうれしい。

会場で熊猫さんから、vfsのコードの整理をしていたMiklos氏が5/30にAppArmorをマージするためのパッチを投げたと教えてもらい、会場で確認した。このパッチこそは、2年以上にもわたりAppArmorが提案してきて、またTOMOYO Linuxも提案をして、採用されなかったパッチであり、AppArmorのみならずTOMOYO LinuxをLSMモジュールとして登録する上で不可欠なものだ。

パッチの内容は簡単に言えば(自分には簡単なレベルしかわからないけれど)、これまでinode(構造体)「だけ」を渡していたところをpath構造体を渡すようにするというもので、それによってpath名の情報「も」参照することが可能になる。AppArmorやTOMOYO Linuxでは必須だが、SELinuxでもフルパス名の情報を使えるようになる。

-	int (*inode_rmdir) (struct inode *dir, struct dentry *dentry);
+	int (*inode_rmdir) (struct path *dir, struct dentry *dentry);

呼び出し側と呼ばれる側で同時に変更しなければならず、変更箇所は関数の数だけと多いが、それ以外は誰にとっても便利な拡張(あるいは最初からこうであれば良かったと思うのだが)なのに、どうしてこの修正が今までかたくなに拒まれていたのかあらためて不思議に思った。

上記のパッチには5/30 8:40現在レスはついていないが、実質的に受け入れられたと考えて良いvfs cleanupのパッチに基づいたものであり、Al Vilo氏を含めて今となってはこの提案に異を唱える人は出てこないように思う。パッチの内容についても単純であり、方式などを議論する余地はないから、おそらく次のバージョンではメインラインにマージされるだろう。

TOMOYO Linuxでもこのパッチに対応したパッチの作成を行い提案を行う。