X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Futils.c;h=99ec7772bfcf849da5730c5aeca3e7924e870261;hp=d676198208fe638c2efb8f33b62f023ee39958ee;hb=ea9a44f03f3f6e144b5f7f312eee2a5f7a849ecb;hpb=fc41443f7ee5fa95a942d0aedd61c75d622697b5 diff --git a/src/bin/lttng-sessiond/utils.c b/src/bin/lttng-sessiond/utils.c index d67619820..99ec7772b 100644 --- a/src/bin/lttng-sessiond/utils.c +++ b/src/bin/lttng-sessiond/utils.c @@ -55,7 +55,8 @@ void ht_cleanup_push(struct lttng_ht *ht) if (!ht) { return; } - assert(fd >= 0); + if (fd < 0) + return; ret = lttng_write(fd, &ht, sizeof(ht)); if (ret < sizeof(ht)) { PERROR("write ht cleanup pipe %d", fd); @@ -94,3 +95,22 @@ int loglevels_match(int a_loglevel_type, int a_loglevel_value, return match; } + +const char *session_get_base_path(const struct ltt_session *session) +{ + struct consumer_output *consumer; + + if (session->kernel_session) { + consumer = session->kernel_session->consumer; + } else if (session->ust_session) { + consumer = session->ust_session->consumer; + } else { + abort(); + } + + if (session->net_handle > 0) { + return consumer->dst.net.base_dir; + } else { + return consumer->dst.session_root_path; + } +}