- * lttng_connect_sessiond
- *
- * Connect to the LTTng session daemon.
- * On success, return 0
- * On error, return a negative value
+ * Copy domain to lttcomm_session_msg domain. If unknown domain, default domain
+ * will be the kernel.
+ */
+static void copy_lttng_domain(struct lttng_domain *dom)
+{
+ if (dom) {
+ switch (dom->type) {
+ case LTTNG_DOMAIN_KERNEL:
+ case LTTNG_DOMAIN_UST:
+ case LTTNG_DOMAIN_UST_EXEC_NAME:
+ case LTTNG_DOMAIN_UST_PID:
+ case LTTNG_DOMAIN_UST_PID_FOLLOW_CHILDREN:
+ memcpy(&lsm.domain, dom, sizeof(struct lttng_domain));
+ break;
+ default:
+ lsm.domain.type = LTTNG_DOMAIN_KERNEL;
+ break;
+ }
+ }
+}
+
+/*
+ * Start tracing for all trace of the session.
+ */
+int lttng_start_tracing(const char *session_name)
+{
+ copy_string(lsm.session.name, session_name, NAME_MAX);
+ return ask_sessiond(LTTNG_START_TRACE, NULL);
+}
+
+/*
+ * Stop tracing for all trace of the session.
+ */
+int lttng_stop_tracing(const char *session_name)
+{
+ copy_string(lsm.session.name, session_name, NAME_MAX);
+ return ask_sessiond(LTTNG_STOP_TRACE, NULL);
+}
+
+/*
+ * lttng_add_context