projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Create all trace directories and files with client user credentials
[lttng-tools.git]
/
lttng-sessiond
/
session.c
diff --git
a/lttng-sessiond/session.c
b/lttng-sessiond/session.c
index 2ab49485f738a9d3c45df96ba91baed4a397794b..7a580fdd9b07cfb6ff9b31f4eb5b529f306fc4d4 100644
(file)
--- a/
lttng-sessiond/session.c
+++ b/
lttng-sessiond/session.c
@@
-55,11
+55,12
@@
static struct ltt_session_list ltt_session_list = {
* Add a ltt_session structure to the global list.
*
* The caller MUST acquire the session list lock before.
* Add a ltt_session structure to the global list.
*
* The caller MUST acquire the session list lock before.
+ * Returns the unique identifier for the session.
*/
*/
-static
void
add_session_list(struct ltt_session *ls)
+static
int
add_session_list(struct ltt_session *ls)
{
cds_list_add(&ls->list, <t_session_list.head);
{
cds_list_add(&ls->list, <t_session_list.head);
-
ltt_session_list.count++
;
+
return ++ltt_session_list.count
;
}
/*
}
/*
@@
-163,7
+164,7
@@
int session_destroy(struct ltt_session *session)
/*
* Create a brand new session and add it to the session list.
*/
/*
* Create a brand new session and add it to the session list.
*/
-int session_create(char *name, char *path)
+int session_create(char *name, char *path
, uid_t uid, gid_t gid
)
{
int ret;
struct ltt_session *new_session;
{
int ret;
struct ltt_session *new_session;
@@
-213,12
+214,17
@@
int session_create(char *name, char *path)
/* Init lock */
pthread_mutex_init(&new_session->lock, NULL);
/* Init lock */
pthread_mutex_init(&new_session->lock, NULL);
+ new_session->uid = uid;
+ new_session->gid = gid;
+
/* Add new session to the session list */
session_lock_list();
/* Add new session to the session list */
session_lock_list();
- add_session_list(new_session);
+
new_session->id =
add_session_list(new_session);
session_unlock_list();
session_unlock_list();
- DBG("Tracing session %s created in %s", name, path);
+ DBG("Tracing session %s created in %s with ID %d by UID %d GID %d",
+ name, path, new_session->id,
+ new_session->uid, new_session->gid);
return LTTCOMM_OK;
return LTTCOMM_OK;
This page took
0.025986 seconds
and
4
git commands to generate.