docs: def ValidateEndConfig(self, config_obj, errors_fatal=True):
      """Windows specific config validations."""
      errors = super(WindowsClientRepacker, self).ValidateEndConfig(
          config_obj, errors_fatal=errors_fatal)
  
      install_dir = config_obj["Client.install_path"]
      for path in config_obj["Client.tempdir_roots"]:
        if path.startswith("/"):
          errors.append(
              "Client.tempdir_root %s starts with /, probably has Unix path." %
              path)
        if not path.startswith(install_dir):
          errors.append(
              "Client.tempdir_root %s is not inside the install_dir %s, this is "
              "a security risk" % ((path, install_dir)))
  
      if config_obj.Get("Logging.path").startswith("/"):
        errors.append("Logging.path starts with /, probably has Unix path. %s" %
                      config_obj["Logging.path"])
  
      if "Windows\\" in config_obj.GetRaw("Logging.path"):
        errors.append("Windows in Logging.path, you probably want "
                      "%(WINDIR|env) instead")
  
      if not config_obj["Client.binary_name"].endswith(".exe"):
        errors.append("Missing .exe extension on binary_name %s" %
                      config_obj["Client.binary_name"])
  
      if not config_obj["Nanny.binary"].endswith(".exe"):
        errors.append("Missing .exe extension on nanny_binary")
  
      if errors_fatal and errors:
        for error in errors:
          logging.error("Build Config Error: %s", error)
        raise RuntimeError("Bad configuration generated. Terminating.")
      else:
        return errors