Tor 0.4.9.0-alpha-dev
Data Fields
half_edge_t Struct Reference

#include <half_edge_st.h>

Data Fields

streamid_t stream_id
 
int sendmes_pending
 
int data_pending
 
uint64_t end_ack_expected_usec
 
unsigned int used_ccontrol: 1
 
unsigned int connected_pending: 1
 

Detailed Description

Struct to track a connection that we closed that the other end still thinks is open. Exists in origin_circuit_t.half_streams until we get an end cell or a resolved cell for this stream id.

Definition at line 22 of file half_edge_st.h.

Field Documentation

◆ connected_pending

unsigned int connected_pending

Is there a connected cell pending?

Definition at line 47 of file half_edge_st.h.

Referenced by connection_half_edge_is_valid_connected().

◆ data_pending

int data_pending

How much more data can the other end still send, based on our deliver window

Definition at line 32 of file half_edge_st.h.

Referenced by connection_half_edge_is_valid_data().

◆ end_ack_expected_usec

uint64_t end_ack_expected_usec

Monotime timestamp of when the other end should have successfully shut down the stream and stop sending data, based on the larger of circuit RTT and CBT. Used if 'used_ccontrol' is true, to expire the half_edge at this monotime timestamp.

Definition at line 39 of file half_edge_st.h.

Referenced by connection_half_edge_is_valid_data().

◆ sendmes_pending

int sendmes_pending

How many sendme's can the other end still send, based on how much data we had sent at the time of close

Definition at line 28 of file half_edge_st.h.

Referenced by connection_half_edge_is_valid_sendme().

◆ stream_id

streamid_t stream_id

stream_id for the half-closed connection

Definition at line 24 of file half_edge_st.h.

Referenced by connection_half_edge_compare_bsearch().

◆ used_ccontrol

unsigned int used_ccontrol

Did this edge use congestion control? If so, use timer instead of pending data approach

Definition at line 44 of file half_edge_st.h.

Referenced by connection_half_edge_is_valid_data(), and connection_half_edge_is_valid_sendme().


The documentation for this struct was generated from the following file: