MoonWolfです。

Takahiro Kambe wrote:
> これを解決するには、
> 
> 1. 別にセキュリティ・パッチを表す定数を導入する。例えば、
> 
> 	CVS::REVISION = '2006/11/2 10:10:10'
> 
>    といったものを導入する。

複数のパッチをあてることもありえるので、対策した脆弱性の識別子(たとえば
'CVE-2006-5467')の配列のほうがいいかもしれませんね。

> 2. セキュリティや基本的な障害だけの修正しか加えない、リリース(今回であ
>    れば Ruby 1.8.5)からブランチさせた修正リリース用のCVSブランチを使っ
>    て管理する。

リリースとリリースの間にパッチが複数発生したときのことを想定すると、これ
がいいように思います。

> といった、ことが考えられます。

きちんと考えてくれてありがとうございます。

# 思考停止してやり過ごそうとする人が多すぎます。

>> 1.6.28.16に対するパッチのはずなのに、1.6.28.17に対するdiffというのは、
>> パッチを当てる時に不安になりませんか?
> と、いうわけで私は元々そこまで REVISION に重きを置いていませんし、それ
> よりも変更された内容を見て判断します。CVSのレポジトリで差分を見ること
> もできますし、特に不安には思いません。

私の場合はパッチの作成ミスの可能性を疑ってしまいます。心配性なので。
あと、diffだけでパッチの内容が理解できますか? そんな自信は私にはありません。
http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/lib/cgi.rb.diff?r1=1.68;r2=1.68.2.17;f=h
のようなパッチだったらどうですか?