Electroneum
ipfwrdr.h
Go to the documentation of this file.
1 /* $Id: ipfwrdr.h,v 1.6 2012/02/11 13:10:57 nanard Exp $ */
2 /*
3  * MiniUPnP project
4  * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
5  * (c) 2009 Jardel Weyrich
6  * This software is subject to the conditions detailed
7  * in the LICENCE file provided within the distribution
8  */
9 
10 #ifndef IPFWRDR_H_INCLUDED
11 #define IPFWRDR_H_INCLUDED
12 
13 #include "../commonrdr.h"
14 
16  const char * ifname, /* src interface (external) */
17  const char * rhost, /* remote host (ip) */
18  unsigned short eport, /* src port (external) */
19  const char * iaddr, /* dst address (internal) */
20  unsigned short iport, /* dst port (internal) */
21  int proto,
22  const char * desc,
23  unsigned int timestamp);
24 
26  const char * ifname,
27  const char * rhost,
28  const char * iaddr,
29  unsigned short eport,
30  unsigned short iport,
31  int proto,
32  const char * desc);
33 
34 #if 0
35 
36 /*
37  * get_redirect_rule() gets internal IP and port from
38  * interface, external port and protocl
39 */
41  const char * ifname,
42  unsigned short eport,
43  int proto,
44  char * iaddr,
45  int iaddrlen,
46  unsigned short * iport,
47  char * desc,
48  int desclen,
49  u_int64_t * packets,
50  u_int64_t * bytes);
51 
53  int index,
54  char * ifname,
55  unsigned short * eport,
56  char * iaddr,
57  int iaddrlen,
58  unsigned short * iport,
59  int * proto,
60  char * desc,
61  int desclen,
62  u_int64_t * packets,
63  u_int64_t * bytes);
64 
65 #endif
66 
67 /*
68  * delete_redirect_rule()
69 */
70 int delete_redirect_rule(const char * ifname, unsigned short eport, int proto);
71 
72 /*
73  * delete_filter_rule()
74 */
75 int delete_filter_rule(const char * ifname, unsigned short eport, int proto);
76 
77 int clear_redirect_rules(void);
78 
79 #endif
int delete_filter_rule(const char *ifname, unsigned short eport, int proto)
int get_redirect_rule(const char *ifname, unsigned short eport, int proto, char *iaddr, int iaddrlen, unsigned short *iport, char *desc, int desclen, char *rhost, int rhostlen, unsigned int *timestamp, u_int64_t *packets, u_int64_t *bytes)
int get_redirect_rule_by_index(int index, char *ifname, unsigned short *eport, char *iaddr, int iaddrlen, unsigned short *iport, int *proto, char *desc, int desclen, char *rhost, int rhostlen, unsigned int *timestamp, u_int64_t *packets, u_int64_t *bytes)
int clear_redirect_rules(void)
int delete_redirect_rule(const char *ifname, unsigned short eport, int proto)
int add_filter_rule2(const char *ifname, const char *rhost, const char *iaddr, unsigned short eport, unsigned short iport, int proto, const char *desc)
int add_redirect_rule2(const char *ifname, const char *rhost, unsigned short eport, const char *iaddr, unsigned short iport, int proto, const char *desc, unsigned int timestamp)