From: Alexander H. <ale...@us...> - 2007-06-28 20:15:37
|
Update of /cvsroot/fink/dists/10.4/unstable/main/finkinfo/web In directory sc8-pr-cvs17:/tmp/cvs-serv19264 Modified Files: lighttpd.info lighttpd.patch Log Message: New from tracker http://sourceforge.net/tracker/index.php?func=detail&aid=1739792&group_id=17203&atid=414256 Index: lighttpd.patch =================================================================== RCS file: /cvsroot/fink/dists/10.4/unstable/main/finkinfo/web/lighttpd.patch,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- lighttpd.patch 17 Apr 2007 14:42:13 -0000 1.1 +++ lighttpd.patch 28 Jun 2007 20:15:36 -0000 1.2 @@ -1,18 +1,18 @@ -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/configure.in lighttpd-1.4.13/configure.in ---- lighttpd-1.4.13.orig/configure.in 2007-03-25 20:52:31.000000000 +0400 -+++ lighttpd-1.4.13/configure.in 2007-03-26 15:31:28.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/configure.in lighttpd-1.4.15/configure.in +--- lighttpd-1.4.15.orig/configure.in 2007-06-19 18:15:28.000000000 +0400 ++++ lighttpd-1.4.15/configure.in 2007-06-19 18:15:32.000000000 +0400 @@ -538,7 +538,7 @@ AC_OUTPUT --do_build="mod_cgi mod_fastcgi mod_proxy mod_evhost mod_simple_vhost mod_access mod_alias mod_setenv mod_usertrack mod_auth mod_status mod_accesslog mod_rrdtool mod_secdownload mod_expire mod_compress mod_dirlisting mod_indexfiles mod_userdir mod_webdav mod_staticfile mod_scgi mod_flv_streaming" -+do_build="mod_cgi mod_fastcgi mod_proxy mod_evhost mod_simple_vhost mod_access mod_alias mod_setenv mod_usertrack mod_auth mod_status mod_accesslog mod_rrdtool mod_secdownload mod_expire mod_compress mod_dirlisting mod_indexfiles mod_userdir mod_webdav mod_staticfile mod_scgi mod_flv_streaming mod_geoip mod_extforward" +-do_build="mod_cgi mod_fastcgi mod_extforward mod_proxy mod_evhost mod_simple_vhost mod_access mod_alias mod_setenv mod_usertrack mod_auth mod_status mod_accesslog mod_rrdtool mod_secdownload mod_expire mod_compress mod_dirlisting mod_indexfiles mod_userdir mod_webdav mod_staticfile mod_scgi mod_flv_streaming" ++do_build="mod_cgi mod_fastcgi mod_extforward mod_proxy mod_evhost mod_simple_vhost mod_access mod_alias mod_setenv mod_usertrack mod_auth mod_status mod_accesslog mod_rrdtool mod_secdownload mod_expire mod_compress mod_dirlisting mod_indexfiles mod_userdir mod_webdav mod_staticfile mod_scgi mod_flv_streaming mod_geoip" plugins="mod_rewrite mod_redirect mod_ssi mod_trigger_b4_dl" features="regex-conditionals" -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/lighttpd.conf lighttpd-1.4.13/fink/etc/lighttpd.conf ---- lighttpd-1.4.13.orig/fink/etc/lighttpd.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/lighttpd.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/lighttpd.conf lighttpd-1.4.15/fink/etc/lighttpd.conf +--- lighttpd-1.4.15.orig/fink/etc/lighttpd.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/lighttpd.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,97 @@ +finkroot = "/sw/" +configpath = finkroot + "etc/lighttpd/" @@ -111,9 +111,9 @@ + +#including enabled modules and their configurations +include_shell "cat " + configpath + "mods-enabled/* 2>/dev/null" -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/access.conf lighttpd-1.4.13/fink/etc/mods-available/access.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/access.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/access.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/access.conf lighttpd-1.4.15/fink/etc/mods-available/access.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/access.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/access.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,10 @@ +global { + server.modules += ("mod_access") @@ -125,24 +125,24 @@ + # of the document-root + url.access-deny = ( "~", ".inc" ) +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/accesslog.conf lighttpd-1.4.13/fink/etc/mods-available/accesslog.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/accesslog.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/accesslog.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/accesslog.conf lighttpd-1.4.15/fink/etc/mods-available/accesslog.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/accesslog.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/accesslog.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,4 @@ +global { + server.modules += ("mod_accesslog") + accesslog.filename = logpath + "access.log" +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/alias.conf lighttpd-1.4.13/fink/etc/mods-available/alias.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/alias.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/alias.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/alias.conf lighttpd-1.4.15/fink/etc/mods-available/alias.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/alias.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/alias.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,3 @@ +global { + server.modules += ("mod_alias") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/auth.conf lighttpd-1.4.13/fink/etc/mods-available/auth.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/auth.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/auth.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/auth.conf lighttpd-1.4.15/fink/etc/mods-available/auth.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/auth.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/auth.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,26 @@ +global { + server.modules += ("mod_auth") @@ -170,9 +170,9 @@ + # ) + # ) +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/cgi.conf lighttpd-1.4.13/fink/etc/mods-available/cgi.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/cgi.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/cgi.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/cgi.conf lighttpd-1.4.15/fink/etc/mods-available/cgi.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/cgi.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/cgi.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,6 @@ +global { + server.modules += ("mod_cgi") @@ -180,9 +180,9 @@ + #cgi.assign = ( ".pl" => "/usr/bin/perl", + # ".cgi" => "/usr/bin/perl" ) +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/cml.conf lighttpd-1.4.13/fink/etc/mods-available/cml.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/cml.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/cml.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/cml.conf lighttpd-1.4.15/fink/etc/mods-available/cml.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/cml.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/cml.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,7 @@ +global { + server.modules += ("mod_cml") @@ -191,9 +191,9 @@ + cml.extension = ".cml" + # cml.memcache-hosts = ( "127.0.0.1:11211" ) +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/compress.conf lighttpd-1.4.13/fink/etc/mods-available/compress.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/compress.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/compress.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/compress.conf lighttpd-1.4.15/fink/etc/mods-available/compress.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/compress.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/compress.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,6 @@ +global { + server.modules += ("mod_compress") @@ -201,16 +201,16 @@ + compress.cache-dir = "/tmp/lighttpd/cache/compress/" + compress.filetype = ("text/plain", "text/html") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/evasive.conf lighttpd-1.4.13/fink/etc/mods-available/evasive.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/evasive.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/evasive.conf 2007-03-26 01:02:14.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/evasive.conf lighttpd-1.4.15/fink/etc/mods-available/evasive.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/evasive.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/evasive.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,3 @@ +global { + server.modules += ("mod_evasive") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/evhost.conf lighttpd-1.4.13/fink/etc/mods-available/evhost.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/evhost.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/evhost.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/evhost.conf lighttpd-1.4.15/fink/etc/mods-available/evhost.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/evhost.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/evhost.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,14 @@ +global { + server.modules += ("mod_evhost") @@ -226,25 +226,25 @@ + # + #evhost.path-pattern = "/home/storage/dev/www/%3/htdocs/" +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/expire.conf lighttpd-1.4.13/fink/etc/mods-available/expire.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/expire.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/expire.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/expire.conf lighttpd-1.4.15/fink/etc/mods-available/expire.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/expire.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/expire.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,3 @@ +global { + server.modules += ("mod_expire") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/extforward.conf lighttpd-1.4.13/fink/etc/mods-available/extforward.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/extforward.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/extforward.conf 2007-03-26 15:09:46.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/extforward.conf lighttpd-1.4.15/fink/etc/mods-available/extforward.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/extforward.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/extforward.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,5 @@ +global { + server.modules += ("mod_extforward") + + # extforward.forwarder = ( "all" => "trust") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/fastcgi.conf lighttpd-1.4.13/fink/etc/mods-available/fastcgi.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/fastcgi.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/fastcgi.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/fastcgi.conf lighttpd-1.4.15/fink/etc/mods-available/fastcgi.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/fastcgi.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/fastcgi.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,14 @@ +global { + server.modules += ("mod_fastcgi") @@ -260,16 +260,16 @@ + # ) + # ) +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/flv_streaming.conf lighttpd-1.4.13/fink/etc/mods-available/flv_streaming.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/flv_streaming.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/flv_streaming.conf 2007-03-26 01:03:14.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/flv_streaming.conf lighttpd-1.4.15/fink/etc/mods-available/flv_streaming.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/flv_streaming.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/flv_streaming.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,3 @@ +global { + server.modules += ("mod_flv_streaming") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/geoip.conf lighttpd-1.4.13/fink/etc/mods-available/geoip.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/geoip.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/geoip.conf 2007-03-26 13:21:39.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/geoip.conf lighttpd-1.4.15/fink/etc/mods-available/geoip.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/geoip.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/geoip.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,6 @@ +global { + server.modules += ("mod_geoip") @@ -277,16 +277,16 @@ + geoip.db-filename = "/sw/share/GeoIP/GeoIP.dat" + geoip.memory-cache = "enable" +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/magnet.conf lighttpd-1.4.13/fink/etc/mods-available/magnet.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/magnet.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/magnet.conf 2007-03-26 01:03:33.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/magnet.conf lighttpd-1.4.15/fink/etc/mods-available/magnet.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/magnet.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/magnet.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,3 @@ +global { + server.modules += ("mod_magnet") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/mysql_vhost.conf lighttpd-1.4.13/fink/etc/mods-available/mysql_vhost.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/mysql_vhost.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/mysql_vhost.conf 2007-03-26 15:04:58.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/mysql_vhost.conf lighttpd-1.4.15/fink/etc/mods-available/mysql_vhost.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/mysql_vhost.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/mysql_vhost.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,9 @@ +global { + server.modules += ("mod_mysql_vhost") @@ -297,9 +297,9 @@ + # mysql-vhost.pass = "secret" + # mysql-vhost.sql = "SELECT docroot FROM domains WHERE domain='?';" +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/proxy.conf lighttpd-1.4.13/fink/etc/mods-available/proxy.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/proxy.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/proxy.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/proxy.conf lighttpd-1.4.15/fink/etc/mods-available/proxy.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/proxy.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/proxy.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,10 @@ +global { + server.modules += ("mod_proxy") @@ -311,23 +311,23 @@ + # ) + #) +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/redirect.conf lighttpd-1.4.13/fink/etc/mods-available/redirect.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/redirect.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/redirect.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/redirect.conf lighttpd-1.4.15/fink/etc/mods-available/redirect.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/redirect.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/redirect.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,3 @@ +global { + server.modules += ("mod_redirect") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/rewrite.conf lighttpd-1.4.13/fink/etc/mods-available/rewrite.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/rewrite.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/rewrite.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/rewrite.conf lighttpd-1.4.15/fink/etc/mods-available/rewrite.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/rewrite.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/rewrite.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,3 @@ +global { + server.modules += ("mod_rewrite") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/rrdtool.conf lighttpd-1.4.13/fink/etc/mods-available/rrdtool.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/rrdtool.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/rrdtool.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/rrdtool.conf lighttpd-1.4.15/fink/etc/mods-available/rrdtool.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/rrdtool.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/rrdtool.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,6 @@ +global { + server.modules += ("mod_rrdtool") @@ -335,23 +335,23 @@ + rrdtool.binary = "/sw/bin/rrdtool" + rrdtool.db-name = finkroot + "var/www/lighttpd.rrd" +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/scgi.conf lighttpd-1.4.13/fink/etc/mods-available/scgi.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/scgi.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/scgi.conf 2007-03-26 01:04:29.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/scgi.conf lighttpd-1.4.15/fink/etc/mods-available/scgi.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/scgi.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/scgi.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,3 @@ +global { + server.modules += ("mod_scgi") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/secdownload.conf lighttpd-1.4.13/fink/etc/mods-available/secdownload.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/secdownload.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/secdownload.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/secdownload.conf lighttpd-1.4.15/fink/etc/mods-available/secdownload.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/secdownload.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/secdownload.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,3 @@ +global { + server.modules += ("mod_secdownload") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/setenv.conf lighttpd-1.4.13/fink/etc/mods-available/setenv.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/setenv.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/setenv.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/setenv.conf lighttpd-1.4.15/fink/etc/mods-available/setenv.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/setenv.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/setenv.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,6 @@ +global { + server.modules += ("mod_setenv") @@ -359,25 +359,25 @@ + #setenv.add-request-header = ( "TRAV_ENV" => "mysql://user@host/db" ) + #setenv.add-response-header = ( "X-Secret-Message" => "42" ) +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/simple_vhost.conf lighttpd-1.4.13/fink/etc/mods-available/simple_vhost.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/simple_vhost.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/simple_vhost.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/simple_vhost.conf lighttpd-1.4.15/fink/etc/mods-available/simple_vhost.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/simple_vhost.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/simple_vhost.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,3 @@ +global { + server.modules += ("mod_simple_vhost") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/ssi.conf lighttpd-1.4.13/fink/etc/mods-available/ssi.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/ssi.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/ssi.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/ssi.conf lighttpd-1.4.15/fink/etc/mods-available/ssi.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/ssi.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/ssi.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,5 @@ +global { + server.modules += ("mod_ssi") + + ssi.extension = ( ".shtml" ) +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/status.conf lighttpd-1.4.13/fink/etc/mods-available/status.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/status.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/status.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/status.conf lighttpd-1.4.15/fink/etc/mods-available/status.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/status.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/status.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,6 @@ +global { + server.modules += ("mod_status") @@ -385,9 +385,9 @@ + status.status-url = "/server-status" + status.config-url = "/server-config" +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/trigger_b4_dl.conf lighttpd-1.4.13/fink/etc/mods-available/trigger_b4_dl.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/trigger_b4_dl.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/trigger_b4_dl.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/trigger_b4_dl.conf lighttpd-1.4.15/fink/etc/mods-available/trigger_b4_dl.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/trigger_b4_dl.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/trigger_b4_dl.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,10 @@ +global { + server.modules += ("mod_trigger_b4_dl") @@ -399,9 +399,9 @@ + # trigger-before-download.deny-url = "http://127.0.0.1/index.html" + # trigger-before-download.trigger-timeout = 10 +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/userdir.conf lighttpd-1.4.13/fink/etc/mods-available/userdir.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/userdir.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/userdir.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/userdir.conf lighttpd-1.4.15/fink/etc/mods-available/userdir.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/userdir.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/userdir.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,6 @@ +global { + server.modules += ("mod_userdir") @@ -409,24 +409,24 @@ + userdir.basepath = "/Users/" + userdir.path = "Sites" +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/usertrack.conf lighttpd-1.4.13/fink/etc/mods-available/usertrack.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/usertrack.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/usertrack.conf 2007-03-25 21:00:22.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/usertrack.conf lighttpd-1.4.15/fink/etc/mods-available/usertrack.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/usertrack.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/usertrack.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,3 @@ +global { + server.modules += ("mod_usertrack") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/fink/etc/mods-available/webdav.conf lighttpd-1.4.13/fink/etc/mods-available/webdav.conf ---- lighttpd-1.4.13.orig/fink/etc/mods-available/webdav.conf 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/fink/etc/mods-available/webdav.conf 2007-03-26 01:00:17.000000000 +0400 +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/fink/etc/mods-available/webdav.conf lighttpd-1.4.15/fink/etc/mods-available/webdav.conf +--- lighttpd-1.4.15.orig/fink/etc/mods-available/webdav.conf 1970-01-01 03:00:00.000000000 +0300 ++++ lighttpd-1.4.15/fink/etc/mods-available/webdav.conf 2007-06-19 18:15:32.000000000 +0400 @@ -0,0 +1,3 @@ +global { + server.modules += ("mod_webdav") +} -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/src/Makefile.am lighttpd-1.4.13/src/Makefile.am ---- lighttpd-1.4.13.orig/src/Makefile.am 2007-03-25 20:52:34.000000000 +0400 -+++ lighttpd-1.4.13/src/Makefile.am 2007-03-26 15:14:40.000000000 +0400 -@@ -234,6 +234,15 @@ +diff --unidirectional-new-file -u -r lighttpd-1.4.15.orig/src/Makefile.am lighttpd-1.4.15/src/Makefile.am +--- lighttpd-1.4.15.orig/src/Makefile.am 2007-06-19 18:15:28.000000000 +0400 ++++ lighttpd-1.4.15/src/Makefile.am 2007-06-19 18:15:32.000000000 +0400 +@@ -239,6 +239,10 @@ mod_accesslog_la_LDFLAGS = -module -export-dynamic -avoid-version -no-undefined mod_accesslog_la_LIBADD = $(common_libadd) @@ -434,509 +434,6 @@ +mod_geoip_la_SOURCES = mod_geoip.c +mod_geoip_la_LDFLAGS = -module -export-dynamic -avoid-version -no-undefined +mod_geoip_la_LIBADD = $(common_libadd) -lGeoIP -+ -+lib_LTLIBRARIES += mod_extforward.la -+mod_extforward_la_SOURCES = mod_extforward.c -+mod_extforward_la_LDFLAGS = -module -export-dynamic -avoid-version -no-undefined -+mod_extforward_la_LIBADD = $(common_libadd) hdr = server.h buffer.h network.h log.h keyvalue.h \ response.h request.h fastcgi.h chunk.h \ -diff --unidirectional-new-file -u -r lighttpd-1.4.13.orig/src/mod_extforward.c lighttpd-1.4.13/src/mod_extforward.c ---- lighttpd-1.4.13.orig/src/mod_extforward.c 1970-01-01 03:00:00.000000000 +0300 -+++ lighttpd-1.4.13/src/mod_extforward.c 2007-03-26 15:29:17.000000000 +0400 -@@ -0,0 +1,494 @@ -+#include <ctype.h> -+#include <stdlib.h> -+#include <string.h> -+#include <stdio.h> -+#include <netinet/in.h> -+ -+#include "base.h" -+#include "log.h" -+#include "buffer.h" -+ -+#include "plugin.h" -+ -+#include "inet_ntop_cache.h" -+#ifdef HAVE_CONFIG_H -+#include "config.h" -+#endif -+ -+#ifndef AI_NUMERICSERV -+# define AI_NUMERICSERV 0 -+#endif -+ -+/** -+ * mod_extforward.c for lighttpd, by comman.kang <at> gmail <dot> com -+ * extended, modified by Lionel Elie Mamane (LEM), lionel <at> mamane <dot> lu -+ * -+ * Config example: -+ * -+ * Trust proxy 10.0.0.232 and 10.0.0.232 -+ * extforward.forwarder = ( "10.0.0.232" => "trust", -+ * "10.0.0.233" => "trust" ) -+ * -+ * Trust all proxies (NOT RECOMMENDED!) -+ * extforward.forwarder = ( "all" => "trust") -+ * -+ * Note that "all" has precedence over specific entries, -+ * so "all except" setups will not work. -+ * -+ * Note: The effect of this module is variable on $HTTP["remotip"] directives and -+ * other module's remote ip dependent actions. -+ * Things done by modules before we change the remoteip or after we reset it will match on the proxy's IP. -+ * Things done in between these two moments will match on the real client's IP. -+ * The moment things are done by a module depends on in which hook it does things and within the same hook -+ * on whether they are before/after us in the module loading order -+ * (order in the server.modules directive in the config file). -+ * -+ * Tested behaviours: -+ * -+ * mod_access: Will match on the real client. -+ * -+ * mod_accesslog: -+ * In order to see the "real" ip address in access log , -+ * you'll have to load mod_extforward after mod_accesslog. -+ * like this: -+ * -+ * server.modules = ( -+ * ..... -+ * mod_accesslog, -+ * mod_extforward -+ * ) -+ * -+ * Known issues: -+ * seems causing segfault with mod_ssl and $HTTP{"socket"} directives -+ * LEM 2006.05.26: Fixed segfault $SERVER["socket"] directive. Untested with SSL. -+ * -+ * ChangeLog: -+ * 2005.12.19 Initial Version -+ * 2005.12.19 fixed conflict with conditional directives -+ * 2006.05.26 LEM: IPv6 support -+ * 2006.05.26 LEM: Fix a segfault with $SERVER["socket"] directive. -+ * 2006.05.26 LEM: Run at uri_raw time, as we don't need to see the URI -+ * In this manner, we run before mod_access and $HTTP["remoteip"] directives work! -+ * 2006.05.26 LEM: Clean config_cond cache of tests whose result we probably change. -+ */ -+ -+ -+/* plugin config for all request/connections */ -+ -+typedef struct { -+ array *forwarder; -+} plugin_config; -+ -+typedef struct { -+ PLUGIN_DATA; -+ -+ plugin_config **config_storage; -+ -+ plugin_config conf; -+} plugin_data; -+ -+ -+/* context , used for restore remote ip */ -+ -+typedef struct { -+ sock_addr saved_remote_addr; -+ buffer *saved_remote_addr_buf; -+} handler_ctx; -+ -+ -+static handler_ctx * handler_ctx_init(sock_addr oldaddr, buffer *oldaddr_buf) { -+ handler_ctx * hctx; -+ hctx = calloc(1, sizeof(*hctx)); -+ hctx->saved_remote_addr = oldaddr; -+ hctx->saved_remote_addr_buf = oldaddr_buf; -+ return hctx; -+} -+ -+static void handler_ctx_free(handler_ctx *hctx) { -+ free(hctx); -+} -+ -+/* init the plugin data */ -+INIT_FUNC(mod_extforward_init) { -+ plugin_data *p; -+ p = calloc(1, sizeof(*p)); -+ return p; -+} -+ -+/* destroy the plugin data */ -+FREE_FUNC(mod_extforward_free) { -+ plugin_data *p = p_d; -+ -+ UNUSED(srv); -+ -+ if (!p) return HANDLER_GO_ON; -+ -+ if (p->config_storage) { -+ size_t i; -+ -+ for (i = 0; i < srv->config_context->used; i++) { -+ plugin_config *s = p->config_storage[i]; -+ -+ if (!s) continue; -+ -+ array_free(s->forwarder); -+ -+ free(s); -+ } -+ free(p->config_storage); -+ } -+ -+ -+ free(p); -+ -+ return HANDLER_GO_ON; -+} -+ -+/* handle plugin config and check values */ -+ -+SETDEFAULTS_FUNC(mod_extforward_set_defaults) { -+ plugin_data *p = p_d; -+ size_t i = 0; -+ -+ config_values_t cv[] = { -+ { "extforward.forwarder", NULL, T_CONFIG_ARRAY, T_CONFIG_SCOPE_CONNECTION }, /* 0 */ -+ { NULL, NULL, T_CONFIG_UNSET, T_CONFIG_SCOPE_UNSET } -+ }; -+ -+ if (!p) return HANDLER_ERROR; -+ -+ p->config_storage = calloc(1, srv->config_context->used * sizeof(specific_config *)); -+ -+ for (i = 0; i < srv->config_context->used; i++) { -+ plugin_config *s; -+ -+ s = calloc(1, sizeof(plugin_config)); -+ s->forwarder = array_init(); -+ -+ cv[0].destination = s->forwarder; -+ -+ p->config_storage[i] = s; -+ -+ if (0 != config_insert_values_global(srv, ((data_config *)srv->config_context->data[i])->value, cv)) { -+ return HANDLER_ERROR; -+ } -+ } -+ -+ return HANDLER_GO_ON; -+} -+ -+#define PATCH(x) \ -+ p->conf.x = s->x; -+static int mod_extforward_patch_connection(server *srv, connection *con, plugin_data *p) { -+ size_t i, j; -+ plugin_config *s = p->config_storage[0]; -+ -+ PATCH(forwarder); -+ -+ /* LEM: The purpose of this seems to match extforward configuration -+ stanzas that are not in the global context, but in some sub-context. -+ I fear this will break contexts of the form HTTP['remote'] = . -+ (in the form that they do not work with the real remote, but matching on -+ the proxy instead). -+ -+ I'm not sure this this is all thread-safe. Is the p we are passed different -+ for each connection or is it global? -+ -+ mod_fastcgi does the same, so it must be safe. -+ */ -+ /* skip the first, the global context */ -+ for (i = 1; i < srv->config_context->used; i++) { -+ data_config *dc = (data_config *)srv->config_context->data[i]; -+ s = p->config_storage[i]; -+ -+ /* condition didn't match */ -+ if (!config_check_cond(srv, con, dc)) continue; -+ -+ /* merge config */ -+ for (j = 0; j < dc->value->used; j++) { -+ data_unset *du = dc->value->data[j]; -+ -+ if (buffer_is_equal_string(du->key, CONST_STR_LEN("extforward.forwarder"))) { -+ PATCH(forwarder); -+ } -+ } -+ } -+ -+ return 0; -+} -+#undef PATCH -+ -+ -+static void put_string_into_array_len(array *ary, const char *str, int len) -+{ -+ data_string *tempdata; -+ if (len == 0) -+ return; -+ tempdata = data_string_init(); -+ buffer_copy_string_len(tempdata->value,str,len); -+ array_insert_unique(ary,(data_unset *)tempdata); -+} -+/* -+ extract a forward array from the environment -+*/ -+static array *extract_forward_array(buffer *pbuffer) -+{ -+ array *result = array_init(); -+ if (pbuffer->used > 0) { -+ char *base, *curr; -+ /* state variable, 0 means not in string, 1 means in string */ -+ int in_str = 0; -+ for (base = pbuffer->ptr, curr = pbuffer->ptr; *curr; curr++) -+ { -+ if (in_str) { -+ if ( (*curr > '9' || *curr < '0') && *curr != '.' && *curr != ':' ) { -+ /* found an separator , insert value into result array */ -+ put_string_into_array_len(result, base, curr-base); -+ /* change state to not in string */ -+ in_str = 0; -+ } -+ } else { -+ if (*curr >= '0' && *curr <= '9') -+ { -+ /* found leading char of an IP address, move base pointer and change state */ -+ base = curr; -+ in_str = 1; -+ } -+ } -+ } -+ /* if breaking out while in str, we got to the end of string, so add it */ -+ if (in_str) -+ { -+ put_string_into_array_len(result, base, curr-base); -+ } -+ } -+ return result; -+} -+ -+#define IP_TRUSTED 1 -+#define IP_UNTRUSTED 0 -+/* -+ check whether ip is trusted, return 1 for trusted , 0 for untrusted -+*/ -+static int is_proxy_trusted(const char *ipstr, plugin_data *p) -+{ -+ data_string* allds = (data_string *) array_get_element(p->conf.forwarder,"all"); -+ if (allds) { -+ if (strcasecmp(allds->value->ptr,"trust") == 0) -+ return IP_TRUSTED; -+ else -+ return IP_UNTRUSTED; -+ } -+ return (data_string *)array_get_element(p->conf.forwarder,ipstr) ? IP_TRUSTED : IP_UNTRUSTED ; -+} -+ -+struct addrinfo *ipstr_to_sockaddr(const char *host) -+{ -+ struct addrinfo hints, *res0; -+ int result; -+ memset(&hints, 0, sizeof(hints)); -+ hints.ai_flags = AI_NUMERICHOST | AI_NUMERICSERV; -+ -+ result = getaddrinfo(host, NULL, &hints, &res0); -+ if ( result != 0 ) -+ { -+ fprintf(stderr,"could not resolve hostname %s because %s\n", host,gai_strerror(result)); -+ if (result == EAI_SYSTEM) -+ perror("The system error is "); -+ return NULL; -+ } -+ else -+ if (res0==0) -+ fprintf(stderr, "Problem in resolving hostname %s: succeeded, but no information returned\n", host); -+ -+ return res0; -+} -+ -+ -+static void clean_cond_cache(server *srv, connection *con) -+{ -+ size_t i; -+ -+ for (i = 0; i < srv->config_context->used; i++) { -+ data_config *dc = (data_config *)srv->config_context->data[i]; -+ -+ if (dc->comp == COMP_HTTP_REMOTEIP) -+ { -+ con->cond_cache[i].result = COND_RESULT_UNSET; -+ con->cond_cache[i].patterncount = 0; -+ } -+ } -+} -+ -+URIHANDLER_FUNC(mod_extforward_uri_handler) { -+ plugin_data *p = p_d; -+ data_string *forwarded = NULL; -+#ifdef HAVE_IPV6 -+ char b2[INET6_ADDRSTRLEN + 1]; -+#endif -+ const char *s; -+ UNUSED(srv); -+ mod_extforward_patch_connection(srv, con, p); -+ -+/* log_error_write(srv, __FILE__, __LINE__,"s","mod_extforward_uri_handler called\n"); */ -+ -+ /* if the remote ip itself is not trusted , then do nothing */ -+#ifdef HAVE_IPV6 -+ s = inet_ntop(con->dst_addr.plain.sa_family, -+ con->dst_addr.plain.sa_family == AF_INET6 ? -+ &(con->dst_addr.ipv6.sin6_addr) : -+ &(con->dst_addr.ipv4.sin_addr), -+ b2, -+ (sizeof b2) - 1); -+#else -+ s = inet_ntoa(con->dst_addr.ipv4.sin_addr); -+#endif -+ if (IP_UNTRUSTED == is_proxy_trusted (s, p) ) -+ return HANDLER_GO_ON; -+ -+ /* log_error_write(srv, __FILE__, __LINE__,"s","remote address is trusted proxy, go on\n");*/ -+ if (con->request.headers && -+ ((forwarded = (data_string *) array_get_element(con->request.headers,"X-Forwarded-For")) || -+ (forwarded = (data_string *) array_get_element(con->request.headers, "Forwarded-For")))) -+ { -+ /* log_error_write(srv, __FILE__, __LINE__,"s","found forwarded header\n");*/ -+ /* found forwarded for header */ -+ int i; -+ array *forward_array = extract_forward_array(forwarded->value); -+ char *real_remote_addr = NULL; -+#ifdef HAVE_IPV6 -+ struct addrinfo *addrlist = NULL; -+#endif -+ /* Testing shows that multiple headers and multiple values in one header -+ come in _reverse_ order. So the first one we get is the last one in the request. */ -+ for (i = forward_array->used - 1; i >= 0; i--) -+ { -+ data_string *ds = (data_string *) forward_array->data[i]; -+ if (ds) { -+/* log_error_write(srv, __FILE__, __LINE__,"ss","forward",ds->value->ptr); */ -+ real_remote_addr = ds->value->ptr; -+ break; -+ /* LEM: What the hell is this about? -+ We test whether the forwarded for IP is trusted? -+ This looks like an ugly hack to handle multiple Forwarded-For's -+ and avoid those set to our proxies, or something like that. -+ My testing shows that reverse proxies add a new X-Forwarded-For header, -+ and we should thus take the last one, which is the first one we see. -+ -+ The net result of the old code is that we use the first untrusted IP, -+ or if all are trusted, the last trusted IP. -+ That's crazy. So I've disabled this. -+ */ -+ /* check whether it is trusted */ -+/* if (IP_UNTRUSTED == is_proxy_trusted(ds->value->ptr,p) ) */ -+/* break; */ -+/* log_error_write(srv, __FILE__, __LINE__,"ss",ds->value->ptr," is trusted."); */ -+ -+ } -+ else { -+ /* bug ? bailing out here */ -+ break; -+ } -+ } -+ if (real_remote_addr != NULL) /* parsed */ -+ { -+ sock_addr s; -+ struct addrinfo *addrs_left; -+/* log_error_write(srv, __FILE__, __LINE__,"ss","use forward",real_remote_addr); */ -+#ifdef HAVE_IPV6 -+ addrlist = ipstr_to_sockaddr(real_remote_addr); -+ s.plain.sa_family = AF_UNSPEC; -+ for (addrs_left = addrlist; addrs_left != NULL; -+ addrs_left = addrs_left -> ai_next) -+ { -+ s.plain.sa_family = addrs_left->ai_family; -+ if ( s.plain.sa_family == AF_INET ) -+ { -+ s.ipv4.sin_addr = ((struct sockaddr_in*)addrs_left->ai_addr)->sin_addr; -+ break; -+ } -+ else if ( s.plain.sa_family == AF_INET6 ) -+ { -+ s.ipv6.sin6_addr = ((struct sockaddr_in6*)addrs_left->ai_addr)->sin6_addr; -+ break; -+ } -+ } -+#else -+ s.ipv4.sin_addr.s_addr = inet_addr(real_remote_addr); -+ s.plain.sa_family = (s.ipv4.sin_addr.s_addr == 0xFFFFFFFF) ? AF_UNSPEC : AF_INET; -+#endif -+ if (s.plain.sa_family != AF_UNSPEC) -+ { -+ /* we found the remote address, modify current connection and save the old address */ -+ if (con->plugin_ctx[p->id]) { -+ log_error_write(srv, __FILE__, __LINE__,"patching an already patched connection!"); -+ handler_ctx_free(con->plugin_ctx[p->id]); -+ con->plugin_ctx[p->id] = NULL; -+ } -+ /* save old address */ -+ con->plugin_ctx[p->id] = handler_ctx_init(con->dst_addr, con->dst_addr_buf); -+ /* patch connection address */ -+ con->dst_addr = s; -+ con->dst_addr_buf = buffer_init(); -+ buffer_copy_string(con->dst_addr_buf, real_remote_addr); -+/* log_error_write(srv, __FILE__, __LINE__,"ss","Set dst_addr_buf to ", real_remote_addr); */ -+ /* Now, clean the conf_cond cache, because we may have changed the results of tests */ -+ clean_cond_cache(srv, con); -+ } -+#ifdef HAVE_IPV6 -+ if (addrlist != NULL ) freeaddrinfo(addrlist); -+#endif -+ } -+ array_free(forward_array); -+ } -+ -+ /* not found */ -+ return HANDLER_GO_ON; -+} -+ -+CONNECTION_FUNC(mod_extforward_restore) { -+ plugin_data *p = p_d; -+ UNUSED(srv); -+ -+ /* LEM: This seems completely unuseful, as we are not using -+ p->conf in this function. Furthermore, it brings a -+ segfault if one of the conditional configuration -+ blocks is "SERVER['socket'] == foo", because the -+ socket is not known yet in the srv/con structure. -+ */ -+ /* mod_extforward_patch_connection(srv, con, p); */ -+ -+ /* restore this connection's remote ip */ -+ if (con->plugin_ctx[p->id]) { -+ handler_ctx *hctx = con->plugin_ctx[p->id]; -+ con->dst_addr = hctx->saved_remote_addr; -+ buffer_free(con->dst_addr_buf); -+ con->dst_addr_buf = hctx->saved_remote_addr_buf; -+/* log_error_write(srv, __FILE__, __LINE__,"s","LEM: Reset dst_addr_buf"); */ -+ handler_ctx_free(hctx); -+ con->plugin_ctx[p->id] = NULL; -+ /* Now, clean the conf_cond cache, because we may have changed the results of tests */ -+ clean_cond_cache(srv, con); -+ } -+ return HANDLER_GO_ON; -+} -+ -+ -+/* this function is called at dlopen() time and inits the callbacks */ -+ -+int mod_extforward_plugin_init(plugin *p) { -+ p->version = LIGHTTPD_VERSION_ID; -+ p->name = buffer_init_string("extforward"); -+ -+ p->init = mod_extforward_init; -+ p->handle_uri_raw = mod_extforward_uri_handler; -+ p->handle_request_done = mod_extforward_restore; -+ p->connection_reset = mod_extforward_restore; -+ p->set_defaults = mod_extforward_set_defaults; -+ p->cleanup = mod_extforward_free; -+ -+ p->data = NULL; -+ -+ return 0; -+} -+ Index: lighttpd.info =================================================================== RCS file: /cvsroot/fink/dists/10.4/unstable/main/finkinfo/web/lighttpd.info,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- lighttpd.info 17 Apr 2007 14:42:13 -0000 1.1 +++ lighttpd.info 28 Jun 2007 20:15:36 -0000 1.2 @@ -1,5 +1,5 @@ Package: lighttpd -Version: 1.4.13 +Version: 1.4.15 Revision: 1 DocFiles: AUTHORS COPYING ChangeLog INSTALL NEWS README Description: Lightning fast web server @@ -7,23 +7,23 @@ Maintainer: Alexey Zakhlestin <ind...@gm...> HomePage: http://lighttpd.net/ -BuildDepends: fink (>= 0.24.12), mysql15-dev, pcre, pkgconfig, system-openssl-dev, openldap23-dev, cyrus-sasl2-dev, bzip2-dev, gdbm3, lua51-dev, libxml2, libiconv-dev, sqlite3-dev, geoip-dev, automake1.9, autoconf, libtool14 +BuildDepends: fink (>= 0.24.12), mysql15-dev, pcre, pkgconfig, system-openssl-dev, openldap23-dev, cyrus-sasl2-dev, bzip2-dev, gdbm3, lua51-dev, libxml2, libiconv-dev, sqlite3-dev, geoip-dev, automake1.9, autoconf, libtool14, libmemcache Depends: daemonic, pcre-shlibs Provides: httpd Recommends: lighttpd-access, lighttpd-accesslog Source: http://www.lighttpd.net/download/lighttpd-%v.tar.gz -Source-MD5: d775d6478391b95d841a1018c8db0b95 +Source-MD5: d2ceaaf242b2b3593ff4d8222d543649 Source2: http://trac.lighttpd.net/trac/attachment/wiki/Docs/ModGeoip/mod_geoip.c?format=raw Source2-MD5: 41f3f2dccb0ba01de097322ba68b5422 PatchFile: %n.patch -PatchFile-MD5: 4c7fc4815c59ce63e8fd0a2d5033f5bb +PatchFile-MD5: 7d0c45bc76fcab624a85307d8dbfa1a3 PatchScript: << patch -p1 < %{PatchFile} aclocal-1.9 - automake-1.9 - autoconf --verbose + automake-1.9 -a + autoconf mv ../mod_geoip.c?format=raw src/mod_geoip.c << @@ -31,7 +31,7 @@ NoSetLIBS: true NoSetLDFLAGS: true SetLDFLAGS: -L%p/lib/system-openssl/lib -L%p/lib -ConfigureParams: --libdir='${prefix}/lib/%n' --with-openssl=%p/lib/system-openssl --with-ldap --with-mysql=%p/bin/mysql_config --with-bzip2 --with-gdbm --with-attr --disable-dependency-tracking --with-pcre --with-webdav-props --without-webdav-locks --with-lua +ConfigureParams: --libdir='${prefix}/lib/%n' --with-openssl=%p/lib/system-openssl --with-ldap --with-mysql=%p/bin/mysql_config --with-bzip2 --with-gdbm --with-attr --disable-dependency-tracking --with-pcre --with-webdav-props --without-webdav-locks --with-lua --with-memcache CompileScript: << ./configure --enable-maintainer-mode %c make @@ -112,7 +112,7 @@ SplitOff: << Package: lighttpd-access - Depends: %N + Depends: %N (=%v-%r) Description: mod_access for lighttpd Files: << lib/%N/mod_access.so @@ -124,7 +124,7 @@ SplitOff2: << Package: lighttpd-accesslog - Depends: %N + Depends: %N (=%v-%r) Description: mod_accesslog for lighttpd Files: << lib/%N/mod_accesslog.so @@ -136,7 +136,7 @@ SplitOff3: << Package: lighttpd-alias - Depends: %N + Depends: %N (=%v-%r) Description: mod_alias for lighttpd Files: << lib/%N/mod_alias.so @@ -148,7 +148,7 @@ SplitOff4: << Package: lighttpd-auth - Depends: %N, openldap23-shlibs + Depends: %N (=%v-%r), openldap23-shlibs Description: mod_auth for lighttpd Files: << lib/%N/mod_auth.so @@ -160,7 +160,7 @@ SplitOff5: << Package: lighttpd-cgi - Depends: %N + Depends: %N (=%v-%r) Description: mod_cgi for lighttpd Files: << lib/%N/mod_cgi.so @@ -172,7 +172,7 @@ SplitOff6: << Package: lighttpd-cml - Depends: %N, lua51-shlibs + Depends: %N (=%v-%r), lua51-shlibs, libmemcache-shlibs Description: mod_cml (Cache Meta Language) for lighttpd Files: << lib/%N/mod_cml.so @@ -184,7 +184,7 @@ SplitOff7: << Package: lighttpd-compress - Depends: %N, bzip2-shlibs + Depends: %N (=%v-%r), bzip2-shlibs Description: mod_compress for lighttpd Files: << lib/%N/mod_compress.so @@ -196,7 +196,7 @@ SplitOff8: << Package: lighttpd-evhost - Depends: %N + Depends: %N (=%v-%r) Description: mod_evhost (Enchanced Virtual Host support) for lighttpd Files: << lib/%N/mod_evhost.so @@ -208,7 +208,7 @@ SplitOff9: << Package: lighttpd-expire - Depends: %N + Depends: %N (=%v-%r) Description: mod_expire for lighttpd Files: << lib/%N/mod_expire.so @@ -220,7 +220,7 @@ SplitOff10: << Package: lighttpd-fastcgi - Depends: %N + Depends: %N (=%v-%r) Description: mod_fastcgi for lighttpd Files: << bin/spawn-fcgi @@ -236,7 +236,7 @@ SplitOff11: << Package: lighttpd-proxy - Depends: %N + Depends: %N (=%v-%r) Description: mod_proxy for lighttpd Files: << lib/%N/mod_proxy.so @@ -248,7 +248,7 @@ SplitOff12: << Package: lighttpd-redirect - Depends: %N + Depends: %N (=%v-%r) Description: mod_redirect for lighttpd Files: << lib/%N/mod_redirect.so @@ -260,7 +260,7 @@ SplitOff13: << Package: lighttpd-rewrite - Depends: %N + Depends: %N (=%v-%r) Description: mod_rewrite for lighttpd Files: << lib/%N/mod_rewrite.so @@ -272,7 +272,7 @@ SplitOff14: << Package: lighttpd-rrdtool - Depends: %N, rrdtool + Depends: %N (=%v-%r), rrdtool Description: mod_rrdtool (logging into Round Robin Database) for lighttpd Files: << lib/%N/mod_rrdtool.so @@ -285,7 +285,7 @@ SplitOff15: << Package: lighttpd-secdownload - Depends: %N + Depends: %N (=%v-%r) Description: mod_secdownload (Secure Download) for lighttpd Files: << lib/%N/mod_secdownload.so @@ -297,7 +297,7 @@ SplitOff16: << Package: lighttpd-setenv - Depends: %N + Depends: %N (=%v-%r) Description: mod_setenv for lighttpd Files: << lib/%N/mod_setenv.so @@ -309,7 +309,7 @@ SplitOff17: << Package: lighttpd-simple-vhost - Depends: %N + Depends: %N (=%v-%r) Description: mod_simple_vhost for lighttpd Files: << lib/%N/mod_simple_vhost.so @@ -321,7 +321,7 @@ SplitOff18: << Package: lighttpd-ssi - Depends: %N + Depends: %N (=%v-%r) Description: mod_ssi for lighttpd Files: << lib/%N/mod_ssi.so @@ -333,7 +333,7 @@ SplitOff19: << Package: lighttpd-status - Depends: %N + Depends: %N (=%v-%r) Description: mod_status for lighttpd Files: << lib/%N/mod_status.so @@ -345,7 +345,7 @@ SplitOff20: << Package: lighttpd-trigger-b4dl - Depends: %N, gdbm3-shlibs + Depends: %N (=%v-%r), gdbm3-shlibs, libmemcache-shlibs Description: mod_trigger_b4_dl (trigger before download) for lighttpd Files: << lib/%N/mod_trigger_b4_dl.so @@ -357,7 +357,7 @@ SplitOff21: << Package: lighttpd-userdir - Depends: %N + Depends: %N (=%v-%r) Description: mod_userdir for lighttpd Files: << lib/%N/mod_userdir.so @@ -369,7 +369,7 @@ SplitOff22: << Package: lighttpd-usertrack - Depends: %N + Depends: %N (=%v-%r) Description: mod_usertrack (Cookies) for lighttpd Files: << lib/%N/mod_usertrack.so @@ -380,7 +380,7 @@ SplitOff23: << Package: lighttpd-evasive - Depends: %N + Depends: %N (=%v-%r) Description: mod_evasive (limit of connections per ip) for lighttpd Files: << lib/%N/mod_evasive.so @@ -391,7 +391,7 @@ SplitOff24: << Package: lighttpd-flv-streaming - Depends: %N + Depends: %N (=%v-%r) Description: mod_flv_streaming (Flash Video) for lighttpd Files: << lib/%N/mod_flv_streaming.so @@ -402,7 +402,7 @@ SplitOff25: << Package: lighttpd-magnet - Depends: %N, lua51-shlibs + Depends: %N (=%v-%r), lua51-shlibs Description: mod_magnet (control the request handling) for lighttpd Files: << lib/%N/mod_magnet.so @@ -414,7 +414,7 @@ SplitOff26: << Package: lighttpd-mysql-vhost - Depends: %N, mysql15-shlibs + Depends: %N (=%v-%r), mysql15-shlibs Description: mod_mysql_vhost for lighttpd Files: << lib/%N/mod_mysql_vhost.so @@ -426,7 +426,7 @@ SplitOff27: << Package: lighttpd-scgi - Depends: %N + Depends: %N (=%v-%r) Description: mod_scgi for lighttpd Files: << lib/%N/mod_scgi.so @@ -438,7 +438,7 @@ SplitOff28: << Package: lighttpd-webdav - Depends: %N, libxml2-shlibs, sqlite3-shlibs + Depends: %N (=%v-%r), libxml2-shlibs, sqlite3-shlibs Description: mod_webdav for lighttpd Files: << lib/%N/mod_webdav.so @@ -450,7 +450,7 @@ SplitOff29: << Package: lighttpd-geoip - Depends: %N, geoip, geoip-shlibs + Depends: %N (=%v-%r), geoip, geoip-shlibs Description: mod_geoip for lighttpd [*UNOFFICIAL*] Files: << lib/%N/mod_geoip.so @@ -461,7 +461,7 @@ SplitOff30: << Package: lighttpd-extforward - Depends: %N + Depends: %N (=%v-%r) Description: mod_extforward (get real ip from X-Forwarded-For) for lighttpd [*UNOFFICIAL*] Files: << lib/%N/mod_extforward.so |