Browse Source

actually close tcp and udp servers

pull/82/head
Darien Raymond 9 years ago
parent
commit
f19da2058a
  1. 5
      testing/servers/tcp/tcp.go
  2. 3
      testing/servers/udp/udp.go

5
testing/servers/tcp/tcp.go

@ -12,6 +12,7 @@ type Server struct {
Port v2net.Port
MsgProcessor func(msg []byte) []byte
accepting bool
listener *net.TCPListener
}
func (server *Server) Start() (v2net.Destination, error) {
@ -23,6 +24,7 @@ func (server *Server) Start() (v2net.Destination, error) {
if err != nil {
return nil, err
}
server.listener = listener
go server.acceptConnections(listener)
localAddr := listener.Addr().(*net.TCPAddr)
return v2net.TCPDestination(v2net.IPAddress(localAddr.IP), v2net.Port(localAddr.Port)), nil
@ -55,5 +57,6 @@ func (server *Server) handleConnection(conn net.Conn) {
}
func (this *Server) Close() {
this.accepting = true
this.accepting = false
this.listener.Close()
}

3
testing/servers/udp/udp.go

@ -11,6 +11,7 @@ type Server struct {
Port v2net.Port
MsgProcessor func(msg []byte) []byte
accepting bool
conn *net.UDPConn
}
func (server *Server) Start() (v2net.Destination, error) {
@ -22,6 +23,7 @@ func (server *Server) Start() (v2net.Destination, error) {
if err != nil {
return nil, err
}
server.conn = conn
go server.handleConnection(conn)
localAddr := conn.LocalAddr().(*net.UDPAddr)
return v2net.UDPDestination(v2net.IPAddress(localAddr.IP), v2net.Port(localAddr.Port)), nil
@ -45,4 +47,5 @@ func (server *Server) handleConnection(conn *net.UDPConn) {
func (server *Server) Close() {
server.accepting = false
server.conn.Close()
}

Loading…
Cancel
Save