diff options
Diffstat (limited to 'elfutils/libebl/eblopenbackend.c')
-rw-r--r-- | elfutils/libebl/eblopenbackend.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/elfutils/libebl/eblopenbackend.c b/elfutils/libebl/eblopenbackend.c index e11ff067..60e7f84a 100644 --- a/elfutils/libebl/eblopenbackend.c +++ b/elfutils/libebl/eblopenbackend.c @@ -1,5 +1,5 @@ /* Generate ELF backend handle. - Copyright (C) 2000-2010 Red Hat, Inc. + Copyright (C) 2000-2011 Red Hat, Inc. This file is part of Red Hat elfutils. Red Hat elfutils is free software; you can redistribute it and/or modify @@ -184,8 +184,8 @@ static const char *default_osabi_name (int ignore, char *buf, size_t len); static void default_destr (struct ebl *ignore); static const char *default_core_note_type_name (uint32_t, char *buf, size_t len); -static const char *default_object_note_type_name (uint32_t, char *buf, - size_t len); +static const char *default_object_note_type_name (const char *name, uint32_t, + char *buf, size_t len); static int default_core_note (const GElf_Nhdr *nhdr, const char *name, GElf_Word *regs_offset, size_t *nregloc, const Ebl_Register_Location **reglocs, @@ -202,6 +202,7 @@ static bool default_check_special_symbol (Elf *elf, GElf_Ehdr *ehdr, const GElf_Sym *sym, const char *name, const GElf_Shdr *destshdr); +static bool default_check_st_other_bits (unsigned char st_other); static bool default_check_special_section (Ebl *, int, const GElf_Shdr *, const char *); static bool default_bss_plt_p (Elf *elf, GElf_Ehdr *ehdr); @@ -253,6 +254,7 @@ fill_defaults (Ebl *result) result->none_reloc_p = default_none_reloc_p; result->relative_reloc_p = default_relative_reloc_p; result->check_special_symbol = default_check_special_symbol; + result->check_st_other_bits = default_check_st_other_bits; result->bss_plt_p = default_bss_plt_p; result->return_value_location = default_return_value_location; result->register_info = default_register_info; @@ -617,7 +619,8 @@ default_core_note (const GElf_Nhdr *nhdr __attribute__ ((unused)), } static const char * -default_object_note_type_name (uint32_t ignore __attribute__ ((unused)), +default_object_note_type_name (const char *name __attribute__ ((unused)), + uint32_t ignore __attribute__ ((unused)), char *buf __attribute__ ((unused)), size_t len __attribute__ ((unused))) { @@ -698,6 +701,13 @@ default_check_special_symbol (Elf *elf __attribute__ ((unused)), } static bool +default_check_st_other_bits (unsigned char st_other __attribute__ ((unused))) +{ + return false; +} + + +static bool default_bss_plt_p (Elf *elf __attribute__ ((unused)), GElf_Ehdr *ehdr __attribute__ ((unused))) { |