Client connected to the transport service. More...
Data Fields | |
struct TransportClient * | next |
Kept in a DLL. More... | |
struct TransportClient * | prev |
Kept in a DLL. More... | |
struct GNUNET_SERVICE_Client * | client |
Handle to the client. More... | |
struct GNUNET_MQ_Handle * | mq |
Message queue to the client. More... | |
enum ClientType | type |
What type of client is this? More... | |
union { | |
struct { | |
struct PendingMessage * pending_msg_head | |
Head of list of messages pending for this client, sorted by transmission time ("next_attempt" + possibly internal prioritization). More... | |
struct PendingMessage * pending_msg_tail | |
Tail of list of messages pending for this client. More... | |
} core | |
Information for type CT_CORE. More... | |
struct { | |
struct GNUNET_PeerIdentity peer | |
Peer identity to monitor the addresses of. More... | |
int one_shot | |
Is this a one-shot monitor? More... | |
} monitor | |
Information for type CT_MONITOR. More... | |
struct { | |
char * address_prefix | |
If type is CT_COMMUNICATOR, this communicator supports communicating using these addresses. More... | |
struct Queue * queue_head | |
Head of DLL of queues offered by this communicator. More... | |
struct Queue * queue_tail | |
Tail of DLL of queues offered by this communicator. More... | |
struct AddressListEntry * addr_head | |
Head of list of the addresses of this peer offered by this communicator. More... | |
struct AddressListEntry * addr_tail | |
Tail of list of the addresses of this peer offered by this communicator. More... | |
unsigned int total_queue_length | |
Number of queue entries in all queues to this communicator. More... | |
enum GNUNET_TRANSPORT_CommunicatorCharacteristics cc | |
Characteristics of this communicator. More... | |
} communicator | |
Information for type CT_COMMUNICATOR. More... | |
struct { | |
struct GNUNET_CONTAINER_MultiPeerMap * requests | |
Map of requests for peers the given client application would like to see connections for. More... | |
} application | |
Information for type CT_APPLICATION. More... | |
} | details |
union { | |
struct GNUNET_PeerIdentity monitor_peer | |
Peer identity to monitor the addresses of. More... | |
struct { | |
struct GST_BlacklistCheck * bc | |
Blacklist check that we're currently performing (or NULL if we're performing one that has been cancelled). More... | |
int waiting_for_reply | |
Set to GNUNET_YES if we're currently waiting for a reply. More... | |
int call_receive_done | |
GNUNET_YES if we have to call receive_done for this client More... | |
} blacklist | |
Additional details if type is CT_BLACKLIST. More... | |
} | details |
Client connected to the transport service.
Definition at line 2415 of file gnunet-service-tng.c.
struct TransportClient * TransportClient::next |
struct TransportClient * TransportClient::prev |
struct GNUNET_SERVICE_Client * TransportClient::client |
Handle to the client.
Definition at line 2430 of file gnunet-service-tng.c.
Referenced by client_connect_cb(), client_disconnect_cb(), demultiplex_with_cmc(), finish_cmc_handling_with_continue(), handle_fragment_box(), and handle_raw_message().
struct GNUNET_MQ_Handle * TransportClient::mq |
Message queue to the client.
Definition at line 2435 of file gnunet-service-tng.c.
Referenced by finish_cmc_handling_with_continue(), plugin_session_info_cb(), and transmit_address_to_client().
enum ClientType TransportClient::type |
What type of client is this?
Definition at line 2435 of file gnunet-service-tng.c.
Referenced by gnunet_testing.Condition::__init__(), gnunet_testing.Condition::evaluate(), gnunet_testing.FileExistCondition::evaluate(), GST_blacklist_test_cancel(), and handle_dv_learn().
struct PendingMessage* TransportClient::pending_msg_head |
Head of list of messages pending for this client, sorted by transmission time ("next_attempt" + possibly internal prioritization).
Definition at line 2453 of file gnunet-service-tng.c.
struct PendingMessage* TransportClient::pending_msg_tail |
Tail of list of messages pending for this client.
Definition at line 2458 of file gnunet-service-tng.c.
struct { ... } TransportClient::core |
Information for type CT_CORE.
struct GNUNET_PeerIdentity TransportClient::peer |
Peer identity to monitor the addresses of.
Zero to monitor all neighbours. Valid if type is CT_MONITOR.
Definition at line 2458 of file gnunet-service-tng.c.
Referenced by gnunet_testing.StatisticsCondition::check(), gnunet_testing.EqualStatisticsCondition::check(), gnunet_testing.StatisticsCondition::evaluate(), and gnunet_testing.EqualStatisticsCondition::evaluate().
int TransportClient::one_shot |
Is this a one-shot monitor?
Definition at line 2476 of file gnunet-service-tng.c.
struct { ... } TransportClient::monitor |
Information for type CT_MONITOR.
char* TransportClient::address_prefix |
If type is CT_COMMUNICATOR, this communicator supports communicating using these addresses.
Definition at line 2489 of file gnunet-service-tng.c.
struct Queue* TransportClient::queue_head |
Head of DLL of queues offered by this communicator.
Definition at line 2494 of file gnunet-service-tng.c.
struct Queue* TransportClient::queue_tail |
Tail of DLL of queues offered by this communicator.
Definition at line 2499 of file gnunet-service-tng.c.
struct AddressListEntry* TransportClient::addr_head |
Head of list of the addresses of this peer offered by this communicator.
Definition at line 2505 of file gnunet-service-tng.c.
struct AddressListEntry* TransportClient::addr_tail |
Tail of list of the addresses of this peer offered by this communicator.
Definition at line 2511 of file gnunet-service-tng.c.
unsigned int TransportClient::total_queue_length |
Number of queue entries in all queues to this communicator.
Used throttle sending to a communicator if we see that the communicator is globally unable to keep up.
Definition at line 2518 of file gnunet-service-tng.c.
enum GNUNET_TRANSPORT_CommunicatorCharacteristics TransportClient::cc |
Characteristics of this communicator.
Definition at line 2518 of file gnunet-service-tng.c.
struct { ... } TransportClient::communicator |
Information for type CT_COMMUNICATOR.
Referenced by handle_dv_learn(), and handle_validation_response().
struct GNUNET_CONTAINER_MultiPeerMap* TransportClient::requests |
Map of requests for peers the given client application would like to see connections for.
Maps from PIDs to struct PeerRequest
.
Definition at line 2535 of file gnunet-service-tng.c.
struct { ... } TransportClient::application |
Information for type CT_APPLICATION.
union { ... } TransportClient::details |
Referenced by GST_blacklist_test_cancel(), handle_dv_learn(), and handle_validation_response().
struct GNUNET_PeerIdentity TransportClient::monitor_peer |
Peer identity to monitor the addresses of.
Zero to monitor all neighbours. Valid if type is CT_MONITOR.
Definition at line 153 of file gnunet-service-transport.c.
struct GST_BlacklistCheck* TransportClient::bc |
Blacklist check that we're currently performing (or NULL if we're performing one that has been cancelled).
Definition at line 178 of file gnunet-service-transport.c.
Referenced by GST_blacklist_test_allowed(), and GST_blacklist_test_cancel().
int TransportClient::waiting_for_reply |
Set to GNUNET_YES if we're currently waiting for a reply.
Definition at line 183 of file gnunet-service-transport.c.
int TransportClient::call_receive_done |
GNUNET_YES if we have to call receive_done for this client
Definition at line 188 of file gnunet-service-transport.c.
struct { ... } TransportClient::blacklist |
Additional details if type is CT_BLACKLIST.
Referenced by GST_blacklist_test_cancel().
union { ... } TransportClient::details |