diff options
author | Philip Guenther <guenther@cvs.openbsd.org> | 2016-09-03 09:34:34 +0000 |
---|---|---|
committer | Philip Guenther <guenther@cvs.openbsd.org> | 2016-09-03 09:34:34 +0000 |
commit | c416aa16b0aaa9eb7ef19c7ae8181db98927d477 (patch) | |
tree | 02c4755570361ff3b4aac8c5ac9ffd7dbb491d95 /gnu/usr.bin/binutils-2.17 | |
parent | 831e8b66e17bcba92ec8600935c13295b89877f6 (diff) |
Revert rev 1.15: RELRO is working so we no longer need special handling
for __{got,plt}_{start,end} symbols
ok kettenis@
Diffstat (limited to 'gnu/usr.bin/binutils-2.17')
-rw-r--r-- | gnu/usr.bin/binutils-2.17/bfd/elflink.c | 19 |
1 files changed, 0 insertions, 19 deletions
diff --git a/gnu/usr.bin/binutils-2.17/bfd/elflink.c b/gnu/usr.bin/binutils-2.17/bfd/elflink.c index 2673b408a18..2f1d604f1cb 100644 --- a/gnu/usr.bin/binutils-2.17/bfd/elflink.c +++ b/gnu/usr.bin/binutils-2.17/bfd/elflink.c @@ -1566,17 +1566,6 @@ nondefault: return TRUE; } - -static inline int -obsd_is_required_sym(const char *name) -{ - return (name[0] == '_' && name[1] == '_' && - (strcmp(name+2, "got_start") == 0 || - strcmp(name+2, "got_end") == 0 || - strcmp(name+2, "plt_start") == 0 || - strcmp(name+2, "plt_end") == 0)); -} - /* This routine is used to export all defined symbols into the dynamic symbol table. It is called via elf_link_hash_traverse. */ @@ -1599,10 +1588,6 @@ _bfd_elf_export_symbol (struct elf_link_hash_entry *h, void *data) struct bfd_elf_version_tree *t; struct bfd_elf_version_expr *d; - /* kludge around the lack of relro support by always putting - __{got,plt}_{start,end} in the dynamic symbol table */ - if (eif->verdefs && obsd_is_required_sym(h->root.root.string)) - goto doit; for (t = eif->verdefs; t != NULL; t = t->next) { if (t->globals.list != NULL) @@ -1866,10 +1851,6 @@ _bfd_elf_link_assign_sym_version (struct elf_link_hash_entry *h, void *data) h->hidden = 1; } - /* don't apply a version to the symbols we require */ - if (obsd_is_required_sym(h->root.root.string)) - return TRUE; - /* If we don't have a version for this symbol, see if we can find something. */ if (h->verinfo.vertree == NULL && sinfo->verdefs != NULL) |