… | |
… | |
95 | vector<const char *> allow_direct; |
95 | vector<const char *> allow_direct; |
96 | vector<const char *> deny_direct; |
96 | vector<const char *> deny_direct; |
97 | |
97 | |
98 | u32 routerprio; |
98 | u32 routerprio; |
99 | |
99 | |
|
|
100 | u8 connectable_protocols () const |
|
|
101 | { |
|
|
102 | u8 protocols = this->protocols; |
|
|
103 | |
|
|
104 | // mask out endpoints we can't connect to |
|
|
105 | if (!udp_port) protocols &= ~PROT_UDPv4; |
|
|
106 | if (!tcp_port) protocols &= ~PROT_TCPv4; |
|
|
107 | if (!dns_port) protocols &= ~PROT_DNSv4; |
|
|
108 | |
|
|
109 | return protocols; |
|
|
110 | } |
|
|
111 | |
100 | bool can_direct (struct conf_node *other); |
112 | bool may_direct (struct conf_node *other); |
|
|
113 | void finalise (); |
101 | |
114 | |
102 | void print (); |
115 | void print (); |
103 | |
116 | |
104 | ~conf_node (); |
117 | ~conf_node (); |
105 | }; |
118 | }; |
… | |
… | |
109 | typedef vector<conf_node *> node_vector; |
122 | typedef vector<conf_node *> node_vector; |
110 | node_vector nodes; |
123 | node_vector nodes; |
111 | conf_node default_node; |
124 | conf_node default_node; |
112 | conf_node *thisnode; |
125 | conf_node *thisnode; |
113 | int mtu; // the mtu used for outgoing tunnel packets |
126 | int mtu; // the mtu used for outgoing tunnel packets |
|
|
127 | int nfmark; // the SO_MARK // netfilter mark // fwmark |
114 | double rekey; // rekey interval |
128 | double rekey; // rekey interval |
115 | double keepalive; // keepalive probes interval |
129 | double keepalive; // keepalive probes interval |
116 | char *ifname; // the interface name (tap0 ...) |
130 | char *ifname; // the interface name (tap0 ...) |
117 | bool ifpersist; // should the interface be persistent |
131 | bool ifpersist; // should the interface be persistent |
118 | char *prikeyfile; |
132 | char *prikeyfile; |