+ ret = lttcomm_recv_unix_sock(sessiond_socket, buf, len);
+
+end:
+ return ret;
+}
+
+/*
+ * ask_sessiond
+ *
+ * Ask the session daemon a specific command and put the data into buf.
+ *
+ * Return size of data (only payload, not header).
+ */
+static int ask_sessiond(enum lttcomm_sessiond_command lct, void **buf)
+{
+ int ret;
+ size_t size;
+ void *data = NULL;
+
+ ret = lttng_connect_sessiond();
+ if (ret < 0) {
+ goto end;
+ }
+
+ lsm.cmd_type = lct;
+
+ /* Send command to session daemon */
+ ret = send_data_sessiond();
+ if (ret < 0) {
+ goto end;
+ }
+
+ /* Get header from data transmission */
+ ret = recv_data_sessiond(&llm, sizeof(llm));