Documentation ¶
Index ¶
- type Link
- type Opts
- func (m *Opts) CloneMessageVT() protobuf_go_lite.CloneMessage
- func (m *Opts) CloneVT() *Opts
- func (this *Opts) EqualMessageVT(thatMsg any) bool
- func (this *Opts) EqualVT(that *Opts) bool
- func (x *Opts) GetQuic() *quic.Opts
- func (x *Opts) GetVerbose() bool
- func (x *Opts) MarshalJSON() ([]byte, error)
- func (x *Opts) MarshalProtoJSON(s *json.MarshalState)
- func (x *Opts) MarshalProtoText() string
- func (m *Opts) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *Opts) MarshalToVT(dAtA []byte) (int, error)
- func (m *Opts) MarshalVT() (dAtA []byte, err error)
- func (*Opts) ProtoMessage()
- func (x *Opts) Reset()
- func (m *Opts) SizeVT() (n int)
- func (x *Opts) String() string
- func (x *Opts) UnmarshalJSON(b []byte) error
- func (x *Opts) UnmarshalProtoJSON(s *json.UnmarshalState)
- func (m *Opts) UnmarshalVT(dAtA []byte) error
- type Transport
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Link ¶
type Link = transport_quic.Link
Link is a Quic-based connection/link backed by a packet connection.
type Opts ¶
type Opts struct { // Quic are the quic protocol options. Quic *quic.Opts `protobuf:"bytes,1,opt,name=quic,proto3" json:"quic,omitempty"` // Verbose turns on verbose debug logging. Verbose bool `protobuf:"varint,2,opt,name=verbose,proto3" json:"verbose,omitempty"` // contains filtered or unexported fields }
Opts are extra options for the packet conn.
func (*Opts) CloneMessageVT ¶ added in v0.15.6
func (m *Opts) CloneMessageVT() protobuf_go_lite.CloneMessage
func (*Opts) EqualMessageVT ¶ added in v0.15.6
func (*Opts) GetVerbose ¶
func (*Opts) MarshalJSON ¶ added in v0.29.0
MarshalJSON marshals the Opts to JSON.
func (*Opts) MarshalProtoJSON ¶ added in v0.29.0
func (x *Opts) MarshalProtoJSON(s *json.MarshalState)
MarshalProtoJSON marshals the Opts message to JSON.
func (*Opts) MarshalProtoText ¶ added in v0.29.2
func (*Opts) MarshalToSizedBufferVT ¶ added in v0.2.0
func (*Opts) ProtoMessage ¶
func (*Opts) ProtoMessage()
func (*Opts) UnmarshalJSON ¶ added in v0.29.0
UnmarshalJSON unmarshals the Opts from JSON.
func (*Opts) UnmarshalProtoJSON ¶ added in v0.29.0
func (x *Opts) UnmarshalProtoJSON(s *json.UnmarshalState)
UnmarshalProtoJSON unmarshals the Opts message from JSON.
func (*Opts) UnmarshalVT ¶ added in v0.2.0
type Transport ¶
type Transport struct { // Transport is the underlying quic transport *transport_quic.Transport // contains filtered or unexported fields }
Transport implements a bifrost transport with a Quic-based packet conn. Transport UUIDs are deterministic and based on the LocalAddr() of the pconn.
func NewTransport ¶
func NewTransport( ctx context.Context, le *logrus.Entry, privKey crypto.PrivKey, tc transport.TransportHandler, opts *Opts, uuid uint64, pc net.PacketConn, addrParser func(addr string) (net.Addr, error), staticPeerMap map[string]*dialer.DialerOpts, ) (*Transport, error)
NewTransport constructs a new packet-conn based transport.
func (*Transport) Execute ¶
Execute executes the transport as configured, returning any fatal error.
func (*Transport) GetPeerDialer ¶ added in v0.21.0
GetPeerDialer returns the dialing information for a peer. Called when resolving EstablishLink. Return nil, nil to indicate not found or unavailable.