From: Michael Jeanson Date: Tue, 13 Oct 2020 21:54:04 +0000 (-0400) Subject: port: ELF_ST_TYPE is defined in elf.h on FreeBSD X-Git-Tag: v2.13.0-rc1~452 X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=commitdiff_plain;h=983a481e7516ab54b3697a28aa16a81f51573152;hp=3306f57f46985487bce75e5e5200ee6d0620ffd2 port: ELF_ST_TYPE is defined in elf.h on FreeBSD No need to alias ELF32_ST_TYPE to ELF_ST_TYPE. Signed-off-by: Michael Jeanson Signed-off-by: Jérémie Galarneau Change-Id: I8afa2fb9d96b81d994b90c8291f2f457a037a525 --- diff --git a/src/common/lttng-elf.c b/src/common/lttng-elf.c index bef20ffd4..d6cef2fe8 100644 --- a/src/common/lttng-elf.c +++ b/src/common/lttng-elf.c @@ -133,8 +133,17 @@ dst_sym.st_size = src_sym.st_size; \ } while (0) -/* Both 32bit and 64bit use the same 1 byte field for type. (See elf.h) */ -#define ELF_ST_TYPE(val) ELF32_ST_TYPE(val) +#ifndef ELFCLASSNUM +#define ELFCLASSNUM 3 +#endif + +#ifndef ELFDATANUM +#define ELFDATANUM 3 +#endif + +#ifndef EV_NUM +#define EV_NUM 2 +#endif struct lttng_elf_ehdr { uint16_t e_type; @@ -846,7 +855,8 @@ int lttng_elf_get_symbol_offset(int fd, char *symbol, uint64_t *offset) /* * If the current symbol is not a function; skip to the next symbol. */ - if (ELF_ST_TYPE(curr_sym.st_info) != STT_FUNC) { + /* Both 32bit and 64bit use the same 1 byte field for type. (See elf.h) */ + if (ELF32_ST_TYPE(curr_sym.st_info) != STT_FUNC) { continue; }