Build fix: POD static_assert check fails on lttng_event_exclusions
[lttng-tools.git] / src / common / sessiond-comm / sessiond-comm.hpp
index 9894e9ba9d6512628478e2b525126dd5bb8c6e25..e9cb85a05f6a30715b9928daee2aec537069bea4 100644 (file)
@@ -22,6 +22,7 @@
 #include <lttng/trigger/trigger-internal.hpp>
 #include <lttng/rotate-internal.hpp>
 #include <common/compat/socket.hpp>
+#include <common/compiler.hpp>
 #include <common/uri.hpp>
 #include <common/defaults.hpp>
 #include <common/uuid.hpp>
 #endif
 
 enum lttcomm_sessiond_command {
-       LTTCOMM_SESSIOND_COMMAND_MIN                    = -1,
-       /* Tracer command */
-       LTTNG_ADD_CONTEXT                               = 0,
-       /* LTTNG_CALIBRATE used to be here */
-       LTTNG_DISABLE_CHANNEL                           = 2,
-       LTTNG_DISABLE_EVENT                             = 3,
-       LTTNG_LIST_SYSCALLS                             = 4,
-       LTTNG_ENABLE_CHANNEL                            = 5,
-       LTTNG_ENABLE_EVENT                              = 6,
-       /* 7 */
-       /* Session daemon command */
-       /* 8 */
-       LTTNG_DESTROY_SESSION                           = 9,
-       LTTNG_LIST_CHANNELS                             = 10,
-       LTTNG_LIST_DOMAINS                              = 11,
-       LTTNG_LIST_EVENTS                               = 12,
-       LTTNG_LIST_SESSIONS                             = 13,
-       LTTNG_LIST_TRACEPOINTS                          = 14,
-       LTTNG_REGISTER_CONSUMER                         = 15,
-       LTTNG_START_TRACE                               = 16,
-       LTTNG_STOP_TRACE                                = 17,
-       LTTNG_LIST_TRACEPOINT_FIELDS                    = 18,
-
-       /* Consumer */
-       LTTNG_DISABLE_CONSUMER                          = 19,
-       LTTNG_ENABLE_CONSUMER                           = 20,
-       LTTNG_SET_CONSUMER_URI                          = 21,
-       /* 22 */
-       /* 23 */
-       LTTNG_DATA_PENDING                              = 24,
-       LTTNG_SNAPSHOT_ADD_OUTPUT                       = 25,
-       LTTNG_SNAPSHOT_DEL_OUTPUT                       = 26,
-       LTTNG_SNAPSHOT_LIST_OUTPUT                      = 27,
-       LTTNG_SNAPSHOT_RECORD                           = 28,
-       /* 29 */
-       /* 30 */
-       LTTNG_SAVE_SESSION                              = 31,
-       LTTNG_PROCESS_ATTR_TRACKER_ADD_INCLUDE_VALUE    = 32,
-       LTTNG_PROCESS_ATTR_TRACKER_REMOVE_INCLUDE_VALUE = 33,
-       LTTNG_PROCESS_ATTR_TRACKER_GET_POLICY           = 34,
-       LTTNG_PROCESS_ATTR_TRACKER_SET_POLICY           = 35,
-       LTTNG_PROCESS_ATTR_TRACKER_GET_INCLUSION_SET     = 36,
-       LTTNG_SET_SESSION_SHM_PATH                      = 40,
-       LTTNG_REGENERATE_METADATA                       = 41,
-       LTTNG_REGENERATE_STATEDUMP                      = 42,
-       LTTNG_REGISTER_TRIGGER                          = 43,
-       LTTNG_UNREGISTER_TRIGGER                        = 44,
-       LTTNG_ROTATE_SESSION                            = 45,
-       LTTNG_ROTATION_GET_INFO                         = 46,
-       LTTNG_ROTATION_SET_SCHEDULE                     = 47,
-       LTTNG_SESSION_LIST_ROTATION_SCHEDULES           = 48,
-       LTTNG_CREATE_SESSION_EXT                        = 49,
-       LTTNG_CLEAR_SESSION                             = 50,
-       LTTNG_LIST_TRIGGERS                             = 51,
-       LTTNG_EXECUTE_ERROR_QUERY                       = 52,
+       LTTCOMM_SESSIOND_COMMAND_MIN,
+       LTTCOMM_SESSIOND_COMMAND_ADD_CONTEXT,
+       LTTCOMM_SESSIOND_COMMAND_DISABLE_CHANNEL,
+       LTTCOMM_SESSIOND_COMMAND_DISABLE_EVENT,
+       LTTCOMM_SESSIOND_COMMAND_LIST_SYSCALLS,
+       LTTCOMM_SESSIOND_COMMAND_ENABLE_CHANNEL,
+       LTTCOMM_SESSIOND_COMMAND_ENABLE_EVENT,
+       LTTCOMM_SESSIOND_COMMAND_DESTROY_SESSION,
+       LTTCOMM_SESSIOND_COMMAND_LIST_CHANNELS,
+       LTTCOMM_SESSIOND_COMMAND_LIST_DOMAINS,
+       LTTCOMM_SESSIOND_COMMAND_LIST_EVENTS,
+       LTTCOMM_SESSIOND_COMMAND_LIST_SESSIONS,
+       LTTCOMM_SESSIOND_COMMAND_LIST_TRACEPOINTS,
+       LTTCOMM_SESSIOND_COMMAND_REGISTER_CONSUMER,
+       LTTCOMM_SESSIOND_COMMAND_START_TRACE,
+       LTTCOMM_SESSIOND_COMMAND_STOP_TRACE,
+       LTTCOMM_SESSIOND_COMMAND_LIST_TRACEPOINT_FIELDS,
+       LTTCOMM_SESSIOND_COMMAND_DISABLE_CONSUMER,
+       LTTCOMM_SESSIOND_COMMAND_ENABLE_CONSUMER,
+       LTTCOMM_SESSIOND_COMMAND_SET_CONSUMER_URI,
+       LTTCOMM_SESSIOND_COMMAND_DATA_PENDING,
+       LTTCOMM_SESSIOND_COMMAND_SNAPSHOT_ADD_OUTPUT,
+       LTTCOMM_SESSIOND_COMMAND_SNAPSHOT_DEL_OUTPUT,
+       LTTCOMM_SESSIOND_COMMAND_SNAPSHOT_LIST_OUTPUT,
+       LTTCOMM_SESSIOND_COMMAND_SNAPSHOT_RECORD,
+       LTTCOMM_SESSIOND_COMMAND_SAVE_SESSION,
+       LTTCOMM_SESSIOND_COMMAND_PROCESS_ATTR_TRACKER_ADD_INCLUDE_VALUE,
+       LTTCOMM_SESSIOND_COMMAND_PROCESS_ATTR_TRACKER_REMOVE_INCLUDE_VALUE,
+       LTTCOMM_SESSIOND_COMMAND_PROCESS_ATTR_TRACKER_GET_POLICY,
+       LTTCOMM_SESSIOND_COMMAND_PROCESS_ATTR_TRACKER_SET_POLICY,
+       LTTCOMM_SESSIOND_COMMAND_PROCESS_ATTR_TRACKER_GET_INCLUSION_SET,
+       LTTCOMM_SESSIOND_COMMAND_SET_SESSION_SHM_PATH,
+       LTTCOMM_SESSIOND_COMMAND_REGENERATE_METADATA,
+       LTTCOMM_SESSIOND_COMMAND_REGENERATE_STATEDUMP,
+       LTTCOMM_SESSIOND_COMMAND_REGISTER_TRIGGER,
+       LTTCOMM_SESSIOND_COMMAND_UNREGISTER_TRIGGER,
+       LTTCOMM_SESSIOND_COMMAND_ROTATE_SESSION,
+       LTTCOMM_SESSIOND_COMMAND_ROTATION_GET_INFO,
+       LTTCOMM_SESSIOND_COMMAND_ROTATION_SET_SCHEDULE,
+       LTTCOMM_SESSIOND_COMMAND_SESSION_LIST_ROTATION_SCHEDULES,
+       LTTCOMM_SESSIOND_COMMAND_CREATE_SESSION_EXT,
+       LTTCOMM_SESSIOND_COMMAND_CLEAR_SESSION,
+       LTTCOMM_SESSIOND_COMMAND_LIST_TRIGGERS,
+       LTTCOMM_SESSIOND_COMMAND_EXECUTE_ERROR_QUERY,
        LTTCOMM_SESSIOND_COMMAND_MAX,
 };
 
@@ -117,92 +107,92 @@ static inline
 const char *lttcomm_sessiond_command_str(enum lttcomm_sessiond_command cmd)
 {
        switch (cmd) {
-       case LTTNG_ADD_CONTEXT:
-               return "LTTNG_ADD_CONTEXT";
-       case LTTNG_DISABLE_CHANNEL:
-               return "LTTNG_DISABLE_CHANNEL";
-       case LTTNG_DISABLE_EVENT:
-               return "LTTNG_DISABLE_EVENT";
-       case LTTNG_LIST_SYSCALLS:
-               return "LTTNG_LIST_SYSCALLS";
-       case LTTNG_ENABLE_CHANNEL:
-               return "LTTNG_ENABLE_CHANNEL";
-       case LTTNG_ENABLE_EVENT:
-               return "LTTNG_ENABLE_EVENT";
-       case LTTNG_DESTROY_SESSION:
-               return "LTTNG_DESTROY_SESSION";
-       case LTTNG_LIST_CHANNELS:
-               return "LTTNG_LIST_CHANNELS";
-       case LTTNG_LIST_DOMAINS:
-               return "LTTNG_LIST_DOMAINS";
-       case LTTNG_LIST_EVENTS:
-               return "LTTNG_LIST_EVENTS";
-       case LTTNG_LIST_SESSIONS:
-               return "LTTNG_LIST_SESSIONS";
-       case LTTNG_LIST_TRACEPOINTS:
-               return "LTTNG_LIST_TRACEPOINTS";
-       case LTTNG_REGISTER_CONSUMER:
-               return "LTTNG_REGISTER_CONSUMER";
-       case LTTNG_START_TRACE:
-               return "LTTNG_START_TRACE";
-       case LTTNG_STOP_TRACE:
-               return "LTTNG_STOP_TRACE";
-       case LTTNG_LIST_TRACEPOINT_FIELDS:
-               return "LTTNG_LIST_TRACEPOINT_FIELDS";
-       case LTTNG_DISABLE_CONSUMER:
-               return "LTTNG_DISABLE_CONSUMER";
-       case LTTNG_ENABLE_CONSUMER:
-               return "LTTNG_ENABLE_CONSUMER";
-       case LTTNG_SET_CONSUMER_URI:
-               return "LTTNG_SET_CONSUMER_URI";
-       case LTTNG_DATA_PENDING:
-               return "LTTNG_DATA_PENDING";
-       case LTTNG_SNAPSHOT_ADD_OUTPUT:
-               return "LTTNG_SNAPSHOT_ADD_OUTPUT";
-       case LTTNG_SNAPSHOT_DEL_OUTPUT:
-               return "LTTNG_SNAPSHOT_DEL_OUTPUT";
-       case LTTNG_SNAPSHOT_LIST_OUTPUT:
-               return "LTTNG_SNAPSHOT_LIST_OUTPUT";
-       case LTTNG_SNAPSHOT_RECORD:
-               return "LTTNG_SNAPSHOT_RECORD";
-       case LTTNG_SAVE_SESSION:
-               return "LTTNG_SAVE_SESSION";
-       case LTTNG_PROCESS_ATTR_TRACKER_ADD_INCLUDE_VALUE:
-               return "LTTNG_PROCESS_ATTR_TRACKER_ADD_INCLUDE_VALUE";
-       case LTTNG_PROCESS_ATTR_TRACKER_REMOVE_INCLUDE_VALUE:
-               return "LTTNG_PROCESS_ATTR_TRACKER_REMOVE_INCLUDE_VALUE";
-       case LTTNG_PROCESS_ATTR_TRACKER_GET_POLICY:
-               return "LTTNG_PROCESS_ATTR_TRACKER_GET_POLICY";
-       case LTTNG_PROCESS_ATTR_TRACKER_SET_POLICY:
-               return "LTTNG_PROCESS_ATTR_TRACKER_SET_POLICY";
-       case LTTNG_PROCESS_ATTR_TRACKER_GET_INCLUSION_SET:
-               return "LTTNG_PROCESS_ATTR_TRACKER_GET_INCLUSION_SET";
-       case LTTNG_SET_SESSION_SHM_PATH:
-               return "LTTNG_SET_SESSION_SHM_PATH";
-       case LTTNG_REGENERATE_METADATA:
-               return "LTTNG_REGENERATE_METADATA";
-       case LTTNG_REGENERATE_STATEDUMP:
-               return "LTTNG_REGENERATE_STATEDUMP";
-       case LTTNG_REGISTER_TRIGGER:
-               return "LTTNG_REGISTER_TRIGGER";
-       case LTTNG_UNREGISTER_TRIGGER:
-               return "LTTNG_UNREGISTER_TRIGGER";
-       case LTTNG_ROTATE_SESSION:
-               return "LTTNG_ROTATE_SESSION";
-       case LTTNG_ROTATION_GET_INFO:
-               return "LTTNG_ROTATION_GET_INFO";
-       case LTTNG_ROTATION_SET_SCHEDULE:
-               return "LTTNG_ROTATION_SET_SCHEDULE";
-       case LTTNG_SESSION_LIST_ROTATION_SCHEDULES:
-               return "LTTNG_SESSION_LIST_ROTATION_SCHEDULES";
-       case LTTNG_CREATE_SESSION_EXT:
-               return "LTTNG_CREATE_SESSION_EXT";
-       case LTTNG_CLEAR_SESSION:
-               return "LTTNG_CLEAR_SESSION";
-       case LTTNG_LIST_TRIGGERS:
-               return "LTTNG_LIST_TRIGGERS";
-       case LTTNG_EXECUTE_ERROR_QUERY:
-               return "LTTNG_EXECUTE_ERROR_QUERY";
+       case LTTCOMM_SESSIOND_COMMAND_ADD_CONTEXT:
+               return "ADD_CONTEXT";
+       case LTTCOMM_SESSIOND_COMMAND_DISABLE_CHANNEL:
+               return "DISABLE_CHANNEL";
+       case LTTCOMM_SESSIOND_COMMAND_DISABLE_EVENT:
+               return "DISABLE_EVENT";
+       case LTTCOMM_SESSIOND_COMMAND_LIST_SYSCALLS:
+               return "LIST_SYSCALLS";
+       case LTTCOMM_SESSIOND_COMMAND_ENABLE_CHANNEL:
+               return "ENABLE_CHANNEL";
+       case LTTCOMM_SESSIOND_COMMAND_ENABLE_EVENT:
+               return "ENABLE_EVENT";
+       case LTTCOMM_SESSIOND_COMMAND_DESTROY_SESSION:
+               return "DESTROY_SESSION";
+       case LTTCOMM_SESSIOND_COMMAND_LIST_CHANNELS:
+               return "LIST_CHANNELS";
+       case LTTCOMM_SESSIOND_COMMAND_LIST_DOMAINS:
+               return "LIST_DOMAINS";
+       case LTTCOMM_SESSIOND_COMMAND_LIST_EVENTS:
+               return "LIST_EVENTS";
+       case LTTCOMM_SESSIOND_COMMAND_LIST_SESSIONS:
+               return "LIST_SESSIONS";
+       case LTTCOMM_SESSIOND_COMMAND_LIST_TRACEPOINTS:
+               return "LIST_TRACEPOINTS";
+       case LTTCOMM_SESSIOND_COMMAND_REGISTER_CONSUMER:
+               return "REGISTER_CONSUMER";
+       case LTTCOMM_SESSIOND_COMMAND_START_TRACE:
+               return "START_TRACE";
+       case LTTCOMM_SESSIOND_COMMAND_STOP_TRACE:
+               return "STOP_TRACE";
+       case LTTCOMM_SESSIOND_COMMAND_LIST_TRACEPOINT_FIELDS:
+               return "LIST_TRACEPOINT_FIELDS";
+       case LTTCOMM_SESSIOND_COMMAND_DISABLE_CONSUMER:
+               return "DISABLE_CONSUMER";
+       case LTTCOMM_SESSIOND_COMMAND_ENABLE_CONSUMER:
+               return "ENABLE_CONSUMER";
+       case LTTCOMM_SESSIOND_COMMAND_SET_CONSUMER_URI:
+               return "SET_CONSUMER_URI";
+       case LTTCOMM_SESSIOND_COMMAND_DATA_PENDING:
+               return "DATA_PENDING";
+       case LTTCOMM_SESSIOND_COMMAND_SNAPSHOT_ADD_OUTPUT:
+               return "SNAPSHOT_ADD_OUTPUT";
+       case LTTCOMM_SESSIOND_COMMAND_SNAPSHOT_DEL_OUTPUT:
+               return "SNAPSHOT_DEL_OUTPUT";
+       case LTTCOMM_SESSIOND_COMMAND_SNAPSHOT_LIST_OUTPUT:
+               return "SNAPSHOT_LIST_OUTPUT";
+       case LTTCOMM_SESSIOND_COMMAND_SNAPSHOT_RECORD:
+               return "SNAPSHOT_RECORD";
+       case LTTCOMM_SESSIOND_COMMAND_SAVE_SESSION:
+               return "SAVE_SESSION";
+       case LTTCOMM_SESSIOND_COMMAND_PROCESS_ATTR_TRACKER_ADD_INCLUDE_VALUE:
+               return "PROCESS_ATTR_TRACKER_ADD_INCLUDE_VALUE";
+       case LTTCOMM_SESSIOND_COMMAND_PROCESS_ATTR_TRACKER_REMOVE_INCLUDE_VALUE:
+               return "PROCESS_ATTR_TRACKER_REMOVE_INCLUDE_VALUE";
+       case LTTCOMM_SESSIOND_COMMAND_PROCESS_ATTR_TRACKER_GET_POLICY:
+               return "PROCESS_ATTR_TRACKER_GET_POLICY";
+       case LTTCOMM_SESSIOND_COMMAND_PROCESS_ATTR_TRACKER_SET_POLICY:
+               return "PROCESS_ATTR_TRACKER_SET_POLICY";
+       case LTTCOMM_SESSIOND_COMMAND_PROCESS_ATTR_TRACKER_GET_INCLUSION_SET:
+               return "PROCESS_ATTR_TRACKER_GET_INCLUSION_SET";
+       case LTTCOMM_SESSIOND_COMMAND_SET_SESSION_SHM_PATH:
+               return "SET_SESSION_SHM_PATH";
+       case LTTCOMM_SESSIOND_COMMAND_REGENERATE_METADATA:
+               return "REGENERATE_METADATA";
+       case LTTCOMM_SESSIOND_COMMAND_REGENERATE_STATEDUMP:
+               return "REGENERATE_STATEDUMP";
+       case LTTCOMM_SESSIOND_COMMAND_REGISTER_TRIGGER:
+               return "REGISTER_TRIGGER";
+       case LTTCOMM_SESSIOND_COMMAND_UNREGISTER_TRIGGER:
+               return "UNREGISTER_TRIGGER";
+       case LTTCOMM_SESSIOND_COMMAND_ROTATE_SESSION:
+               return "ROTATE_SESSION";
+       case LTTCOMM_SESSIOND_COMMAND_ROTATION_GET_INFO:
+               return "ROTATION_GET_INFO";
+       case LTTCOMM_SESSIOND_COMMAND_ROTATION_SET_SCHEDULE:
+               return "ROTATION_SET_SCHEDULE";
+       case LTTCOMM_SESSIOND_COMMAND_SESSION_LIST_ROTATION_SCHEDULES:
+               return "SESSION_LIST_ROTATION_SCHEDULES";
+       case LTTCOMM_SESSIOND_COMMAND_CREATE_SESSION_EXT:
+               return "CREATE_SESSION_EXT";
+       case LTTCOMM_SESSIOND_COMMAND_CLEAR_SESSION:
+               return "CLEAR_SESSION";
+       case LTTCOMM_SESSIOND_COMMAND_LIST_TRIGGERS:
+               return "LIST_TRIGGERS";
+       case LTTCOMM_SESSIOND_COMMAND_EXECUTE_ERROR_QUERY:
+               return "EXECUTE_ERROR_QUERY";
        default:
                abort();
        }
@@ -574,7 +564,7 @@ struct lttng_bytecode {
 struct lttng_event_exclusion {
        uint32_t count;
        char padding[LTTNG_EVENT_EXCLUSION_PADDING];
-       char names[][LTTNG_SYMBOL_NAME_LEN];
+       char names[LTTNG_FLEXIBLE_ARRAY_MEMBER_LENGTH][LTTNG_SYMBOL_NAME_LEN];
 } LTTNG_PACKED;
 
 #define LTTNG_EVENT_EXCLUSION_NAME_AT(_exclusion, _i) \
@@ -614,7 +604,7 @@ struct lttcomm_event_extended_header {
 } LTTNG_PACKED;
 
 /*
- * Command header of the reply to an LTTNG_DESTROY_SESSION command.
+ * Command header of the reply to an LTTCOMM_SESSIOND_COMMAND_DESTROY_SESSION command.
  */
 struct lttcomm_session_destroy_command_header {
        /* enum lttng_session */
@@ -961,8 +951,8 @@ int lttcomm_sock_get_port(const struct lttcomm_sock *sock,
  */
 int lttcomm_sock_set_port(struct lttcomm_sock *sock, uint16_t port);
 
-void lttcomm_init(void);
+void lttcomm_init();
 /* Get network timeout, in milliseconds */
-unsigned long lttcomm_get_network_timeout(void);
+unsigned long lttcomm_get_network_timeout();
 
 #endif /* _LTTNG_SESSIOND_COMM_H */
This page took 0.029208 seconds and 4 git commands to generate.