Alan Modra
bf2dd8d7cf
BFD_INIT_MAGIC
...
This patch performs a run-time test that a shared libbfd.so has been
compiled with the same size bfd_vma as that of apps using the library.
On a 32-bit host it is easily possible to have one libbfd.so compiled
to support 64-bit targets (or configured with --enable-64-bit-bfd)
while another only supports 32-bit targets. The two libraries will
have differently sized bfd_vma types, and if the wrong one is loaded
all sorts of weird behaviour might be seen.
bfd/
PR 23534
* init.c (BFD_INIT_MAGIC): Define.
(bfd_init): Return BFD_INIT_MAGIC.
bfd-in2.h: Regenerate.
binutils/
PR 23534
* addr2line.c (main): Exit with fatal error if bfd_init
returns an unexpected value.
* ar.c (main): Likewise.
* dlltool.c (identify_dll_for_implib): Likewise.
* nm.c (main): Likewise.
* objcopy.c (main): Likewise.
* objdump.c (main): Likewise.
* size.c (main): Likewise.
* strings.c (main): Likewise.
* windmc.c (main): Likewise.
* windres.c (main): Likewise.
gas/
PR 23534
* as.c (main): Exit with fatal error if bfd_init returns an
unexpected value.
ld/
PR 23534
* ldmain.c (main): Exit with fatal error if bfd_init returns
an unexpected value.
2018-10-15 22:11:58 +10:30
Alan Modra
219d1afa89
Update year range in copyright notice of binutils files
2018-01-03 17:49:56 +10:30
Alan Modra
2571583aed
Update year range in copyright notice of all files.
2017-01-02 14:08:56 +10:30
Alan Modra
3860d2b4b7
Delete bfd_my_archive macro
...
Many more places use abfd->my_archive rather than bfd_my_archive (abfd),
so let's make the code consistently use the first idiom.
bfd/
* bfd-in.h (bfd_my_archive): Delete.
* bfd-in2.h: Regenerate.
binutils/
* ar.c: Expand uses of bfd_my_archive.
* size.c: Likewise.
ld/
* ldlang.c: Expand uses of bfd_my_archive.
* ldmain.c: Likewise.
* ldmisc.c: Likewise.
* plugin.c: Likewise.
2016-06-14 13:24:37 +09:30
Alan Modra
6f2750feaf
Copyright update for binutils
2016-01-01 23:00:01 +10:30
Nick Clifton
86eafac0aa
Fix memory access violations triggered by running strip on fuzzed binaries.
...
PR binutils/17512
* coffcode.h (coff_set_arch_mach_hook): Check return value from
bfd_malloc.
(coff_slurp_line_table): Return FALSE if the line number
information was corrupt.
(coff_slurp_symbol_table): Return FALSE if the symbol information
was corrupt.
* mach-o.c (bfd_mach_o_bfd_copy_private_header_data): Always
initialise the fields of the dyld_info structure.
(bfd_mach_o_build_exec_seg_command): Replace assertion with an
error message and a return value.
(bfd_mach_o_layout_commands): Change the function to boolean.
Return FALSE if the function fails.
(bfd_mach_o_build_commands): Fail if bfd_mach_o_layout_commands
fails.
(bfd_mach_o_read_command): Fail if an unrecognised command is
encountered.
* peXXigen.c (_bfd_XXi_swap_aouthdr_in): Set bfd_error if the
read fails.
(slurp_symtab): Check the return from bfd_malloc.
(_bfd_XX_bfd_copy_private_bfd_data_common): Fail if the copy
encountered an error.
(_bfd_XXi_final_link_postscript): Fail if a section could not be
copied.
* peicode.h (pe_bfd_object_p): Fail if the header could not be
swapped in.
* tekhex.c (first_phase): Fail if the section is too big.
* versados.c (struct esdid): Add content_size field.
(process_otr): Use and check the new field.
(versados_get_section_contents): Check that the section exists and
that the requested data is available.
PR binutils/17512
* addr2line.c (main): Call bfd_set_error_program_name.
* ar.c (main): Likewise.
* coffdump.c (main): Likewise.
* cxxfilt.c (main): Likewise.
* dlltool.c (main): Likewise.
* nlmconv.c (main): Likewise.
* nm.c (main): Likewise.
* objdump.c (main): Likewise.
* size.c (main): Likewise.
* srconv.c (main): Likewise.
* strings.c (main): Likewise.
* sysdump.c (main): Likewise.
* windmc.c (main): Likewise.
* windres.c (main): Likewise.
* objcopy.c (main): Likewise.
(copy_relocations_in_section): Check for relocs without associated
symbol pointers.
2015-01-21 17:37:23 +00:00
Nick Clifton
896ca09813
More fixes for invalid memory accesses triggered by fuzzed binaries.
...
PR binutils/17512
* nm.c (print_symbol): Add 'is_synthetic' parameter. Use it to
help initialize the info.elfinfo field.
(print_size_symbols): Add 'synth_count' parameter. Use it to set
the is_synthetic parameter when calling print_symbol.
(print_symbols): Likewise.
(display_rel_file): Pass synth_count to printing function.
(display_archive): Break loop if the last archive displayed
matches the current archive.
* size.c (display_archive): Likewise.
* archive.c (do_slurp_bsd_armap): Make sure that the parsed sized
is at least big enough for the header to be read.
* elf32-i386.c (elf_i386_get_plt_sym_val): Skip unknown relocs.
* mach-o.c (bfd_mach_o_get_synthetic_symtab): Add range checks.
(bfd_mach_o_read_command): Prevetn duplicate error messages about
unrecognized commands.
* syms.c (_bfd_stab_section_find_nearest_line): Add range checks
when indexing into the string table.
2015-01-05 23:13:50 +00:00
Alan Modra
b90efa5b79
ChangeLog rotatation and copyright year update
2015-01-02 00:53:45 +10:30
Alan Modra
4b95cf5c0c
Update copyright years
2014-03-05 22:16:15 +10:30
Nick Clifton
3f5e193bd6
Updated soruces in binutils/* to compile cleanly with -Wc++-compat.
...
* binutils/addr2line.c (slurp_symtab): Fix casts. Introduce
variable minisyms to avoid aliasing varning.
* binutils/ar.c: Add casts. (normalize): Use name del instead of
delete. (display_target_list,display_info_table): Change loop
counter variable a to int.
* binutils/bucomm.c: Add casts.
* binutils/debug.c: Update function to use new names. (struct
debug_baseclass): Rename member from virtual to
is_virtual. (struct debug_type_s,struct debug_field_s,struct
debug_baseclass_s,struct debug_method_s,struct
debug_method_variant_s,struct debug_type_s): Rename struct from
avoid name collision.
* /binutils/debug.h: Use new struct names.
* binutils/dwarf.c: Add casts. (free_debug_memory): Change loop
counter variable a to int.
* binutils/ieee.c: Add casts. (enum ieee_var_kind): Move to top
level. (ieee_class_baseclass): Rename parameter virtual to
is_virtual. (ieee_class_method_var): Rename variable virtual to
is_virtual.
* binutils/nm.c: Add casts.
* binutils/objcopy.c: Add casts. (copy_archive): Rename variable
delete to del.
* binutils/objdump.c: Add casts. (dump_dwarf_section): Change loop
counter variable i to int.
* binutils/prdbg.c: Add
casts. (pr_class_baseclass,tg_class_baseclass): Rename parameters
virtual to is_virtual.
* binutils/readelf.c: Add casts. (struct
ia64_unw_table_entry,struct hppa_unw_table_entry): Move to top
level.
* binutils/size.c: Add casts.
* binutils/stabs.c (parse_stab_type, parse_stab_range_type)
(parse_stab_cpp_abbrev): Rename parameter from typename to
type_name. (parse_stab_baseclasses): Rename variable virtual to
is_virtual.
* binutils/strings.c: Add casts.
* binutils/wrstabs.c (stab_class_baseclass): Rename parameter
virtual to is_virtual.
2009-09-10 13:40:44 +00:00
Alan Modra
14a9197011
bfd/
...
PR 6769
* bfd-in.h (BFD_VMA_FMT): Define.
(printf_vma, sprintf_vma): Use the above.
(_bfd_int64_low, _bfd_int64_high): Delete.
* bfd-in2.h: Regenerate.
binutils/
PR 6769
* readelf.c (print_dec_vma, print_hex_vma): Delete.
(print_vma): Use BFD_VMA_FMT.
* size.c (size_number, rprint_number): Likewise.
2008-07-28 04:07:32 +00:00
Nick Clifton
32866df75e
Change sources over to using GPLv3
2007-07-05 16:54:46 +00:00
Alan Modra
29422971f1
Add new --common option to size.
2007-07-05 09:01:28 +00:00
Alan Modra
3db64b0092
bfd/
...
Many files: Include sysdep.h before bfd.h.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
binutils/
* bucumm.h: Split off host dependencies to..
* sysdep.h: ..here.
Many files: Include sysdep.h. Remove duplicate headers and reorder.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
ld/
Many files: Include sysdep.h first. Remove duplicate headers.
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
opcodes/
* Makefile.am: Run "make dep-am".
* Makefile.in: Regenerate.
* ns32k-dis.c: Include sysdep.h first.
2007-04-26 14:47:00 +00:00
Joseph Myers
92f01d6100
top level:
...
2007-02-17 Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Vladimir Prus <vladimir@codesourcery.com
Joseph Myers <joseph@codesourcery.com>
* configure.ac (TOPLEVEL_CONFIGURE_ARGUMENTS): Fix quoting.
* configure: Regenerate.
bfd:
2007-02-17 Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Vladimir Prus <vladimir@codesourcery.com
Joseph Myers <joseph@codesourcery.com>
* configure.in (--with-pkgversion): New option.
* configure: Regenerate.
* Makefile.am (bfdver.h): Substitute for @bfd_version_package@.
* Makefile.in: Regenerate.
* version.h (BFD_VERSION_STRING): Define using
@bfd_version_package@.
bfd/doc:
2007-02-17 Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Vladimir Prus <vladimir@codesourcery.com
Joseph Myers <joseph@codesourcery.com>
* Makefile.in: Regenerate.
binutils:
2007-02-17 Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Vladimir Prus <vladimir@codesourcery.com
Joseph Myers <joseph@codesourcery.com>
* configure.in (--with-bugurl): New option.
* configure: Regenerate.
* Makefile.am (REPORT_BUGS_TO): Define.
(INCLUDES): Define REPORT_BUGS_TO.
Regenerate dependencies.
* Makefile.in: Regenerate.
* doc/Makefile.in: Regenerate.
* bucomm.h: Remove include of bin-bugs.h.
* addr2line.c (usage): Don't print empty REPORT_BUGS_TO.
* ar.c (usage): Pass s to list_supported_targets. Don't print
empty REPORT_BUGS_TO.
* coffdump.c (show_usage): Don't print empty REPORT_BUGS_TO.
* cxxfilt.c (usage): Print bug url when giving help.
* dlltool.c (usage): Likewise.
* dllwrap.c (usage): Likewise.
* nlmconv.c (show_usage): Don't print empty REPORT_BUGS_TO.
* nm.c (usage): Likewise.
* objcopy.c (copy_usage, strip_usage): Likewise.
* objdump.c (usage): Likewise.
* readelf.c ((usage): Likewise. Add STREAM argument. Adjust
callers.
* size.c (usage): Don't print empty REPORT_BUGS_TO.
* srconv.c (show_usage): Likewise.
* strings.c (usage): Likewise.
* sysdymp.c (show_usage): Likewise.
* windres.c (usage): Likewise.
gas:
2007-02-17 Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Vladimir Prus <vladimir@codesourcery.com
Joseph Myers <joseph@codesourcery.com>
* configure.in (--with-bugurl): New option.
* configure: Regenerate.
* dep-in.sed: Remove bin-bugs.h.
* Makefile.am (REPORT_BUGS_TO): Define.
(INCLUDES): Define REPORT_BUGS_TO.
(DEP_INCLUDES): Likewise.
($(OBJS)): No longer depend on bin-bugs.h.
* Makefile.in: Regenerate.
* doc/Makefile.in: Regenerate.
* as.c (show_usage): Don't print empty REPORT_BUGS_TO.
* as.h: Remove include of bin-bugs.h.
gprof:
2007-02-17 Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Vladimir Prus <vladimir@codesourcery.com
Joseph Myers <joseph@codesourcery.com>
* configure.in (--with-pkgversion, --with-bugurl): New options.
* configure: Regenerate.
* Makefile.am (PKGVERSION, REPORT_BUGS_TO): Define.
(INCLUDES): Define PKGVERSION and REPORT_BUGS_TO.
Regenerate dependencies.
* Makefile.in: Regenerate.
* gprof.c (usage): Don't print empty REPORT_BUGS_TO.
(main): Include PKGVERSION in version output.
* gprof.h: Remove include of bin-bugs.h.
include:
2007-02-17 Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Vladimir Prus <vladimir@codesourcery.com
Joseph Myers <joseph@codesourcery.com>
* bin-bugs.h: Remove.
ld:
2007-02-17 Mark Mitchell <mark@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Vladimir Prus <vladimir@codesourcery.com
Joseph Myers <joseph@codesourcery.com>
* configure.in (--with-bugurl): New option.
* configure: Regenerate.
* Makefile.am (REPORT_BUGS_TO): Define.
(INCLUDES): Define REPORT_BUGS_TO.
Regenerate dependencies.
* Makefile.in: Regenerate.
* ld.h: Remove include of bin-bugs.h.
* lexsup.c (help): Don't print empty REPORT_BUGS_TO.
2007-02-17 13:33:57 +00:00
Nick Clifton
d68c385bfc
PR binutils/3001
...
* addr2line.c (process_file): Change function from void to returning an int. Return 0 upon success, 1 otherwise.
(main): Use return value from process_file as the exit value.
* ar.c (ranlib_only): Change function from void to returning an int. Return 0 upon success, 1 otherwise.
(ranlib_touch): Likewise.
(main): Use return value from ranlib functions as exit value.
* objcopy.c (add_specific_symbol): Set status to 1 if get_file_size fails.
(copy_file): Likewise.
(strip_main): Likewise.
(copy_main): Likewise.
* objdump.c (display_file): Set exit_status to 1 if get_file_size fails.
* size.c (display_file): Set return_code to 1 if get_file_size fails.
2006-08-06 15:49:46 +00:00
Mark Mitchell
07012eeef2
* addr2line.c (usage): Document @file.
...
* ar.c (usage): Likewise.
* coffdump (usage): Likewise.
* cxxfilt.c (usage): Likewise.
* dlltool.c (usage): Likewise.
* dllwrap.c (usage): Likewise.
* nlmconv.c (usage): Likewise.
* nm.c (usage): Likewise.
* objcopy.c (usage): Likewise.
* objdump.c (usage): Likewise.
* readelf.c (usage): Likewise.
* size.c (usage): Likeise.
* srconv.c (usage): Likewise.
* strings.c (usage): Likewise.
* windres.c (usage): Likewise.
* doc/binutils.texi: Add section on common options.
2005-10-03 19:37:44 +00:00
Mark Mitchell
869b9d07bb
* addr2line.c (main): Likewise.
...
* ar.c (main): Likewise.
* coffdump.c (main): Likewise.
* cxxfilt.c (main): Likewise.
* dlltool.c (main): Likewise.
* dllwrap.c (main): Likewise.
* nlmconv.c (main): Likewise.
* nm.c (main): Likewise.
* objcopy.c (main): Likewise.
* objdump.c (main): Likewise.
* readelf.c (main): Likewise.
* size.c (main): Likeiwse.
* srcconv.c (main): Likewise.
* strings.c (main): Likewise.
* sysdump.c (main): Likewise.
* sysinfo.c (main): Likewise.
* windres.c (main): Likewise.
* ldmain.c (main): Use expandargv.
* gprof.c (main): Use expandargv.
* as.c (main): Use expandargv.
2005-09-30 16:37:32 +00:00
Nick Clifton
b43b5d5f76
Update FSF address
2005-05-08 14:17:41 +00:00
Ben Elliston
85b1c36d31
* ar.c (mri_mode): Make static.
...
* arsup.c (obfd, real_name, outfile): Likewise.
* binemul.c (ar_emul_create): Remove unused function.
(ar_emul_default_create): Likewise.
* binemul.h (ar_emul_create): Remove declaration.
(ar_emul_default_create): Likewise.
(struct bin_emulation_xfer_struct): Remove ar_create member.
* bucomm.c (report): Make static.
* bucomm.h (report): Remove declaration.
* cxxfilt.c (mbuffer): Make static.
(main): Use unsigned ints for some loop control variables.
* readelf.c: Make many global variables static.
* size.c (berkeley_format): Make static.
(long_options): Likewise.
* emul_aix.c (bin_aix_emulation): Remove ar_emul_default_create
structure initialiser.
(bin_aix5_emulation): Likewise.
* emul_vanilla.c (bin_vanilla_emulation): Likewise.
2005-04-29 00:03:33 +00:00
Alan Modra
aef6203bd6
update copyright dates
2005-03-03 11:52:12 +00:00
Ben Elliston
84e43642e3
* dlltool.c (dump_iat): Remove unused function.
...
(gen_exp_file): Remove #if 0'd code.
(make_one_lib_file): Likewise.
* srconv.c: Remove #if 0'd code throughout.
* size.c (lprint_number): Remove.
(print_berkeley_format): Remove #if 0'd code.
* ar.c (do_quick_append): Remove declaration and definiton.
(main): Remove #if 0'd code.
* filemode.c (filemodestring): Remove #if 0'd function.
* sysdump.c (unit_info_list): Remove function.
(object_body_list): Likewise.
(program_structure): Likewise.
(debug_list): Likewise.
(module): Remove #if 0'd code.
2005-01-21 05:40:24 +00:00
Alan Modra
135dfb4a65
* objcopy.c (copy_section): Use bfd_get_section_size instead of
...
_raw_size or bfd_get_section_size_before_reloc. Don't set reloc_done.
(compare_section_lma): Likewise.
* addr2line.c (find_address_in_section): Likewise.
* coffgrok.c (do_sections_p1): Likewise.
* dlltool.c (scan_drectve_symbols): Likewise.
* nlmconv.c (main): Likewise.
(copy_sections): Likewise.
(powerpc_mangle_relocs): Likewise.
* objdump.c (disassemble_section): Likewise.
* prdbg.c (find_address_in_section): Likewise.
* size.c (berkeley_sum): Likewise.
* srconv.c (wr_ob): Likewise.
* strings.c (strings_a_section): Likewise.
2004-06-15 01:19:13 +00:00
Nick Clifton
f24ddbddc5
Use consistent error messages for missing files.
...
Detect directories where an ordinary file is expected.
2003-11-07 12:19:34 +00:00
Andreas Jaeger
2da42df615
* addr2line.c: Convert to ISO C90 prototypes, change PTR, remove
...
unneeded (void *) casts.
* ar.c: Likewise.
* arlex.l: Likewise.
* arparse.y: Likewise.
* arsup.c: Likewise.
* binemul.c: Likewise.
* binemul.h: Likewise.
* bucomm.c: Likewise.
* bucomm.h: Likewise.
* budbg.h: Likewise.
* budemang.c: Likewise.
* budemang.h: Likewise.
* coffdump.c: Likewise.
* coffgrok.c: Likewise.
* cxxfilt.c: Likewise.
* debug.c: Likewise.
* debug.h: Likewise.
* deflex.l: Likewise.
* dlltool.c: Likewise.
* dlltool.h: Likewise.
* dllwrap.c: Likewise.
* emul_aix.c: Likewise.
* filemode.c: Likewise.
* ieee.c: Likewise.
* nlmconv.c: Likewise.
* nlmconv.h: Likewise.
* nlmheader.y: Likewise.
* nm.c: Likewise.
* prdbg.c: Likewise.
* rclex.l: Likewise.
* rcparse.y: Likewise.
* rdcoff.c: Likewise.
* rddbg.c: Likewise.
* rename.c: Likewise.
* resbin.c: Likewise.
* rescoff.c: Likewise.
* resrc.c: Likewise.
* size.c: Likewise.
* srconv.c: Likewise.
* stabs.c: Likewise.
* strings.c: Likewise.
* sysdump.c: Likewise.
* sysinfo.y: Likewise.
* syslex.l: Likewise.
* unwind-ia64.c: Likewise.
* unwind-ia64.h: Likewise.
* version.c: Likewise.
* windres.c: Likewise.
* windres.h: Likewise.
* winduni.c: Likewise.
* wrstabs.c: Likewise.
2003-09-14 12:20:17 +00:00
Alan Modra
b34976b65a
s/boolean/bfd_boolean/ s/true/TRUE/ s/false/FALSE/. Simplify
...
comparisons of bfd_boolean vars with TRUE/FALSE. Formatting.
2002-11-30 08:39:46 +00:00
Nick Clifton
92acdfaf32
Fix typo describing switch for hex format.
2002-11-23 08:01:51 +00:00
Kazu Hirata
9f66665ac5
* size.c: Fix formatting.
...
* srconv.c: Likewise.
* stabs.c: Likewise.
* sysdump.c: Likewise.
* unwind-ia64.c: Likewise.
* wrstabs.c: Likewise.
2002-05-24 00:33:36 +00:00
Alan Modra
6b52b82468
* size.c (display_archive): Add last_arfile and code to close archives.
2002-05-04 01:31:50 +00:00
Daniel Jacobowitz
d7a283d444
2002-01-29 Daniel Jacobowitz <drow@mvista.com>
...
* objdump.c: Include "getopt.h" after "bucomm.h" so that
__GNU_LIBRARY__ will be defined.
* size.c: Likewise.
2002-01-29 16:46:37 +00:00
Nick Clifton
15c82623b1
Add --totals option to size
2002-01-25 15:37:04 +00:00
Nick Clifton
8b53311e10
Tidy up formatting of --help output.
2002-01-23 16:12:56 +00:00
Thiemo Seufer
65de42c0f9
* addr2line.c (main): Protoype.
...
* ar.c (main): Protoype.
* nm.c (main): Protoype.
* objcopy.c (main): Protoype.
* objdump.c (main): Protoype.
* size.c (main): Protoype.
* strings.c (main): Protoype.
* gasp.c (main): Protoype.
2001-12-18 08:22:30 +00:00
H.J. Lu
3882b01078
Locale changes from Bruno Haible <haible@clisp.cons.org>.
2001-09-19 05:33:36 +00:00
Nick Clifton
8c2bc6877d
Fix typos in ChangeLogs and update copyright notices
2001-03-13 06:43:59 +00:00
Alan Modra
e3a6961244
Accept and ignore -f command line option.
...
Improve usage message.
2000-05-14 10:40:48 +00:00
Alan Modra
37cc8ec1be
A mostly cosmetic tidy up of warnings and error message reporting.
2000-04-07 04:34:50 +00:00
Alan Modra
8ad3436c79
Move translated part of bug report string back into .c files so
...
xgettext can find it. Regnerate .pot files.
2000-04-04 14:32:35 +00:00
H.J. Lu
a9273d78af
2000-04-03 H.J. Lu (hjl@gnu.org)
...
* size.c (usage): Use REPORT_BUGS_TO.
2000-04-03 17:17:36 +00:00
Ian Lance Taylor
b4c96d0d37
* Many files: Changes to avoid gcc warnings: Add ATTRIBUTE_UNUSED
...
as appropriate. Add variable initializations. Add casts.
* objdump.c (disassemble_bytes): Change j to bfd_vma.
* readelf.c (process_syminfo): Change i to unsigned int.
(display_debug_info): Change abbrev_number to unsigned long.
(process_mips_specific): Change fcnt to size_t.
1999-07-11 20:02:30 +00:00
Richard Henderson
252b5132c7
19990502 sourceware import
1999-05-03 07:29:11 +00:00