aboutsummaryrefslogtreecommitdiff
path: root/gdb/solib.c
diff options
context:
space:
mode:
authorJan Kratochvil <jan.kratochvil@redhat.com>2015-07-15 20:27:32 +0200
committerJan Kratochvil <jan.kratochvil@redhat.com>2015-07-15 20:27:32 +0200
commitdb1ff28b60f8886b8d7c634f1db2f939ba47a13c (patch)
treece5564ef7211bb69bef2fbc645608b1490dafc34 /gdb/solib.c
parent0a94970d663a053c523f23ac0d71deb25a77f709 (diff)
Revert the previous 7 commits of: Validate binary before use
ddc98fbf2fd9e244a215a4d09e559180dc573a14 Create empty nat/linux-maps.[ch] and common/target-utils.[ch] 6e5b4429db0d66e2d0b27e1bcfe4709f3dae73ed Move gdb_regex* to common/ f7af1fcd759fa126612018a5916cf808df7bb8bc Prepare linux_find_memory_regions_full & co. for move 9904185cfde13d6c6849f1f042c8e3b74974cf08 Move linux_find_memory_regions_full & co. 700ca40f6fc1addd7238f4ab57f76c095ad3c99f gdbserver build-id attribute generator ca5268b6be265580b91ef75c1a1a9815f581ae42 Validate symbol file using build-id 0a94970d663a053c523f23ac0d71deb25a77f709 Tests for validate symbol file using build-id gdb/ChangeLog 2015-07-15 Jan Kratochvil <jan.kratochvil@redhat.com> Revert the previous 6 commits: Create empty nat/linux-maps.[ch] and common/target-utils.[ch]. Move gdb_regex* to common/ Prepare linux_find_memory_regions_full & co. for move Move linux_find_memory_regions_full & co. gdbserver build-id attribute generator Validate symbol file using build-id gdb/gdbserver/ChangeLog 2015-07-15 Jan Kratochvil <jan.kratochvil@redhat.com> Revert the previous 3 commits: Move gdb_regex* to common/ Move linux_find_memory_regions_full & co. gdbserver build-id attribute generator gdb/doc/ChangeLog 2015-07-15 Jan Kratochvil <jan.kratochvil@redhat.com> Revert the previous 2 commits: gdbserver build-id attribute generator Validate symbol file using build-id gdb/testsuite/ChangeLog 2015-07-15 Jan Kratochvil <jan.kratochvil@redhat.com> Revert the previous commit: Tests for validate symbol file using build-id.
Diffstat (limited to 'gdb/solib.c')
-rw-r--r--gdb/solib.c64
1 files changed, 1 insertions, 63 deletions
diff --git a/gdb/solib.c b/gdb/solib.c
index 01c66dba8e..eb933c044d 100644
--- a/gdb/solib.c
+++ b/gdb/solib.c
@@ -518,20 +518,6 @@ solib_bfd_open (char *pathname)
return abfd;
}
-/* Boolean for command 'set validate-build-id'. */
-static int validate_build_id = 1;
-
-/* Implement 'show validate-build-id'. */
-
-static void
-show_validate_build_id (struct ui_file *file, int from_tty,
- struct cmd_list_element *c, const char *value)
-{
- fprintf_filtered (file, _("Validation a build-id matches to load a shared "
- "library is %s.\n"),
- value);
-}
-
/* Given a pointer to one of the shared objects in our list of mapped
objects, use the recorded name to open a bfd descriptor for the
object, build a section table, relocate all the section addresses
@@ -548,7 +534,7 @@ static int
solib_map_sections (struct so_list *so)
{
const struct target_so_ops *ops = solib_ops (target_gdbarch ());
- char *filename, *validate_error;
+ char *filename;
struct target_section *p;
struct cleanup *old_chain;
bfd *abfd;
@@ -564,29 +550,6 @@ solib_map_sections (struct so_list *so)
/* Leave bfd open, core_xfer_memory and "info files" need it. */
so->abfd = abfd;
- gdb_assert (ops->validate != NULL);
-
- validate_error = ops->validate (so);
- if (validate_error != NULL)
- {
- if (validate_build_id)
- {
- warning (_("Shared object \"%s\" could not be validated (%s) and "
- "will be ignored; "
- "or use 'set validate-build-id off'."),
- so->so_name, validate_error);
- xfree (validate_error);
- gdb_bfd_unref (so->abfd);
- so->abfd = NULL;
- return 0;
- }
- warning (_("Shared object \"%s\" could not be validated (%s) "
- "but it is being loaded due to "
- "'set validate-build-id off'."),
- so->so_name, validate_error);
- xfree (validate_error);
- }
-
/* Copy the full path name into so_name, allowing symbol_file_add
to find it later. This also affects the =library-loaded GDB/MI
event, and in particular the part of that notification providing
@@ -663,9 +626,6 @@ clear_so (struct so_list *so)
of the symbol file. */
strcpy (so->so_name, so->so_original_name);
- xfree (so->build_id);
- so->build_id = NULL;
-
/* Do the same for target-specific data. */
if (ops->clear_so != NULL)
ops->clear_so (so);
@@ -1697,14 +1657,6 @@ remove_user_added_objfile (struct objfile *objfile)
}
}
-/* Default implementation does not perform any validation. */
-
-char *
-default_solib_validate (const struct so_list *const so)
-{
- return NULL; /* No validation. */
-}
-
extern initialize_file_ftype _initialize_solib; /* -Wmissing-prototypes */
void
@@ -1762,18 +1714,4 @@ PATH and LD_LIBRARY_PATH."),
reload_shared_libraries,
show_solib_search_path,
&setlist, &showlist);
-
- add_setshow_boolean_cmd ("validate-build-id", class_support,
- &validate_build_id, _("\
-Set validation a build-id matches to load a shared library."), _("\
-SHow validation a build-id matches to load a shared library."), _("\
-Inferior shared library and symbol file may contain unique build-id.\n\
-If both build-ids are present but they do not match then this setting\n\
-enables (off) or disables (on) loading of such symbol file.\n\
-Loading non-matching symbol file may confuse debugging including breakage\n\
-of backtrace output."),
- NULL,
- show_validate_build_id,
- &setlist, &showlist);
-
}