code: func (e *ECU) controlTLSConfig() (*tls.Config, error) {
  	rootCACerts := x509.NewCertPool()
  	data, err := ioutil.ReadFile(e.cfg.CACertsFile)
  	if err != nil {
  		return nil, fmt.Errorf("failed to read CA cert file: %v", err)
  	}
  	if ok := rootCACerts.AppendCertsFromPEM(data); !ok {
  		return nil, errors.New("failed to load CA certificates")
  	}
  	certs, err := tls.LoadX509KeyPair(e.cfg.ECUCertFile, e.cfg.ECUKeyFile)
  	if err != nil {
  		return nil, fmt.Errorf("failed to load X.509 key pair: %v", err)
  	}
  	// TODO(jsing): Make the server name configurable.
  	tlsConfig := &tls.Config{
  		Certificates: []tls.Certificate{certs},
  		RootCAs:      rootCACerts,
  		ServerName:   "seesaw.example.com",
  	}
  	return tlsConfig, nil
  }
docs: // controlTLSConfig returns a TLS configuration for use by the control server.