summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYann Ylavic <ylavic@apache.org>2018-06-06 21:04:21 +0000
committerYann Ylavic <ylavic@apache.org>2018-06-06 21:04:21 +0000
commit7711d39400b6b2a8d210fb85b32bad59cf2a9d49 (patch)
treec0b9c528296ded037ca665ea4611d5224c464002
parent07ab2af39d3a670e92f5e1e59749b8ecd51f9e48 (diff)
downloadhttpd-7711d39400b6b2a8d210fb85b32bad59cf2a9d49.tar.gz
Avoid cyclic dependency by moving ap_set_etag() from module http to core.
This function, along with ap_make_etag(), is used by the default_handler in core.c, and in several modules other than builtin mod_http, breaking static linking and httpdunit tests build. The move is done by "svn move modules/http/http_etag.c server/util_etag.c". MMN major bumped, not backportable (as is) to 2.4.x. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1833083 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--CMakeLists.txt2
-rw-r--r--Makefile.in2
-rw-r--r--NWGNUmakefile2
-rw-r--r--include/ap_mmn.h3
-rw-r--r--libhttpd.dsp8
-rw-r--r--modules/http/config.m42
-rw-r--r--server/Makefile.in2
-rw-r--r--server/util_etag.c (renamed from modules/http/http_etag.c)0
8 files changed, 11 insertions, 10 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 34db575bb9..429ce54c71 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -651,7 +651,6 @@ SET(LIBHTTPD_SOURCES
modules/http/byterange_filter.c
modules/http/chunk_filter.c
modules/http/http_core.c
- modules/http/http_etag.c
modules/http/http_filters.c
modules/http/http_protocol.c
modules/http/http_request.c
@@ -680,6 +679,7 @@ SET(LIBHTTPD_SOURCES
server/util_cfgtree.c
server/util_cookies.c
server/util_debug.c
+ server/util_etag.c
server/util_expr_eval.c
server/util_expr_parse.c
server/util_fcgi.c
diff --git a/Makefile.in b/Makefile.in
index 43d1879a9f..802aaa6390 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -7,9 +7,9 @@ PROGRAM_SOURCES = modules.c
PROGRAM_LDADD = buildmark.o $(HTTPD_LDFLAGS) $(PROGRAM_DEPENDENCIES) $(HTTPD_LIBS) $(EXTRA_LIBS) $(AP_LIBS) $(LIBS)
PROGRAM_PRELINK = $(COMPILE) -c $(top_srcdir)/server/buildmark.c
PROGRAM_DEPENDENCIES = \
- server/libmain.la \
$(BUILTIN_LIBS) \
$(MPM_LIB) \
+ server/libmain.la \
os/$(OS_DIR)/libos.la
sbin_PROGRAMS = $(PROGRAM_NAME)
diff --git a/NWGNUmakefile b/NWGNUmakefile
index e11219570d..3cea406800 100644
--- a/NWGNUmakefile
+++ b/NWGNUmakefile
@@ -242,7 +242,6 @@ FILES_nlm_objs = \
$(OBJDIR)/http_request.o \
$(OBJDIR)/byterange_filter.o \
$(OBJDIR)/chunk_filter.o \
- $(OBJDIR)/http_etag.o \
$(OBJDIR)/http_filters.o \
$(OBJDIR)/listen.o \
$(OBJDIR)/log.o \
@@ -273,6 +272,7 @@ FILES_nlm_objs = \
$(OBJDIR)/util_charset.o \
$(OBJDIR)/util_cookies.o \
$(OBJDIR)/util_debug.o \
+ $(OBJDIR)/util_etag.o \
$(OBJDIR)/util_expr_eval.o \
$(OBJDIR)/util_expr_parse.o \
$(OBJDIR)/util_expr_scan.o \
diff --git a/include/ap_mmn.h b/include/ap_mmn.h
index 69746cf256..1db1a6de6e 100644
--- a/include/ap_mmn.h
+++ b/include/ap_mmn.h
@@ -575,12 +575,13 @@
* 20180417.2 (2.5.1-dev) Add AP_GETLINE_NOSPC_EOL flag to http_protocol.h
* 20180417.3 (2.5.1-dev) Add ap_fgetline() and AP_GETLINE_NONBLOCK flag
* 20180422.1 (2.5.1-dev) Axe ap_rgetline_core()
+ * 20180606.1 (2.5.1-dev) Move ap_{make,set}_etag() from module http to core
*/
#define MODULE_MAGIC_COOKIE 0x41503235UL /* "AP25" */
#ifndef MODULE_MAGIC_NUMBER_MAJOR
-#define MODULE_MAGIC_NUMBER_MAJOR 20180422
+#define MODULE_MAGIC_NUMBER_MAJOR 20180606
#endif
#define MODULE_MAGIC_NUMBER_MINOR 1 /* 0...n */
diff --git a/libhttpd.dsp b/libhttpd.dsp
index 929aa0749b..d3720c5a3b 100644
--- a/libhttpd.dsp
+++ b/libhttpd.dsp
@@ -453,10 +453,6 @@ SOURCE=.\modules\http\http_core.c
# End Source File
# Begin Source File
-SOURCE=.\modules\http\http_etag.c
-# End Source File
-# Begin Source File
-
SOURCE=.\modules\http\http_filters.c
# End Source File
# Begin Source File
@@ -549,6 +545,10 @@ SOURCE=.\include\util_ebcdic.h
# End Source File
# Begin Source File
+SOURCE=.\server\util_etag.c
+# End Source File
+# Begin Source File
+
SOURCE=.\server\util_expr_private.h
# End Source File
# Begin Source File
diff --git a/modules/http/config.m4 b/modules/http/config.m4
index 64960075f6..7444e2ceff 100644
--- a/modules/http/config.m4
+++ b/modules/http/config.m4
@@ -2,7 +2,7 @@ dnl modules enabled in this directory by default
APACHE_MODPATH_INIT(http)
-http_objects="http_core.lo http_protocol.lo http_request.lo http_filters.lo chunk_filter.lo byterange_filter.lo http_etag.lo"
+http_objects="http_core.lo http_protocol.lo http_request.lo http_filters.lo chunk_filter.lo byterange_filter.lo"
dnl mod_http should only be built as a static module for now.
dnl this will hopefully be "fixed" at some point in the future by
diff --git a/server/Makefile.in b/server/Makefile.in
index 71aea62056..e77efbacb9 100644
--- a/server/Makefile.in
+++ b/server/Makefile.in
@@ -7,7 +7,7 @@ SUBDIRS = mpm
LTLIBRARY_NAME = libmain.la
LTLIBRARY_SOURCES = \
- config.c log.c main.c vhost.c util.c util_fcgi.c \
+ config.c log.c main.c vhost.c util.c util_etag.c util_fcgi.c \
util_script.c util_md5.c util_cfgtree.c util_ebcdic.c util_time.c \
connection.c listen.c util_mutex.c \
mpm_common.c mpm_unix.c mpm_fdqueue.c \
diff --git a/modules/http/http_etag.c b/server/util_etag.c
index 7f3c6d9359..7f3c6d9359 100644
--- a/modules/http/http_etag.c
+++ b/server/util_etag.c