#include <urcu/list.h>
#include <urcu/uatomic.h>
-#include <common/buffer-view.h>
-#include <common/common.h>
-#include <common/compat/string.h>
-#include <common/defaults.h>
-#include <common/dynamic-buffer.h>
-#include <common/kernel-ctl/kernel-ctl.h>
-#include <common/relayd/relayd.h>
-#include <common/sessiond-comm/sessiond-comm.h>
-#include <common/string-utils/string-utils.h>
-#include <common/trace-chunk.h>
-#include <common/utils.h>
-
+#include <common/buffer-view.hpp>
+#include <common/common.hpp>
+#include <common/compat/string.hpp>
+#include <common/defaults.hpp>
+#include <common/dynamic-buffer.hpp>
+#include <common/kernel-ctl/kernel-ctl.hpp>
+#include <common/payload-view.hpp>
+#include <common/payload.hpp>
+#include <common/relayd/relayd.hpp>
+#include <common/sessiond-comm/sessiond-comm.hpp>
+#include <common/string-utils/string-utils.hpp>
+#include <common/trace-chunk.hpp>
+#include <common/utils.hpp>
+#include <lttng/action/action-internal.hpp>
#include <lttng/action/action.h>
-#include <lttng/action/action-internal.h>
-#include <lttng/channel-internal.h>
+#include <lttng/channel-internal.hpp>
#include <lttng/channel.h>
+#include <lttng/condition/condition-internal.hpp>
#include <lttng/condition/condition.h>
-#include <lttng/error-query-internal.h>
-#include <lttng/event-internal.h>
-#include <lttng/location-internal.h>
-#include <lttng/rotate-internal.h>
-#include <lttng/session-descriptor-internal.h>
-#include <lttng/session-internal.h>
-#include <lttng/trigger/trigger-internal.h>
-#include <lttng/userspace-probe-internal.h>
-
-#include "agent-thread.h"
-#include "agent.h"
-#include "buffer-registry.h"
-#include "channel.h"
-#include "cmd.h"
-#include "consumer.h"
-#include "event-notifier-error-accounting.h"
-#include "event.h"
-#include "health-sessiond.h"
-#include "kernel-consumer.h"
-#include "kernel.h"
-#include "lttng-sessiond.h"
-#include "lttng-syscall.h"
-#include "notification-thread-commands.h"
-#include "notification-thread.h"
-#include "rotate.h"
-#include "rotation-thread.h"
-#include "session.h"
-#include "timer.h"
-#include "tracker.h"
-#include "utils.h"
+#include <lttng/condition/event-rule-matches-internal.hpp>
+#include <lttng/condition/event-rule-matches.h>
+#include <lttng/error-query-internal.hpp>
+#include <lttng/event-internal.hpp>
+#include <lttng/event-rule/event-rule-internal.hpp>
+#include <lttng/event-rule/event-rule.h>
+#include <lttng/location-internal.hpp>
+#include <lttng/lttng-error.h>
+#include <lttng/rotate-internal.hpp>
+#include <lttng/session-descriptor-internal.hpp>
+#include <lttng/session-internal.hpp>
+#include <lttng/tracker.h>
+#include <lttng/trigger/trigger-internal.hpp>
+#include <lttng/userspace-probe-internal.hpp>
+
+#include "agent-thread.hpp"
+#include "agent.hpp"
+#include "buffer-registry.hpp"
+#include "channel.hpp"
+#include "cmd.hpp"
+#include "consumer.hpp"
+#include "event-notifier-error-accounting.hpp"
+#include "event.hpp"
+#include "health-sessiond.hpp"
+#include "kernel-consumer.hpp"
+#include "kernel.hpp"
+#include "lttng-sessiond.hpp"
+#include "lttng-syscall.hpp"
+#include "notification-thread-commands.hpp"
+#include "notification-thread.hpp"
+#include "rotate.hpp"
+#include "rotation-thread.hpp"
+#include "session.hpp"
+#include "timer.hpp"
+#include "tracker.hpp"
+#include "utils.hpp"
/* Sleep for 100ms between each check for the shm path's deletion. */
#define SESSION_DESTROY_SHM_PATH_CHECK_DELAY_US 100000
struct lttng_bytecode *filter,
struct lttng_event_exclusion *exclusion,
int wpipe);
-static int cmd_enable_channel_internal(struct ltt_session *session,
+static enum lttng_error_code cmd_enable_channel_internal(
+ struct ltt_session *session,
const struct lttng_domain *domain,
const struct lttng_channel *_attr,
int wpipe);
return ret;
}
-static int cmd_enable_channel_internal(struct ltt_session *session,
+static enum lttng_error_code cmd_enable_channel_internal(
+ struct ltt_session *session,
const struct lttng_domain *domain,
const struct lttng_channel *_attr,
int wpipe)
{
- int ret;
+ enum lttng_error_code ret_code;
struct ltt_ust_session *usess = session->ust_session;
struct lttng_ht *chan_ht;
size_t len;
attr = lttng_channel_copy(_attr);
if (!attr) {
- ret = -LTTNG_ERR_NOMEM;
+ ret_code = LTTNG_ERR_NOMEM;
goto end;
}
/* Validate channel name */
if (attr->name[0] == '.' ||
memchr(attr->name, '/', len) != NULL) {
- ret = LTTNG_ERR_INVALID_CHANNEL_NAME;
+ ret_code = LTTNG_ERR_INVALID_CHANNEL_NAME;
goto end;
}
case LTTNG_DOMAIN_PYTHON:
if (!agent_tracing_is_enabled()) {
DBG("Attempted to enable a channel in an agent domain but the agent thread is not running");
- ret = LTTNG_ERR_AGENT_TRACING_DISABLED;
+ ret_code = LTTNG_ERR_AGENT_TRACING_DISABLED;
goto error;
}
break;
default:
- ret = LTTNG_ERR_UNKNOWN_DOMAIN;
+ ret_code = LTTNG_ERR_UNKNOWN_DOMAIN;
goto error;
}
* some point in time before. The tracer does not allow it.
*/
if (session->has_been_started) {
- ret = LTTNG_ERR_TRACE_ALREADY_STARTED;
+ ret_code = LTTNG_ERR_TRACE_ALREADY_STARTED;
goto error;
}
/* Enforce mmap output for snapshot sessions. */
attr->attr.output = LTTNG_EVENT_MMAP;
}
- ret = channel_kernel_create(
+ ret_code = channel_kernel_create(
session->kernel_session, attr, wpipe);
if (attr->name[0] != '\0') {
session->kernel_session->has_non_default_channel = 1;
}
} else {
- ret = channel_kernel_enable(session->kernel_session, kchan);
+ ret_code = channel_kernel_enable(session->kernel_session, kchan);
}
- if (ret != LTTNG_OK) {
+ if (ret_code != LTTNG_OK) {
goto error;
}
if (domain->type == LTTNG_DOMAIN_JUL) {
if (strncmp(attr->name, DEFAULT_JUL_CHANNEL_NAME,
LTTNG_SYMBOL_NAME_LEN)) {
- ret = LTTNG_ERR_INVALID_CHANNEL_NAME;
+ ret_code = LTTNG_ERR_INVALID_CHANNEL_NAME;
goto error;
}
} else if (domain->type == LTTNG_DOMAIN_LOG4J) {
if (strncmp(attr->name, DEFAULT_LOG4J_CHANNEL_NAME,
LTTNG_SYMBOL_NAME_LEN)) {
- ret = LTTNG_ERR_INVALID_CHANNEL_NAME;
+ ret_code = LTTNG_ERR_INVALID_CHANNEL_NAME;
goto error;
}
} else if (domain->type == LTTNG_DOMAIN_PYTHON) {
if (strncmp(attr->name, DEFAULT_PYTHON_CHANNEL_NAME,
LTTNG_SYMBOL_NAME_LEN)) {
- ret = LTTNG_ERR_INVALID_CHANNEL_NAME;
+ ret_code = LTTNG_ERR_INVALID_CHANNEL_NAME;
goto error;
}
}
* some point in time before. The tracer does not allow it.
*/
if (session->has_been_started) {
- ret = LTTNG_ERR_TRACE_ALREADY_STARTED;
+ ret_code = LTTNG_ERR_TRACE_ALREADY_STARTED;
goto error;
}
- ret = channel_ust_create(usess, attr, domain->buf_type);
+ ret_code = channel_ust_create(usess, attr, domain->buf_type);
if (attr->name[0] != '\0') {
usess->has_non_default_channel = 1;
}
} else {
- ret = channel_ust_enable(usess, uchan);
+ ret_code = channel_ust_enable(usess, uchan);
}
break;
}
default:
- ret = LTTNG_ERR_UNKNOWN_DOMAIN;
+ ret_code = LTTNG_ERR_UNKNOWN_DOMAIN;
goto error;
}
- if (ret == LTTNG_OK && attr->attr.output != LTTNG_EVENT_MMAP) {
+ if (ret_code == LTTNG_OK && attr->attr.output != LTTNG_EVENT_MMAP) {
session->has_non_mmap_channel = true;
}
error:
rcu_read_unlock();
end:
lttng_channel_destroy(attr);
- return ret;
+ return ret_code;
}
enum lttng_error_code cmd_process_attr_tracker_get_tracking_policy(