Add a unit test suite based on Check:
https://libcheck.github.io/check/
The suite depends on the build system to automatically generate the code
stubs that call every test case.
httpdunit is automatically enabled in the build if configure is able to
find Check via pkg-config. At the moment pkg-config is the only official
(non-deprecated) way to build and link against Check with an autoconf
system, since platforms may distribute Check as a static library.
Note that Check is an LGPL'd library, so we can't distribute test
objects and binaries. Building and running the suite remains optional
and is not required to run the server.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/httpdunit@1796202 13f79535-47bb-0310-9956-ffa450edef68
When using shared MPMs, `httpd -V` will perform a full configuration
check, which emits warnings when there is no defined ServerName.
Unfortunately the test suite does a -V check for every test section,
spamming the output with noise.
Work around this by just uncommenting the example ServerName in the test
config.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/trunk-test-integration@1782066 13f79535-47bb-0310-9956-ffa450edef68
When MPM DSOs are enabled, Apache::Test's invocation of `httpd -V` runs
a full configuration test. To pass, ensure that *all* instances of the
configured prefix path in the test configuration are pointing to a real
directory in check/.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/trunk-test-integration@1778026 13f79535-47bb-0310-9956-ffa450edef68
modules and MPMs during build.
Normal modules and MPMs follow different
rules in the config, e.g. we are only
allowed to have one active LoadModule
for an MPM in the config.
As a side effect, LoadModule for MPMs
will now come before LoadModule for
the normal modules.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1730079 13f79535-47bb-0310-9956-ffa450edef68
use IfModule for MPM to LoadModule mod_cgi for
prefork and mod_cgid for all other MPMs.
Previously when combined with --enable-load-all-modules
both modules were loaded and it was undefined
which one actually handled cgi requests.
Based on a patch by olli hauer <ohauer gmx.de>.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1652955 13f79535-47bb-0310-9956-ffa450edef68
several stages of initialization and connection handling. See
mod_ssl_openssl.h.
This is enough to allow implementation of Certificate Transparency
outside of mod_ssl.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1587607 13f79535-47bb-0310-9956-ffa450edef68
* Makefile.in: Link httpd using $(HTTPD_LIBS).
* configure.in: Add systemd to HTTPD_LIBS rather than LIBS. Add PCRE
libs to HTTPD_LIBS.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1528034 13f79535-47bb-0310-9956-ffa450edef68
weaker set of privileges than the full setuid/setgid root binary.
* configure.in: Add --enable-suexec-capabilites flag.
* Makefile.in: If configured, use setcap instead of chmod 7555 on
installed suexec binary.
* modules/arch/unix/mod_unixd.c (unixd_pre_config): Drop test for
setuid bit if capability bits are used.
* docs/manual/: Add docs.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1342065 13f79535-47bb-0310-9956-ffa450edef68
Libtool and BSD install support installing several files in one run.
Add support to install.sh and instdso.sh, too.
Replace for-loops in the Makefiles.
This reduces 'make install' time by approx. 50% because we save
lots of calls to the huge libtool shell script.
The AIX-specific magic in instdso.sh could use some testing.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1237447 13f79535-47bb-0310-9956-ffa450edef68
installing binaries. Previously all binaries were silently installed to
sbindir, whether they were system administration commands or not.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1220846 13f79535-47bb-0310-9956-ffa450edef68
or explicitly selected by a configure --enable-foo argument. The
LoadModule statements for modules enabled by --enable-mods-shared=most
and friends will be commented out.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1199027 13f79535-47bb-0310-9956-ffa450edef68
PROGRAM_LDADD.
Otherwise -lpcre comes before libmain which leads
to undefined recences during linking of httpd.
Followup to r1142739.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1142893 13f79535-47bb-0310-9956-ffa450edef68
The mod_so and mod_watchdog are truly not mappers/ at all. Very open
to better names than modules/core/ but these are clearly API's which
are to be consumed by the httpd core, or generically, any module.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@772848 13f79535-47bb-0310-9956-ffa450edef68
The current build of exports.c assumes that everything in include is part of the core, and so
putting the header there creates link errors.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@648254 13f79535-47bb-0310-9956-ffa450edef68