mirror of
https://github.com/caddyserver/caddy.git
synced 2025-04-19 10:49:17 +08:00
use embedded structs
Signed-off-by: Mohammed Al Sahaf <msaa1990@gmail.com>
This commit is contained in:
parent
c65fc0bb1a
commit
57a85ede02
@ -42,6 +42,8 @@ linters:
|
|||||||
- whitespace
|
- whitespace
|
||||||
- zerologlint
|
- zerologlint
|
||||||
settings:
|
settings:
|
||||||
|
staticcheck:
|
||||||
|
checks: ["all", "-ST1000", "-ST1003", "-ST1016", "-ST1020", "-ST1021", "-ST1022", "-QF1008"] # default, and exclude 1 more undesired check
|
||||||
errcheck:
|
errcheck:
|
||||||
exclude-functions:
|
exclude-functions:
|
||||||
- fmt.*
|
- fmt.*
|
||||||
|
16
listen.go
16
listen.go
@ -147,7 +147,7 @@ func (fcl *fakeCloseListener) Accept() (net.Conn, error) {
|
|||||||
err = tconn.SetKeepAlive(false)
|
err = tconn.SetKeepAlive(false)
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
Log().With(zap.String("server", fcl.key)).Warn("unable to set keepalive for new connection:", zap.Error(err))
|
Log().With(zap.String("server", fcl.sharedListener.key)).Warn("unable to set keepalive for new connection:", zap.Error(err))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return conn, nil
|
return conn, nil
|
||||||
@ -165,7 +165,7 @@ func (fcl *fakeCloseListener) Accept() (net.Conn, error) {
|
|||||||
// users of this listener, not just our own reference to it; we also don't
|
// users of this listener, not just our own reference to it; we also don't
|
||||||
// do anything with the error because all we could do is log it, but we
|
// do anything with the error because all we could do is log it, but we
|
||||||
// explicitly assign it to nothing so we don't forget it's there if needed
|
// explicitly assign it to nothing so we don't forget it's there if needed
|
||||||
_ = fcl.clearDeadline()
|
_ = fcl.sharedListener.clearDeadline()
|
||||||
|
|
||||||
if netErr, ok := err.(net.Error); ok && netErr.Timeout() {
|
if netErr, ok := err.(net.Error); ok && netErr.Timeout() {
|
||||||
return nil, fakeClosedErr(fcl)
|
return nil, fakeClosedErr(fcl)
|
||||||
@ -188,8 +188,8 @@ func (fcl *fakeCloseListener) Close() error {
|
|||||||
// file). But we can set the deadline in the past,
|
// file). But we can set the deadline in the past,
|
||||||
// and this is kind of cheating, but it works, and
|
// and this is kind of cheating, but it works, and
|
||||||
// it apparently even works on Windows.
|
// it apparently even works on Windows.
|
||||||
_ = fcl.setDeadline()
|
_ = fcl.sharedListener.setDeadline()
|
||||||
_, _ = listenerPool.Delete(fcl.key)
|
_, _ = listenerPool.Delete(fcl.sharedListener.key)
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
@ -236,7 +236,7 @@ func (sl *sharedListener) setDeadline() error {
|
|||||||
// Destruct is called by the UsagePool when the listener is
|
// Destruct is called by the UsagePool when the listener is
|
||||||
// finally not being used anymore. It closes the socket.
|
// finally not being used anymore. It closes the socket.
|
||||||
func (sl *sharedListener) Destruct() error {
|
func (sl *sharedListener) Destruct() error {
|
||||||
return sl.Close()
|
return sl.Listener.Close()
|
||||||
}
|
}
|
||||||
|
|
||||||
// fakeClosePacketConn is like fakeCloseListener, but for PacketConns,
|
// fakeClosePacketConn is like fakeCloseListener, but for PacketConns,
|
||||||
@ -279,13 +279,13 @@ func (fcpc *fakeClosePacketConn) ReadFrom(p []byte) (n int, addr net.Addr, err e
|
|||||||
func (fcpc *fakeClosePacketConn) Close() error {
|
func (fcpc *fakeClosePacketConn) Close() error {
|
||||||
if atomic.CompareAndSwapInt32(&fcpc.closed, 0, 1) {
|
if atomic.CompareAndSwapInt32(&fcpc.closed, 0, 1) {
|
||||||
_ = fcpc.SetReadDeadline(time.Now()) // unblock ReadFrom() calls to kick old servers out of their loops
|
_ = fcpc.SetReadDeadline(time.Now()) // unblock ReadFrom() calls to kick old servers out of their loops
|
||||||
_, _ = listenerPool.Delete(fcpc.key)
|
_, _ = listenerPool.Delete(fcpc.sharedPacketConn.key)
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (fcpc *fakeClosePacketConn) Unwrap() net.PacketConn {
|
func (fcpc *fakeClosePacketConn) Unwrap() net.PacketConn {
|
||||||
return fcpc.PacketConn
|
return fcpc.sharedPacketConn.PacketConn
|
||||||
}
|
}
|
||||||
|
|
||||||
// sharedPacketConn is like sharedListener, but for net.PacketConns.
|
// sharedPacketConn is like sharedListener, but for net.PacketConns.
|
||||||
@ -296,7 +296,7 @@ type sharedPacketConn struct {
|
|||||||
|
|
||||||
// Destruct closes the underlying socket.
|
// Destruct closes the underlying socket.
|
||||||
func (spc *sharedPacketConn) Destruct() error {
|
func (spc *sharedPacketConn) Destruct() error {
|
||||||
return spc.Close()
|
return spc.PacketConn.Close()
|
||||||
}
|
}
|
||||||
|
|
||||||
// Unwrap returns the underlying socket
|
// Unwrap returns the underlying socket
|
||||||
|
@ -574,7 +574,7 @@ type sharedQuicListener struct {
|
|||||||
// Destruct closes the underlying QUIC listener and its associated net.PacketConn.
|
// Destruct closes the underlying QUIC listener and its associated net.PacketConn.
|
||||||
func (sql *sharedQuicListener) Destruct() error {
|
func (sql *sharedQuicListener) Destruct() error {
|
||||||
// close EarlyListener first to stop any operations being done to the net.PacketConn
|
// close EarlyListener first to stop any operations being done to the net.PacketConn
|
||||||
_ = sql.Close()
|
_ = sql.EarlyListener.Close()
|
||||||
// then close the net.PacketConn
|
// then close the net.PacketConn
|
||||||
return sql.packetConn.Close()
|
return sql.packetConn.Close()
|
||||||
}
|
}
|
||||||
@ -626,7 +626,7 @@ func (fcql *fakeCloseQuicListener) Accept(_ context.Context) (quic.EarlyConnecti
|
|||||||
func (fcql *fakeCloseQuicListener) Close() error {
|
func (fcql *fakeCloseQuicListener) Close() error {
|
||||||
if atomic.CompareAndSwapInt32(&fcql.closed, 0, 1) {
|
if atomic.CompareAndSwapInt32(&fcql.closed, 0, 1) {
|
||||||
fcql.contextCancel()
|
fcql.contextCancel()
|
||||||
_, _ = listenerPool.Delete(fcql.key)
|
_, _ = listenerPool.Delete(fcql.sharedQuicListener.key)
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user