|
version 1.1, 2012/02/21 23:16:02
|
version 1.1.1.3, 2013/07/22 00:32:35
|
|
Line 1
|
Line 1
|
| |
/* $Id$ */ |
| /* |
/* |
| * MiniUPnP project |
* MiniUPnP project |
| * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/ |
* http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/ |
| * (c) 2009 Jardel Weyrich | * (c) 2009 Jardel Weyrich |
| * This software is subject to the conditions detailed |
* This software is subject to the conditions detailed |
| * in the LICENCE file provided within the distribution |
* in the LICENCE file provided within the distribution |
| */ |
*/ |
| |
|
| #ifndef __IPFWRDR_H__ | #ifndef IPFWRDR_H_INCLUDED |
| #define __IPFWRDR_H__ | #define IPFWRDR_H_INCLUDED |
| |
|
| #include "../commonrdr.h" |
#include "../commonrdr.h" |
| |
|
| int add_redirect_rule2( |
int add_redirect_rule2( |
| const char * ifname, // src interface (external) | const char * ifname, /* src interface (external) */ |
| unsigned short eport, // src port (external) | const char * rhost, /* remote host (ip) */ |
| const char * iaddr, // dst address (internal) | unsigned short eport, /* src port (external) */ |
| unsigned short iport, // dst port (internal) | const char * iaddr, /* dst address (internal) */ |
| | unsigned short iport, /* dst port (internal) */ |
| int proto, |
int proto, |
| const char * desc); | const char * desc, |
| | unsigned int timestamp); |
| |
|
| int add_filter_rule2( |
int add_filter_rule2( |
| const char * ifname, | const char * ifname, |
| | const char * rhost, |
| const char * iaddr, |
const char * iaddr, |
| unsigned short eport, | unsigned short eport, |
| unsigned short iport, |
unsigned short iport, |
| int proto, | int proto, |
| const char * desc); |
const char * desc); |
| |
|
| #if 0 |
#if 0 |
| |
|
| // | /* |
| // get_redirect_rule() gets internal IP and port from | * get_redirect_rule() gets internal IP and port from |
| // interface, external port and protocl | * interface, external port and protocl |
| // | */ |
| int get_redirect_rule( |
int get_redirect_rule( |
| const char * ifname, |
const char * ifname, |
| unsigned short eport, |
unsigned short eport, |
| int proto, |
int proto, |
| char * iaddr, | char * iaddr, |
| int iaddrlen, | int iaddrlen, |
| unsigned short * iport, |
unsigned short * iport, |
| char * desc, | char * desc, |
| int desclen, |
int desclen, |
| u_int64_t * packets, |
u_int64_t * packets, |
| u_int64_t * bytes); |
u_int64_t * bytes); |
| |
|
| int get_redirect_rule_by_index( |
int get_redirect_rule_by_index( |
| int index, |
int index, |
| char * ifname, | char * ifname, |
| unsigned short * eport, |
unsigned short * eport, |
| char * iaddr, | char * iaddr, |
| int iaddrlen, | int iaddrlen, |
| unsigned short * iport, |
unsigned short * iport, |
| int * proto, | int * proto, |
| char * desc, | char * desc, |
| int desclen, |
int desclen, |
| u_int64_t * packets, | u_int64_t * packets, |
| u_int64_t * bytes); |
u_int64_t * bytes); |
| |
|
| #endif |
#endif |
| |
|
| // | /* |
| // delete_redirect_rule() | * delete_redirect_rule() |
| // | */ |
| int delete_redirect_rule(const char * ifname, unsigned short eport, int proto); |
int delete_redirect_rule(const char * ifname, unsigned short eport, int proto); |
| |
|
| // | /* |
| // delete_filter_rule() | * delete_filter_rule() |
| // | */ |
| int delete_filter_rule(const char * ifname, unsigned short eport, int proto); |
int delete_filter_rule(const char * ifname, unsigned short eport, int proto); |
| |
|
| int clear_redirect_rules(void); |
int clear_redirect_rules(void); |