*) Core: reject NULLs in request line or request headers.
PR 43039 [Nick Kew]
+ *) Core: (re)-introduce -T commandline option to suppress documentroot
+ check at startup.
+ PR 41887 [Jan van den Berg <janvdberg gmail.com>]
+
Changes with Apache 2.3.4
*) Replace AcceptMutex, LockFile, RewriteLock, SSLMutex, SSLStaplingMutex,
<dd>Show the settings as parsed from the config file (currently only
shows the virtualhost settings).</dd>
+<dt><code>-T</code></dt>
+
+<dd>Skip document root check at startup/restart.</dd>
+
<dt><code>-t</code></dt>
<dd>Run syntax tests for configuration files only. The program
* in apr_getopt() format. Use this for default'ing args that the MPM
* can safely ignore and pass on from its rewrite_args() handler.
*/
-#define AP_SERVER_BASEARGS "C:c:D:d:E:e:f:vVlLtSMh?X"
+#define AP_SERVER_BASEARGS "C:c:D:d:E:e:f:vVlLtTSMh?X"
#ifdef __cplusplus
extern "C" {
/** An array of all -D defines on the command line. This allows people to
* effect the server based on command line options */
AP_DECLARE_DATA extern apr_array_header_t *ap_server_config_defines;
+/** Available integer for using the -T switch */
+AP_DECLARE_DATA extern int ap_document_root_check;
/**
* An optional function to send signal to server on presence of '-k'
return err;
}
+ /* When ap_document_root_check is false; skip all the stuff below */
+ if (!ap_document_root_check) {
+ conf->ap_document_root = arg;
+ return NULL;
+ }
+
/* Make it absolute, relative to ServerRoot */
arg = ap_server_root_relative(cmd->pool, arg);
if (arg == NULL) {
return "DocumentRoot must be a directory";
}
- /* TODO: ap_configtestonly && ap_docrootcheck && */
+ /* TODO: ap_configtestonly */
if (apr_filepath_merge((char**)&conf->ap_document_root, NULL, arg,
APR_FILEPATH_TRUENAME, cmd->pool) != APR_SUCCESS
|| !ap_is_directory(cmd->pool, arg)) {
pad);
#endif
ap_log_error(APLOG_MARK, APLOG_STARTUP, 0, NULL,
- " %s [-v] [-V] [-h] [-l] [-L] [-t] [-S]", pad);
+ " %s [-v] [-V] [-h] [-l] [-L] [-t] [-T] [-S]", pad);
ap_log_error(APLOG_MARK, APLOG_STARTUP, 0, NULL,
"Options:");
" -M : a synonym for -t -D DUMP_MODULES");
ap_log_error(APLOG_MARK, APLOG_STARTUP, 0, NULL,
" -t : run syntax check for config files");
+ ap_log_error(APLOG_MARK, APLOG_STARTUP, 0, NULL,
+ " -T : start without DocumentRoot(s) check");
destroy_and_exit_process(process, 1);
}
+/* Set ap_document_root_check to default value: true */
+AP_DECLARE_DATA int ap_document_root_check = 1;
+
int main(int argc, const char * const argv[])
{
char c;
configtestonly = 1;
break;
+ case 'T':
+ ap_document_root_check = 0;
+ break;
+
case 'S':
configtestonly = 1;
new = (char **)apr_array_push(ap_server_config_defines);