Electroneum
pfpinhole.h
Go to the documentation of this file.
1 /* $Id: pfpinhole.h,v 1.9 2012/05/01 22:37:53 nanard Exp $ */
2 /* MiniUPnP project
3  * http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/
4  * (c) 2012-2016 Thomas Bernard
5  * This software is subject to the conditions detailed
6  * in the LICENCE file provided within the distribution */
7 
8 #ifndef PFPINHOLE_H_INCLUDED
9 #define PFPINHOLE_H_INCLUDED
10 
11 #ifdef ENABLE_UPNPPINHOLE
12 
13 int find_pinhole(const char * ifname,
14  const char * rem_host, unsigned short rem_port,
15  const char * int_client, unsigned short int_port,
16  int proto,
17  char *desc, int desc_len, unsigned int * timestamp);
18 
19 int add_pinhole(const char * ifname,
20  const char * rem_host, unsigned short rem_port,
21  const char * int_client, unsigned short int_port,
22  int proto, const char * desc, unsigned int timestamp);
23 
24 int delete_pinhole(unsigned short uid);
25 
26 int
27 get_pinhole_info(unsigned short uid,
28  char * rem_host, int rem_hostlen, unsigned short * rem_port,
29  char * int_client, int int_clientlen, unsigned short * int_port,
30  int * proto, char * desc, int desclen,
31  unsigned int * timestamp,
32  u_int64_t * packets, u_int64_t * bytes);
33 
34 int update_pinhole(unsigned short uid, unsigned int timestamp);
35 
36 int clean_pinhole_list(unsigned int * next_timestamp);
37 
38 #endif /* ENABLE_UPNPPINHOLE */
39 
40 #endif
41