Loading CHANGES +35 −3 Original line number Diff line number Diff line Loading @@ -4,6 +4,34 @@ Changes with Apache 2.4.24 *) mod_ssl: Add support for OpenSSL 1.1.0. [Rainer Jung] *) mod_dir: Responses that go through "FallbackResource" might appear to hang due to unterminated chunked encoding. PR58292. [Eric Covener] *) mod_dav: Fix a potential cause of unbounded memory usage or incorrect behavior in a routine that sends <DAV:response>'s to the output filters. [Evgeny Kotkov] *) mod_http2: new directive 'H2PushResource' to enable early pushes before processing of the main request starts. Resources are announced to the client in Link headers on a 103 early hint response. All responses with status code <400 are inspected for Link header and trigger pushes accordingly. 304 still does prevent pushes. 'H2PushResource' can mark resources as 'critical' which gives them higher priority than the main resource. This leads to preferred scheduling for processing and, when content is available, will send it first. 'critical' is also recognized on Link headers. [Stefan Eissing] *) mod_proxy_http2: uris in Link headers are now mapped back to a suitable local url when available. Relative uris with an absolute path are mapped as well. This makes reverse proxy mapping available for resources announced in this header. With 103 interim responses being forwarded to the main client connection, this effectively allows early pushing of resources by a reverse proxied backend server. [Stefan Eissing] *) mod_proxy_http2: adding support for newly proposed 103 status code. [Stefan Eissing] *) mpm_unix: Apache fails to start if previously crashed then restarted with the same PID (e.g. in container). PR 60261. [Val <valentin.bremond gmail.com>, Yann Ylavic] Loading Loading @@ -84,9 +112,10 @@ Changes with Apache 2.4.24 *) mod_proxy_fcgi: avoid loops when ProxyErrorOverride is enabled and the error documents are proxied. PR 55415. [Luca Toscano] *) mod_proxy_fcgi: read the whole FCGI response even when the content has not been modified (HTTP 304) to avoid subsequent bougus reads and confusing error messages logged. [Luca Toscano] *) mod_proxy_fcgi: read the whole FCGI response even when the content has not been modified (HTTP 304) or in case of a precondition failure (HTTP 412) to avoid subsequent bogus reads and confusing error messages logged. [Luca Toscano] *) mod_http2: h2 status resource follows latest draft, see http://www.ietf.org/id/draft-benfield-http2-debug-state-01.txt Loading Loading @@ -148,6 +177,9 @@ Changes with Apache 2.4.22 Changes with Apache 2.4.21 *) ab: Use caseless matching for HTTP tokens (e.g. content-length). PR 59111. [Yann Ylavic] *) mod_http2: more rigid error handling in DATA frame assembly, leading to deterministic connection errors if assembly fails. [Stefan Eissing, Pal Nilsen <https://github.com/maedox>] Loading CMakeLists.txt +16 −15 Original line number Diff line number Diff line Loading @@ -125,7 +125,8 @@ GET_MOD_ENABLE_RANK("ENABLE_MODULES setting" ${ENABLE_MODULES} enable_modules_ra # not defined to either 1 or 0) MACRO(CHECK_APR_FEATURE which_define) CHECK_SYMBOL_EXISTS(${which_define} "${APR_INCLUDE_DIR}/apr.h;${APR_INCLUDE_DIR}/apu.h" tmp_${which_define}) SET(CMAKE_REQUIRED_INCLUDES "${APR_INCLUDE_DIR}") CHECK_SYMBOL_EXISTS(${which_define} "apr.h;apu.h" tmp_${which_define}) IF(${tmp_${which_define}}) CHECK_C_SOURCE_COMPILES("#include \"${APR_INCLUDE_DIR}/apr.h\" #include \"${APR_INCLUDE_DIR}/apu.h\" Loading Loading @@ -724,12 +725,12 @@ FOREACH (mod ${MODULE_PATHS}) SET(all_mod_sources ${tmp_mod_main_source} ${${mod_extra_sources}}) ADD_LIBRARY(${mod_name} SHARED ${all_mod_sources} build/win32/httpd.rc) SET(install_modules ${install_modules} ${mod_name}) SET(install_modules_pdb ${install_modules_pdb} "${PROJECT_BINARY_DIR}/${mod_name}.pdb") SET(install_modules_pdb ${install_modules_pdb} "$<TARGET_PDB_FILE:${mod_name}>") IF("${${mod_name}_install_lib}") SET(installed_mod_libs_exps ${installed_mod_libs_exps} "${PROJECT_BINARY_DIR}/${mod_name}.lib" "${PROJECT_BINARY_DIR}/${mod_name}.exp" "$<TARGET_LINKER_FILE:${mod_name}>" "$<TARGET_LINKER_FILE_DIR:${mod_name}>/${mod_name}.exp" ) ENDIF() SET(mod_extra_libs "${mod_name}_extra_libs") Loading Loading @@ -764,7 +765,7 @@ SET_TARGET_PROPERTIES(libhttpd PROPERTIES LINK_FLAGS /base:@${PROJECT_BINARY_DIR}/BaseAddr.ref,libhttpd.dll ) SET(install_targets ${install_targets} libhttpd) SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/libhttpd.pdb) SET(install_bin_pdb ${install_bin_pdb} $<TARGET_PDB_FILE:libhttpd>) TARGET_LINK_LIBRARIES(libhttpd ${EXTRA_LIBS} ${APR_LIBRARIES} ${PCRE_LIBRARIES} ${HTTPD_SYSTEM_LIBS}) DEFINE_WITH_BLANKS(define_long_name "LONG_NAME" "Apache HTTP Server Core") SET_TARGET_PROPERTIES(libhttpd PROPERTIES COMPILE_FLAGS "-DAP_DECLARE_EXPORT ${define_long_name} -DBIN_NAME=libhttpd.dll ${EXTRA_COMPILE_FLAGS}") Loading @@ -773,7 +774,7 @@ ADD_DEPENDENCIES(libhttpd test_char_header) ########### HTTPD EXECUTABLES ########## ADD_EXECUTABLE(httpd server/main.c build/win32/httpd.rc) SET(install_targets ${install_targets} httpd) SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/httpd.pdb) SET(install_bin_pdb ${install_bin_pdb} $<TARGET_PDB_FILE:httpd>) DEFINE_WITH_BLANKS(define_long_name "LONG_NAME" "Apache HTTP Server") SET_TARGET_PROPERTIES(httpd PROPERTIES COMPILE_FLAGS "-DAPP_FILE ${define_long_name} -DBIN_NAME=httpd.exe -DICON_FILE=${CMAKE_SOURCE_DIR}/build/win32/apache.ico ${EXTRA_COMPILE_FLAGS}") TARGET_LINK_LIBRARIES(httpd libhttpd ${EXTRA_LIBS}) Loading @@ -796,7 +797,7 @@ FOREACH(pgm ${standard_support}) SET(extra_sources ${pgm}_extra_sources) ADD_EXECUTABLE(${pgm} support/${pgm}.c ${${extra_sources}} build/win32/httpd.rc) SET(install_targets ${install_targets} ${pgm}) SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/${pgm}.pdb) SET(install_bin_pdb ${install_bin_pdb} $<TARGET_PDB_FILE:${pgm}>) DEFINE_WITH_BLANKS(define_long_name "LONG_NAME" "Apache HTTP Server ${pgm} program") SET_TARGET_PROPERTIES(${pgm} PROPERTIES COMPILE_FLAGS "-DAPP_FILE ${define_long_name} -DBIN_NAME=${pgm}.exe ${EXTRA_COMPILE_FLAGS}") TARGET_LINK_LIBRARIES(${pgm} ${EXTRA_LIBS} ${APR_LIBRARIES}) Loading @@ -805,7 +806,7 @@ ENDFOREACH() IF(OPENSSL_FOUND) ADD_EXECUTABLE(abs support/ab.c build/win32/httpd.rc) SET(install_targets ${install_targets} abs) SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/abs.pdb) SET(install_bin_pdb ${install_bin_pdb} $<TARGET_PDB_FILE:abs>) SET_TARGET_PROPERTIES(abs PROPERTIES COMPILE_DEFINITIONS HAVE_OPENSSL) SET(tmp_includes ${HTTPD_INCLUDE_DIRECTORIES} ${OPENSSL_INCLUDE_DIR}) SET_TARGET_PROPERTIES(abs PROPERTIES INCLUDE_DIRECTORIES "${tmp_includes}") Loading @@ -818,7 +819,7 @@ GET_PROPERTY(tmp_includes TARGET ab PROPERTY INCLUDE_DIRECTORIES) # getting duplicate manifest error with ApacheMonitor # ADD_EXECUTABLE(ApacheMonitor support/win32/ApacheMonitor.c support/win32/ApacheMonitor.rc) # SET(install_targets ${install_targets} ApacheMonitor) # SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/ApacheMonitor.pdb) # SET(install_bin_pdb ${install_bin_pdb} $<TARGET_PDB_FILE:ApacheMonitor>) # SET_TARGET_PROPERTIES(ApacheMonitor PROPERTIES WIN32_EXECUTABLE TRUE) # SET_TARGET_PROPERTIES(ApacheMonitor PROPERTIES COMPILE_FLAGS "-DAPP_FILE -DLONG_NAME=ApacheMonitor -DBIN_NAME=ApacheMonitor.exe ${EXTRA_COMPILE_FLAGS}") # TARGET_LINK_LIBRARIES(ApacheMonitor ${EXTRA_LIBS} ${HTTPD_SYSTEM_LIBS} comctl32 wtsapi32) Loading Loading @@ -875,7 +876,7 @@ INSTALL(DIRECTORY include/ DESTINATION include ) INSTALL(FILES ${other_installed_h} DESTINATION include) INSTALL(FILES ${installed_mod_libs_exps} DESTINATION lib) INSTALL(FILES "${CMAKE_BINARY_DIR}/libhttpd.exp" DESTINATION LIB) INSTALL(FILES "$<TARGET_LINKER_FILE_DIR:libhttpd>/libhttpd.exp" DESTINATION LIB) IF(INSTALL_MANUAL) # Silly? This takes a while, and a dev doesn't need it. INSTALL(DIRECTORY docs/manual/ DESTINATION manual) Loading @@ -884,22 +885,22 @@ ENDIF() INSTALL(DIRECTORY DESTINATION logs) INSTALL(DIRECTORY DESTINATION cgi-bin) INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl ${CMAKE_CURRENT_SOURCE_DIR}/docs/error ${CMAKE_INSTALL_PREFIX}/error ifdestmissing)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl \"${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl\" \"${CMAKE_CURRENT_SOURCE_DIR}/docs/error\" \"${CMAKE_INSTALL_PREFIX}/error\" ifdestmissing)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl ${CMAKE_CURRENT_SOURCE_DIR}/docs/docroot ${CMAKE_INSTALL_PREFIX}/htdocs ifdestmissing)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl \"${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl\" \"${CMAKE_CURRENT_SOURCE_DIR}/docs/docroot\" \"${CMAKE_INSTALL_PREFIX}/htdocs\" ifdestmissing)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl ${CMAKE_CURRENT_SOURCE_DIR}/docs/icons ${CMAKE_INSTALL_PREFIX}/icons ifdestmissing)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl \"${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl\" \"${CMAKE_CURRENT_SOURCE_DIR}/docs/icons\" \"${CMAKE_INSTALL_PREFIX}/icons\" ifdestmissing)") # Copy generated .conf files from the build directory to the install, # without overwriting stuff already there. INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl ${CMAKE_BINARY_DIR}/conf ${CMAKE_INSTALL_PREFIX}/conf)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl \"${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl\" \"${CMAKE_BINARY_DIR}/conf\" \"${CMAKE_INSTALL_PREFIX}/conf\")") # But conf/original is supposed to be overwritten. # Note: FILE(TO_NATIVE_PATH ...) leaves the backslashes unescaped, which # generates warnings. Just do it manually since this build only supports # Windows anyway. STRING(REPLACE "/" "\\\\" native_src ${CMAKE_BINARY_DIR}/conf/original) STRING(REPLACE "/" "\\\\" native_dest ${CMAKE_INSTALL_PREFIX}/conf/original) INSTALL(CODE "EXECUTE_PROCESS(COMMAND xcopy ${native_src} ${native_dest} /Q /S /Y)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND xcopy \"${native_src}\" \"${native_dest}\" /Q /S /Y)") STRING(TOUPPER "${CMAKE_BUILD_TYPE}" buildtype) MESSAGE(STATUS "") Loading STATUS +52 −21 Original line number Diff line number Diff line Loading @@ -117,11 +117,10 @@ RELEASE SHOWSTOPPERS: PATCHES ACCEPTED TO BACKPORT FROM TRUNK: [ start all new proposals below, under PATCHES PROPOSED. ] *) core: avoid adding multiple subrequest filters when there are nested subrequests. PR58292 trunk patch: http://svn.apache.org/r1698334 2.4.x patch: trunk works modulo CHANGES +1: covener, jim, jchampion *) Remove unnecessary apr_table_do() function casts. trunk patch: http://svn.apache.org/r1769192 2.4.x patch: trunk works +1: jchampion, rpluem, sf PATCHES PROPOSED TO BACKPORT FROM TRUNK: Loading Loading @@ -157,13 +156,6 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: headers (GMT now, GMT now Europe/Paris, GMT tomorrow, GMT yesterday, PST now). +1: elukey *) CMake: fix various issues for Windows/Visual Studio build environments. PR59685. trunk patch: http://svn.apache.org/r1752331 http://svn.apache.org/r1752332 http://svn.apache.org/r1752333 +1: jchampion, jim (by inspection) *) mod_ssl: Fix quick renegotiation (OptRenegotiaton) with no intermediate in the client certificate chain. PR 55786. trunk patch: http://svn.apache.org/r1756542 Loading Loading @@ -224,15 +216,54 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: 2.4.x patch: trunk works +1: jim *) Remove unnecessary apr_table_do() function casts. trunk patch: http://svn.apache.org/r1769192 2.4.x patch: trunk works +1: jchampion, rpluem *) ssl: clear the error queue before SSL_read/write/accept(). PR60223 trunk patch: http://svn.apache.org/r1769332 2.4.x patch: https://home.apache.org/~jchampion/patches/2.4.x-ssl-error-queue.patch +1: jchampion, rpluem *) Propose default strict RFC7230 behavior, and HttpProtocolOptions directive to relax or further constrain some behaviors. trunk patches: too numerous to list, see svn log --stop-on-copy http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x-merge-http-strict/ 2.4.x patch: see svn diff -r1767912:HEAD http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x-merge-http-strict/ +1: wrowe *) ap_reclaim_child_processes(): Implement terminate immediately trunk patches: https://svn.apache.org/r1757061 https://svn.apache.org/r1770750 2.4.x patch: https://people.apache.org/~sf/PR53555_1_ap_reclaim_child_processes.diff +1: sf *) Improve mod_status view of async connections trunk patches: https://svn.apache.org/r1738628 https://svn.apache.org/r1757009 https://svn.apache.org/r1756848 https://svn.apache.org/r1757029 2.4.x patch: https://people.apache.org/~sf/PR53555_2_mod_status.diff +1: sf *) mpm_event: Free resources earlier during shutdown trunk patches: https://svn.apache.org/r1705922 https://svn.apache.org/r1706523 https://svn.apache.org/r1738464 https://svn.apache.org/r1738466 https://svn.apache.org/r1738486 2.4.x patch: https://people.apache.org/~sf/PR53555_3_free_early.diff +1: sf *) mpm_event: Use all free scoreboard slots up to ServerLimit, but don't re-use scoreboard slots of still running, gracefully finishing processes. PR: 53555 trunk patches: https://svn.apache.org/r1738631 https://svn.apache.org/r1738633 https://svn.apache.org/r1738635 https://svn.apache.org/r1757030 https://svn.apache.org/r1757031 https://svn.apache.org/r1770752 https://svn.apache.org/r1770768 2.4.x patch: https://people.apache.org/~sf/PR53555_4_use_all_slots.diff docs: https://svn.apache.org/r1770771 (in addition to the above) +1: sf PATCHES/ISSUES THAT ARE BEING WORKED Loading docs/manual/mod/directives.html.en +1 −0 Original line number Diff line number Diff line Loading @@ -295,6 +295,7 @@ <li><a href="mod_http2.html#h2push">H2Push</a></li> <li><a href="mod_http2.html#h2pushdiarysize">H2PushDiarySize</a></li> <li><a href="mod_http2.html#h2pushpriority">H2PushPriority</a></li> <li><a href="mod_http2.html#h2pushresource">H2PushResource</a></li> <li><a href="mod_http2.html#h2serializeheaders">H2SerializeHeaders</a></li> <li><a href="mod_http2.html#h2sessionextrafiles">H2SessionExtraFiles</a></li> <li><a href="mod_http2.html#h2streammaxmemsize">H2StreamMaxMemSize</a></li> Loading docs/manual/mod/directives.html.fr +1 −0 Original line number Diff line number Diff line Loading @@ -295,6 +295,7 @@ <li><a href="mod_http2.html#h2push">H2Push</a></li> <li><a href="mod_http2.html#h2pushdiarysize">H2PushDiarySize</a></li> <li><a href="mod_http2.html#h2pushpriority">H2PushPriority</a></li> <li><a href="mod_http2.html#h2pushresource">H2PushResource</a></li> <li><a href="mod_http2.html#h2serializeheaders">H2SerializeHeaders</a></li> <li><a href="mod_http2.html#h2sessionextrafiles">H2SessionExtraFiles</a></li> <li><a href="mod_http2.html#h2streammaxmemsize">H2StreamMaxMemSize</a></li> Loading Loading
CHANGES +35 −3 Original line number Diff line number Diff line Loading @@ -4,6 +4,34 @@ Changes with Apache 2.4.24 *) mod_ssl: Add support for OpenSSL 1.1.0. [Rainer Jung] *) mod_dir: Responses that go through "FallbackResource" might appear to hang due to unterminated chunked encoding. PR58292. [Eric Covener] *) mod_dav: Fix a potential cause of unbounded memory usage or incorrect behavior in a routine that sends <DAV:response>'s to the output filters. [Evgeny Kotkov] *) mod_http2: new directive 'H2PushResource' to enable early pushes before processing of the main request starts. Resources are announced to the client in Link headers on a 103 early hint response. All responses with status code <400 are inspected for Link header and trigger pushes accordingly. 304 still does prevent pushes. 'H2PushResource' can mark resources as 'critical' which gives them higher priority than the main resource. This leads to preferred scheduling for processing and, when content is available, will send it first. 'critical' is also recognized on Link headers. [Stefan Eissing] *) mod_proxy_http2: uris in Link headers are now mapped back to a suitable local url when available. Relative uris with an absolute path are mapped as well. This makes reverse proxy mapping available for resources announced in this header. With 103 interim responses being forwarded to the main client connection, this effectively allows early pushing of resources by a reverse proxied backend server. [Stefan Eissing] *) mod_proxy_http2: adding support for newly proposed 103 status code. [Stefan Eissing] *) mpm_unix: Apache fails to start if previously crashed then restarted with the same PID (e.g. in container). PR 60261. [Val <valentin.bremond gmail.com>, Yann Ylavic] Loading Loading @@ -84,9 +112,10 @@ Changes with Apache 2.4.24 *) mod_proxy_fcgi: avoid loops when ProxyErrorOverride is enabled and the error documents are proxied. PR 55415. [Luca Toscano] *) mod_proxy_fcgi: read the whole FCGI response even when the content has not been modified (HTTP 304) to avoid subsequent bougus reads and confusing error messages logged. [Luca Toscano] *) mod_proxy_fcgi: read the whole FCGI response even when the content has not been modified (HTTP 304) or in case of a precondition failure (HTTP 412) to avoid subsequent bogus reads and confusing error messages logged. [Luca Toscano] *) mod_http2: h2 status resource follows latest draft, see http://www.ietf.org/id/draft-benfield-http2-debug-state-01.txt Loading Loading @@ -148,6 +177,9 @@ Changes with Apache 2.4.22 Changes with Apache 2.4.21 *) ab: Use caseless matching for HTTP tokens (e.g. content-length). PR 59111. [Yann Ylavic] *) mod_http2: more rigid error handling in DATA frame assembly, leading to deterministic connection errors if assembly fails. [Stefan Eissing, Pal Nilsen <https://github.com/maedox>] Loading
CMakeLists.txt +16 −15 Original line number Diff line number Diff line Loading @@ -125,7 +125,8 @@ GET_MOD_ENABLE_RANK("ENABLE_MODULES setting" ${ENABLE_MODULES} enable_modules_ra # not defined to either 1 or 0) MACRO(CHECK_APR_FEATURE which_define) CHECK_SYMBOL_EXISTS(${which_define} "${APR_INCLUDE_DIR}/apr.h;${APR_INCLUDE_DIR}/apu.h" tmp_${which_define}) SET(CMAKE_REQUIRED_INCLUDES "${APR_INCLUDE_DIR}") CHECK_SYMBOL_EXISTS(${which_define} "apr.h;apu.h" tmp_${which_define}) IF(${tmp_${which_define}}) CHECK_C_SOURCE_COMPILES("#include \"${APR_INCLUDE_DIR}/apr.h\" #include \"${APR_INCLUDE_DIR}/apu.h\" Loading Loading @@ -724,12 +725,12 @@ FOREACH (mod ${MODULE_PATHS}) SET(all_mod_sources ${tmp_mod_main_source} ${${mod_extra_sources}}) ADD_LIBRARY(${mod_name} SHARED ${all_mod_sources} build/win32/httpd.rc) SET(install_modules ${install_modules} ${mod_name}) SET(install_modules_pdb ${install_modules_pdb} "${PROJECT_BINARY_DIR}/${mod_name}.pdb") SET(install_modules_pdb ${install_modules_pdb} "$<TARGET_PDB_FILE:${mod_name}>") IF("${${mod_name}_install_lib}") SET(installed_mod_libs_exps ${installed_mod_libs_exps} "${PROJECT_BINARY_DIR}/${mod_name}.lib" "${PROJECT_BINARY_DIR}/${mod_name}.exp" "$<TARGET_LINKER_FILE:${mod_name}>" "$<TARGET_LINKER_FILE_DIR:${mod_name}>/${mod_name}.exp" ) ENDIF() SET(mod_extra_libs "${mod_name}_extra_libs") Loading Loading @@ -764,7 +765,7 @@ SET_TARGET_PROPERTIES(libhttpd PROPERTIES LINK_FLAGS /base:@${PROJECT_BINARY_DIR}/BaseAddr.ref,libhttpd.dll ) SET(install_targets ${install_targets} libhttpd) SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/libhttpd.pdb) SET(install_bin_pdb ${install_bin_pdb} $<TARGET_PDB_FILE:libhttpd>) TARGET_LINK_LIBRARIES(libhttpd ${EXTRA_LIBS} ${APR_LIBRARIES} ${PCRE_LIBRARIES} ${HTTPD_SYSTEM_LIBS}) DEFINE_WITH_BLANKS(define_long_name "LONG_NAME" "Apache HTTP Server Core") SET_TARGET_PROPERTIES(libhttpd PROPERTIES COMPILE_FLAGS "-DAP_DECLARE_EXPORT ${define_long_name} -DBIN_NAME=libhttpd.dll ${EXTRA_COMPILE_FLAGS}") Loading @@ -773,7 +774,7 @@ ADD_DEPENDENCIES(libhttpd test_char_header) ########### HTTPD EXECUTABLES ########## ADD_EXECUTABLE(httpd server/main.c build/win32/httpd.rc) SET(install_targets ${install_targets} httpd) SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/httpd.pdb) SET(install_bin_pdb ${install_bin_pdb} $<TARGET_PDB_FILE:httpd>) DEFINE_WITH_BLANKS(define_long_name "LONG_NAME" "Apache HTTP Server") SET_TARGET_PROPERTIES(httpd PROPERTIES COMPILE_FLAGS "-DAPP_FILE ${define_long_name} -DBIN_NAME=httpd.exe -DICON_FILE=${CMAKE_SOURCE_DIR}/build/win32/apache.ico ${EXTRA_COMPILE_FLAGS}") TARGET_LINK_LIBRARIES(httpd libhttpd ${EXTRA_LIBS}) Loading @@ -796,7 +797,7 @@ FOREACH(pgm ${standard_support}) SET(extra_sources ${pgm}_extra_sources) ADD_EXECUTABLE(${pgm} support/${pgm}.c ${${extra_sources}} build/win32/httpd.rc) SET(install_targets ${install_targets} ${pgm}) SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/${pgm}.pdb) SET(install_bin_pdb ${install_bin_pdb} $<TARGET_PDB_FILE:${pgm}>) DEFINE_WITH_BLANKS(define_long_name "LONG_NAME" "Apache HTTP Server ${pgm} program") SET_TARGET_PROPERTIES(${pgm} PROPERTIES COMPILE_FLAGS "-DAPP_FILE ${define_long_name} -DBIN_NAME=${pgm}.exe ${EXTRA_COMPILE_FLAGS}") TARGET_LINK_LIBRARIES(${pgm} ${EXTRA_LIBS} ${APR_LIBRARIES}) Loading @@ -805,7 +806,7 @@ ENDFOREACH() IF(OPENSSL_FOUND) ADD_EXECUTABLE(abs support/ab.c build/win32/httpd.rc) SET(install_targets ${install_targets} abs) SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/abs.pdb) SET(install_bin_pdb ${install_bin_pdb} $<TARGET_PDB_FILE:abs>) SET_TARGET_PROPERTIES(abs PROPERTIES COMPILE_DEFINITIONS HAVE_OPENSSL) SET(tmp_includes ${HTTPD_INCLUDE_DIRECTORIES} ${OPENSSL_INCLUDE_DIR}) SET_TARGET_PROPERTIES(abs PROPERTIES INCLUDE_DIRECTORIES "${tmp_includes}") Loading @@ -818,7 +819,7 @@ GET_PROPERTY(tmp_includes TARGET ab PROPERTY INCLUDE_DIRECTORIES) # getting duplicate manifest error with ApacheMonitor # ADD_EXECUTABLE(ApacheMonitor support/win32/ApacheMonitor.c support/win32/ApacheMonitor.rc) # SET(install_targets ${install_targets} ApacheMonitor) # SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/ApacheMonitor.pdb) # SET(install_bin_pdb ${install_bin_pdb} $<TARGET_PDB_FILE:ApacheMonitor>) # SET_TARGET_PROPERTIES(ApacheMonitor PROPERTIES WIN32_EXECUTABLE TRUE) # SET_TARGET_PROPERTIES(ApacheMonitor PROPERTIES COMPILE_FLAGS "-DAPP_FILE -DLONG_NAME=ApacheMonitor -DBIN_NAME=ApacheMonitor.exe ${EXTRA_COMPILE_FLAGS}") # TARGET_LINK_LIBRARIES(ApacheMonitor ${EXTRA_LIBS} ${HTTPD_SYSTEM_LIBS} comctl32 wtsapi32) Loading Loading @@ -875,7 +876,7 @@ INSTALL(DIRECTORY include/ DESTINATION include ) INSTALL(FILES ${other_installed_h} DESTINATION include) INSTALL(FILES ${installed_mod_libs_exps} DESTINATION lib) INSTALL(FILES "${CMAKE_BINARY_DIR}/libhttpd.exp" DESTINATION LIB) INSTALL(FILES "$<TARGET_LINKER_FILE_DIR:libhttpd>/libhttpd.exp" DESTINATION LIB) IF(INSTALL_MANUAL) # Silly? This takes a while, and a dev doesn't need it. INSTALL(DIRECTORY docs/manual/ DESTINATION manual) Loading @@ -884,22 +885,22 @@ ENDIF() INSTALL(DIRECTORY DESTINATION logs) INSTALL(DIRECTORY DESTINATION cgi-bin) INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl ${CMAKE_CURRENT_SOURCE_DIR}/docs/error ${CMAKE_INSTALL_PREFIX}/error ifdestmissing)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl \"${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl\" \"${CMAKE_CURRENT_SOURCE_DIR}/docs/error\" \"${CMAKE_INSTALL_PREFIX}/error\" ifdestmissing)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl ${CMAKE_CURRENT_SOURCE_DIR}/docs/docroot ${CMAKE_INSTALL_PREFIX}/htdocs ifdestmissing)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl \"${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl\" \"${CMAKE_CURRENT_SOURCE_DIR}/docs/docroot\" \"${CMAKE_INSTALL_PREFIX}/htdocs\" ifdestmissing)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl ${CMAKE_CURRENT_SOURCE_DIR}/docs/icons ${CMAKE_INSTALL_PREFIX}/icons ifdestmissing)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl \"${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl\" \"${CMAKE_CURRENT_SOURCE_DIR}/docs/icons\" \"${CMAKE_INSTALL_PREFIX}/icons\" ifdestmissing)") # Copy generated .conf files from the build directory to the install, # without overwriting stuff already there. INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl ${CMAKE_BINARY_DIR}/conf ${CMAKE_INSTALL_PREFIX}/conf)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND perl \"${CMAKE_CURRENT_SOURCE_DIR}/build/cpR_noreplace.pl\" \"${CMAKE_BINARY_DIR}/conf\" \"${CMAKE_INSTALL_PREFIX}/conf\")") # But conf/original is supposed to be overwritten. # Note: FILE(TO_NATIVE_PATH ...) leaves the backslashes unescaped, which # generates warnings. Just do it manually since this build only supports # Windows anyway. STRING(REPLACE "/" "\\\\" native_src ${CMAKE_BINARY_DIR}/conf/original) STRING(REPLACE "/" "\\\\" native_dest ${CMAKE_INSTALL_PREFIX}/conf/original) INSTALL(CODE "EXECUTE_PROCESS(COMMAND xcopy ${native_src} ${native_dest} /Q /S /Y)") INSTALL(CODE "EXECUTE_PROCESS(COMMAND xcopy \"${native_src}\" \"${native_dest}\" /Q /S /Y)") STRING(TOUPPER "${CMAKE_BUILD_TYPE}" buildtype) MESSAGE(STATUS "") Loading
STATUS +52 −21 Original line number Diff line number Diff line Loading @@ -117,11 +117,10 @@ RELEASE SHOWSTOPPERS: PATCHES ACCEPTED TO BACKPORT FROM TRUNK: [ start all new proposals below, under PATCHES PROPOSED. ] *) core: avoid adding multiple subrequest filters when there are nested subrequests. PR58292 trunk patch: http://svn.apache.org/r1698334 2.4.x patch: trunk works modulo CHANGES +1: covener, jim, jchampion *) Remove unnecessary apr_table_do() function casts. trunk patch: http://svn.apache.org/r1769192 2.4.x patch: trunk works +1: jchampion, rpluem, sf PATCHES PROPOSED TO BACKPORT FROM TRUNK: Loading Loading @@ -157,13 +156,6 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: headers (GMT now, GMT now Europe/Paris, GMT tomorrow, GMT yesterday, PST now). +1: elukey *) CMake: fix various issues for Windows/Visual Studio build environments. PR59685. trunk patch: http://svn.apache.org/r1752331 http://svn.apache.org/r1752332 http://svn.apache.org/r1752333 +1: jchampion, jim (by inspection) *) mod_ssl: Fix quick renegotiation (OptRenegotiaton) with no intermediate in the client certificate chain. PR 55786. trunk patch: http://svn.apache.org/r1756542 Loading Loading @@ -224,15 +216,54 @@ PATCHES PROPOSED TO BACKPORT FROM TRUNK: 2.4.x patch: trunk works +1: jim *) Remove unnecessary apr_table_do() function casts. trunk patch: http://svn.apache.org/r1769192 2.4.x patch: trunk works +1: jchampion, rpluem *) ssl: clear the error queue before SSL_read/write/accept(). PR60223 trunk patch: http://svn.apache.org/r1769332 2.4.x patch: https://home.apache.org/~jchampion/patches/2.4.x-ssl-error-queue.patch +1: jchampion, rpluem *) Propose default strict RFC7230 behavior, and HttpProtocolOptions directive to relax or further constrain some behaviors. trunk patches: too numerous to list, see svn log --stop-on-copy http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x-merge-http-strict/ 2.4.x patch: see svn diff -r1767912:HEAD http://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x-merge-http-strict/ +1: wrowe *) ap_reclaim_child_processes(): Implement terminate immediately trunk patches: https://svn.apache.org/r1757061 https://svn.apache.org/r1770750 2.4.x patch: https://people.apache.org/~sf/PR53555_1_ap_reclaim_child_processes.diff +1: sf *) Improve mod_status view of async connections trunk patches: https://svn.apache.org/r1738628 https://svn.apache.org/r1757009 https://svn.apache.org/r1756848 https://svn.apache.org/r1757029 2.4.x patch: https://people.apache.org/~sf/PR53555_2_mod_status.diff +1: sf *) mpm_event: Free resources earlier during shutdown trunk patches: https://svn.apache.org/r1705922 https://svn.apache.org/r1706523 https://svn.apache.org/r1738464 https://svn.apache.org/r1738466 https://svn.apache.org/r1738486 2.4.x patch: https://people.apache.org/~sf/PR53555_3_free_early.diff +1: sf *) mpm_event: Use all free scoreboard slots up to ServerLimit, but don't re-use scoreboard slots of still running, gracefully finishing processes. PR: 53555 trunk patches: https://svn.apache.org/r1738631 https://svn.apache.org/r1738633 https://svn.apache.org/r1738635 https://svn.apache.org/r1757030 https://svn.apache.org/r1757031 https://svn.apache.org/r1770752 https://svn.apache.org/r1770768 2.4.x patch: https://people.apache.org/~sf/PR53555_4_use_all_slots.diff docs: https://svn.apache.org/r1770771 (in addition to the above) +1: sf PATCHES/ISSUES THAT ARE BEING WORKED Loading
docs/manual/mod/directives.html.en +1 −0 Original line number Diff line number Diff line Loading @@ -295,6 +295,7 @@ <li><a href="mod_http2.html#h2push">H2Push</a></li> <li><a href="mod_http2.html#h2pushdiarysize">H2PushDiarySize</a></li> <li><a href="mod_http2.html#h2pushpriority">H2PushPriority</a></li> <li><a href="mod_http2.html#h2pushresource">H2PushResource</a></li> <li><a href="mod_http2.html#h2serializeheaders">H2SerializeHeaders</a></li> <li><a href="mod_http2.html#h2sessionextrafiles">H2SessionExtraFiles</a></li> <li><a href="mod_http2.html#h2streammaxmemsize">H2StreamMaxMemSize</a></li> Loading
docs/manual/mod/directives.html.fr +1 −0 Original line number Diff line number Diff line Loading @@ -295,6 +295,7 @@ <li><a href="mod_http2.html#h2push">H2Push</a></li> <li><a href="mod_http2.html#h2pushdiarysize">H2PushDiarySize</a></li> <li><a href="mod_http2.html#h2pushpriority">H2PushPriority</a></li> <li><a href="mod_http2.html#h2pushresource">H2PushResource</a></li> <li><a href="mod_http2.html#h2serializeheaders">H2SerializeHeaders</a></li> <li><a href="mod_http2.html#h2sessionextrafiles">H2SessionExtraFiles</a></li> <li><a href="mod_http2.html#h2streammaxmemsize">H2StreamMaxMemSize</a></li> Loading