Property | Type | Description | |
---|---|---|---|
Header | MemBlock | ||
LocalID | int |
Property | Type | Description | |
---|---|---|---|
_ias | IForwarderSelector | ||
_local_ta | TransportAddress | ||
_mid | MemBlock | ||
_rand | |||
_remote_id | int | ||
_remote_ta | TransportAddress | ||
_tunnels | List |
Method | Description | |
---|---|---|
DisconnectionHandler ( Connection con ) : void |
We don't want to send on disconnected edges. So we remove said connections and edges!
|
|
ShouldClose ( ) : bool |
We need to make sure we still have a way out of the tunnel maze, otherwise we could get an endless loop resulting in a stack exception. For now, we will simply ensure that one of our overlap or our overlaps overlap has at least one such connection. Furthermore, if we have a long chain of tunnels relying on one overlap, they will eventually all close after the top most peer which happens to be in their overlap closes.
|
|
TunnelEdge ( IEdgeSendHandler send_handler, Brunet.Tunnel.TunnelTransportAddress local_ta, Brunet.Tunnel.TunnelTransportAddress remote_ta, IForwarderSelector ias, List |
Outgoing edge, since we don't know the RemoteID yet!
|
|
TunnelEdge ( IEdgeSendHandler send_handler, Brunet.Tunnel.TunnelTransportAddress local_ta, Brunet.Tunnel.TunnelTransportAddress remote_ta, IForwarderSelector ias, List |
Constructor for a TunnelEdge, RemoteID == -1 for out bound.
|
|
UpdateNeighborIntersection ( List |
When our tunnel peer has some state change, he notifies us and use that information to update our overlap, here we set the overlap.
|
public DisconnectionHandler ( Connection con ) : void | ||
con | Connection | |
return | void |
public TunnelEdge ( IEdgeSendHandler send_handler, Brunet.Tunnel.TunnelTransportAddress local_ta, Brunet.Tunnel.TunnelTransportAddress remote_ta, IForwarderSelector ias, List |
||
send_handler | IEdgeSendHandler | |
local_ta | Brunet.Tunnel.TunnelTransportAddress | |
remote_ta | Brunet.Tunnel.TunnelTransportAddress | |
ias | IForwarderSelector | |
overlap | List |
|
return | System |
public TunnelEdge ( IEdgeSendHandler send_handler, Brunet.Tunnel.TunnelTransportAddress local_ta, Brunet.Tunnel.TunnelTransportAddress remote_ta, IForwarderSelector ias, List |
||
send_handler | IEdgeSendHandler | |
local_ta | Brunet.Tunnel.TunnelTransportAddress | |
remote_ta | Brunet.Tunnel.TunnelTransportAddress | |
ias | IForwarderSelector | |
overlap | List |
|
remote_id | int | |
return | System |
public UpdateNeighborIntersection ( List |
||
neighbors | List |
|
return | void |