It wasn't currently used by core, and this API makes it close to what we
want it to be eventually.
return set;
}
-int master_service_set(struct master_service *service, const char *line)
+int master_service_set(struct setting_parser_context *set_parser,
+ const char *key, const char *value,
+ const char **error_r)
{
- return settings_parse_line(service->set_parser, line);
+ int ret;
+
+ ret = settings_parse_keyvalue(set_parser, key, value);
+ if (ret <= 0)
+ *error_r = settings_parser_get_error(set_parser);
+ return ret;
}
bool master_service_set_has_config_override(struct master_service *service,
} \
} STMT_END
-int master_service_set(struct master_service *service, const char *line);
+/* Set key=value to settings parser. Returns 1 on success, 0 if key is unknown,
+ -1 on error. The error string is returned on <= 0. */
+int master_service_set(struct setting_parser_context *set_parser,
+ const char *key, const char *value,
+ const char **error_r);
/* Returns TRUE if -o key=value parameter was used. Setting keys in overrides
and parameter are unaliased before comparing. */