Fix: sessiond: leak of trigger on registration error
[lttng-tools.git] / src / bin / lttng-sessiond / save.c
index 822662ef598330581cb333b4798e3236c51928dc..6ca756365de18f8177309c52e2d93301d6db651e 100644 (file)
@@ -322,6 +322,9 @@ const char *get_kernel_context_type_string(
        case LTTNG_KERNEL_CONTEXT_PID_NS:
                context_type_string = config_event_context_pid_ns;
                break;
+       case LTTNG_KERNEL_CONTEXT_TIME_NS:
+               context_type_string = config_event_context_time_ns;
+               break;
        case LTTNG_KERNEL_CONTEXT_USER_NS:
                context_type_string = config_event_context_user_ns;
                break;
@@ -408,6 +411,9 @@ const char *get_ust_context_type_string(
        case LTTNG_UST_CONTEXT_NET_NS:
                context_type_string = config_event_context_net_ns;
                break;
+       case LTTNG_UST_CONTEXT_TIME_NS:
+               context_type_string = config_event_context_time_ns;
+               break;
        case LTTNG_UST_CONTEXT_PID_NS:
                context_type_string = config_event_context_pid_ns;
                break;
@@ -1184,7 +1190,7 @@ int init_ust_event_from_agent_event(struct ltt_ust_event *ust_event,
        int ret;
        enum lttng_ust_loglevel_type ust_loglevel_type;
 
-       ust_event->enabled = agent_event->enabled;
+       ust_event->enabled = AGENT_EVENT_IS_ENABLED(agent_event);
        ust_event->attr.instrumentation = LTTNG_UST_TRACEPOINT;
        if (lttng_strncpy(ust_event->attr.name, agent_event->name,
                        LTTNG_SYMBOL_NAME_LEN)) {
@@ -1910,21 +1916,7 @@ static int save_process_attr_tracker(struct config_writer *writer,
                goto end;
        }
 
-       if (tracking_policy == LTTNG_TRACKING_POLICY_EXCLUDE_ALL) {
-               /* Tracking nothing; empty list. */
-               ret = config_writer_open_element(writer, element_target_id);
-               if (ret) {
-                       ret = LTTNG_ERR_SAVE_IO_FAIL;
-                       goto end;
-               }
-
-               /* /$element_target_id */
-               ret = config_writer_close_element(writer);
-               if (ret) {
-                       ret = LTTNG_ERR_SAVE_IO_FAIL;
-                       goto end;
-               }
-       } else {
+       if (tracking_policy == LTTNG_TRACKING_POLICY_INCLUDE_SET) {
                unsigned int i, count;
                enum process_attr_tracker_status status =
                                process_attr_tracker_get_inclusion_set(
@@ -2000,7 +1992,7 @@ static int save_process_attr_tracker(struct config_writer *writer,
                }
        }
 
-       /* /targets */
+       /* /values */
        ret = config_writer_close_element(writer);
        if (ret) {
                ret = LTTNG_ERR_SAVE_IO_FAIL;
@@ -2641,8 +2633,7 @@ int save_session(struct ltt_session *session,
        memset(config_file_path, 0, sizeof(config_file_path));
 
        if (!session_access_ok(session,
-               LTTNG_SOCK_GET_UID_CRED(creds),
-               LTTNG_SOCK_GET_GID_CRED(creds)) || session->destroyed) {
+               LTTNG_SOCK_GET_UID_CRED(creds)) || session->destroyed) {
                ret = LTTNG_ERR_EPERM;
                goto end;
        }
This page took 0.02444 seconds and 4 git commands to generate.