httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rodent of Unusual Size <Ken.C...@Golux.Com>
Subject Re: SERVER_VERSION with OS
Date Tue, 21 Apr 1998 20:13:05 GMT
This gets a bit complicated because the basic server version
string *should* be
 
 SERVER_BASEVERSION ["(platform)"] [SERVER_SUBVERSION]

In other words, the platform information should (IMHO, which
isn't worth very much these days) come before anything set
by -DSERVER_SUBVERSION.

So, how about something like this:

 1. Add a core directive "ShowPlatform boolean" (let's not
    quibble about the name yet) which controls whether the
    "(UNIX)"-like stuff gets added to the server version.
 2. Move ap_get_server_version() and the static server_version
    to http_main.
 3. Add two functions to http_main (so they can use pconf):
    ap_add_version_component(), which adds the string to the
    end, and ap_prepend_version_component(), which inserts a
    string at the beginning.
 4. After pconf is initialised but before the config files are
    processed or the init() sequence is run, set server_version to
    SERVER_SUBVERSION if defined, otherwise to "".
 5. Go through the init() sequence, which will allow modules to
    add their components using ap_add_version_component().
 6. During directive processing, the ShowPlatform command handler
    can conditionally add the platform information with
    ap_prepend_version_component().
 7. After configuration is complete, call
    ap_prepend_version_component(SERVER_BASEVERSION).

The net result should look like

 SERVER_BASEVERSION (UNIX) SERVER_SUBVERSION module-contributions

which I think is what we want.  And it will be handled correctly
on restarts.

I wrote this off the top of my head; completely untested.  Go
ahead, poke holes..

#ken	P-)}

Ken Coar                    <http://Web.Golux.Com/coar/>
Apache Group member         <http://www.apache.org/>
"Apache Server for Dummies" <http://Web.Golux.Com/coar/ASFD/>

Mime
View raw message