code: func (c *Config) readFields() error {
  	c.camliNetIP = c.jconf.OptionalString("camliNetIP", "")
  	c.listenAddr = c.jconf.OptionalString("listen", "")
  	c.baseURL = strings.TrimSuffix(c.jconf.OptionalString("baseURL", ""), "/")
  	c.httpsCert = c.jconf.OptionalString("httpsCert", "")
  	c.httpsKey = c.jconf.OptionalString("httpsKey", "")
  	c.https = c.jconf.OptionalBool("https", false)
  
  	_, explicitHTTPS := c.jconf["https"]
  	if c.httpsCert != "" && !explicitHTTPS {
  		return errors.New("httpsCert specified but https was not")
  	}
  	if c.httpsKey != "" && !explicitHTTPS {
  		return errors.New("httpsKey specified but https was not")
  	}
  	return nil
  }
docs: // readFields reads the low-level jsonconfig fields using the jsonconfig package
  // and copies them into c. This marks them as known fields before a future call to InstallerHandlers