From: Jérémie Galarneau Date: Mon, 20 Aug 2018 20:45:09 +0000 (-0400) Subject: Fix: possible NULL dereference in uri_parse_str_urls() X-Git-Tag: v2.11.0-rc1~140 X-Git-Url: https://git.lttng.org./?a=commitdiff_plain;h=70bc2efdc665e3a2e4c6eb000c5879960fb2ee8c;p=lttng-tools.git Fix: possible NULL dereference in uri_parse_str_urls() The data_url parsing of uri_parse_str_urls assumes that a ctrl URL was provided to check that both URLs point to the same destination. A check for 'ctrl_uris != NULL' is added, but this function needs to be refactored at some point at it is not clear what its role is (i.e. it's probably doing too much). Reported-by: Coverity Scan (1378214 Explicit null dereferenced) Signed-off-by: Jérémie Galarneau --- diff --git a/src/common/uri.c b/src/common/uri.c index c6d76bf66..7fe4dd3b3 100644 --- a/src/common/uri.c +++ b/src/common/uri.c @@ -644,10 +644,12 @@ ssize_t uri_parse_str_urls(const char *ctrl_url, const char *data_url, set_default_uri_attr(&data_uris[0], LTTNG_STREAM_DATA); - ret = compare_destination(&ctrl_uris[0], &data_uris[0]); - if (ret != 0) { - ERR("Control and data destination mismatch"); - goto error; + if (ctrl_uris) { + ret = compare_destination(&ctrl_uris[0], &data_uris[0]); + if (ret != 0) { + ERR("Control and data destination mismatch"); + goto error; + } } }