connection

package
v0.0.0-...-4d8fa54 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 2, 2026 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func HandleConnection

func HandleConnection(conn *quic.Conn, tc *dbp.HeaderStoreCache, ctx context.Context, connConfig ConnectionConfig)

func HandleDatagram

func HandleDatagram(b []byte, conn *quic.Conn, tc *dbp.HeaderStoreCache, routeFunc func(rr *dbp.RequestResponse, ctx context.Context) error, ctx context.Context)

func HandleStream

func HandleStream(stream *quic.Stream, conn *quic.Conn, tc *dbp.HeaderStoreCache, routeFunc func(rr *dbp.RequestResponse, ctx context.Context) error, ctx context.Context)

func HandleUniStream

func HandleUniStream(stream *quic.ReceiveStream, tc *dbp.HeaderStoreCache, routeFunc func(rr *dbp.RequestResponse, ctx context.Context) error, ctx context.Context)

func Listen

func Listen(ctx context.Context, tr *quic.Transport, tlsConfig *tls.Config, quicConfig *quic.Config, connConfig ConnectionConfig)

func LoopDatagram

func LoopDatagram(conn *quic.Conn, tc *dbp.HeaderStoreCache, routeFunc func(rr *dbp.RequestResponse, ctx context.Context) error, ctx context.Context)

func LoopStreams

func LoopStreams(conn *quic.Conn, tc *dbp.HeaderStoreCache, routeFunc func(rr *dbp.RequestResponse, ctx context.Context) error, ctx context.Context)

func LoopUniStreams

func LoopUniStreams(conn *quic.Conn, tc *dbp.HeaderStoreCache, routeFunc func(rr *dbp.RequestResponse, ctx context.Context) error, ctx context.Context)

Types

type ConnectionConfig

type ConnectionConfig struct {
	RouteFuncBi       func(rr *dbp.RequestResponse, ctx context.Context) error
	RouteFuncUni      func(rr *dbp.RequestResponse, ctx context.Context) error
	RouteFuncDatagram func(rr *dbp.RequestResponse, ctx context.Context) error
	SetupConnection   func(conn *quic.Conn, tc *dbp.HeaderStoreCache)
	AutoClose         bool
	Storage           data.Storage
}

type DbufConnection

type DbufConnection struct {
	QuicConnection *quic.Conn
	Cache          *dbp.HeaderStoreCache
}

func Dial

func Dial(ctx context.Context, tr *quic.Transport, addr net.Addr, tlsConfig *tls.Config, quicConfig *quic.Config, connConfig ConnectionConfig) (*DbufConnection, error)

func (*DbufConnection) HeaderStoreCache

func (c *DbufConnection) HeaderStoreCache() *dbp.HeaderStoreCache

func (*DbufConnection) OpenStreamSync

func (c *DbufConnection) OpenStreamSync(ctx context.Context) (io.ReadWriteCloser, error)

type KeyInit

type KeyInit struct {
	HasIdentity   bool
	AuthorityRef  basic.DbufValSeq
	Identity      basic.DbufValSeq
	KeyId         basic.DbufValSeq
	PublicKeyData basic.DbufValSeq
	PrivateKey    ed25519.PrivateKey
}

type TestKeyManager

type TestKeyManager struct {
	Keys           map[string]KeyInit
	DataChangeFunc func(TestKeyManager)
}

func MakeTestKeyManager

func MakeTestKeyManager() *TestKeyManager

func (*TestKeyManager) CreateKey

func (m *TestKeyManager) CreateKey(authorityRef basic.DbufValSeq) (keyId basic.DbufValSeq, publicKeyData basic.DbufValSeq, err error)

func (*TestKeyManager) GetKey

func (m *TestKeyManager) GetKey(authorityRef basic.DbufValSeq) (identity basic.DbufValSeq, keyId basic.DbufValSeq, keyData basic.DbufValSeq, err error)

func (*TestKeyManager) GetSignature

func (m *TestKeyManager) GetSignature(authorityRef basic.DbufValSeq, message []byte) (signature basic.DbufValSeq, err error)

func (*TestKeyManager) InitIdentity

func (m *TestKeyManager) InitIdentity(authorityRef basic.DbufValSeq, identity basic.DbufValSeq) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL