'Does the actual work.'

def Run(self, arg):

    smart_arg = {utils.SmartStr(field): value for (field, value) in arg.items()}
    disallowed_fields = [field for field in smart_arg.keys() if (field not in UpdateConfiguration.UPDATABLE_FIELDS)]
    if disallowed_fields:
        logging.warning('Received    an    update    request    for    restricted    field(s)    %s.', ','.join(disallowed_fields))
    filtered_arg = {field: value for (field, value) in smart_arg.items() if (field in UpdateConfiguration.UPDATABLE_FIELDS)}
    if (platform.system() != 'Windows'):
        canary_config = config.CONFIG.CopyConfig()
        with tempfiles.CreateGRRTempFile(mode='w+') as temp_fd:
            temp_filename = temp_fd.name
        canary_config.SetWriteBack(temp_filename)
        self._UpdateConfig(filtered_arg, canary_config)
        try:
            canary_config.SetWriteBack(temp_filename)
        except Exception:
            logging.warning('Updated    config    file    %s    is    not    usable.', temp_filename)
            raise
        os.unlink(temp_filename)
    self._UpdateConfig(filtered_arg, config.CONFIG)
