>wrowe       02/05/18 10:22:24
>
>   Modified:    server   core.c
>   Log:
>     Resolve the EXEC_ON_READ bit for ServerRoot and other modules that test
>     the directive context.  Should eliminate the segfault.

Ok, segfault  is gone.  So is some validation that ServerRoot occured in a 
global
context.  Actually, that means that LoadModule and others are not tested to be
in the global context either.

We don't set up the vhost server till afterwards.  Try setting ServerRoot 
within
a vhost and it can't pick that up, can't warn us of a bad config.

I'm just getting my head wrapped around cfg parsing, so anyone with a whole
lot more background here might be able to provide pointers.  Notice that we
can't defer ServerRoot processing unless we defer LoadModule processing.

If we REALLY get a better handle on this, I see no reason to maintain the
test-load then re-load configuration logic.  If we can pre-process what we must
with EXEC_ON_READ, then open logs and the like, we should be able to
directly proceed to run_mpm, without dumping it all and reloading.

On Win32, we load-unload-reload the parent, then load-unload-reload the child
config.  Losing both redundant unload-load sequences will be a huge win at
startup.  [Caviat; we will always have unload-load server restart sequences for
the parent process.  But never, on win32 in the child process, a restart churns
up a whole new child process, so the child will really win.]

Bill

Reply via email to