Merge branch 'dev' into cluster
This commit is contained in:
commit
4e8e4a2ad9
2
go.mod
2
go.mod
@ -6,7 +6,7 @@ require (
|
|||||||
github.com/99designs/gqlgen v0.17.13
|
github.com/99designs/gqlgen v0.17.13
|
||||||
github.com/Masterminds/semver/v3 v3.1.1
|
github.com/Masterminds/semver/v3 v3.1.1
|
||||||
github.com/atrox/haikunatorgo/v2 v2.0.1
|
github.com/atrox/haikunatorgo/v2 v2.0.1
|
||||||
github.com/datarhei/gosrt v0.2.1-0.20220812130440-71bf5952f57e
|
github.com/datarhei/gosrt v0.2.1-0.20220817065416-5d1fd7a090e5
|
||||||
github.com/datarhei/joy4 v0.0.0-20220728180719-f752080f4a36
|
github.com/datarhei/joy4 v0.0.0-20220728180719-f752080f4a36
|
||||||
github.com/go-playground/validator/v10 v10.11.0
|
github.com/go-playground/validator/v10 v10.11.0
|
||||||
github.com/gobwas/glob v0.2.3
|
github.com/gobwas/glob v0.2.3
|
||||||
|
|||||||
4
go.sum
4
go.sum
@ -76,8 +76,8 @@ github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:ma
|
|||||||
github.com/cpuguy83/go-md2man/v2 v2.0.1 h1:r/myEWzV9lfsM1tFLgDyu0atFtJ1fXn261LKYj/3DxU=
|
github.com/cpuguy83/go-md2man/v2 v2.0.1 h1:r/myEWzV9lfsM1tFLgDyu0atFtJ1fXn261LKYj/3DxU=
|
||||||
github.com/cpuguy83/go-md2man/v2 v2.0.1/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
|
github.com/cpuguy83/go-md2man/v2 v2.0.1/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
|
||||||
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
|
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
|
||||||
github.com/datarhei/gosrt v0.2.1-0.20220812130440-71bf5952f57e h1:0TwcuTPTumn12D0AGfephlJr5FZ/wDG31BHjaOCIN9E=
|
github.com/datarhei/gosrt v0.2.1-0.20220817065416-5d1fd7a090e5 h1:lTmd1w7UpULXD/B6LfRu4QJHDILq9W5atyLP+RCkoMA=
|
||||||
github.com/datarhei/gosrt v0.2.1-0.20220812130440-71bf5952f57e/go.mod h1:wyoTu+DG45XRuCgEq/y+R8nhZCrJbOyQKn+SwNrNVZ8=
|
github.com/datarhei/gosrt v0.2.1-0.20220817065416-5d1fd7a090e5/go.mod h1:wyoTu+DG45XRuCgEq/y+R8nhZCrJbOyQKn+SwNrNVZ8=
|
||||||
github.com/datarhei/joy4 v0.0.0-20220728180719-f752080f4a36 h1:ppjcv7wazy4d7vANREERXkSAUnhV/nfT2a+13u4ZijQ=
|
github.com/datarhei/joy4 v0.0.0-20220728180719-f752080f4a36 h1:ppjcv7wazy4d7vANREERXkSAUnhV/nfT2a+13u4ZijQ=
|
||||||
github.com/datarhei/joy4 v0.0.0-20220728180719-f752080f4a36/go.mod h1:Jcw/6jZDQQmPx8A7INEkXmuEF7E9jjBbSTfVSLwmiQw=
|
github.com/datarhei/joy4 v0.0.0-20220728180719-f752080f4a36/go.mod h1:Jcw/6jZDQQmPx8A7INEkXmuEF7E9jjBbSTfVSLwmiQw=
|
||||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
|
|||||||
66
vendor/github.com/datarhei/gosrt/listen.go
generated
vendored
66
vendor/github.com/datarhei/gosrt/listen.go
generated
vendored
@ -157,7 +157,8 @@ type listener struct {
|
|||||||
// The address has the form "host:port".
|
// The address has the form "host:port".
|
||||||
//
|
//
|
||||||
// Examples:
|
// Examples:
|
||||||
// Listen("srt", "127.0.0.1:3000", DefaultConfig())
|
//
|
||||||
|
// Listen("srt", "127.0.0.1:3000", DefaultConfig())
|
||||||
//
|
//
|
||||||
// In case of an error, the returned Listener is nil and the error is non-nil.
|
// In case of an error, the returned Listener is nil and the error is non-nil.
|
||||||
func Listen(network, address string, config Config) (Listener, error) {
|
func Listen(network, address string, config Config) (Listener, error) {
|
||||||
@ -177,36 +178,45 @@ func Listen(network, address string, config Config) (Listener, error) {
|
|||||||
config: config,
|
config: config,
|
||||||
}
|
}
|
||||||
|
|
||||||
raddr, err := net.ResolveUDPAddr("udp", address)
|
lc := net.ListenConfig{
|
||||||
|
Control: func(network, address string, c syscall.RawConn) error {
|
||||||
|
var opErr error
|
||||||
|
err := c.Control(func(fd uintptr) {
|
||||||
|
// Set REUSEPORT
|
||||||
|
opErr = syscall.SetsockoptInt(int(fd), syscall.SOL_SOCKET, syscall.SO_REUSEPORT, 1)
|
||||||
|
if opErr != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set TOS
|
||||||
|
if config.IPTOS > 0 {
|
||||||
|
opErr = syscall.SetsockoptInt(int(fd), syscall.IPPROTO_IP, syscall.IP_TOS, config.IPTOS)
|
||||||
|
if opErr != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set TTL
|
||||||
|
if config.IPTTL > 0 {
|
||||||
|
opErr = syscall.SetsockoptInt(int(fd), syscall.IPPROTO_IP, syscall.IP_TTL, config.IPTTL)
|
||||||
|
if opErr != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
return opErr
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
lp, err := lc.ListenPacket(context.Background(), "udp", address)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("listen: unable to resolve address: %w", err)
|
return nil, fmt.Errorf("listen: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
pc, err := net.ListenUDP("udp", raddr)
|
pc := lp.(*net.UDPConn)
|
||||||
if err != nil {
|
|
||||||
return nil, fmt.Errorf("listen: failed listening: %w", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
file, err := pc.File()
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Set TOS
|
|
||||||
if config.IPTOS > 0 {
|
|
||||||
err = syscall.SetsockoptInt(int(file.Fd()), syscall.IPPROTO_IP, syscall.IP_TOS, config.IPTOS)
|
|
||||||
if err != nil {
|
|
||||||
return nil, fmt.Errorf("listen: failed setting socket option TOS: %w", err)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Set TTL
|
|
||||||
if config.IPTTL > 0 {
|
|
||||||
err = syscall.SetsockoptInt(int(file.Fd()), syscall.IPPROTO_IP, syscall.IP_TTL, config.IPTTL)
|
|
||||||
if err != nil {
|
|
||||||
return nil, fmt.Errorf("listen: failed setting socket option TTL: %w", err)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ln.pc = pc
|
ln.pc = pc
|
||||||
ln.addr = pc.LocalAddr()
|
ln.addr = pc.LocalAddr()
|
||||||
|
|||||||
2
vendor/modules.txt
vendored
2
vendor/modules.txt
vendored
@ -48,7 +48,7 @@ github.com/cespare/xxhash/v2
|
|||||||
# github.com/cpuguy83/go-md2man/v2 v2.0.1
|
# github.com/cpuguy83/go-md2man/v2 v2.0.1
|
||||||
## explicit; go 1.11
|
## explicit; go 1.11
|
||||||
github.com/cpuguy83/go-md2man/v2/md2man
|
github.com/cpuguy83/go-md2man/v2/md2man
|
||||||
# github.com/datarhei/gosrt v0.2.1-0.20220812130440-71bf5952f57e
|
# github.com/datarhei/gosrt v0.2.1-0.20220817065416-5d1fd7a090e5
|
||||||
## explicit; go 1.16
|
## explicit; go 1.16
|
||||||
github.com/datarhei/gosrt
|
github.com/datarhei/gosrt
|
||||||
github.com/datarhei/gosrt/internal/circular
|
github.com/datarhei/gosrt/internal/circular
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user