/* * Copyright (c) 1994, 1995. Netscape Communications Corporation. All * rights reserved. * * Use of this software is governed by the terms of the license agreement for * the Netscape Communications or Netscape Comemrce Server between the * parties. */ /* ------------------------------------------------------------------------ */ #ifndef __ipfilter_h #define __ipfilter_h /* Define error codes */ #define IPFERR_MAX (-1) /* maximum error code value */ #define IPFERR_MALLOC (-1) /* insufficient memory */ #define IPFERR_FOPEN (-2) /* file open error */ #define IPFERR_FILEIO (-3) /* file I/O error */ #define IPFERR_DUPSPEC (-4) /* duplicate filter specification */ #define IPFERR_INTERR (-5) /* internal error (bug) */ #define IPFERR_SYNTAX (-6) /* syntax error in filter file */ #define IPFERR_CNFLICT (-7) /* conflicting filter specification */ #define IPFERR_MIN (-7) /* minimum error code value */ /* Define a scalar IP address value */ typedef unsigned long IPAddr_t; /* Define structure for returning error information */ typedef struct IPFilterErr_s IPFilterErr_t; struct IPFilterErr_s { int errNo; /* IPFERR_xxxx error code */ int lineno; /* file line number, if applicable */ char * filename; /* filename, if applicable */ char * errstr; /* error text, if any */ }; /* Data and functions in ipfilter.c */ extern void * ipf_objndx; extern void ip_filter_destroy(void * ipfptr); extern int ip_filter_setup(pblock * client, IPFilterErr_t * reterr); extern int ip_filter_check(pblock * client, IPAddr_t cip); #endif /* __ipfilter_h */