code: func (cm *rpcConnManager) Connect(addr string, permanent bool) error {
  	replyChan := make(chan error)
  	cm.server.query <- connectNodeMsg{
  		addr:      addr,
  		permanent: permanent,
  		reply:     replyChan,
  	}
  	return <-replyChan
  }
docs: // Connect adds the provided address as a new outbound peer.  The permanent flag
  // indicates whether or not to make the peer persistent and reconnect if the
  // connection is lost.  Attempting to connect to an already existing peer will
  // return an error.
  //
  // This function is safe for concurrent access and is part of the
  // rpcserverConnManager interface implementation.