#include <common/uri.h>
#include <common/defaults.h>
#include <common/compat/uuid.h>
+#include <common/macros.h>
#include <arpa/inet.h>
#include <netinet/in.h>
LTTNG_ENABLE_EVENT = 6,
/* 7 */
/* Session daemon command */
- LTTNG_CREATE_SESSION = 8,
+ /* 8 */
LTTNG_DESTROY_SESSION = 9,
LTTNG_LIST_CHANNELS = 10,
LTTNG_LIST_DOMAINS = 11,
LTTNG_SNAPSHOT_DEL_OUTPUT = 26,
LTTNG_SNAPSHOT_LIST_OUTPUT = 27,
LTTNG_SNAPSHOT_RECORD = 28,
- LTTNG_CREATE_SESSION_SNAPSHOT = 29,
- LTTNG_CREATE_SESSION_LIVE = 30,
+ /* 29 */
+ /* 30 */
LTTNG_SAVE_SESSION = 31,
LTTNG_TRACK_PID = 32,
LTTNG_UNTRACK_PID = 33,
LTTNG_ROTATION_GET_INFO = 46,
LTTNG_ROTATION_SET_SCHEDULE = 47,
LTTNG_SESSION_LIST_ROTATION_SCHEDULES = 48,
+ LTTNG_CREATE_SESSION_EXT = 49
};
enum lttcomm_relayd_command {
LTTCOMM_CONSUMERD_CHANNEL_FAIL, /* Channel creation failed. */
LTTCOMM_CONSUMERD_CHAN_NOT_FOUND, /* Channel not found. */
LTTCOMM_CONSUMERD_ALREADY_SET, /* Resource already set. */
+ LTTCOMM_CONSUMERD_ROTATION_FAIL, /* Rotation has failed. */
+ LTTCOMM_CONSUMERD_ROTATE_RENAME_FAILED, /* Rotation rename has failed. */
+ LTTCOMM_CONSUMERD_ROTATION_PENDING_LOCAL_FAILED, /* Rotation pending relay failed. */
+ LTTCOMM_CONSUMERD_ROTATION_PENDING_RELAY_FAILED, /* Rotation pending relay failed. */
+ LTTCOMM_CONSUMERD_MKDIR_FAILED, /* mkdir has failed. */
+ LTTCOMM_CONSUMERD_SNAPSHOT_FAILED, /* snapshot has failed. */
/* MUST be last element */
LTTCOMM_NR, /* Last element */
uint8_t set;
uint64_t value;
} LTTNG_PACKED rotation_set_schedule;
+ struct {
+ /*
+ * Includes the null-terminator.
+ * Must be an absolute path.
+ *
+ * Size bounded by LTTNG_PATH_MAX.
+ */
+ uint16_t home_dir_size;
+ uint64_t session_descriptor_size;
+ /* An lttng_session_descriptor follows. */
+ } LTTNG_PACKED create_session;
} u;
} LTTNG_PACKED;
#define LTTNG_FILTER_MAX_LEN 65536
+#define LTTNG_SESSION_DESCRIPTOR_MAX_LEN 65536
/*
* Filter bytecode data. The reloc table is located at the end of the
* operation.
*/
struct lttcomm_consumer_msg {
- uint32_t cmd_type; /* enum consumerd_command */
+ uint32_t cmd_type; /* enum lttng_consumer_command */
union {
struct {
uint64_t channel_key;
uint32_t uid;
uint32_t gid;
} LTTNG_PACKED rotate_rename;
+ struct {
+ uint64_t session_id;
+ uint64_t chunk_id;
+ } LTTNG_PACKED check_rotation_pending_local;
struct {
uint64_t relayd_id;
uint64_t session_id;
uint64_t chunk_id;
- } LTTNG_PACKED rotate_pending_relay;
+ } LTTNG_PACKED check_rotation_pending_relay;
struct {
char path[LTTNG_PATH_MAX];
uint64_t relayd_id; /* Relayd id if apply. */