/*
 * ----------------------------------------------------------------
 * Night Light IRC Proxy - Access Configuration Header
 * ----------------------------------------------------------------
 * Copyright (C) 1997-2007 Jonas Kvinge <jonas@night-light.net>
 * All rights reserved.
 *
 * 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.
 *
 * 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.,
 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Last modified by:
 * Jonas Kvinge (18.07.2001)
 *
 */

#ifdef ACCESS_CONF_H
#warning "access_conf.h already included."
#else
#define ACCESS_CONF_H

#define ACCESS_ALLOW 1
#define ACCESS_DENY 2

#define ACCESS_CONF_NOREASON				"No reason given."
#define ACCESS_CONF_USERFLOOD				"User flooding detected."
#define ACCESS_CONF_SENDQFLOOD				"Maximum allowed SendQ exceeded"

/* STRUCTURES - JONAS (18.07.2001) */

struct AccessConf_Struct {

  char *Host;
  char *Reason;

  struct AccessConf_Struct *Prev;
  struct AccessConf_Struct *Next;

};

/* FUNCTION PROTOTYPES - JONAS (18.07.2001) */

signed long int access_conf_read(void);
struct AccessConf_Struct *access_conf_addallow(const char *const HostPT, const char *const ReasonPT);
void access_conf_remallow(struct AccessConf_Struct *AccessConf);
struct AccessConf_Struct *access_conf_adddeny(const char *const HostPT, const char *const ReasonPT);
void access_conf_remdeny(struct AccessConf_Struct *AccessConf);
void access_conf_destroy(void);

#endif


syntax highlighted by Code2HTML, v. 0.9.1