Fix: illegal memory access in consumer_set_network_uri
[lttng-tools.git] / src / bin / lttng-sessiond / consumer.c
index 41ad46d8689338f3c27c3fc80fb12dd46bbdb53f..d9961a1725db793f58e47511c7453ddabc09517d 100644 (file)
@@ -714,7 +714,10 @@ int consumer_set_network_uri(struct consumer_output *obj,
                        goto error;
                }
 
-               strncpy(obj->subdir, tmp_path, sizeof(obj->subdir));
+               if (lttng_strncpy(obj->subdir, tmp_path, sizeof(obj->subdir))) {
+                       ret = -LTTNG_ERR_INVALID;
+                       goto error;
+               }
                DBG3("Consumer set network uri subdir path %s", tmp_path);
        }
 
@@ -1356,7 +1359,7 @@ int consumer_snapshot_channel(struct consumer_socket *socket, uint64_t key,
                ret = run_as_mkdir_recursive(msg.u.snapshot_channel.pathname,
                                S_IRWXU | S_IRWXG, uid, gid);
                if (ret < 0) {
-                       if (ret != -EEXIST) {
+                       if (errno != EEXIST) {
                                ERR("Trace directory creation error");
                                goto error;
                        }
This page took 0.023611 seconds and 4 git commands to generate.