Low-level connection to a destination. More...
| Data Fields | |
| struct GNUNET_CADET_ConnectionTunnelIdentifier | cid | 
| ID of the connection. | |
| struct CadetPeer * | destination | 
| To which peer does this connection go? | |
| struct CadetTConnection * | ct | 
| Which tunnel is using this connection? | |
| struct CadetPeerPath * | path | 
| Path we are using to our destination. | |
| struct GNUNET_MQ_Envelope * | env | 
| Pending message, NULL if we are ready to transmit. | |
| struct GCP_MessageQueueManager * | mq_man | 
| Handle for calling GCP_request_mq_cancel() once we are finished. | |
| struct GNUNET_SCHEDULER_Task * | task | 
| Task for connection maintenance. | |
| struct CadetTunnelQueueEntry * | keepalive_qe | 
| Queue entry for keepalive messages. | |
| GCC_ReadyCallback | ready_cb | 
| Function to call once we are ready to transmit. | |
| void * | ready_cb_cls | 
| Closure for ready_cb. | |
| struct GNUNET_TIME_Relative | retry_delay | 
| How long do we wait before we try again with a CREATE message? | |
| struct GNUNET_TIME_Absolute | create_at | 
| Earliest time for re-trying CREATE. | |
| struct GNUNET_TIME_Absolute | create_ack_at | 
| Earliest time for re-trying CREATE_ACK. | |
| struct CadetConnectionMetrics | metrics | 
| Performance metrics for this connection. | |
| enum CadetConnectionState | state | 
| State of the connection. | |
| unsigned int | latency_datapoints | 
| How many latency observations did we make for this connection? | |
| unsigned int | off | 
| Offset of our destination in path. | |
| int | mqm_ready | 
| Are we ready to transmit via mq_man right now? | |
Low-level connection to a destination.
Definition at line 85 of file gnunet-service-cadet_connection.c.
| struct GNUNET_CADET_ConnectionTunnelIdentifier CadetConnection::cid | 
ID of the connection.
Definition at line 90 of file gnunet-service-cadet_connection.c.
Referenced by connection_create(), data_sent_cb(), GCC_2s(), GCC_ack_expected(), GCC_ack_observed(), GCC_create_inbound(), GCC_destroy_without_tunnel(), GCC_get_id(), GCC_handle_kx(), GCC_handle_kx_auth(), GCC_latency_observed(), GCC_lookup(), send_create(), and send_create_ack().
To which peer does this connection go?
Definition at line 95 of file gnunet-service-cadet_connection.c.
Referenced by connection_create(), GCC_create_inbound(), GCC_debug(), and send_create().
| struct CadetTConnection* CadetConnection::ct | 
Which tunnel is using this connection?
Definition at line 100 of file gnunet-service-cadet_connection.c.
Referenced by connection_create(), destroy_t_connection(), evaluate_connection(), GCC_2s(), GCC_create_inbound(), GCC_destroy_without_core(), GCC_destroy_without_tunnel(), GCC_get_ct(), GCC_handle_encrypted(), GCC_handle_kx(), GCC_handle_kx_auth(), send_keepalive(), and update_state().
| struct CadetPeerPath* CadetConnection::path | 
Path we are using to our destination.
Definition at line 105 of file gnunet-service-cadet_connection.c.
Referenced by connection_create(), GCC_create_inbound(), GCC_debug(), GCC_destroy(), GCC_get_path(), and send_create().
| struct GNUNET_MQ_Envelope* CadetConnection::env | 
Pending message, NULL if we are ready to transmit.
Definition at line 110 of file gnunet-service-cadet_connection.c.
Referenced by send_create(), and send_create_ack().
| struct GCP_MessageQueueManager* CadetConnection::mq_man | 
Handle for calling GCP_request_mq_cancel() once we are finished.
Definition at line 115 of file gnunet-service-cadet_connection.c.
Referenced by connection_create(), GCC_destroy(), GCC_destroy_without_tunnel(), GCC_transmit(), send_create(), and send_create_ack().
| struct GNUNET_SCHEDULER_Task* CadetConnection::task | 
Task for connection maintenance.
Definition at line 120 of file gnunet-service-cadet_connection.c.
Referenced by GCC_destroy(), GCC_handle_connection_create_ack(), GCC_handle_duplicate_create(), GCC_transmit(), keepalive_done(), manage_first_hop_mq(), send_create(), send_create_ack(), and send_keepalive().
| struct CadetTunnelQueueEntry* CadetConnection::keepalive_qe | 
Queue entry for keepalive messages.
Definition at line 125 of file gnunet-service-cadet_connection.c.
Referenced by GCC_destroy(), GCC_handle_connection_create_ack(), keepalive_done(), manage_first_hop_mq(), and send_keepalive().
| GCC_ReadyCallback CadetConnection::ready_cb | 
Function to call once we are ready to transmit.
Definition at line 130 of file gnunet-service-cadet_connection.c.
Referenced by connection_create(), GCC_create_inbound(), and update_state().
| void* CadetConnection::ready_cb_cls | 
Closure for ready_cb.
Definition at line 135 of file gnunet-service-cadet_connection.c.
Referenced by connection_create(), GCC_create_inbound(), and update_state().
| struct GNUNET_TIME_Relative CadetConnection::retry_delay | 
How long do we wait before we try again with a CREATE message?
Definition at line 140 of file gnunet-service-cadet_connection.c.
Referenced by connection_create(), manage_first_hop_mq(), send_create(), and send_create_ack().
| struct GNUNET_TIME_Absolute CadetConnection::create_at | 
Earliest time for re-trying CREATE.
Definition at line 145 of file gnunet-service-cadet_connection.c.
Referenced by manage_first_hop_mq(), and send_create().
| struct GNUNET_TIME_Absolute CadetConnection::create_ack_at | 
Earliest time for re-trying CREATE_ACK.
Definition at line 150 of file gnunet-service-cadet_connection.c.
Referenced by GCC_handle_duplicate_create(), manage_first_hop_mq(), and send_create_ack().
| struct CadetConnectionMetrics CadetConnection::metrics | 
Performance metrics for this connection.
Definition at line 155 of file gnunet-service-cadet_connection.c.
Referenced by GCC_ack_expected(), GCC_ack_observed(), GCC_get_metrics(), GCC_handle_connection_create_ack(), GCC_handle_encrypted(), GCC_latency_observed(), GCC_transmit(), and manage_first_hop_mq().
| enum CadetConnectionState CadetConnection::state | 
State of the connection.
Definition at line 160 of file gnunet-service-cadet_connection.c.
Referenced by connection_create(), GCC_debug(), GCC_destroy_without_tunnel(), GCC_handle_connection_create_ack(), GCC_handle_encrypted(), GCC_handle_kx(), GCC_handle_kx_auth(), GCC_transmit(), manage_first_hop_mq(), send_create_ack(), and update_state().
How many latency observations did we make for this connection?
Definition at line 165 of file gnunet-service-cadet_connection.c.
Referenced by GCC_latency_observed().
| unsigned int CadetConnection::off | 
Offset of our destination in path.
Definition at line 170 of file gnunet-service-cadet_connection.c.
Referenced by connection_create(), data_sent_cb(), evaluate_connection(), GCC_ack_expected(), GCC_ack_observed(), GCC_create_inbound(), GCC_destroy(), GCC_destroy_without_core(), GCC_destroy_without_tunnel(), GCC_get_path(), GCC_handle_connection_create_ack(), GCC_latency_observed(), handle_connection_create_ack(), handle_tunnel_encrypted(), handle_tunnel_kx(), handle_tunnel_kx_auth(), keepalive_done(), manage_first_hop_mq(), send_create(), and update_state().
| int CadetConnection::mqm_ready | 
Are we ready to transmit via mq_man right now?
Definition at line 175 of file gnunet-service-cadet_connection.c.
Referenced by GCC_debug(), GCC_handle_connection_create_ack(), GCC_handle_duplicate_create(), GCC_transmit(), keepalive_done(), manage_first_hop_mq(), send_create(), send_create_ack(), send_keepalive(), and update_state().