X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fsession.c;h=a4d1163399e7cd74975b754b8c51160d1eb189f1;hp=3358648f6864323fbcd2d852bdf1296e7b01cf25;hb=2463b7879c00298daa79744cdaae82ac061a4ed8;hpb=4064563ea326f6f26d2c458009beb9ebdb3ba840 diff --git a/src/bin/lttng-sessiond/session.c b/src/bin/lttng-sessiond/session.c index 3358648f6..a4d116339 100644 --- a/src/bin/lttng-sessiond/session.c +++ b/src/bin/lttng-sessiond/session.c @@ -574,8 +574,8 @@ struct lttng_trace_chunk *session_create_new_trace_chunk( const char *base_path; struct lttng_directory_handle *session_output_directory = NULL; const struct lttng_credentials session_credentials = { - .uid = session->uid, - .gid = session->gid, + .uid = LTTNG_OPTIONAL_INIT_VALUE(session->uid), + .gid = LTTNG_OPTIONAL_INIT_VALUE(session->gid), }; uint64_t next_chunk_id; const struct consumer_output *output; @@ -1296,24 +1296,13 @@ error: } /* - * Check if the UID or GID match the session. Root user has access to all + * Check if the UID matches the session. Root user has access to all * sessions. */ -int session_access_ok(struct ltt_session *session, uid_t uid, gid_t gid) +bool session_access_ok(struct ltt_session *session, uid_t uid) { assert(session); - - if (uid == 0) { - return 1; - } - - return uid == session->uid && gid == session->gid; - - if ((uid != session->uid || gid != session->gid) && uid != 0) { - return 0; - } else { - return 1; - } + return (uid == session->uid) || uid == 0; } /*