mod_proxy.h revision 6a875743d0b73682a5cedf952b4016a3513dea87
5548N/A/* ==================================================================== 5548N/A * The Apache Software License, Version 1.1 5548N/A * Copyright (c) 2000 The Apache Software Foundation. All rights 5548N/A * Redistribution and use in source and binary forms, with or without 5548N/A * modification, are permitted provided that the following conditions 5548N/A * 1. Redistributions of source code must retain the above copyright 5548N/A * notice, this list of conditions and the following disclaimer. 5548N/A * 2. Redistributions in binary form must reproduce the above copyright 5548N/A * notice, this list of conditions and the following disclaimer in 5548N/A * the documentation and/or other materials provided with the 5548N/A * 3. The end-user documentation included with the redistribution, 5548N/A * if any, must include the following acknowledgment: 5548N/A * "This product includes software developed by the 5548N/A * Alternately, this acknowledgment may appear in the software itself, 5548N/A * if and wherever such third-party acknowledgments normally appear. 5548N/A * 4. The names "Apache" and "Apache Software Foundation" must 5548N/A * not be used to endorse or promote products derived from this 5548N/A * software without prior written permission. For written 5548N/A * permission, please contact apache@apache.org. 5548N/A * 5. Products derived from this software may not be called "Apache", 5548N/A * nor may "Apache" appear in their name, without prior written 5548N/A * permission of the Apache Software Foundation. 5548N/A * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 5548N/A * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 5548N/A * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 5548N/A * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR 5548N/A * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 5548N/A * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 5548N/A * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF 5548N/A * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 5548N/A * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 5548N/A * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 5548N/A * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 5548N/A * ==================================================================== 5548N/A * This software consists of voluntary contributions made by many 5548N/A * individuals on behalf of the Apache Software Foundation. For more 5548N/A * information on the Apache Software Foundation, please see 5548N/A * Portions of this software are based upon public domain software 5548N/A * originally written at the National Center for Supercomputing Applications, 5548N/A * University of Illinois, Urbana-Champaign. 5548N/A * Main include file for the Apache proxy 5548N/A Note that the Explain() stuff is not yet complete. 5548N/A Also note numerous FIXMEs and CHECKMEs which should be eliminated. 5548N/A If TESTING is set, then garbage collection doesn't delete ... probably a good 5548N/A This code is still experimental! 5548N/A 1. Make it garbage collect in the background, not while someone is waiting for 5548N/A 2. Check the logic thoroughly. 5548N/A 3. Empty directories are only removed the next time round (but this does avoid 5548N/A two passes). Consider doing them the first time round. 5548N/A Ben Laurie <ben@algroup.co.uk> 30 Mar 96 5548N/A 1. add 230 response output for ftp now that it works 5548N/A 2. Make the ftp proxy transparent, also same with (future) gopher & wais 5548N/A 3. Use protocol handler struct a la Apache module handlers (Dirk van Gulik) 5548N/A 4. Use a cache expiry database for more efficient GC (Jeremy Wohl) 5548N/A 5. Bulletproof GC against SIGALRM 5548N/A Chuck Murcko <chuck@topsail.org> 15 April 1997 5548N/A#
define HDR_APP (0)
/* append header, for proxy_add_header() */ 5548N/A#
define HDR_REP (
1)
/* replace header, for proxy_add_header() */ 5548N/A/* static information about a remote proxy */ 5548N/A const char *
scheme;
/* the schemes handled by this proxy, or '*' */ 5548N/A char *
domain;
/* domain name to use in absence of a domain name in the request */ 5548N/A int req;
/* true if proxy requests are enabled */ }
viaopt;
/* how to deal with proxy Via: headers *//* Function prototypes */ /* This function is called by ap_table_do() for all header lines */