There are two ways to do it. 1) Do exactly what I told you to do when I committed the patch originally. Let's take an example of SSL. Your SSL vhost must know which socket it is on, because it can't be on a plain HTTP socket. So, for that socket, you replace the accept_function, and that allows you to use your own create_conn hook to create the connection and insert your own filters for the bottom of the stack. In fact, regardless of what you are configuring, if you are creating a vhost that doesn't speak plain HTTP, you must know which socket you are listening on, and you can do exactly what you want.
2) Ignore this patch, and do what you would do if it wasn't there, which I presume is to add another filter above the CORE_IN and CORE filters so that they are never called. That will work just fine with this patch in place. Ryan ---------------------------------------------- Ryan Bloom [EMAIL PROTECTED] 645 Howard St. [EMAIL PROTECTED] San Francisco, CA > -----Original Message----- > From: Bill Stoddard [mailto:[EMAIL PROTECTED]] > Sent: Sunday, January 27, 2002 12:55 PM > To: [EMAIL PROTECTED]; [EMAIL PROTECTED] > Subject: Re: cvs commit: httpd-2.0/server/mpm/worker worker.c > > Ryan, you are vetoing my veto. Consider this patch a veto of your 11/12 > patch. I am open > to suggestions to determine a compromise. > > I need to replace core_in and core_out based on configuration. How can I > do that with your > patch in place? > > Bill > > > ----- Original Message ----- > From: "Ryan Bloom" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]> > Sent: Sunday, January 27, 2002 3:05 PM > Subject: RE: cvs commit: httpd-2.0/server/mpm/worker worker.c > > > > > stoddard 02/01/27 04:52:08 > > > > > > Modified: . CHANGES > > > include http_connection.h httpd.h > > > modules/http http_core.c > > > modules/proxy proxy_ftp.c proxy_http.c > > > server connection.c core.c > > > server/mpm/beos beos.c > > > server/mpm/mpmt_os2 mpmt_os2_child.c > > > server/mpm/netware mpm_netware.c > > > server/mpm/perchild perchild.c > > > server/mpm/prefork prefork.c > > > server/mpm/winnt mpm_winnt.c > > > server/mpm/worker worker.c > > > Log: > > > Remove the create_connection hook and put the client_socket back > > into > > > the > > > conn_rec. The create_connection_hook has a design flaw that prevents > > it > > > from making decisions based on vhost information. > > > > -1. You can't back out a patch because it doesn't do something it > > wasn't designed to do! That hook was meant to allow different filters > > to be added based on the connection used, not based on the > > configuration. If you want to do something based on the configuration, > > you have to wait until the request has been read. Removing the socket > > from the conn_rec has all sorts of advantages, not the least being that > > it keeps people from using the socket without going through filters. > > > > Ryan > > > > > >