1
1
Fork 0
mirror of https://git.sr.ht/~emersion/tlstunnel synced 2024-04-26 06:45:03 +02:00

readme: fix issue tracker link

This commit is contained in:
Simon Ser 2020-11-05 17:36:07 +01:00
parent dab2eb4449
commit 30dc7be08e
No known key found for this signature in database
GPG Key ID: 0FDE7BE0E88F5E48
2 changed files with 19 additions and 1 deletions

View File

@ -28,4 +28,4 @@ MIT
[tlstunnel]: https://sr.ht/~emersion/tlstunnel/
[PROXY protocol]: https://www.haproxy.org/download/2.3/doc/proxy-protocol.txt
[mailing list]: https://lists.sr.ht/~emersion/public-inbox
[issue tracker]: https://git.sr.ht/~emersion/tlstunnel
[issue tracker]: https://todo.sr.ht/~emersion/tlstunnel

View File

@ -15,6 +15,10 @@ import (
"github.com/pires/go-proxyproto/tlvparse"
)
type conn struct {
downstream, upstream net.Conn
}
type Server struct {
Listeners map[string]*Listener // indexed by listening address
Frontends []*Frontend
@ -24,6 +28,8 @@ type Server struct {
ACMEManager *certmagic.ACMEManager
ACMEConfig *certmagic.Config
conns map[*conn]struct{}
}
func NewServer() *Server {
@ -76,10 +82,16 @@ func (srv *Server) Start() error {
return nil
}
func (srv *Server) Close() error {
}
type Listener struct {
Address string
Server *Server
Frontends map[string]*Frontend // indexed by server name
ln net.Listener
}
func newListener(srv *Server, addr string) *Listener {
@ -105,6 +117,8 @@ func (ln *Listener) Start() error {
}
log.Printf("listening on %q", ln.Address)
ln.ln = netLn
go func() {
if err := ln.serve(netLn); err != nil {
log.Fatalf("listener %q: %v", ln.Address, err)
@ -114,6 +128,10 @@ func (ln *Listener) Start() error {
return nil
}
func (ln *Listener) Close() error {
return ln.ln.Close()
}
func (ln *Listener) serve(netLn net.Listener) error {
for {
conn, err := netLn.Accept()