Remove unnecessary inclusions of "internal public" headers
[babeltrace.git] / src / plugins / lttng-utils / debug-info / bin-info.c
index 72eb818932abe0768ec5605bec71c68571356143..99127291591d75888c7b843dd84a7e24aaf3bd29 100644 (file)
@@ -1,29 +1,9 @@
 /*
- * bin-info.c
+ * SPDX-License-Identifier: MIT
  *
  * Babeltrace - Executable and Shared Object Debug Info Reader
  *
  * Copyright 2015 Antoine Busque <abusque@efficios.com>
- *
- * Author: Antoine Busque <abusque@efficios.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
  */
 
 #define BT_COMP_LOG_SELF_COMP (bin->self_comp)
@@ -31,7 +11,6 @@
 #define BT_LOG_TAG "PLUGIN/FLT.LTTNG-UTILS.DEBUG-INFO/BIN-INFO"
 #include "logging/comp-logging.h"
 
-#include <babeltrace2/logging.h>
 #include <dwarf.h>
 #include <errno.h>
 #include <fcntl.h>
@@ -61,7 +40,6 @@
 #define ADDR_STR_LEN 20
 #define BUILD_ID_NOTE_NAME "GNU"
 
-BT_HIDDEN
 int bin_info_init(bt_logging_level log_level, bt_self_component *self_comp)
 {
        int ret = 0;
@@ -76,7 +54,6 @@ int bin_info_init(bt_logging_level log_level, bt_self_component *self_comp)
        return ret;
 }
 
-BT_HIDDEN
 struct bin_info *bin_info_create(struct bt_fd_cache *fdc, const char *path,
                uint64_t low_addr, uint64_t memsz, bool is_pic,
                const char *debug_info_dir, const char *target_prefix,
@@ -130,7 +107,6 @@ error:
        return NULL;
 }
 
-BT_HIDDEN
 void bin_info_destroy(struct bin_info *bin)
 {
        if (!bin) {
@@ -300,7 +276,7 @@ end:
  *
  * @returns                    1 on if the build id of stored in `bin` matches
  *                             the build id of the ondisk file.
- *                             0 on if they are different or an error occured.
+ *                             0 on if they are different or an error occurred.
  */
 static
 int is_build_id_matching(struct bin_info *bin)
@@ -369,7 +345,6 @@ error:
        return is_matching;
 }
 
-BT_HIDDEN
 int bin_info_set_build_id(struct bin_info *bin, uint8_t *build_id,
                size_t build_id_len)
 {
@@ -377,6 +352,9 @@ int bin_info_set_build_id(struct bin_info *bin, uint8_t *build_id,
                goto error;
        }
 
+       /* Free any previously set build id. */
+       g_free(bin->build_id);
+
        /* Set the build id. */
        bin->build_id = g_new0(uint8_t, build_id_len);
        if (!bin->build_id) {
@@ -393,7 +371,7 @@ int bin_info_set_build_id(struct bin_info *bin, uint8_t *build_id,
        bin->file_build_id_matches = is_build_id_matching(bin);
        if (!bin->file_build_id_matches) {
                BT_COMP_LOGI_STR("Supplied Build ID does not match Build ID of the "
-                               "binary or library found on the file system.");
+                       "binary or library found on the file system.");
                goto error;
        }
 
@@ -410,7 +388,6 @@ error:
        return -1;
 }
 
-BT_HIDDEN
 int bin_info_set_debug_link(struct bin_info *bin, const char *filename,
                uint32_t crc)
 {
@@ -736,7 +713,6 @@ end:
        return ret;
 }
 
-BT_HIDDEN
 void source_location_destroy(struct source_location *src_loc)
 {
        if (!src_loc) {
@@ -939,7 +915,7 @@ int bin_info_lookup_elf_function_name(struct bin_info *bin, uint64_t addr,
 
        while (scn && !sym) {
                ret = bin_info_get_nearest_symbol_from_section(
-                               scn, addr, &sym, &shdr);
+                       scn, addr, &sym, &shdr);
                if (ret) {
                        goto error;
                }
@@ -949,13 +925,13 @@ int bin_info_lookup_elf_function_name(struct bin_info *bin, uint64_t addr,
 
        if (sym) {
                sym_name = elf_strptr(bin->elf_file, shdr->sh_link,
-                               sym->st_name);
+                       sym->st_name);
                if (!sym_name) {
                        goto error;
                }
 
                ret = bin_info_append_offset_str(sym_name, sym->st_value, addr,
-                                               func_name);
+                       func_name);
                if (ret) {
                        goto error;
                }
@@ -1037,7 +1013,7 @@ int bin_info_lookup_cu_function_name(struct bt_dwarf_cu *cu, uint64_t addr,
                }
 
                ret = bin_info_append_offset_str(die_name, low_addr, addr,
-                                               func_name);
+                       func_name);
                free(die_name);
                if (ret) {
                        goto error;
@@ -1108,7 +1084,6 @@ error:
        return -1;
 }
 
-BT_HIDDEN
 int bin_info_lookup_function_name(struct bin_info *bin,
                uint64_t addr, char **func_name)
 {
@@ -1132,7 +1107,7 @@ int bin_info_lookup_function_name(struct bin_info *bin,
                ret = bin_info_set_dwarf_info(bin);
                if (ret) {
                        BT_COMP_LOGI_STR("Failed to set bin dwarf info, falling "
-                                       "back to ELF lookup.");
+                               "back to ELF lookup.");
                        /* Failed to set DWARF info, fallback to ELF. */
                        bin->is_elf_only = true;
                }
@@ -1152,14 +1127,14 @@ int bin_info_lookup_function_name(struct bin_info *bin,
 
        if (bin->is_elf_only) {
                ret = bin_info_lookup_elf_function_name(bin, addr,
-                               &_func_name);
+                       &_func_name);
                if (ret) {
                        BT_COMP_LOGI("Failed to lookup function name (ELF): "
                                "ret=%d", ret);
                }
        } else {
                ret = bin_info_lookup_dwarf_function_name(bin, addr,
-                               &_func_name);
+                       &_func_name);
                if (ret) {
                        BT_COMP_LOGI("Failed to lookup function name (DWARF): "
                                "ret=%d", ret);
@@ -1173,7 +1148,6 @@ error:
        return -1;
 }
 
-BT_HIDDEN
 int bin_info_get_bin_loc(struct bin_info *bin, uint64_t addr, char **bin_loc)
 {
        gchar *_bin_loc = NULL;
@@ -1523,7 +1497,6 @@ error:
        return -1;
 }
 
-BT_HIDDEN
 int bin_info_lookup_source_location(struct bin_info *bin, uint64_t addr,
                struct source_location **src_loc)
 {
This page took 0.026759 seconds and 4 git commands to generate.