1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
|
/*
* $Id: ip_list.h,v 1.1 1998/05/17 23:47:57 elkner Exp $
*
* Author: Harvest/Squid derived http://squid.nlanr.net/Squid/
* Project: Jesred http://ivs.cs.uni-magdeburg.de/~elkner/webtools/jesred/
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* http://www.gnu.org/copyleft/gpl.html or ./gpl.html
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
*/
/*
* Copyright (c) 1994, 1995. All rights reserved.
*
* The Harvest software was developed by the Internet Research Task
* Force Research Group on Resource Discovery (IRTF-RD):
*
* Mic Bowman of Transarc Corporation.
* Peter Danzig of the University of Southern California.
* Darren R. Hardy of the University of Colorado at Boulder.
* Udi Manber of the University of Arizona.
* Michael F. Schwartz of the University of Colorado at Boulder.
* Duane Wessels of the University of Colorado at Boulder.
*
* This copyright notice applies to software in the Harvest
* ``src/'' directory only. Users should consult the individual
* copyright notices in the ``components/'' subdirectories for
* copyright information about other software bundled with the
* Harvest source code distribution.
*
* TERMS OF USE
*
* The Harvest software may be used and re-distributed without
* charge, provided that the software origin and research team are
* cited in any use of the system. Most commonly this is
* accomplished by including a link to the Harvest Home Page
* (http://harvest.cs.colorado.edu/) from the query page of any
* Broker you deploy, as well as in the query result pages. These
* links are generated automatically by the standard Broker
* software distribution.
*
* The Harvest software is provided ``as is'', without express or
* implied warranty, and with no support nor obligation to assist
* in its use, correction, modification or enhancement. We assume
* no liability with respect to the infringement of copyrights,
* trade secrets, or any patents, and are not responsible for
* consequential damages. Proper use of the Harvest software is
* entirely the responsibility of the user.
*
* DERIVATIVE WORKS
*
* Users may make derivative works from the Harvest software, subject
* to the following constraints:
*
* - You must include the above copyright notice and these
* accompanying paragraphs in all forms of derivative works,
* and any documentation and other materials related to such
* distribution and use acknowledge that the software was
* developed at the above institutions.
*
* - You must notify IRTF-RD regarding your distribution of
* the derivative work.
*
* - You must clearly notify users that your are distributing
* a modified version and not the original Harvest software.
*
* - Any derivative product is also subject to these copyright
* and use restrictions.
*
* Note that the Harvest software is NOT in the public domain. We
* retain copyright, as specified above.
*
* HISTORY OF FREE SOFTWARE STATUS
*
* Originally we required sites to license the software in cases
* where they were going to build commercial products/services
* around Harvest. In June 1995 we changed this policy. We now
* allow people to use the core Harvest software (the code found in
* the Harvest ``src/'' directory) for free. We made this change
* in the interest of encouraging the widest possible deployment of
* the technology. The Harvest software is really a reference
* implementation of a set of protocols and formats, some of which
* we intend to standardize. We encourage commercial
* re-implementations of code complying to this set of standards.
*/
#ifndef IPLIST_H
#define IPLIST_H
typedef enum {
IP_ALLOW,
IP_DENY
} ip_access_type;
typedef struct _ip_acl {
struct in_addr addr;
struct in_addr mask;
ip_access_type access;
struct _ip_acl *next;
} ip_acl;
extern void ip_acl_destroy(ip_acl **);
extern void addToIPACL(ip_acl **, const char *);
extern ip_access_type ip_access_check(struct in_addr, const ip_acl *);
#endif
|