Struct containing information about a client, handle to connect to it, and any pending messages that need to be sent to it. More...
Data Fields | |
struct ClientQueryRecord * | cqr_head |
Linked list of active queries of this client. More... | |
struct ClientQueryRecord * | cqr_tail |
Linked list of active queries of this client. More... | |
struct GNUNET_SERVICE_Client * | client |
The handle to this client. More... | |
struct GNUNET_MQ_Handle * | mq |
The message queue to this client. More... | |
struct ClientHandle * | next |
Kept in a DLL. More... | |
struct ClientHandle * | prev |
Kept in a DLL. More... | |
struct ClientAddress * | caddrs |
Array of addresses used by the service. More... | |
char * | hole_external |
External DNS name and port given by user due to manual hole punching. More... | |
char * | section_name |
Name of the configuration section this client cares about. More... | |
struct GNUNET_SCHEDULER_Task * | ext_dns_task |
Task for periodically re-running the ext_dns DNS lookup. More... | |
struct GNUNET_RESOLVER_RequestHandle * | ext_dns |
Handle for (DYN)DNS lookup of our external IP as given in hole_external. More... | |
struct GN_ExternalIPMonitor * | external_monitor |
Handle for monitoring external IP changes. More... | |
struct LocalAddressList * | ext_addr_head |
DLL of external IP addresses as given in hole_external. More... | |
struct LocalAddressList * | ext_addr_tail |
DLL of external IP addresses as given in hole_external. More... | |
uint16_t | ext_dns_port |
Port number we found in hole_external. More... | |
enum GNUNET_NAT_RegisterFlags | flags |
What does this client care about? More... | |
int | natted_address |
Is any of the caddrs in a reserved subnet for NAT? More... | |
uint16_t | num_caddrs |
Number of addresses that this service is bound to. More... | |
uint8_t | proto |
Client's IPPROTO, e.g. More... | |
Struct containing information about a client, handle to connect to it, and any pending messages that need to be sent to it.
Internal data structure we track for each of our clients.
Definition at line 190 of file gnunet-service-dht_clients.c.
struct ClientQueryRecord* ClientHandle::cqr_head |
Linked list of active queries of this client.
Definition at line 195 of file gnunet-service-dht_clients.c.
struct ClientQueryRecord* ClientHandle::cqr_tail |
Linked list of active queries of this client.
Definition at line 200 of file gnunet-service-dht_clients.c.
struct GNUNET_SERVICE_Client * ClientHandle::client |
The handle to this client.
Underlying handle for this client with the service.
Definition at line 205 of file gnunet-service-dht_clients.c.
Referenced by client_connect_cb(), and client_disconnect_cb().
struct GNUNET_MQ_Handle * ClientHandle::mq |
The message queue to this client.
Message queue for communicating with the client.
Definition at line 210 of file gnunet-service-dht_clients.c.
struct ClientHandle * ClientHandle::next |
Kept in a DLL.
Definition at line 57 of file gnunet-service-nat-auto.c.
struct ClientHandle * ClientHandle::prev |
Kept in a DLL.
Definition at line 62 of file gnunet-service-nat-auto.c.
struct ClientAddress* ClientHandle::caddrs |
Array of addresses used by the service.
Definition at line 166 of file gnunet-service-nat.c.
char* ClientHandle::hole_external |
External DNS name and port given by user due to manual hole punching.
Special DNS name 'AUTO' is used to indicate desire for automatic determination of the external IP (instead of DNS or manual configuration, i.e. to be used if the IP keeps changing and we have no DynDNS, but we do have a hole punched).
Definition at line 176 of file gnunet-service-nat.c.
char* ClientHandle::section_name |
Name of the configuration section this client cares about.
Definition at line 181 of file gnunet-service-nat.c.
struct GNUNET_SCHEDULER_Task* ClientHandle::ext_dns_task |
Task for periodically re-running the ext_dns DNS lookup.
Definition at line 186 of file gnunet-service-nat.c.
struct GNUNET_RESOLVER_RequestHandle* ClientHandle::ext_dns |
Handle for (DYN)DNS lookup of our external IP as given in hole_external.
Definition at line 192 of file gnunet-service-nat.c.
struct GN_ExternalIPMonitor* ClientHandle::external_monitor |
Handle for monitoring external IP changes.
Definition at line 197 of file gnunet-service-nat.c.
struct LocalAddressList* ClientHandle::ext_addr_head |
DLL of external IP addresses as given in hole_external.
Definition at line 202 of file gnunet-service-nat.c.
struct LocalAddressList* ClientHandle::ext_addr_tail |
DLL of external IP addresses as given in hole_external.
Definition at line 207 of file gnunet-service-nat.c.
uint16_t ClientHandle::ext_dns_port |
Port number we found in hole_external.
Definition at line 212 of file gnunet-service-nat.c.
enum GNUNET_NAT_RegisterFlags ClientHandle::flags |
What does this client care about?
Definition at line 217 of file gnunet-service-nat.c.
int ClientHandle::natted_address |
Is any of the caddrs in a reserved subnet for NAT?
Definition at line 222 of file gnunet-service-nat.c.
uint16_t ClientHandle::num_caddrs |
Number of addresses that this service is bound to.
Length of the caddrs array.
Definition at line 228 of file gnunet-service-nat.c.
uint8_t ClientHandle::proto |
Client's IPPROTO, e.g.
IPPROTO_UDP or IPPROTO_TCP.
Definition at line 233 of file gnunet-service-nat.c.