Fix: illegal memory access in consumer_set_subdir
[lttng-tools.git] / src / bin / lttng-sessiond / consumer.c
index bd019dd31da15f6953b873899f12b4dd07770c9a..934af39bd3f6028b69138765b39c22401e6dbfbe 100644 (file)
@@ -715,7 +715,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);
        }
 
@@ -1086,7 +1089,11 @@ int consumer_set_subdir(struct consumer_output *consumer,
                goto error;
        }
 
-       strncpy(consumer->subdir, tmp_path, sizeof(consumer->subdir));
+       if (lttng_strncpy(consumer->subdir, tmp_path,
+                       sizeof(consumer->subdir))) {
+               ret = -EINVAL;
+               goto error;
+       }
        DBG2("Consumer subdir set to %s", consumer->subdir);
 
 error:
This page took 0.026125 seconds and 5 git commands to generate.