ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/gvpe/src/conf.h
(Generate patch)

Comparing gvpe/src/conf.h (file contents):
Revision 1.37 by pcg, Sat Jul 18 05:59:16 2009 UTC vs.
Revision 1.42 by root, Tue Dec 4 10:29:43 2012 UTC

37#include <openssl/rsa.h> 37#include <openssl/rsa.h>
38 38
39#include "slog.h" 39#include "slog.h"
40#include "global.h" 40#include "global.h"
41 41
42#define DEFAULT_REKEY 3600 42#define DEFAULT_REKEY 3600
43#define DEFAULT_KEEPALIVE 60 // one keepalive/minute (it's just 8 bytes...) 43#define DEFAULT_KEEPALIVE 60 // one keepalive/minute (it's just 8 bytes...)
44#define DEFAULT_UDPPORT 655 // same as tinc, conflicts would be rare 44#define DEFAULT_UDPPORT 655 // same as tinc, conflicts would be rare
45#define DEFAULT_MTU 1500 // let's ether-net 45#define DEFAULT_MTU 1500 // let's ether-net
46#define DEFAULT_MAX_RETRY 3600 // retry at least this often 46#define DEFAULT_MAX_RETRY 3600 // retry at least this often
47#define DEFAULT_MAX_TTL 60 // packets expire after this many seconds 47#define DEFAULT_MAX_TTL 60 // packets expire after this many seconds
48#define DEFAULT_MAX_QUEUE 512 // never queue more than this many packets 48#define DEFAULT_MAX_QUEUE 512 // never queue more than this many packets
49 49
50#define DEFAULT_DNS_TIMEOUT_FACTOR 8.F // initial retry timeout multiple 50#define DEFAULT_DNS_TIMEOUT_FACTOR 8.F // initial retry timeout multiple
51#define DEFAULT_DNS_SEND_INTERVAL .01F // minimum send interval 51#define DEFAULT_DNS_SEND_INTERVAL .01F // minimum send interval
52#define DEFAULT_DNS_OVERLAP_FACTOR .5F // RTT * LATENCY_FACTOR == sending rate 52#define DEFAULT_DNS_OVERLAP_FACTOR .5F // RTT * LATENCY_FACTOR == sending rate
53#define DEFAULT_DNS_MAX_OUTSTANDING 100 // max. number of outstanding requests 53#define DEFAULT_DNS_MAX_OUTSTANDING 100 // max. number of outstanding requests
57 PROT_UDPv4 = 0x01, // udp over ipv4 57 PROT_UDPv4 = 0x01, // udp over ipv4
58 PROT_IPv4 = 0x02, // generic ip protocol 58 PROT_IPv4 = 0x02, // generic ip protocol
59 PROT_TCPv4 = 0x04, // tcp over ipv4 (server) 59 PROT_TCPv4 = 0x04, // tcp over ipv4 (server)
60 PROT_ICMPv4 = 0x08, // icmp over ipv4 60 PROT_ICMPv4 = 0x08, // icmp over ipv4
61 PROT_DNSv4 = 0x10, // dns tunnel ipv4 (server) 61 PROT_DNSv4 = 0x10, // dns tunnel ipv4 (server)
62 PROT_ALL = 0x1f
62}; 63};
63 64
64#define PROT_RELIABLE (PROT_TCPv4 | PROT_DNSv4) 65#define PROT_RELIABLE (PROT_TCPv4 | PROT_DNSv4)
65#define PROT_SLOW PROT_DNSv4 66#define PROT_SLOW PROT_DNSv4
66 67
131 bool ifpersist; // should the interface be persistent 132 bool ifpersist; // should the interface be persistent
132 char *prikeyfile; 133 char *prikeyfile;
133 RSA *rsa_key; // our private rsa key 134 RSA *rsa_key; // our private rsa key
134 loglevel llevel; 135 loglevel llevel;
135 u8 ip_proto; // the ip protocol to use 136 u8 ip_proto; // the ip protocol to use
137 uid_t change_uid; // the uid of the user to switch to, or 0
138 gid_t change_gid; // the gid of the user to switch to, or 0
139 char *change_root;// the path to chroot to, "/" == anonymous
136#if ENABLE_ICMP 140#if ENABLE_ICMP
137 u8 icmp_type; // the icmp type for the icmp-protocol 141 u8 icmp_type; // the icmp type for the icmp-protocol
138#endif 142#endif
139 143
140 char *script_if_up; 144 char *script_if_up;
149 u16 proxy_port; // the proxy port, e.g. 3128 153 u16 proxy_port; // the proxy port, e.g. 3128
150#endif 154#endif
151 155
152#if ENABLE_DNS 156#if ENABLE_DNS
153 char *dns_forw_host; 157 char *dns_forw_host;
158 bool dns_case_preserving;
154 u16 dns_forw_port; 159 u16 dns_forw_port;
155 float dns_timeout_factor; 160 float dns_timeout_factor;
156 float dns_send_interval; 161 float dns_send_interval;
157 float dns_overlap_factor; 162 float dns_overlap_factor;
158 int dns_max_outstanding; 163 int dns_max_outstanding;
162 void cleanup (); 167 void cleanup ();
163 void clear (); 168 void clear ();
164 169
165 // create a filename from string, replacing %s by the nodename 170 // create a filename from string, replacing %s by the nodename
166 // and using relative paths under confbase. 171 // and using relative paths under confbase.
167 char *config_filename (const char *name, const char *dflt); 172 char *config_filename (const char *name, const char *dflt = 0);
168 173
169 void print (); 174 void print ();
170 175
171 configuration (); 176 configuration ();
172 ~configuration (); 177 ~configuration ();
182 int argc; 187 int argc;
183 char **argv; 188 char **argv;
184 189
185 configuration_parser (configuration &conf, bool need_keys, int argc, char **argv); 190 configuration_parser (configuration &conf, bool need_keys, int argc, char **argv);
186 191
192 void parse_file (const char *fname);
187 const char *parse_line (char *line); 193 const char *parse_line (char *line);
188 void parse_argv (); 194 void parse_argv ();
189}; 195};
190 196
191extern struct configuration conf; 197extern struct configuration conf;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines