httpd-modules-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jon Leighton <>
Subject Can a module control the socket transport protocol? - revisited
Date Wed, 06 Nov 2013 21:13:19 GMT
I'm revisiting this question (from several months ago), primarily 
because I know more now that I did then - though still not enough. :)

There are a couple places in the httpd code that state or imply that 
httpd is not restricted to TCP - that other network transport protocols 
can be used. In particular, core.c:register_hooks() explicitly mentions 
other modules installing alternate network transports, and 
http_connection.h mentions the "install_network_transport" hook. I 
haven't been able to find any information at all on the 
"install_network_transport" hook, and I'm wondering if the comment is 
actually meant to refer to alternatives to HTTP, rather than TCP.

I'm also wondering if the comment in core.c refers only to the "core" 
being network transport agnostic, and implies nothing about the MPMs, 
which appear to me to be effectively hard coded to TCP.

Is it possible to add a loadable module to an MPM? If not, then it seems 
like the only option is to create my own MPM. If so, then the trick 
would be to get any sockets I create into the MPM's list of listening 
sockets, so they can be polled - but even that doesn't seem possible. 
The problem as I see it is that one of the key variables (the number of 
listening sockets), is private to the MPM.

Does anyone really know if httpd can support alternate transport 
protocols? Does the comment in core.c simply indicate that the "core" is 
network transport agnostic, and imply nothing about the MPMs?

Thanks for any help/comments on this.

- Jon Leighton

View raw message