quic

package
v0.6.1 Latest Latest
Warning

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

Go to latest
Published: Mar 25, 2022 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddInheritedFunc

func AddInheritedFunc(fn func([]*Listener, map[string]string))

AddInheritedFunc 平滑重启的时候,会回调该方法,保存fd列表

func DialAddrContext

func DialAddrContext(ctx context.Context, network string, laddr *net.UDPAddr, raddr string, tlsConf *tls.Config, config *quic.Config) (net.Conn, error)

DialAddrContext 使用quic协议链接远端 ctx: 上下文 network: 网络类型,可选:"udp", "udp4", "udp6" laddr: 本地监听的UDP协议地址 raddr: 远端的地址 tlsConf: 必须传入证书信息 config:quic的配置信息,可以为nil

func GetInheritedFunc

func GetInheritedFunc(fn func() []int)

GetInheritedFunc 如果是平滑重启,可以获取到从父进程继承过来的fd列表

func InheritedListen

func InheritedListen(network, laddr string, tlsConf *tls.Config, config *quic.Config) (net.Listener, error)

InheritedListen 使用quic协议启动监听,需要先判断是否是继承过来的端口

func SetInherited

func SetInherited() error

SetInherited 添加files列表到环境变量,让子进程继承, 1. 只有在reboot使用 2. 不支持windows系统

Types

type Conn

type Conn struct {
	// contains filtered or unexported fields
}

func (*Conn) Close

func (that *Conn) Close() error

func (*Conn) LocalAddr

func (that *Conn) LocalAddr() net.Addr

func (*Conn) Read

func (that *Conn) Read(b []byte) (n int, err error)

func (*Conn) RemoteAddr

func (that *Conn) RemoteAddr() net.Addr

func (*Conn) SetDeadline

func (that *Conn) SetDeadline(t time.Time) error

func (*Conn) SetReadDeadline

func (that *Conn) SetReadDeadline(t time.Time) error

func (*Conn) SetWriteDeadline

func (that *Conn) SetWriteDeadline(t time.Time) error

func (*Conn) Write

func (that *Conn) Write(b []byte) (n int, err error)

type Listener

type Listener struct {
	// contains filtered or unexported fields
}

func Listen

func Listen(conn net.PacketConn, tlsConf *tls.Config, config *quic.Config) (*Listener, error)

Listen 监听指定的链接 conn: PacketConn类型的链接 tlsConf: 必须传入证书信息 config:quic的配置信息,可以为nil

func ListenAddr

func ListenAddr(network, addr string, tlsConf *tls.Config, config *quic.Config) (*Listener, error)

ListenAddr 监听指定地址 network: 网络类型,可选:"udp", "udp4", "udp6" addr: 地址 tlsConf: 必须传入证书信息 config:quic的配置信息,可以为nil

func ListenUDPAddr

func ListenUDPAddr(network string, udpAddr *net.UDPAddr, tlsConf *tls.Config, config *quic.Config) (*Listener, error)

ListenUDPAddr 监听UDP协议地址 network: 网络类型,可选:"udp", "udp4", "udp6" addr: UDP协议地址 tlsConf: 必须传入证书信息 config:quic的配置信息,可以为nil

func (*Listener) Accept

func (that *Listener) Accept() (net.Conn, error)

func (*Listener) Addr

func (that *Listener) Addr() net.Addr

func (*Listener) Close

func (that *Listener) Close() error

func (*Listener) PacketConn

func (that *Listener) PacketConn() net.PacketConn

Jump to

Keyboard shortcuts

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