|
Electroneum
|
#include <outside_network.h>

Public Attributes | |
| struct comm_base * | base |
| time_t * | now_secs |
| struct timeval * | now_tv |
| struct sldns_buffer * | udp_buff |
| size_t | svcd_overhead |
| int | use_caps_for_id |
| int | want_to_quit |
| size_t | unwanted_replies |
| size_t | unwanted_total |
| size_t | unwanted_threshold |
| void(* | unwanted_action )(void *) |
| void * | unwanted_param |
| struct port_comm * | unused_fds |
| int | do_udp |
| int | delayclose |
| struct timeval | delay_tv |
| struct port_if * | ip4_ifs |
| int | num_ip4 |
| struct port_if * | ip6_ifs |
| int | num_ip6 |
| struct pending * | udp_wait_first |
| struct pending * | udp_wait_last |
| rbtree_type * | pending |
| rbtree_type * | serviced |
| struct infra_cache * | infra |
| struct ub_randstate * | rnd |
| void * | sslctx |
| int | tcp_mss |
| struct pending_tcp ** | tcp_conns |
| size_t | num_tcp |
| size_t | num_tcp_outgoing |
| struct pending_tcp * | tcp_free |
| struct waiting_tcp * | tcp_wait_first |
| struct waiting_tcp * | tcp_wait_last |
Send queries to outside servers and wait for answers from servers. Contains answer-listen sockets.
Definition at line 70 of file outside_network.h.
| struct comm_base* outside_network::base |
Base for select calls
Definition at line 72 of file outside_network.h.
| struct timeval outside_network::delay_tv |
timeout for delayclose
Definition at line 108 of file outside_network.h.
| int outside_network::delayclose |
if udp is delay-closed (delayed answers do not meet closed port)
Definition at line 106 of file outside_network.h.
| int outside_network::do_udp |
if udp is done
Definition at line 104 of file outside_network.h.
| struct infra_cache* outside_network::infra |
host cache, pointer but not owned by outnet.
Definition at line 130 of file outside_network.h.
| struct port_if* outside_network::ip4_ifs |
array of outgoing IP4 interfaces
Definition at line 111 of file outside_network.h.
| struct port_if* outside_network::ip6_ifs |
array of outgoing IP6 interfaces
Definition at line 116 of file outside_network.h.
| time_t* outside_network::now_secs |
pointer to time in seconds
Definition at line 74 of file outside_network.h.
| struct timeval* outside_network::now_tv |
pointer to time in microseconds
Definition at line 76 of file outside_network.h.
| int outside_network::num_ip4 |
number of outgoing IP4 interfaces
Definition at line 113 of file outside_network.h.
| int outside_network::num_ip6 |
number of outgoing IP6 interfaces
Definition at line 118 of file outside_network.h.
| size_t outside_network::num_tcp |
number of tcp communication points.
Definition at line 150 of file outside_network.h.
| size_t outside_network::num_tcp_outgoing |
number of tcp communication points in use.
Definition at line 152 of file outside_network.h.
| rbtree_type* outside_network::pending |
pending udp answers. sorted by id, addr
Definition at line 126 of file outside_network.h.
| struct ub_randstate* outside_network::rnd |
where to get random numbers
Definition at line 132 of file outside_network.h.
| rbtree_type* outside_network::serviced |
serviced queries, sorted by qbuf, addr, dnssec
Definition at line 128 of file outside_network.h.
| void* outside_network::sslctx |
ssl context to create ssl wrapped TCP with DNS connections
Definition at line 134 of file outside_network.h.
| size_t outside_network::svcd_overhead |
serviced_callbacks malloc overhead when processing multiple identical serviced queries to the same server.
Definition at line 83 of file outside_network.h.
| struct pending_tcp** outside_network::tcp_conns |
Array of tcp pending used for outgoing TCP connections. Each can be used to establish a TCP connection with a server. The file descriptors are -1 if they are free, and need to be opened for the tcp connection. Can be used for ip4 and ip6.
Definition at line 148 of file outside_network.h.
| struct pending_tcp* outside_network::tcp_free |
list of tcp comm points that are free for use
Definition at line 154 of file outside_network.h.
| int outside_network::tcp_mss |
maximum segment size of tcp socket
Definition at line 140 of file outside_network.h.
| struct waiting_tcp* outside_network::tcp_wait_first |
list of tcp queries waiting for a buffer
Definition at line 156 of file outside_network.h.
| struct waiting_tcp* outside_network::tcp_wait_last |
last of waiting query list
Definition at line 158 of file outside_network.h.
| struct sldns_buffer* outside_network::udp_buff |
buffer shared by UDP connections, since there is only one datagram at any time.
Definition at line 80 of file outside_network.h.
| struct pending* outside_network::udp_wait_first |
pending udp queries waiting to be sent out, waiting for fd
Definition at line 121 of file outside_network.h.
| struct pending* outside_network::udp_wait_last |
last pending udp query in list
Definition at line 123 of file outside_network.h.
| struct port_comm* outside_network::unused_fds |
linked list of available commpoints, unused file descriptors, for use as outgoing UDP ports. cp.fd=-1 in them.
Definition at line 102 of file outside_network.h.
| void(* outside_network::unwanted_action) (void *) |
what action to take, called when defensive action is needed
Definition at line 96 of file outside_network.h.
| void* outside_network::unwanted_param |
user param for action
Definition at line 98 of file outside_network.h.
| size_t outside_network::unwanted_replies |
number of unwanted replies received (for statistics)
Definition at line 90 of file outside_network.h.
| size_t outside_network::unwanted_threshold |
threshold when to take defensive action. If 0 then never.
Definition at line 94 of file outside_network.h.
| size_t outside_network::unwanted_total |
cumulative total of unwanted replies (for defense)
Definition at line 92 of file outside_network.h.
| int outside_network::use_caps_for_id |
use x20 bits to encode additional ID random bits
Definition at line 85 of file outside_network.h.
| int outside_network::want_to_quit |
outside network wants to quit. Stop queued msgs from sent.
Definition at line 87 of file outside_network.h.