エンジニアブログ
MT技術情報
MT4.22のソースコードを読んでみよう
2008年10月15日
バージョンアップという単語を見るとdiffの使用率が一気に上がります。こんにちは。上西です。
MovableType4.22が出ましたね。告知の方では管理画面のXSS脆弱性への対応とありますが、ソースコードの差分を取ってみると色々と修正されていることがわかります。XSS脆弱性外のところは何れもそれほど大きな修正ではないのですが、今までMTの不思議な挙動に「?」マークを出していた人にはバージョンアップをお勧めします。
ソースコードを読んでいて気がついた点を簡単にメモしておきます。
- スキーマバージョンに変更なし。データベースに変更はされませんが、作業前のバックアップは忘れずに行っておきましょう。
- tmpl/cms/* に幾つか修正があります。主には escape="html" が追加されてHTMLの脆弱性が解消されています。
- データインポート時のHTML脆弱性が対策されています。
- 「test for global-level permission」 何でしょうね?これ。広域レベルの承認のためのテストと読めますが、今後に出る新しいフィーチャーの実験コードでしょうか?
- Tag の読み込みに iterator を使うようになっています。同じ動作をするはずなのですが、何でしょう?
- アップグレード時にビルド方式が適切に設定されなかった不具合が修正されています。
- Upgrade.pm がけっこう変っています。アップグレードがうまくいかなくて困っているユーザを見かけたことがあるのでその対策でしょうか?
- 数字が要求されているところに数字以外が来たら?だとか必須と想定しているパラメータが無かったら?のような回避コードが幾つも追加されていて安定性が向上しています。
- Tag の読み出し部分の変更。日本語のタグが重複して現れる不具合が解消されているかもしれません。
ここまでシステムが巨大化すると互いが互いに色々と影響をするので、勘違いしているところがあるかもしれません。短い時間ではなかなか細かいところまで把握しきれません。変更点を全部追いかけるとなると一日じゃ終わらない!
お客様には安定してシステムを使って頂けるよう弊社一丸となって頑張って参ります。今後ともよろしくお願いいたします。