X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=lttng-sessiond%2Fsession.c;h=5539aec301355ee51b267ae4a1f802866824fd23;hb=daf282ab93462198c6acd16b4aa624635df1bea5;hp=7a580fdd9b07cfb6ff9b31f4eb5b529f306fc4d4;hpb=6df2e2c977b698cc6b8f15c90b649516674028f9;p=lttng-tools.git diff --git a/lttng-sessiond/session.c b/lttng-sessiond/session.c index 7a580fdd9..5539aec30 100644 --- a/lttng-sessiond/session.c +++ b/lttng-sessiond/session.c @@ -21,16 +21,17 @@ #include #include #include +#include +#include #include #include #include +#include -#include "hashtable.h" +#include "../common/hashtable.h" #include "session.h" -#include "../hashtable/hash.h" - /* * NOTES: * @@ -217,6 +218,16 @@ int session_create(char *name, char *path, uid_t uid, gid_t gid) new_session->uid = uid; new_session->gid = gid; + ret = mkdir_recursive_run_as(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);