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... | |
struct GNUNET_SCHEDULER_Task * free_queue_entry_task | |
Task to check for timed out QueueEntry. More... | |
enum GNUNET_TRANSPORT_CommunicatorCharacteristics cc | |
Characteristics of this communicator. More... | |
enum GNUNET_GenericReturnValue can_burst | |
Can be used for burst messages. 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 |
Client connected to the transport service.
Definition at line 2549 of file gnunet-service-transport.c.
struct TransportClient* TransportClient::next |
Kept in a DLL.
Definition at line 2554 of file gnunet-service-transport.c.
struct TransportClient* TransportClient::prev |
Kept in a DLL.
Definition at line 2559 of file gnunet-service-transport.c.
struct GNUNET_SERVICE_Client* TransportClient::client |
Handle to the client.
Definition at line 2564 of file gnunet-service-transport.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 2569 of file gnunet-service-transport.c.
Referenced by finish_cmc_handling_with_continue().
enum ClientType TransportClient::type |
What type of client is this?
Definition at line 2574 of file gnunet-service-transport.c.
Referenced by 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 2587 of file gnunet-service-transport.c.
struct PendingMessage* TransportClient::pending_msg_tail |
Tail of list of messages pending for this client.
Definition at line 2592 of file gnunet-service-transport.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 2605 of file gnunet-service-transport.c.
int TransportClient::one_shot |
Is this a one-shot monitor?
Definition at line 2610 of file gnunet-service-transport.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 2623 of file gnunet-service-transport.c.
struct Queue* TransportClient::queue_head |
Head of DLL of queues offered by this communicator.
Definition at line 2628 of file gnunet-service-transport.c.
struct Queue* TransportClient::queue_tail |
Tail of DLL of queues offered by this communicator.
Definition at line 2633 of file gnunet-service-transport.c.
struct AddressListEntry* TransportClient::addr_head |
Head of list of the addresses of this peer offered by this communicator.
Definition at line 2639 of file gnunet-service-transport.c.
struct AddressListEntry* TransportClient::addr_tail |
Tail of list of the addresses of this peer offered by this communicator.
Definition at line 2645 of file gnunet-service-transport.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 2652 of file gnunet-service-transport.c.
struct GNUNET_SCHEDULER_Task* TransportClient::free_queue_entry_task |
Task to check for timed out QueueEntry.
Definition at line 2657 of file gnunet-service-transport.c.
enum GNUNET_TRANSPORT_CommunicatorCharacteristics TransportClient::cc |
Characteristics of this communicator.
Definition at line 2662 of file gnunet-service-transport.c.
Referenced by handle_dv_learn().
enum GNUNET_GenericReturnValue TransportClient::can_burst |
Can be used for burst messages.
Definition at line 2667 of file gnunet-service-transport.c.
struct { ... } TransportClient::communicator |
Information for type CT_COMMUNICATOR.
Referenced by handle_dv_learn().
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 2680 of file gnunet-service-transport.c.
struct { ... } TransportClient::application |
Information for type CT_APPLICATION.
union { ... } TransportClient::details |
Referenced by handle_dv_learn().