Fix runas namespace
[lttng-tools.git] / lttng-sessiond / session.c
index 7a580fdd9b07cfb6ff9b31f4eb5b529f306fc4d4..1a79fd564b40da5d7d26d29c1ba276003cedeac0 100644 (file)
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#include <sys/stat.h>
+#include <sys/types.h>
 #include <urcu.h>
 
 #include <lttng-sessiond-comm.h>
 #include <lttngerr.h>
 
-#include "hashtable.h"
+#include "common/runas.h"
 #include "session.h"
 
-#include "../hashtable/hash.h"
-
 /*
  * NOTES:
  *
@@ -217,6 +217,16 @@ int session_create(char *name, char *path, uid_t uid, gid_t gid)
        new_session->uid = uid;
        new_session->gid = gid;
 
+       ret = run_as_mkdir_recursive(new_session->path, S_IRWXU | S_IRWXG,
+                       new_session->uid, new_session->gid);
+       if (ret < 0) {
+               if (ret != -EEXIST) {
+                       ERR("Trace directory creation error");
+                       ret = LTTCOMM_CREATE_FAIL;
+                       goto error;
+               }
+       }
+
        /* Add new session to the session list */
        session_lock_list();
        new_session->id = add_session_list(new_session);
This page took 0.023213 seconds and 4 git commands to generate.