You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Paul Sutton <pa...@awe.com> on 1998/02/09 13:04:03 UTC

[PATCH] merge mod_so and mod_dll

Ok, now we have two modules which do exactly the same thing: mod_so and
mod_dll. They even support exactly the same directives. As we add new
dynamic load directives (e.g. support for LoadModule without a structure
name, or LoadModulesFromDirectory) we'll need to duplicate the code in
both places (or put it in the core, ugh). This isn't good. 

So this patch updates mod_so.c to support building on NT. It provides a
abstraction of the dynamic loading functions (os_dl_load(), etc) which is
mapped onto the correct OS-specific function (dlload or
LoadLibraryEx(...)). This would really go in os/*/os.h or includes/conf.h,
but I've put it here to make this patch easier to understand.

Merging mod_dll and mod_so also enables unloading/reloading of modules
during a restart, like the Unix version. 

To make this work, you also have to change ApacheCore.{dsp,mak} to remove
mod_dll.c and add mod_so.c, and edit os/win32/modules.c to change mod_dll
into mod_so. These are obvious trivial changes, so I haven't cluttered
this patch with them (but if you want a patch incorporating them, let me
know). 

Given how similar mod_dll and mod_so are, and the fat that we'll want to
expand our handling of dynamic libraries, I think we should definitey
merge these two modules. 

//pcs