httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dean Gaudet <>
Subject Re: Modules in own address space.
Date Sun, 23 Nov 1997 19:32:44 GMT
You might want to look at the register_other_child API as a method of
maintaining the external program.  This is one of the applications I had
in mind when writing it.  The only example code for using it is in


On Sun, 23 Nov 1997, Ben Hyde wrote:

> I'm building a plugin to Apache, and I seem to be
> swallowing a bigger project than I expected.  I thought
> I'd share the pain a little.
> The current module API design is a hybrid of call backs and data
> structures.  This is nice, but it makes it hard to place
> the module in it's own address space.  In my case this is
> necessary.  I can't take the risk of letting a third party's
> code into my system, nor can I coerce Apache's architecture
> into that found inside of my system.
> Of course placing a module in it's own address space is
> generally desirable since the lifecyle of these satilite systems
> badly needs to be decoupled from that of Apache.  My main
> system stays up for weeks at a time, and the coupling
> I'm building to Apache stays up for about a day at a
> time, of course the Apache processes can have shorter lifecyles.
> In other senarios: authorization, cgi, etc. the satilite
> process may want to run a range from shorter to longer
> that of Apache.
> All that tends to lead one toward an plugin API design that
> uses a transport layer between Apache and the plugin that
> is stream like (possibly using shared memory) and is able
> to manage to keep the satilite and Apache in synch around
> the request/server data structures.
> I seem to be on my way to keeping three sets of books to
> do this.  One set of request/server data structures for
> Apache, one for my plugin, and one in the satilite process.
> I then block compare so I can stream diffs betwix the
> other processes in the pair.
> Have other people climbed out on this limb or something
> similar?
>  - ben h.

View raw message