Hide new 'ustcomm_recv_*' private symbols
[lttng-ust.git] / include / ust-comm.h
index 7f363d402f7c57b9e7ebc179acc29fc35b08970c..4dbd5c8999d00f49495a6841951a63500df68d86 100644 (file)
  * These declarations should NOT be considered stable API.
  */
 
+#include <stdint.h>
 #include <limits.h>
 #include <unistd.h>
 #include <lttng/ust-abi.h>
 #include <lttng/ust-error.h>
 #include <lttng/ust-compiler.h>
 #include <lttng/ust-ctl.h>
-#include <config.h>
+#include "helper.h"
+
+#ifndef LTTNG_PACKED
+#error "LTTNG_PACKED should be defined"
+#endif
 
 /*
  * Default timeout the application waits for the sessiond to send its
@@ -40,7 +45,7 @@
  * variable "LTTNG_UST_REGISTER_TIMEOUT". Note that if the sessiond is not
  * found, the application proceeds directly without any delay.
  */
-#define LTTNG_UST_DEFAULT_CONSTRUCTOR_TIMEOUT_MS       3000
+#define LTTNG_UST_DEFAULT_CONSTRUCTOR_TIMEOUT_MS       CONFIG_LTTNG_UST_DEFAULT_CONSTRUCTOR_TIMEOUT_MS
 
 #define LTTNG_DEFAULT_RUNDIR                           LTTNG_SYSTEM_RUNDIR
 #define LTTNG_DEFAULT_HOME_RUNDIR                      ".lttng"
@@ -98,6 +103,23 @@ struct ustcomm_ust_msg {
                struct {
                        uint32_t count; /* how many names follow */
                } LTTNG_PACKED exclusion;
+               struct {
+                       uint32_t data_size;     /* following capture data */
+                       uint32_t reloc_offset;
+                       uint64_t seqnum;
+               } LTTNG_PACKED capture;
+               struct lttng_ust_counter counter;
+               struct lttng_ust_counter_global counter_global;
+               struct lttng_ust_counter_cpu counter_cpu;
+               /*
+                * For LTTNG_UST_EVENT_NOTIFIER_CREATE, a struct
+                * lttng_ust_event_notifier implicitly follows struct
+                * ustcomm_ust_msg.
+                */
+               struct {
+                       /* Length of struct lttng_ust_event_notifier */
+                       uint32_t len;
+               } event_notifier;
                char padding[USTCOMM_MSG_PADDING2];
        } u;
 } LTTNG_PACKED;
@@ -190,7 +212,8 @@ struct ustcomm_notify_channel_reply {
  */
 
 extern int ustcomm_create_unix_sock(const char *pathname);
-extern int ustcomm_connect_unix_sock(const char *pathname);
+extern int ustcomm_connect_unix_sock(const char *pathname,
+               long timeout);
 extern int ustcomm_accept_unix_sock(int sock);
 extern int ustcomm_listen_unix_sock(int sock);
 extern int ustcomm_close_unix_sock(int sock);
@@ -214,6 +237,16 @@ ssize_t ustcomm_recv_channel_from_sessiond(int sock,
 int ustcomm_recv_stream_from_sessiond(int sock,
                uint64_t *memory_map_size,
                int *shm_fd, int *wakeup_fd);
+LTTNG_HIDDEN
+ssize_t ustcomm_recv_event_notifier_notif_fd_from_sessiond(int sock,
+               int *event_notifier_notif_fd);
+
+LTTNG_HIDDEN
+ssize_t ustcomm_recv_counter_from_sessiond(int sock,
+               void **counter_data, uint64_t len);
+LTTNG_HIDDEN
+int ustcomm_recv_counter_shm_from_sessiond(int sock,
+               int *shm_fd);
 
 /*
  * Returns 0 on success, negative error value on error.
This page took 0.024476 seconds and 4 git commands to generate.