Clean-up: modernize pretty_xml.cpp
[lttng-tools.git] / src / common / session-descriptor.cpp
index ec510b0c6e392b1299f27dee414551bc64e7a03d..55db55e5cea78cc7cec48c1b3d986e9a2345810c 100644 (file)
@@ -1,21 +1,25 @@
 /*
  * Copyright (C) 2019 Jérémie Galarneau <jeremie.galarneau@efficios.com>
  *
- * SPDX-License-Identifier: GPL-2.0-only
+ * SPDX-License-Identifier: LGPL-2.1-only
  */
 
-#include <lttng/session-descriptor-internal.h>
-#include <common/macros.h>
-#include <common/uri.h>
-#include <common/defaults.h>
-#include <common/error.h>
-#include <time.h>
+#include <common/defaults.hpp>
+#include <common/error.hpp>
+#include <common/macros.hpp>
+#include <common/uri.hpp>
+
+#include <lttng/session-descriptor-internal.hpp>
+
 #include <stdio.h>
+#include <time.h>
 
+namespace {
 struct lttng_session_descriptor_network_location {
        struct lttng_uri *control;
        struct lttng_uri *data;
 };
+} /* namespace */
 
 struct lttng_session_descriptor {
        enum lttng_session_descriptor_type type;
@@ -32,6 +36,7 @@ struct lttng_session_descriptor {
        } output;
 };
 
+namespace {
 struct lttng_session_descriptor_snapshot {
        struct lttng_session_descriptor base;
        /*
@@ -61,17 +66,17 @@ struct lttng_session_descriptor_live_comm {
        /* Live-specific parameters. */
        uint64_t live_timer_us;
 } LTTNG_PACKED;
+} /* namespace */
 
-static
-struct lttng_uri *uri_copy(const struct lttng_uri *uri)
+static struct lttng_uri *uri_copy(const struct lttng_uri *uri)
 {
-       struct lttng_uri *new_uri = NULL;
+       struct lttng_uri *new_uri = nullptr;
 
        if (!uri) {
                goto end;
        }
 
-       new_uri = (lttng_uri *) zmalloc(sizeof(*new_uri));
+       new_uri = zmalloc<lttng_uri>();
        if (!new_uri) {
                goto end;
        }
@@ -80,13 +85,11 @@ end:
        return new_uri;
 }
 
-static
-struct lttng_uri *uri_from_path(const char *path)
+static struct lttng_uri *uri_from_path(const char *path)
 {
-       struct lttng_uri *uris = NULL;
+       struct lttng_uri *uris = nullptr;
        ssize_t uri_count;
-       char local_protocol_string[LTTNG_PATH_MAX + sizeof("file://")] =
-                       "file://";
+       char local_protocol_string[LTTNG_PATH_MAX + sizeof("file://")] = "file://";
 
        if (strlen(path) >= LTTNG_PATH_MAX) {
                goto end;
@@ -110,22 +113,20 @@ end:
        return uris;
 error:
        free(uris);
-       return NULL;
+       return nullptr;
 }
 
-static
-void network_location_fini(
-               struct lttng_session_descriptor_network_location *location)
+static void network_location_fini(struct lttng_session_descriptor_network_location *location)
 {
        free(location->control);
        free(location->data);
 }
 
 /* Assumes ownership of control and data. */
-static
-int network_location_set_from_lttng_uris(
-               struct lttng_session_descriptor_network_location *location,
-               struct lttng_uri *control, struct lttng_uri *data)
+static int
+network_location_set_from_lttng_uris(struct lttng_session_descriptor_network_location *location,
+                                    struct lttng_uri *control,
+                                    struct lttng_uri *data)
 {
        int ret = 0;
 
@@ -139,8 +140,7 @@ int network_location_set_from_lttng_uris(
                goto end;
        }
 
-       if (control->stype != LTTNG_STREAM_CONTROL ||
-                       data->stype != LTTNG_STREAM_DATA) {
+       if (control->stype != LTTNG_STREAM_CONTROL || data->stype != LTTNG_STREAM_DATA) {
                ret = -1;
                goto end;
        }
@@ -149,24 +149,24 @@ int network_location_set_from_lttng_uris(
        free(location->data);
        location->control = control;
        location->data = data;
-       control = NULL;
-       data = NULL;
+       control = nullptr;
+       data = nullptr;
 end:
        free(control);
        free(data);
        return ret;
 }
 
-static
-int network_location_set_from_uri_strings(
-               struct lttng_session_descriptor_network_location *location,
-               const char *control, const char *data)
+static int
+network_location_set_from_uri_strings(struct lttng_session_descriptor_network_location *location,
+                                     const char *control,
+                                     const char *data)
 {
        int ret = 0;
        ssize_t uri_count;
-       struct lttng_uri *parsed_uris = NULL;
-       struct lttng_uri *control_uri = NULL;
-       struct lttng_uri *data_uri = NULL;
+       struct lttng_uri *parsed_uris = nullptr;
+       struct lttng_uri *control_uri = nullptr;
+       struct lttng_uri *data_uri = nullptr;
 
        uri_count = uri_parse_str_urls(control, data, &parsed_uris);
        if (uri_count != 2 && uri_count != 0) {
@@ -179,8 +179,8 @@ int network_location_set_from_uri_strings(
         * session descriptors expect individually allocated lttng_uris.
         */
        if (uri_count == 2) {
-               control_uri = (lttng_uri *) zmalloc(sizeof(*control_uri));
-               data_uri = (lttng_uri *) zmalloc(sizeof(*data_uri));
+               control_uri = zmalloc<lttng_uri>();
+               data_uri = zmalloc<lttng_uri>();
                if (!control_uri || !data_uri) {
                        ret = -1;
                        goto end;
@@ -190,12 +190,9 @@ int network_location_set_from_uri_strings(
        }
 
        /* Ownership of control and data uris is transferred. */
-       ret = network_location_set_from_lttng_uris(
-                       location,
-                       control_uri,
-                       data_uri);
-       control_uri = NULL;
-       data_uri = NULL;
+       ret = network_location_set_from_lttng_uris(location, control_uri, data_uri);
+       control_uri = nullptr;
+       data_uri = nullptr;
 end:
        free(parsed_uris);
        free(control_uri);
@@ -203,33 +200,29 @@ end:
        return ret;
 }
 
-struct lttng_session_descriptor *
-lttng_session_descriptor_create(const char *name)
+struct lttng_session_descriptor *lttng_session_descriptor_create(const char *name)
 {
        struct lttng_session_descriptor *descriptor;
 
-       descriptor = (lttng_session_descriptor *) zmalloc(sizeof(*descriptor));
+       descriptor = zmalloc<lttng_session_descriptor>();
        if (!descriptor) {
                goto error;
        }
 
        descriptor->type = LTTNG_SESSION_DESCRIPTOR_TYPE_REGULAR;
-       descriptor->output_type =
-                       LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NONE;
+       descriptor->output_type = LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NONE;
        if (lttng_session_descriptor_set_session_name(descriptor, name)) {
                goto error;
        }
        return descriptor;
 error:
        lttng_session_descriptor_destroy(descriptor);
-       return NULL;
+       return nullptr;
 }
 
 /* Ownership of uri is transferred. */
-static
-struct lttng_session_descriptor *
-_lttng_session_descriptor_local_create(const char *name,
-               struct lttng_uri *uri)
+static struct lttng_session_descriptor *
+_lttng_session_descriptor_local_create(const char *name, struct lttng_uri *uri)
 {
        struct lttng_session_descriptor *descriptor;
 
@@ -238,26 +231,25 @@ _lttng_session_descriptor_local_create(const char *name,
                goto error;
        }
        descriptor->type = LTTNG_SESSION_DESCRIPTOR_TYPE_REGULAR;
-       descriptor->output_type =
-                       LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_LOCAL;
+       descriptor->output_type = LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_LOCAL;
        if (uri) {
                if (uri->dtype != LTTNG_DST_PATH) {
                        goto error;
                }
                descriptor->output.local = uri;
-               uri = NULL;
+               uri = nullptr;
        }
        return descriptor;
 error:
        free(uri);
        lttng_session_descriptor_destroy(descriptor);
-       return NULL;
+       return nullptr;
 }
 
-struct lttng_session_descriptor *
-lttng_session_descriptor_local_create(const char *name, const char *path)
+struct lttng_session_descriptor *lttng_session_descriptor_local_create(const char *name,
+                                                                      const char *path)
 {
-       struct lttng_uri *uri = NULL;
+       struct lttng_uri *uri = nullptr;
        struct lttng_session_descriptor *descriptor;
 
        if (path) {
@@ -269,14 +261,12 @@ lttng_session_descriptor_local_create(const char *name, const char *path)
        descriptor = _lttng_session_descriptor_local_create(name, uri);
        return descriptor;
 error:
-       return NULL;
+       return nullptr;
 }
 
 /* Assumes the ownership of both uris. */
-static
-struct lttng_session_descriptor *
-_lttng_session_descriptor_network_create(const char *name,
-               struct lttng_uri *control, struct lttng_uri *data)
+static struct lttng_session_descriptor *_lttng_session_descriptor_network_create(
+       const char *name, struct lttng_uri *control, struct lttng_uri *data)
 {
        int ret;
        struct lttng_session_descriptor *descriptor;
@@ -289,10 +279,9 @@ _lttng_session_descriptor_network_create(const char *name,
        descriptor->type = LTTNG_SESSION_DESCRIPTOR_TYPE_REGULAR;
        descriptor->output_type = LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NETWORK;
        /* Assumes the ownership of both uris. */
-       ret = network_location_set_from_lttng_uris(&descriptor->output.network,
-                       control, data);
-       control = NULL;
-       data = NULL;
+       ret = network_location_set_from_lttng_uris(&descriptor->output.network, control, data);
+       control = nullptr;
+       data = nullptr;
        if (ret) {
                goto error;
        }
@@ -301,62 +290,56 @@ error:
        lttng_session_descriptor_destroy(descriptor);
        free(control);
        free(data);
-       return NULL;
+       return nullptr;
 }
 
-struct lttng_session_descriptor *
-lttng_session_descriptor_network_create(const char *name,
-               const char *control_url, const char *data_url)
+struct lttng_session_descriptor *lttng_session_descriptor_network_create(const char *name,
+                                                                        const char *control_url,
+                                                                        const char *data_url)
 {
        int ret;
        struct lttng_session_descriptor *descriptor;
 
-       descriptor = _lttng_session_descriptor_network_create(name,
-                       NULL, NULL);
+       descriptor = _lttng_session_descriptor_network_create(name, nullptr, nullptr);
        if (!descriptor) {
                goto error;
        }
 
-       ret = network_location_set_from_uri_strings(&descriptor->output.network,
-                       control_url, data_url);
+       ret = network_location_set_from_uri_strings(
+               &descriptor->output.network, control_url, data_url);
        if (ret) {
                goto error;
        }
        return descriptor;
 error:
        lttng_session_descriptor_destroy(descriptor);
-       return NULL;
+       return nullptr;
 }
 
-static
-struct lttng_session_descriptor_snapshot *
+static struct lttng_session_descriptor_snapshot *
 _lttng_session_descriptor_snapshot_create(const char *name)
 {
        struct lttng_session_descriptor_snapshot *descriptor;
 
-       descriptor = (lttng_session_descriptor_snapshot *) zmalloc(sizeof(*descriptor));
+       descriptor = zmalloc<lttng_session_descriptor_snapshot>();
        if (!descriptor) {
                goto error;
        }
 
        descriptor->base.type = LTTNG_SESSION_DESCRIPTOR_TYPE_SNAPSHOT;
-       descriptor->base.output_type =
-                       LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NONE;
-       if (lttng_session_descriptor_set_session_name(&descriptor->base,
-                       name)) {
+       descriptor->base.output_type = LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NONE;
+       if (lttng_session_descriptor_set_session_name(&descriptor->base, name)) {
                goto error;
        }
        return descriptor;
 error:
-       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : NULL);
-       return NULL;
+       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : nullptr);
+       return nullptr;
 }
 
 /* Ownership of control and data is transferred. */
-static
-struct lttng_session_descriptor_snapshot *
-_lttng_session_descriptor_snapshot_network_create(const char *name,
-               struct lttng_uri *control, struct lttng_uri *data)
+static struct lttng_session_descriptor_snapshot *_lttng_session_descriptor_snapshot_network_create(
+       const char *name, struct lttng_uri *control, struct lttng_uri *data)
 {
        int ret;
        struct lttng_session_descriptor_snapshot *descriptor;
@@ -366,14 +349,11 @@ _lttng_session_descriptor_snapshot_network_create(const char *name,
                goto error;
        }
 
-       descriptor->base.output_type =
-                       LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NETWORK;
+       descriptor->base.output_type = LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NETWORK;
        /* Ownership of control and data is transferred. */
-       ret = network_location_set_from_lttng_uris(
-                       &descriptor->base.output.network,
-                       control, data);
-       control = NULL;
-       data = NULL;
+       ret = network_location_set_from_lttng_uris(&descriptor->base.output.network, control, data);
+       control = nullptr;
+       data = nullptr;
        if (ret) {
                goto error;
        }
@@ -381,49 +361,43 @@ _lttng_session_descriptor_snapshot_network_create(const char *name,
 error:
        free(control);
        free(data);
-       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : NULL);
-       return NULL;
+       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : nullptr);
+       return nullptr;
 }
 
-struct lttng_session_descriptor *
-lttng_session_descriptor_snapshot_create(const char *name)
+struct lttng_session_descriptor *lttng_session_descriptor_snapshot_create(const char *name)
 {
        struct lttng_session_descriptor_snapshot *descriptor;
 
        descriptor = _lttng_session_descriptor_snapshot_create(name);
-       return descriptor ? &descriptor->base : NULL;
+       return descriptor ? &descriptor->base : nullptr;
 }
 
-struct lttng_session_descriptor *
-lttng_session_descriptor_snapshot_network_create(const char *name,
-               const char *control_url, const char *data_url)
+struct lttng_session_descriptor *lttng_session_descriptor_snapshot_network_create(
+       const char *name, const char *control_url, const char *data_url)
 {
        int ret;
        struct lttng_session_descriptor_snapshot *descriptor;
 
-       descriptor = _lttng_session_descriptor_snapshot_network_create(name,
-                       NULL, NULL);
+       descriptor = _lttng_session_descriptor_snapshot_network_create(name, nullptr, nullptr);
        if (!descriptor) {
                goto error;
        }
 
        ret = network_location_set_from_uri_strings(
-                       &descriptor->base.output.network,
-                       control_url, data_url);
+               &descriptor->base.output.network, control_url, data_url);
        if (ret) {
                goto error;
        }
        return &descriptor->base;
 error:
-       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : NULL);
-       return NULL;
+       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : nullptr);
+       return nullptr;
 }
 
 /* Ownership of uri is transferred. */
-static
-struct lttng_session_descriptor_snapshot *
-_lttng_session_descriptor_snapshot_local_create(const char *name,
-               struct lttng_uri *uri)
+static struct lttng_session_descriptor_snapshot *
+_lttng_session_descriptor_snapshot_local_create(const char *name, struct lttng_uri *uri)
 {
        struct lttng_session_descriptor_snapshot *descriptor;
 
@@ -431,27 +405,25 @@ _lttng_session_descriptor_snapshot_local_create(const char *name,
        if (!descriptor) {
                goto error;
        }
-       descriptor->base.output_type =
-                       LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_LOCAL;
+       descriptor->base.output_type = LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_LOCAL;
        if (uri) {
                if (uri->dtype != LTTNG_DST_PATH) {
                        goto error;
                }
                descriptor->base.output.local = uri;
-               uri = NULL;
+               uri = nullptr;
        }
        return descriptor;
 error:
        free(uri);
-       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : NULL);
-       return NULL;
+       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : nullptr);
+       return nullptr;
 }
 
-struct lttng_session_descriptor *
-lttng_session_descriptor_snapshot_local_create(const char *name,
-               const char *path)
+struct lttng_session_descriptor *lttng_session_descriptor_snapshot_local_create(const char *name,
+                                                                               const char *path)
 {
-       struct lttng_uri *path_uri = NULL;
+       struct lttng_uri *path_uri = nullptr;
        struct lttng_session_descriptor_snapshot *descriptor;
 
        if (path) {
@@ -460,69 +432,59 @@ lttng_session_descriptor_snapshot_local_create(const char *name,
                        goto error;
                }
        }
-       descriptor = _lttng_session_descriptor_snapshot_local_create(name,
-                       path_uri);
-       return descriptor ? &descriptor->base : NULL;
+       descriptor = _lttng_session_descriptor_snapshot_local_create(name, path_uri);
+       return descriptor ? &descriptor->base : nullptr;
 error:
-       return NULL;
+       return nullptr;
 }
 
-static
-struct lttng_session_descriptor_live *
-_lttng_session_descriptor_live_create(const char *name,
-               unsigned long long live_timer_interval_us)
+static struct lttng_session_descriptor_live *
+_lttng_session_descriptor_live_create(const char *name, unsigned long long live_timer_interval_us)
 {
-       struct lttng_session_descriptor_live *descriptor = NULL;
+       struct lttng_session_descriptor_live *descriptor = nullptr;
 
        if (live_timer_interval_us == 0) {
                goto error;
        }
-       descriptor = (lttng_session_descriptor_live *) zmalloc(sizeof(*descriptor));
+       descriptor = zmalloc<lttng_session_descriptor_live>();
        if (!descriptor) {
                goto error;
        }
 
        descriptor->base.type = LTTNG_SESSION_DESCRIPTOR_TYPE_LIVE;
-       descriptor->base.output_type =
-                       LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NONE;
+       descriptor->base.output_type = LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NONE;
        descriptor->live_timer_us = live_timer_interval_us;
-       if (lttng_session_descriptor_set_session_name(&descriptor->base,
-                       name)) {
+       if (lttng_session_descriptor_set_session_name(&descriptor->base, name)) {
                goto error;
        }
 
        return descriptor;
 error:
-       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : NULL);
-       return NULL;
+       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : nullptr);
+       return nullptr;
 }
 
 /* Ownership of control and data is transferred. */
-static
-struct lttng_session_descriptor_live *
-_lttng_session_descriptor_live_network_create(
-               const char *name,
-               struct lttng_uri *control, struct lttng_uri *data,
-               unsigned long long live_timer_interval_us)
+static struct lttng_session_descriptor_live *
+_lttng_session_descriptor_live_network_create(const char *name,
+                                             struct lttng_uri *control,
+                                             struct lttng_uri *data,
+                                             unsigned long long live_timer_interval_us)
 {
        int ret;
        struct lttng_session_descriptor_live *descriptor;
 
-       descriptor = _lttng_session_descriptor_live_create(name,
-                       live_timer_interval_us);
+       descriptor = _lttng_session_descriptor_live_create(name, live_timer_interval_us);
        if (!descriptor) {
                goto error;
        }
 
-       descriptor->base.output_type =
-                       LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NETWORK;
+       descriptor->base.output_type = LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NETWORK;
 
        /* Ownerwhip of control and data is transferred. */
-       ret = network_location_set_from_lttng_uris(
-                       &descriptor->base.output.network,
-                       control, data);
-       control = NULL;
-       data = NULL;
+       ret = network_location_set_from_lttng_uris(&descriptor->base.output.network, control, data);
+       control = nullptr;
+       data = nullptr;
        if (ret) {
                goto error;
        }
@@ -530,51 +492,47 @@ _lttng_session_descriptor_live_network_create(
 error:
        free(control);
        free(data);
-       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : NULL);
-       return NULL;
+       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : nullptr);
+       return nullptr;
 }
 
 struct lttng_session_descriptor *
-lttng_session_descriptor_live_create(
-               const char *name,
-               unsigned long long live_timer_us)
+lttng_session_descriptor_live_create(const char *name, unsigned long long live_timer_us)
 {
        struct lttng_session_descriptor_live *descriptor;
 
        descriptor = _lttng_session_descriptor_live_create(name, live_timer_us);
 
-       return descriptor ? &descriptor->base : NULL;
+       return descriptor ? &descriptor->base : nullptr;
 }
 
 struct lttng_session_descriptor *
-lttng_session_descriptor_live_network_create(
-               const char *name,
-               const char *control_url, const char *data_url,
-               unsigned long long live_timer_us)
+lttng_session_descriptor_live_network_create(const char *name,
+                                            const char *control_url,
+                                            const char *data_url,
+                                            unsigned long long live_timer_us)
 {
        int ret;
        struct lttng_session_descriptor_live *descriptor;
 
-       descriptor = _lttng_session_descriptor_live_network_create(name,
-                       NULL, NULL, live_timer_us);
+       descriptor = _lttng_session_descriptor_live_network_create(
+               name, nullptr, nullptr, live_timer_us);
        if (!descriptor) {
                goto error;
        }
 
        ret = network_location_set_from_uri_strings(
-                       &descriptor->base.output.network,
-                       control_url, data_url);
+               &descriptor->base.output.network, control_url, data_url);
        if (ret) {
                goto error;
        }
        return &descriptor->base;
 error:
-       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : NULL);
-       return NULL;
+       lttng_session_descriptor_destroy(descriptor ? &descriptor->base : nullptr);
+       return nullptr;
 }
 
-void lttng_session_descriptor_destroy(
-               struct lttng_session_descriptor *descriptor)
+void lttng_session_descriptor_destroy(struct lttng_session_descriptor *descriptor)
 {
        if (!descriptor) {
                return;
@@ -597,14 +555,13 @@ void lttng_session_descriptor_destroy(
        free(descriptor);
 }
 
-ssize_t lttng_session_descriptor_create_from_buffer(
-               const struct lttng_buffer_view *payload,
-               struct lttng_session_descriptor **descriptor)
+ssize_t lttng_session_descriptor_create_from_buffer(const struct lttng_buffer_view *payload,
+                                                   struct lttng_session_descriptor **descriptor)
 {
        int i;
        ssize_t offset = 0, ret;
        struct lttng_buffer_view current_view;
-       const char *name = NULL;
+       const char *name = nullptr;
        const struct lttng_session_descriptor_comm *base_header;
        size_t max_expected_uri_count;
        uint64_t live_timer_us = 0;
@@ -612,8 +569,7 @@ ssize_t lttng_session_descriptor_create_from_buffer(
        enum lttng_session_descriptor_type type;
        enum lttng_session_descriptor_output_type output_type;
 
-       current_view = lttng_buffer_view_from_view(payload, offset,
-                       sizeof(*base_header));
+       current_view = lttng_buffer_view_from_view(payload, offset, sizeof(*base_header));
        if (!lttng_buffer_view_is_valid(&current_view)) {
                ret = -1;
                goto end;
@@ -628,8 +584,7 @@ ssize_t lttng_session_descriptor_create_from_buffer(
        {
                const struct lttng_session_descriptor_live_comm *live_header;
 
-               current_view = lttng_buffer_view_from_view(payload, offset,
-                               sizeof(*live_header));
+               current_view = lttng_buffer_view_from_view(payload, offset, sizeof(*live_header));
                if (!lttng_buffer_view_is_valid(&current_view)) {
                        ret = -1;
                        goto end;
@@ -670,17 +625,15 @@ ssize_t lttng_session_descriptor_create_from_buffer(
        }
 
        /* Map the name. */
-       current_view = lttng_buffer_view_from_view(payload, offset,
-                       base_header->name_len);
+       current_view = lttng_buffer_view_from_view(payload, offset, base_header->name_len);
        if (!lttng_buffer_view_is_valid(&current_view)) {
                ret = -1;
                goto end;
        }
 
        name = current_view.data;
-       if (base_header->name_len == 1 ||
-                       name[base_header->name_len - 1] ||
-                       strlen(name) != base_header->name_len - 1) {
+       if (base_header->name_len == 1 || name[base_header->name_len - 1] ||
+           strlen(name) != base_header->name_len - 1) {
                /*
                 * Check that the name is not NULL, is NULL-terminated, and
                 * does not contain a NULL before the last byte.
@@ -701,15 +654,14 @@ skip_name:
                struct lttng_uri *uri;
 
                /* Map a URI. */
-               current_view = lttng_buffer_view_from_view(payload,
-                               offset, sizeof(*uri));
+               current_view = lttng_buffer_view_from_view(payload, offset, sizeof(*uri));
                if (!lttng_buffer_view_is_valid(&current_view)) {
                        ret = -1;
                        goto end;
                }
 
                uri = (typeof(uri)) current_view.data;
-               uris[i] = (lttng_uri *) zmalloc(sizeof(*uri));
+               uris[i] = zmalloc<lttng_uri>();
                if (!uris[i]) {
                        ret = -1;
                        goto end;
@@ -725,12 +677,11 @@ skip_name:
                        *descriptor = lttng_session_descriptor_create(name);
                        break;
                case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_LOCAL:
-                       *descriptor = _lttng_session_descriptor_local_create(
-                                       name, uris[0]);
+                       *descriptor = _lttng_session_descriptor_local_create(name, uris[0]);
                        break;
                case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NETWORK:
-                       *descriptor = _lttng_session_descriptor_network_create(
-                                       name, uris[0], uris[1]);
+                       *descriptor =
+                               _lttng_session_descriptor_network_create(name, uris[0], uris[1]);
                        break;
                default:
                        /* Already checked. */
@@ -742,22 +693,20 @@ skip_name:
                struct lttng_session_descriptor_snapshot *snapshot;
                switch (output_type) {
                case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NONE:
-                       snapshot = _lttng_session_descriptor_snapshot_create(
-                                       name);
+                       snapshot = _lttng_session_descriptor_snapshot_create(name);
                        break;
                case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_LOCAL:
-                       snapshot = _lttng_session_descriptor_snapshot_local_create(
-                                       name, uris[0]);
+                       snapshot = _lttng_session_descriptor_snapshot_local_create(name, uris[0]);
                        break;
                case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NETWORK:
                        snapshot = _lttng_session_descriptor_snapshot_network_create(
-                                       name, uris[0], uris[1]);
+                               name, uris[0], uris[1]);
                        break;
                default:
                        /* Already checked. */
                        abort();
                }
-               *descriptor = snapshot ? &snapshot->base : NULL;
+               *descriptor = snapshot ? &snapshot->base : nullptr;
                break;
        }
        case LTTNG_SESSION_DESCRIPTOR_TYPE_LIVE:
@@ -766,13 +715,11 @@ skip_name:
 
                switch (output_type) {
                case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NONE:
-                       live = _lttng_session_descriptor_live_create(
-                                       name, live_timer_us);
+                       live = _lttng_session_descriptor_live_create(name, live_timer_us);
                        break;
                case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NETWORK:
                        live = _lttng_session_descriptor_live_network_create(
-                                       name, uris[0], uris[1],
-                                       live_timer_us);
+                               name, uris[0], uris[1], live_timer_us);
                        break;
                case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_LOCAL:
                        ret = -1;
@@ -781,7 +728,7 @@ skip_name:
                        /* Already checked. */
                        abort();
                }
-               *descriptor = live ? &live->base : NULL;
+               *descriptor = live ? &live->base : nullptr;
                break;
        }
        default:
@@ -801,9 +748,8 @@ end:
        return ret;
 }
 
-int lttng_session_descriptor_serialize(
-               const struct lttng_session_descriptor *descriptor,
-               struct lttng_dynamic_buffer *buffer)
+int lttng_session_descriptor_serialize(const struct lttng_session_descriptor *descriptor,
+                                      struct lttng_dynamic_buffer *buffer)
 {
        int ret, i;
        /* There are, at most, two URIs to serialize. */
@@ -816,9 +762,12 @@ int lttng_session_descriptor_serialize(
                        .output_type = (uint8_t) descriptor->output_type,
                        .name_len = (uint32_t) (descriptor->name ?
                                strlen(descriptor->name) + 1 : 0),
-               }
+                       .uri_count = 0,
+               },
+               .live_timer_us = 0,
+
        };
-       const void *header_ptr = NULL;
+       const void *header_ptr = nullptr;
        size_t header_size;
 
        switch (descriptor->output_type) {
@@ -840,9 +789,8 @@ int lttng_session_descriptor_serialize(
 
        header.base.uri_count = uri_count;
        if (descriptor->type == LTTNG_SESSION_DESCRIPTOR_TYPE_LIVE) {
-               const struct lttng_session_descriptor_live *live =
-                               container_of(descriptor, typeof(*live),
-                               base);
+               const struct lttng_session_descriptor_live *live = lttng::utils::container_of(
+                       descriptor, &lttng_session_descriptor_live::base);
 
                header.live_timer_us = live->live_timer_us;
                header_ptr = &header;
@@ -857,16 +805,14 @@ int lttng_session_descriptor_serialize(
                goto end;
        }
        if (header.base.name_len) {
-               ret = lttng_dynamic_buffer_append(buffer, descriptor->name,
-                               header.base.name_len);
+               ret = lttng_dynamic_buffer_append(buffer, descriptor->name, header.base.name_len);
                if (ret) {
                        goto end;
                }
        }
 
        for (i = 0; i < uri_count; i++) {
-               ret = lttng_dynamic_buffer_append(buffer, uris[i],
-                               sizeof(struct lttng_uri));
+               ret = lttng_dynamic_buffer_append(buffer, uris[i], sizeof(struct lttng_uri));
                if (ret) {
                        goto end;
                }
@@ -876,49 +822,44 @@ end:
 }
 
 enum lttng_session_descriptor_type
-lttng_session_descriptor_get_type(
-               const struct lttng_session_descriptor *descriptor)
+lttng_session_descriptor_get_type(const struct lttng_session_descriptor *descriptor)
 {
        return descriptor->type;
 }
 
 enum lttng_session_descriptor_output_type
-lttng_session_descriptor_get_output_type(
-               const struct lttng_session_descriptor *descriptor)
+lttng_session_descriptor_get_output_type(const struct lttng_session_descriptor *descriptor)
 {
        return descriptor->output_type;
 }
 
 void lttng_session_descriptor_get_local_output_uri(
-               const struct lttng_session_descriptor *descriptor,
-               struct lttng_uri *local_uri)
+       const struct lttng_session_descriptor *descriptor, struct lttng_uri *local_uri)
 {
        memcpy(local_uri, descriptor->output.local, sizeof(*local_uri));
 }
 
 void lttng_session_descriptor_get_network_output_uris(
-               const struct lttng_session_descriptor *descriptor,
-               struct lttng_uri *control,
-               struct lttng_uri *data)
+       const struct lttng_session_descriptor *descriptor,
+       struct lttng_uri *control,
+       struct lttng_uri *data)
 {
        memcpy(control, descriptor->output.network.control, sizeof(*control));
        memcpy(data, descriptor->output.network.data, sizeof(*data));
 }
 
 unsigned long long
-lttng_session_descriptor_live_get_timer_interval(
-               const struct lttng_session_descriptor *descriptor)
+lttng_session_descriptor_live_get_timer_interval(const struct lttng_session_descriptor *descriptor)
 {
        struct lttng_session_descriptor_live *live;
 
-       live = container_of(descriptor, typeof(*live), base);
+       live = lttng::utils::container_of(descriptor, &lttng_session_descriptor_live::base);
        return live->live_timer_us;
 }
 
 enum lttng_session_descriptor_status
-lttng_session_descriptor_get_session_name(
-               const struct lttng_session_descriptor *descriptor,
-               const char **session_name)
+lttng_session_descriptor_get_session_name(const struct lttng_session_descriptor *descriptor,
+                                         const char **session_name)
 {
        enum lttng_session_descriptor_status status;
 
@@ -928,16 +869,14 @@ lttng_session_descriptor_get_session_name(
        }
 
        *session_name = descriptor->name;
-       status = descriptor->name ?
-                       LTTNG_SESSION_DESCRIPTOR_STATUS_OK :
-                       LTTNG_SESSION_DESCRIPTOR_STATUS_UNSET;
+       status = descriptor->name ? LTTNG_SESSION_DESCRIPTOR_STATUS_OK :
+                                   LTTNG_SESSION_DESCRIPTOR_STATUS_UNSET;
 end:
        return status;
 }
 
-int lttng_session_descriptor_set_session_name(
-               struct lttng_session_descriptor *descriptor,
-               const char *name)
+int lttng_session_descriptor_set_session_name(struct lttng_session_descriptor *descriptor,
+                                             const char *name)
 {
        int ret = 0;
        char *new_name;
@@ -961,7 +900,7 @@ end:
 }
 
 bool lttng_session_descriptor_is_output_destination_initialized(
-               const struct lttng_session_descriptor *descriptor)
+       const struct lttng_session_descriptor *descriptor)
 {
        switch (descriptor->output_type) {
        case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NONE:
@@ -975,8 +914,7 @@ bool lttng_session_descriptor_is_output_destination_initialized(
        }
 }
 
-bool lttng_session_descriptor_has_output_directory(
-               const struct lttng_session_descriptor *descriptor)
+bool lttng_session_descriptor_has_output_directory(const struct lttng_session_descriptor *descriptor)
 {
        switch (descriptor->output_type) {
        case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NONE:
@@ -997,13 +935,13 @@ bool lttng_session_descriptor_has_output_directory(
        return false;
 }
 
-enum lttng_error_code lttng_session_descriptor_set_default_output(
-               struct lttng_session_descriptor *descriptor,
-               time_t *session_creation_time,
-               const char *absolute_home_path)
+enum lttng_error_code
+lttng_session_descriptor_set_default_output(struct lttng_session_descriptor *descriptor,
+                                           time_t *session_creation_time,
+                                           const char *absolute_home_path)
 {
        enum lttng_error_code ret_code = LTTNG_OK;
-       struct lttng_uri *uris = NULL;
+       struct lttng_uri *uris = nullptr;
 
        switch (descriptor->output_type) {
        case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NONE:
@@ -1025,8 +963,9 @@ enum lttng_error_code lttng_session_descriptor_set_default_output(
                                goto end;
                        }
                        strftime_ret = strftime(creation_datetime_suffix,
-                                       sizeof(creation_datetime_suffix),
-                                       "-%Y%m%d-%H%M%S", timeinfo);
+                                               sizeof(creation_datetime_suffix),
+                                               "-%Y%m%d-%H%M%S",
+                                               timeinfo);
                        if (strftime_ret == 0) {
                                ERR("Failed to format session creation timestamp while setting default local output destination");
                                ret_code = LTTNG_ERR_FATAL;
@@ -1034,11 +973,13 @@ enum lttng_error_code lttng_session_descriptor_set_default_output(
                        }
                }
                LTTNG_ASSERT(descriptor->name);
-               ret = snprintf(local_uri, sizeof(local_uri),
-                               "file://%s/%s/%s%s",
-                               absolute_home_path,
-                               DEFAULT_TRACE_DIR_NAME, descriptor->name,
-                               creation_datetime_suffix);
+               ret = snprintf(local_uri,
+                              sizeof(local_uri),
+                              "file://%s/%s/%s%s",
+                              absolute_home_path,
+                              DEFAULT_TRACE_DIR_NAME,
+                              descriptor->name,
+                              creation_datetime_suffix);
                if (ret >= sizeof(local_uri)) {
                        ERR("Truncation occurred while setting default local output destination");
                        ret_code = LTTNG_ERR_SET_URL;
@@ -1056,16 +997,16 @@ enum lttng_error_code lttng_session_descriptor_set_default_output(
                }
                free(descriptor->output.local);
                descriptor->output.local = &uris[0];
-               uris = NULL;
+               uris = nullptr;
                break;
        }
        case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NETWORK:
        {
                int ret;
                ssize_t uri_ret;
-               struct lttng_uri *control = NULL, *data = NULL;
+               struct lttng_uri *control = nullptr, *data = nullptr;
 
-               uri_ret = uri_parse_str_urls("net://127.0.0.1", NULL, &uris);
+               uri_ret = uri_parse_str_urls("net://127.0.0.1", nullptr, &uris);
                if (uri_ret != 2) {
                        ret_code = LTTNG_ERR_SET_URL;
                        goto end;
@@ -1082,8 +1023,7 @@ enum lttng_error_code lttng_session_descriptor_set_default_output(
 
                /* Ownership of uris is transferred. */
                ret = network_location_set_from_lttng_uris(
-                               &descriptor->output.network,
-                               control, data);
+                       &descriptor->output.network, control, data);
                if (ret) {
                        abort();
                        ret_code = LTTNG_ERR_SET_URL;
@@ -1103,9 +1043,8 @@ end:
  * Note that only properties that can be populated by the session daemon
  * (output destination and name) are assigned.
  */
-int lttng_session_descriptor_assign(
-               struct lttng_session_descriptor *dst,
-               const struct lttng_session_descriptor *src)
+int lttng_session_descriptor_assign(struct lttng_session_descriptor *dst,
+                                   const struct lttng_session_descriptor *src)
 {
        int ret = 0;
 
@@ -1132,7 +1071,7 @@ int lttng_session_descriptor_assign(
                break;
        case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NETWORK:
        {
-               struct lttng_uri *control_copy = NULL, *data_copy = NULL;
+               struct lttng_uri *control_copy = nullptr, *data_copy = nullptr;
 
                control_copy = uri_copy(dst->output.network.control);
                if (!control_copy && dst->output.network.control) {
@@ -1145,8 +1084,8 @@ int lttng_session_descriptor_assign(
                        ret = -1;
                        goto end;
                }
-               ret = network_location_set_from_lttng_uris(&dst->output.network,
-                               control_copy, data_copy);
+               ret = network_location_set_from_lttng_uris(
+                       &dst->output.network, control_copy, data_copy);
                break;
        }
        case LTTNG_SESSION_DESCRIPTOR_OUTPUT_TYPE_NONE:
This page took 0.040032 seconds and 4 git commands to generate.