OpenBSD版ApacheとオリジナルApacheの違い

OpenBSDApache 1.3をfork()してディストリビューション標準添付のhttpdにしている。
勿論セキュリティの為に色々改造してあるのだけれども、実際どこをどれくらい変えてるんだろうと思ってdiffを取ってみた。

# httpd -v 
Server version: Apache/1.3.29 (Unix)
# wget http://archive.apache.org/dist/httpd/apache_1.3.29.tar.gz
# tar -xvzf apache_1.3.29.tar.gz
# diff -x CVS -Nurbw apache_1.3.29/src/ /usr/src/usr.sbin/httpd/src/ > httpd.diff
# wc -l httpd.diff
  112828 httpd.diff

Wow.
まじデケぇ。
という訳で解読は皆様にお任せするが、chroot関係のコードが追加されてる事は"chroot"で検索かけてみたら簡単に確認出来た。

http://syuu.dokukino.com/httpd.diff

追記

ちなみに、OpenBSDへ最適化してしまっているのでポータビリティが無くなっている。
これを再び色々なOSで動かすにはOpenSSHみたいにコンパチビリティレイヤを入れるか、元のコードに戻さないとダメぽ。