httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Philippe M. Chiasson" <go...@cpan.org>
Subject Apache, UDP and lingering_close
Date Mon, 03 Feb 2003 12:44:40 GMT
A while ago, in August, Ryan Bloom, regarding UDP support in apache, 
was saying:

> The two places that still need to be fixed for this to work are adding
> sockets to the listen_rec list and the lingering_close logic.  Both of
> these can be fixed by adding a hook to the server.  Adding listeners
> to the listen_rec list _may_ be possible in the open_logs phase, which
> is where the core server does it, but I haven't tried to implement
> that yet.  If it can be doine in the open_logs phase, then you won't
> need another hook for it.  The lingering close logic should just be
> replaced by a simple hook that the core server calls.  The core can
> add lingering_close to that hook, and everything should continue to
> work. [1]

I've been working on mod_udp for the last week or so and got everything
working in a modular way. It basically works fine.

The only thing left for me to get around is the lingering_close logic.
But I am not sure I understand what Ryan is suggesting. Currently, the
lingering_close is called after process_connection in the different
mpms. What I can see as possible is to create a new hook
'post_connection' and have core.c register ap_lingering_close in there.

Then, mod_udp, could push a no-op handler on top of it and short-circuit
out.

Another simpler option I can see, would be to add another function
pointer to ap_listen_t for the lingering close function.

Any thoughts ? Once this problem is solved, I will be happy to release
mod_udp for apache ;-)

1-http://marc.theaimsgroup.com/?l=apache-httpd-dev&m=102936520919151&w=2

--------------------------------------------------------------------------------
Philippe M. Chiasson /gozer\@(cpan|ectoplasm)\.org/ 88C3A5A5
(122FF51B/C634E37B)
http://gozer.ectoplasm.org/    F9BF E0C2 480E 7680 1AE5 3631 CB32 A107
88C3 A5A5
Q: It is impossible to make anything foolproof because fools are so
ingenious.
perl
-e'$$=\${gozer};{$_=unpack(P7,pack(L,$$));/^JAm_pH\n$/&&print||$$++&&redo}'


Mime
View raw message