Client connected to the transport service. More...
Data Fields | ||
struct TransportClient * | next | |
Kept in a DLL. | ||
struct TransportClient * | prev | |
Kept in a DLL. | ||
struct GNUNET_SERVICE_Client * | client | |
Handle to the client. | ||
struct GNUNET_MQ_Handle * | mq | |
Message queue to the client. | ||
enum ClientType | type | |
What type of client is this? | ||
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 2559 of file gnunet-service-transport.c.
struct TransportClient* TransportClient::next |
Kept in a DLL.
Definition at line 2564 of file gnunet-service-transport.c.
struct TransportClient* TransportClient::prev |
Kept in a DLL.
Definition at line 2569 of file gnunet-service-transport.c.
struct GNUNET_SERVICE_Client* TransportClient::client |
Handle to the client.
Definition at line 2574 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 2579 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 2584 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 2597 of file gnunet-service-transport.c.
struct PendingMessage* TransportClient::pending_msg_tail |
Tail of list of messages pending for this client.
Definition at line 2602 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 2615 of file gnunet-service-transport.c.
int TransportClient::one_shot |
Is this a one-shot monitor?
Definition at line 2620 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 2633 of file gnunet-service-transport.c.
struct Queue* TransportClient::queue_head |
Head of DLL of queues offered by this communicator.
Definition at line 2638 of file gnunet-service-transport.c.
struct Queue* TransportClient::queue_tail |
Tail of DLL of queues offered by this communicator.
Definition at line 2643 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 2649 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 2655 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 2662 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 2667 of file gnunet-service-transport.c.
enum GNUNET_TRANSPORT_CommunicatorCharacteristics TransportClient::cc |
Characteristics of this communicator.
Definition at line 2672 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 2677 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 2690 of file gnunet-service-transport.c.
struct { ... } TransportClient::application |
Information for type CT_APPLICATION.
union { ... } TransportClient::details |
Referenced by handle_dv_learn().