traefik/pkg/tcp/handler.go

29 lines
642 B
Go
Raw Permalink Normal View History

package tcp
import (
"net"
)
2020-05-11 10:06:07 +00:00
// Handler is the TCP Handlers interface.
type Handler interface {
ServeTCP(conn WriteCloser)
}
// The HandlerFunc type is an adapter to allow the use of
// ordinary functions as handlers.
type HandlerFunc func(conn WriteCloser)
2020-05-11 10:06:07 +00:00
// ServeTCP serves tcp.
func (f HandlerFunc) ServeTCP(conn WriteCloser) {
f(conn)
}
// WriteCloser describes a net.Conn with a CloseWrite method.
type WriteCloser interface {
net.Conn
// CloseWrite on a network connection, indicates that the issuer of the call
// has terminated sending on that connection.
// It corresponds to sending a FIN packet.
CloseWrite() error
}