ip6tables.h revision 0d502bcdbc97ed359e84f6a21dfa0049b3b60a6c
179dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russell#ifndef _IP6TABLES_USER_H 279dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russell#define _IP6TABLES_USER_H 379dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russell 40d502bcdbc97ed359e84f6a21dfa0049b3b60a6cYasuyuki KOZAKAI#include <xtables.h> 50d502bcdbc97ed359e84f6a21dfa0049b3b60a6cYasuyuki KOZAKAI 679dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russell#include "iptables_common.h" 779dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russell#include "libiptc/libip6tc.h" 879dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russell 9357d59dcfcbd125e2aa8c07b30cea9635efec2a7Martin Josefsson#ifndef IP6T_LIB_DIR 10357d59dcfcbd125e2aa8c07b30cea9635efec2a7Martin Josefsson#define IP6T_LIB_DIR "/usr/local/lib/iptables" 11357d59dcfcbd125e2aa8c07b30cea9635efec2a7Martin Josefsson#endif 12357d59dcfcbd125e2aa8c07b30cea9635efec2a7Martin Josefsson 132452bafd9810e8560717f10af8e26f8a3ac4f4cfPatrick McHardy#ifndef IPPROTO_SCTP 142452bafd9810e8560717f10af8e26f8a3ac4f4cfPatrick McHardy#define IPPROTO_SCTP 132 152452bafd9810e8560717f10af8e26f8a3ac4f4cfPatrick McHardy#endif 162452bafd9810e8560717f10af8e26f8a3ac4f4cfPatrick McHardy#ifndef IPPROTO_DCCP 172452bafd9810e8560717f10af8e26f8a3ac4f4cfPatrick McHardy#define IPPROTO_DCCP 33 182452bafd9810e8560717f10af8e26f8a3ac4f4cfPatrick McHardy#endif 199561606bd938ed4b2614716a08a2856d4ef5e995Patrick McHardy#ifndef IPPROTO_UDPLITE 209561606bd938ed4b2614716a08a2856d4ef5e995Patrick McHardy#define IPPROTO_UDPLITE 136 219561606bd938ed4b2614716a08a2856d4ef5e995Patrick McHardy#endif 222452bafd9810e8560717f10af8e26f8a3ac4f4cfPatrick McHardy 230665217784822434b1732cdc773d5daa12836438Rémi Denis-Courmont#ifndef IP6T_SO_GET_REVISION_MATCH /* Old kernel source. */ 244ebfad0cf7ff3e414a20c82513579789e8283c9fYasuyuki KOZAKAI#define IP6T_SO_GET_REVISION_MATCH 68 254ebfad0cf7ff3e414a20c82513579789e8283c9fYasuyuki KOZAKAI#define IP6T_SO_GET_REVISION_TARGET 69 260665217784822434b1732cdc773d5daa12836438Rémi Denis-Courmont#endif /* IP6T_SO_GET_REVISION_MATCH Old kernel source */ 270665217784822434b1732cdc773d5daa12836438Rémi Denis-Courmont 280d502bcdbc97ed359e84f6a21dfa0049b3b60a6cYasuyuki KOZAKAI#define ip6tables_rule_match xtables_rule_match 290d502bcdbc97ed359e84f6a21dfa0049b3b60a6cYasuyuki KOZAKAI#define ip6tables_match xtables_match 300d502bcdbc97ed359e84f6a21dfa0049b3b60a6cYasuyuki KOZAKAI#define ip6tables_target xtables_target 310d502bcdbc97ed359e84f6a21dfa0049b3b60a6cYasuyuki KOZAKAI#define ip6t_tryload xt_tryload 3279dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russell 33a8658ca43fba82f7761f774f4daeb29b3e335053Harald Welteextern int line; 34a8658ca43fba82f7761f774f4daeb29b3e335053Harald Welte 3579dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russell/* Your shared library should call one of these. */ 3679dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russellextern void register_match6(struct ip6tables_match *me); 3779dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russellextern void register_target6(struct ip6tables_target *me); 3879dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russell 3958179b1d0d1722ea16028aa2ea9d74afc86dd5dcPhil Oesterextern int service_to_port(const char *name, const char *proto); 40dbac8ad71c3c418fd8a62c08211885a38177b725Phil Oesterextern u_int16_t parse_port(const char *port, const char *proto); 4179dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russellextern int do_command6(int argc, char *argv[], char **table, 4279dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russell ip6tc_handle_t *handle); 439867e814492275cabfbccd6b30375b0e23eb10cbYasuyuki KOZAKAIextern void parse_interface(const char *arg, char *vianame, unsigned char *mask); 449867e814492275cabfbccd6b30375b0e23eb10cbYasuyuki KOZAKAI 45764316a133db8e5e2d1f2a9d941ffae993d7c9d9András Kis-Szabóextern int for_each_chain(int (*fn)(const ip6t_chainlabel, int, ip6tc_handle_t *), int verbose, int builtinstoo, ip6tc_handle_t *handle); 46764316a133db8e5e2d1f2a9d941ffae993d7c9d9András Kis-Szabóextern int flush_entries(const ip6t_chainlabel chain, int verbose, ip6tc_handle_t *handle); 47764316a133db8e5e2d1f2a9d941ffae993d7c9d9András Kis-Szabóextern int delete_chain(const ip6t_chainlabel chain, int verbose, ip6tc_handle_t *handle); 48764316a133db8e5e2d1f2a9d941ffae993d7c9d9András Kis-Szabó 4979dee0702b18c8ea1d1f7a2b1f6b29349466986bRusty Russell#endif /*_IP6TABLES_USER_H*/ 50