mod_access.c revision 8f3ec4772d2aeb347cf40e87c77627bb784dd018
2058N/A/* ==================================================================== 2058N/A * Copyright (c) 1995-1999 The Apache Group. All rights reserved. 2058N/A * Redistribution and use in source and binary forms, with or without 2058N/A * modification, are permitted provided that the following conditions 2058N/A * 1. Redistributions of source code must retain the above copyright 2058N/A * notice, this list of conditions and the following disclaimer. 2058N/A * 2. Redistributions in binary form must reproduce the above copyright 2058N/A * notice, this list of conditions and the following disclaimer in 2058N/A * the documentation and/or other materials provided with the 2058N/A * 3. All advertising materials mentioning features or use of this 2058N/A * software must display the following acknowledgment: 2058N/A * "This product includes software developed by the Apache Group 2058N/A * 4. The names "Apache Server" and "Apache Group" must not be used to 6122N/A * endorse or promote products derived from this software without 2058N/A * prior written permission. For written permission, please contact 6122N/A * 5. Products derived from this software may not be called "Apache" * nor may "Apache" appear in their names without prior written * permission of the Apache Group. * 6. Redistributions of any form whatsoever must retain the following * "This product includes software developed by the Apache Group * THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE GROUP OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED * OF THE POSSIBILITY OF SUCH DAMAGE. * ==================================================================== * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Group and was originally based * on public domain software written at the National Center for * Supercomputing Applications, University of Illinois, Urbana-Champaign. * For more information on the Apache Group and the Apache HTTP server * Module derived from code originally written by Rob McCool /* things in the 'order' array */ return "allow and deny must be followed by 'from'";
/* trample on where, we won't be using it any more */ /* is_ip just tests if it matches [\d.]+ */ /* is it in /a.b.c.d form? */ /* assume it's in /nnn form */ /* legacy syntax for ip addrs: a.b.c. ==> a.b.c.0/24 for example */ return "invalid ip address";
return "invalid ip address";
return "invalid ip address, only 4 octets allowed";
return "each octet must be between 0 and 255 inclusive";
"'allow,deny', 'deny,allow', or 'mutual-failure'"},
"'from' followed by hostnames or IP-address wildcards"},
"'from' followed by hostnames or IP-address wildcards"},
/* Make sure we matched an *entire* subdomain --- if the user return 1;
/* matched whole thing */ for (i = 0; i < a->
nelts; ++i) {
"client denied by server configuration: %s",
NULL,
/* dir merger --- default is to override */ NULL,
/* server config */ NULL,
/* merge server config */