code: func (c *connection) useful() bool {
  	t := c.t
  	if c.closed.IsSet() {
  		return false
  	}
  	if !t.haveInfo() {
  		return c.supportsExtension("ut_metadata")
  	}
  	if t.seeding() && c.PeerInterested {
  		return true
  	}
  	if c.peerHasWantedPieces() {
  		return true
  	}
  	return false
  }
docs: // Returns whether the connection could be useful to us. We're seeding and
  // they want data, we don't have metainfo and they can provide it, etc.