|  | @@ -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()
 | 
	
		
			
				|  |  |  }
 |