summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Apache.dsw27
-rw-r--r--Makefile.win81
-rw-r--r--modules/filters/mod_ratelimit.dsp115
-rw-r--r--os/win32/BaseAddr.ref1
4 files changed, 219 insertions, 5 deletions
diff --git a/Apache.dsw b/Apache.dsw
index 5ac9152bf5..819d188d9f 100644
--- a/Apache.dsw
+++ b/Apache.dsw
@@ -74,9 +74,6 @@ Package=<4>
Begin Project Dependency
Project_Dep_Name mod_lbmethod_rr
End Project Dependency
- Begin Project Dependency
- Project_Dep_Name mod_lua
- End Project Dependency
}}}
###############################################################################
@@ -264,6 +261,9 @@ Package=<4>
Project_Dep_Name mod_proxy_http
End Project Dependency
Begin Project Dependency
+ Project_Dep_Name mod_ratelimit
+ End Project Dependency
+ Begin Project Dependency
Project_Dep_Name mod_request
End Project Dependency
Begin Project Dependency
@@ -2324,6 +2324,27 @@ Package=<4>
###############################################################################
+Project: "mod_ratelimit"=.\modules\filters\mod_ratelimit.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+ Begin Project Dependency
+ Project_Dep_Name libapr
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libaprutil
+ End Project Dependency
+ Begin Project Dependency
+ Project_Dep_Name libhttpd
+ End Project Dependency
+}}}
+
+###############################################################################
+
Project: "mod_request"=.\modules\filters\mod_request.dsp - Package Owner=<4>
Package=<5>
diff --git a/Makefile.win b/Makefile.win
index 37a088ac1f..ca17979512 100644
--- a/Makefile.win
+++ b/Makefile.win
@@ -74,9 +74,11 @@ CTARGET=/build
!ERROR Need srclib\pcre
!ENDIF
-# Note; _tryssl: is only used by the msvc developer studio environment to 'fix up'
-# the build, since conditional dependencies aren't supported.
+
+# Note; _tryfoo: blocks are used only by the msvc developer studio environment
+# to 'fix up' the build, since conditional dependencies aren't supported.
#
+
!IF EXIST("srclib\openssl")
!IF "$(LONG)" == "Debug" && EXIST("srclib\openssl\out32dll.dbg\openssl.exe")
SSLBIN=out32dll.dbg
@@ -113,6 +115,7 @@ _tryssl:
@echo Available from http://www.openssl.org/
!ENDIF
+
!IF EXIST("srclib\zlib")
_tryzlib:
@@ -139,6 +142,40 @@ _tryzlib:
!ENDIF
+_tryssl:
+ @echo -----
+ @echo mod_ssl and ab/ssl will not build unless openssl is installed
+ @echo in srclib\openssl. They must be precompiled using the
+ @echo ms/ntdll.mak file, see srclib\openssl\INSTALL.W32. The most
+ @echo recent version confirmed to build with mod_ssl and ab is 0.9.8d.
+ @echo Available from http://www.openssl.org/
+!ENDIF
+
+
+!IF EXIST("srclib\lua")
+
+_trylua:
+!IF $(USEMAK) == 1
+ cd modules\lua
+ $(MAKE) $(MAKEOPT) -f mod_lua.mak CFG="mod_lua - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ cd ..\..
+!ELSEIF $(USESLN) == 1
+ devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_lua
+!ELSE
+ @msdev Apache.dsw /USEENV /MAKE \
+ "mod_lua - Win32 $(LONG)" /NORECURSE $(CTARGET)
+!ENDIF
+
+!ELSE
+# NOT EXIST("srclib\lua")
+
+_trylua:
+ @echo -----
+ @echo mod_lua will not build unless lua is installed in srclib\lua.
+ @echo Version 5.1 includes an etc\luavs.bat that will satisfy this requirement.
+
+!ENDIF
+
_trydbd:
!IF $(USEMAK) == 1
@@ -352,6 +389,7 @@ _build:
$(MAKE) $(MAKEOPT) -f mod_ext_filter.mak CFG="mod_ext_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_filter.mak CFG="mod_filter - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_include.mak CFG="mod_include - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ $(MAKE) $(MAKEOPT) -f mod_ratelimit.mak CFG="mod_ratelimit - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_request.mak CFG="mod_request - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_sed.mak CFG="mod_sed - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_substitute.mak CFG="mod_substitute - Win32 $(LONG)" RECURSE=0 $(CTARGET)
@@ -371,6 +409,11 @@ _build:
$(MAKE) $(MAKEOPT) -f mod_log_forensic.mak CFG="mod_log_forensic - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_logio.mak CFG="mod_logio - Win32 $(LONG)" RECURSE=0 $(CTARGET)
cd ..\..
+!IF EXIST("srclib\lua")
+ cd modules\lua
+ $(MAKE) $(MAKEOPT) -f mod_lua.mak CFG="mod_lua - Win32 $(LONG)" RECURSE=0 $(CTARGET)
+ cd ..\..
+!ENDIF
cd modules\mappers
$(MAKE) $(MAKEOPT) -f mod_actions.mak CFG="mod_actions - Win32 $(LONG)" RECURSE=0 $(CTARGET)
$(MAKE) $(MAKEOPT) -f mod_alias.mak CFG="mod_alias - Win32 $(LONG)" RECURSE=0 $(CTARGET)
@@ -462,6 +505,9 @@ _build:
!IF EXIST("srclib\zlib")
devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_deflate
!ENDIF
+!IF EXIST("srclib\lua")
+ devenv Apache.sln /useenv $(CTARGET) $(LONG) /project mod_lua
+!ENDIF
!ELSE
@@ -495,6 +541,10 @@ _build:
@msdev Apache.dsw /USEENV /MAKE \
"mod_deflate - Win32 $(LONG)" /NORECURSE $(CTARGET)
!ENDIF
+!IF EXIST("srclib\lua")
+ @msdev Apache.dsw /USEENV /MAKE \
+ "mod_lua - Win32 $(LONG)" /NORECURSE $(CTARGET)
+!ENDIF
!ENDIF
@@ -562,6 +612,7 @@ _copybin:
copy modules\filters\$(LONG)\mod_ext_filter.$(src_so) "$(inst_so)" <.y
copy modules\filters\$(LONG)\mod_filter.$(src_so) "$(inst_so)" <.y
copy modules\filters\$(LONG)\mod_include.$(src_so) "$(inst_so)" <.y
+ copy modules\filters\$(LONG)\mod_ratelimit.$(src_so) "$(inst_so)" <.y
copy modules\filters\$(LONG)\mod_request.$(src_so) "$(inst_so)" <.y
copy modules\filters\$(LONG)\mod_sed.$(src_so) "$(inst_so)" <.y
copy modules\filters\$(LONG)\mod_substitute.$(src_so) "$(inst_so)" <.y
@@ -575,6 +626,12 @@ _copybin:
copy modules\loggers\$(LONG)\mod_log_config.$(src_so) "$(inst_so)" <.y
copy modules\loggers\$(LONG)\mod_log_forensic.$(src_so) "$(inst_so)" <.y
copy modules\loggers\$(LONG)\mod_logio.$(src_so) "$(inst_so)" <.y
+!IF EXIST("srclib\lua")
+ copy modules\lua\$(LONG)\mod_lua.$(src_so) "$(inst_so)" <.y
+!IF EXIST("srclib\lua\src\lua51.$(src_dll)")
+ copy srclib\lua\src\lua51.$(src_dll) "$(inst_dll)" <.y
+!ENDIF
+!ENDIF
copy modules\mappers\$(LONG)\mod_actions.$(src_so) "$(inst_so)" <.y
copy modules\mappers\$(LONG)\mod_alias.$(src_so) "$(inst_so)" <.y
copy modules\mappers\$(LONG)\mod_dir.$(src_so) "$(inst_so)" <.y
@@ -784,6 +841,26 @@ BEGIN {
}
<<
!ENDIF
+!IF EXIST("srclib\lua")
+ type << >> "$(INSTDIR)\NOTICE.txt"
+
+This binary distribution of mod_lua.so includes the Lua language,
+developed at Lua.org, a laboratory of the Department of Computer Science
+of PUC-Rio (the Pontifical Catholic University of Rio de Janeiro in Brazil).
+For complete information, visit Lua's web site at http://www.lua.org/
+<<
+ -awk -f <<script.awk < "srclib\lua\COPYRIGHT" >> "$(INSTDIR)\LICENSE.txt"
+BEGIN {
+ print "";
+ print "For the mod_lua language component:";
+ print "";
+ while ( getline > 0 && $$0 !~ /end of COPYRIGHT/ ) {
+ print $$0;
+ }
+ exit 0;
+}
+<<
+!ENDIF
$(MAKE) $(MAKEOPT) -f Makefile.win SHORT=$(SHORT) LONG=$(LONG) \
_copybin src_exe=exe src_dll=dll src_so=so \
inst_exe="$(INSTDIR)\bin" \
diff --git a/modules/filters/mod_ratelimit.dsp b/modules/filters/mod_ratelimit.dsp
new file mode 100644
index 0000000000..99bb5950a1
--- /dev/null
+++ b/modules/filters/mod_ratelimit.dsp
@@ -0,0 +1,115 @@
+# Microsoft Developer Studio Project File - Name="mod_ratelimit" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
+
+CFG=mod_ratelimit - Win32 Release
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE
+!MESSAGE NMAKE /f "mod_ratelimit.mak".
+!MESSAGE
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE
+!MESSAGE NMAKE /f "mod_ratelimit.mak" CFG="mod_ratelimit - Win32 Release"
+!MESSAGE
+!MESSAGE Possible choices for configuration are:
+!MESSAGE
+!MESSAGE "mod_ratelimit - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE "mod_ratelimit - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
+!MESSAGE
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+MTL=midl.exe
+RSC=rc.exe
+
+!IF "$(CFG)" == "mod_ratelimit - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "Release"
+# PROP Intermediate_Dir "Release"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /MD /W3 /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /MD /W3 /O2 /Oy- /Zi /I "../../include" /I "../../srclib/apr/include" /I "../../srclib/apr-util/include" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "AP_RL_DECLARE_EXPORT" /Fd"Release\mod_ratelimit_src" /FD /c
+# ADD BASE MTL /nologo /D "NDEBUG" /win32
+# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /fo"Release/mod_ratelimit.res" /i "../../include" /i "../../srclib/apr/include" /d "NDEBUG" /d BIN_NAME="mod_ratelimit.so" /d LONG_NAME="ratelimit_module for Apache"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib /nologo /subsystem:windows /dll /out:".\Release\mod_ratelimit.so" /base:@..\..\os\win32\BaseAddr.ref,mod_ratelimit.so
+# ADD LINK32 kernel32.lib /nologo /subsystem:windows /dll /incremental:no /debug /out:".\Release\mod_ratelimit.so" /base:@..\..\os\win32\BaseAddr.ref,mod_ratelimit.so /opt:ref
+# Begin Special Build Tool
+TargetPath=.\Release\mod_ratelimit.so
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+PostBuild_Cmds=if exist $(TargetPath).manifest mt.exe -manifest $(TargetPath).manifest -outputresource:$(TargetPath);2
+# End Special Build Tool
+
+!ELSEIF "$(CFG)" == "mod_ratelimit - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "Debug"
+# PROP Intermediate_Dir "Debug"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+# ADD BASE CPP /nologo /MDd /W3 /EHsc /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FD /c
+# ADD CPP /nologo /MDd /W3 /EHsc /Zi /Od /I "../../include" /I "../../srclib/apr/include" /I "../../srclib/apr-util/include" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "AP_RL_DECLARE_EXPORT" /Fd"Debug\mod_ratelimit_src" /FD /c
+# ADD BASE MTL /nologo /D "_DEBUG" /win32
+# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /fo"Debug/mod_ratelimit.res" /i "../../include" /i "../../srclib/apr/include" /d "_DEBUG" /d BIN_NAME="mod_ratelimit.so" /d LONG_NAME="ratelimit_module for Apache"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib /nologo /subsystem:windows /dll /incremental:no /debug /out:".\Debug\mod_ratelimit.so" /base:@..\..\os\win32\BaseAddr.ref,mod_ratelimit.so
+# ADD LINK32 kernel32.lib /nologo /subsystem:windows /dll /incremental:no /debug /out:".\Debug\mod_ratelimit.so" /base:@..\..\os\win32\BaseAddr.ref,mod_ratelimit.so
+# Begin Special Build Tool
+TargetPath=.\Debug\mod_ratelimit.so
+SOURCE="$(InputPath)"
+PostBuild_Desc=Embed .manifest
+PostBuild_Cmds=if exist $(TargetPath).manifest mt.exe -manifest $(TargetPath).manifest -outputresource:$(TargetPath);2
+# End Special Build Tool
+
+!ENDIF
+
+# Begin Target
+
+# Name "mod_ratelimit - Win32 Release"
+# Name "mod_ratelimit - Win32 Debug"
+# Begin Source File
+
+SOURCE=.\mod_ratelimit.c
+# End Source File
+# Begin Source File
+
+SOURCE=.\mod_ratelimit.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\build\win32\httpd.rc
+# End Source File
+# End Target
+# End Project
diff --git a/os/win32/BaseAddr.ref b/os/win32/BaseAddr.ref
index 63ca278352..9b20756acd 100644
--- a/os/win32/BaseAddr.ref
+++ b/os/win32/BaseAddr.ref
@@ -97,3 +97,4 @@ mod_socache_memcache.so 0x6F890000 0x00010000
mod_socache_shmcb.so 0x6F880000 0x00010000
mod_sed.so 0x6F870000 0x00010000
mod_lua.so 0x6F860000 0x00010000
+mod_ratelimit.so 0x6F850000 0x00010000