Fix: possible null dereference on communication error
[lttng-tools.git] / src / lib / lttng-ctl / lttng-ctl.c
index c79cc6dd59eb251a7b5c237b1dd7e4c4108dcbe3..f503fd1cbf42a25660a990d869c7adeb467cc823 100644 (file)
@@ -1033,6 +1033,9 @@ int lttng_enable_event_with_exclusions(struct lttng_handle *handle,
        bool send_fd = false;
        unsigned int free_filter_expression = 0;
        struct filter_parser_ctx *ctx = NULL;
+
+       memset(&send_buffer, 0, sizeof(send_buffer));
+
        /*
         * Cast as non-const since we may replace the filter expression
         * by a dynamically allocated string. Otherwise, the original
@@ -1956,6 +1959,11 @@ int lttng_list_events(struct lttng_handle *handle,
                goto end;
        }
 
+       if (!cmd_header) {
+               ret = -LTTNG_ERR_UNK;
+               goto end;
+       }
+
        /* Set number of events and free command header */
        nb_events = cmd_header->nb_events;
        if (nb_events > INT_MAX) {
@@ -2719,7 +2727,7 @@ int lttng_list_tracker_pids(struct lttng_handle *handle,
        int enabled = 1;
        struct lttcomm_session_msg lsm;
        size_t nr_pids;
-       int32_t *pids;
+       int32_t *pids = NULL;
 
        if (handle == NULL) {
                return -LTTNG_ERR_INVALID;
This page took 0.023794 seconds and 4 git commands to generate.