]> mj.ucw.cz Git - libucw.git/blobdiff - lib/ipaccess.h
autoconf.h needs to be handled differently, since it is copied from obj/lib
[libucw.git] / lib / ipaccess.h
index 291ffe8e77ead4110b69c3f9f11f3688bbb5b1ce..b407783885eef4d93a36413000b3492c87eca036 100644 (file)
@@ -1,14 +1,28 @@
 /*
 /*
- *     Sherlock Library -- IP address access lists
+ *     UCW Library -- IP address access lists
  *
  *
- *     (c) 1997--2001 Martin Mares <mj@ucw.cz>
+ *     (c) 1997--2007 Martin Mares <mj@ucw.cz>
  *
  *     This software may be freely distributed and used according to the terms
  *     of the GNU Lesser General Public License.
  */
 
  *
  *     This software may be freely distributed and used according to the terms
  *     of the GNU Lesser General Public License.
  */
 
-struct ipaccess_list;
+#ifndef _UCW_IPACCESS_H
+#define _UCW_IPACCESS_H
 
 
-struct ipaccess_list *ipaccess_init(void);
-byte *ipaccess_parse(struct ipaccess_list *l, byte *c, int is_allow);
-int ipaccess_check(struct ipaccess_list *l, u32 ip);
+#include "lib/clists.h"
+
+extern struct cf_section ipaccess_cf;
+int ipaccess_check(clist *l, u32 ip);
+
+/* Low-level handling of addresses and masks */
+
+struct ip_addrmask {
+  u32 addr;
+  u32 mask;
+};
+
+extern struct cf_user_type ip_addrmask_type;
+int ip_addrmask_match(struct ip_addrmask *am, u32 ip);
+
+#endif