Documentation ¶
Index ¶
- type Config
- type ConfirmTunnelConstruction
- type ConfirmTunnelInstruction
- type ConstructTunnel
- type CryptoObject
- type DataConfirmTunnelConstruction
- type DataConstructTunnel
- type ExchangeKey
- type OnionCover
- type OnionError
- type OnionTunnelBuild
- type OnionTunnelData
- type OnionTunnelDestroy
- type OnionTunnelIncoming
- type OnionTunnelReady
- type OnionTunnelTrafficJam
- type Peer
- type RPSPeer
- type TCPConnection
- type TCPWriter
- type TunnelInstruction
- type UDPConnection
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { P2P_Port int `json:"p2p_port"` P2P_Hostname string `json:"p2p_hostname"` PrivateKey *rsa.PrivateKey `json:"private_key"` PublicKey *rsa.PublicKey `json:"public_key"` }
Model used to parse all necessary information out of an config.ini file TODO: Adapt later to actual config file, now just testing
type ConstructTunnel ¶
type CryptoObject ¶
type DataConstructTunnel ¶
type ExchangeKey ¶
type OnionCover ¶
type OnionError ¶
type OnionTunnelBuild ¶
type OnionTunnelData ¶
type OnionTunnelDestroy ¶
type OnionTunnelDestroy struct {
TunnelID uint32
}
type OnionTunnelIncoming ¶
type OnionTunnelIncoming struct {
TunnelID uint32
}
type OnionTunnelReady ¶
type OnionTunnelTrafficJam ¶
type Peer ¶
type Peer struct { TCPListener *net.TCPListener `json:"tcp_listener"` UDPListener *net.UDPConn `json:"udp_listener"` UDPPort int `json:"udp_port"` P2P_Port int `json:"p2p_port"` // This is the Port for the TCP port P2P_Hostname string `json:"p2p_hostname"` // This is the ip address of the peer PrivateKey *rsa.PrivateKey `json:"private_key"` PublicKey *rsa.PublicKey `json:"public_key"` UDPConnections map[uint32]*UDPConnection `json:"udp_connections"` TCPConnections map[uint32]*TCPConnection `json:"tcp_writers"` CryptoSessionMap map[string]*CryptoObject `json:"crypto_session_map"` TunnelHostOrder map[uint32]*list.List `json:"tunnel_host_order"` // Save all hashed hostkey of a tunnel connection ordered in a list }
TODO: Discuss wether to define it here or to define in it in the service packe >> Downside here is that calling with Peer as caller isn't possible Peer is the standard object for a running peer that is accepting connections
type TCPConnection ¶
type TCPConnection struct { TunnelId uint32 `json:"tunnel_id"` LeftWriter *TCPWriter `json:"left_writer"` RightWriter *TCPWriter `json:"right_writer"` FinalDestination *OnionTunnelBuild `json:"final_destination"` OriginHostkey []byte `json:"origin_hostkey"` }
Identify by id in hashmap
type TunnelInstruction ¶
type UDPConnection ¶
Click to show internal directories.
Click to hide internal directories.