The lttng CLI must check for illegal combinations of the
--ctrl-url, --data-url, --set-url, and --output options.
The following combinations are mutually exclusive:
1) --set-url
2) --ctrl-url + --data-url
3) --output
Combining these incompatible options resulted in unhelpful
generic error messages since the error is catched a lot farther
than it should.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
return ret;
}
+int validate_url_option_combination(void)
+{
+ int ret = 0;
+ int used_count = 0;
+
+ used_count += !!opt_url;
+ used_count += !!opt_output_path;
+ used_count += (opt_data_url || opt_ctrl_url);
+ if (used_count > 1) {
+ ERR("Only one of the --set-url, --ctrl-url/data-url, or --output options may be used at once.");
+ ret = -1;
+ }
+
+ return ret;
+}
+
/*
* The 'create <options>' first level command
*
goto end;
}
+ ret = validate_url_option_combination();
+ if (ret) {
+ ret = CMD_ERROR;
+ goto end;
+ }
+
/* Spawn a session daemon if needed */
if (!opt_no_sessiond) {
ret = launch_sessiond();