Re: FW: Apache socket question

2003-06-02 Thread Jeff Trawick
Ben Laurie wrote:
Jeff Trawick wrote:


my suggestion on apache-modules was to set c-aborted in the
pre-connection hook, presumably after passing the descriptor
successfully to another process
ap_lingering_close() doesn't perform the shutdown() if c-aborted


Icky! Presumably the nice thing to do would be to invent a flag that
inhibits the shutdown?
unclear to me whether or not skipping shutdown() is intrinsically linked 
to c-aborted...  I wouldn't be surprised if it is...  some digging into 
ancient 1.3 commit logs may offer some help on this issue

if it isn't intrinsically linked, allowing the module to tailor behavior 
via a hook seems much better than adding flags for modules to tell us to 
skip one sort of processing or another

btw, this module needs to doing something to set c-aborted anyway



Re: FW: Apache socket question

2003-06-01 Thread Ben Laurie
Jeff Trawick wrote:

 While this is probably a bad idea, I bet that if you could trick
 ap_lingering_close() not to close your socket when the connection is
 closed, you might be able to get away with this.

 The relevent line in server/connection.c:214 is:

 apr_socket_t *csd = ap_get_module_config(c-conn_config, core_module);

 So, something like:

 ap_set_module_config(c-conn_config, core_module, NULL);

 in your module might do the trick.  But, don't expect us to support
 this.  =) -- justin
 
 
 in fact, we might intentionally do something to make that blow up :)
 
 my suggestion on apache-modules was to set c-aborted in the
 pre-connection hook, presumably after passing the descriptor
 successfully to another process
 
 ap_lingering_close() doesn't perform the shutdown() if c-aborted

Icky! Presumably the nice thing to do would be to invent a flag that
inhibits the shutdown?

Cheers,

Ben.

-- 
http://www.apache-ssl.org/ben.html   http://www.thebunker.net/

There is no limit to what a man can do or how far he can go if he
doesn't mind who gets the credit. - Robert Woodruff



Re: FW: Apache socket question

2003-05-31 Thread Justin Erenkrantz
--On Friday, May 30, 2003 8:38 AM + Atli Thorbjornsson [EMAIL PROTECTED] 
wrote:

I use pre_connection to access the socket from Apache and, on certain
requests, hand it off to another process. Only problem is Apache seems to
call shutdown() on sockets once it is done with a request which ultimately
kills the socket. That makes perfect sense but is there anyway I could make
Apache not do it, ie just call close()? Reason being that I want to keep the
socket alive for further interaction with the client in my other process but
not have a whole Apache process hanging around in the meantime.
While this is probably a bad idea, I bet that if you could trick 
ap_lingering_close() not to close your socket when the connection is closed, 
you might be able to get away with this.

The relevent line in server/connection.c:214 is:

apr_socket_t *csd = ap_get_module_config(c-conn_config, core_module);

So, something like:

ap_set_module_config(c-conn_config, core_module, NULL);

in your module might do the trick.  But, don't expect us to support this.  =) 
-- justin


Re: FW: Apache socket question

2003-05-31 Thread Jeff Trawick
While this is probably a bad idea, I bet that if you could trick 
ap_lingering_close() not to close your socket when the connection is 
closed, you might be able to get away with this.

The relevent line in server/connection.c:214 is:

apr_socket_t *csd = ap_get_module_config(c-conn_config, core_module);

So, something like:

ap_set_module_config(c-conn_config, core_module, NULL);

in your module might do the trick.  But, don't expect us to support 
this.  =) -- justin
in fact, we might intentionally do something to make that blow up :)

my suggestion on apache-modules was to set c-aborted in the 
pre-connection hook, presumably after passing the descriptor 
successfully to another process

ap_lingering_close() doesn't perform the shutdown() if c-aborted