blob: 1956cf0693f8607a5830fa9143de54483cb2283c [file] [log] [blame]
Rusty Russell79dee072000-05-02 16:45:16 +00001#ifndef _IP6TABLES_USER_H
2#define _IP6TABLES_USER_H
3
Jan Engelhardtef18e812008-08-04 12:47:48 +02004#include <netinet/ip.h>
Yasuyuki KOZAKAI0d502bc2007-07-24 05:52:07 +00005#include <xtables.h>
Jan Engelhardtef18e812008-08-04 12:47:48 +02006#include <libiptc/libip6tc.h>
Rusty Russell79dee072000-05-02 16:45:16 +00007
Rémi Denis-Courmont06652172006-10-20 12:24:34 +00008#ifndef IP6T_SO_GET_REVISION_MATCH /* Old kernel source. */
Yasuyuki KOZAKAI4ebfad02006-11-13 04:03:26 +00009#define IP6T_SO_GET_REVISION_MATCH 68
10#define IP6T_SO_GET_REVISION_TARGET 69
Rémi Denis-Courmont06652172006-10-20 12:24:34 +000011#endif /* IP6T_SO_GET_REVISION_MATCH Old kernel source */
12
Yasuyuki KOZAKAI0d502bc2007-07-24 05:52:07 +000013#define ip6tables_rule_match xtables_rule_match
Yasuyuki KOZAKAI0d502bc2007-07-24 05:52:07 +000014#define ip6t_tryload xt_tryload
Rusty Russell79dee072000-05-02 16:45:16 +000015
Harald Weltea8658ca2003-03-05 07:46:15 +000016extern int line;
17
Rusty Russell79dee072000-05-02 16:45:16 +000018/* Your shared library should call one of these. */
Rusty Russell79dee072000-05-02 16:45:16 +000019extern int do_command6(int argc, char *argv[], char **table,
Jan Engelhardtfd187312008-11-10 16:59:27 +010020 struct ip6tc_handle **handle);
Yasuyuki KOZAKAI9867e812005-06-22 12:24:21 +000021
Jan Engelhardt1c9015b2008-11-10 17:00:41 +010022extern int for_each_chain(int (*fn)(const ip6t_chainlabel, int, struct ip6tc_handle *), int verbose, int builtinstoo, struct ip6tc_handle *handle);
23extern int flush_entries(const ip6t_chainlabel chain, int verbose, struct ip6tc_handle *handle);
24extern int delete_chain(const ip6t_chainlabel chain, int verbose, struct ip6tc_handle *handle);
25void print_rule(const struct ip6t_entry *e, struct ip6tc_handle *h, const char *chain, int counters);
András Kis-Szabó764316a2001-02-26 17:31:20 +000026
Rusty Russell79dee072000-05-02 16:45:16 +000027#endif /*_IP6TABLES_USER_H*/