code: func (s *Server) listen(listener net.Listener) {
  	for {
  		// Accept a connection
  		conn, err := listener.Accept()
  		if err != nil {
  			if s.shutdown {
  				return
  			}
  			s.logger.Printf("[ERR] consul.rpc: failed to accept RPC conn: %v", err)
  			continue
  		}
  
  		go s.handleConn(conn, false)
  		metrics.IncrCounter([]string{"rpc", "accept_conn"}, 1)
  	}
  }
docs: // listen is used to listen for incoming RPC connections