Fix memory access violations triggered by processing fuzzed binaries with a 32-bit...
[deliverable/binutils-gdb.git] / binutils / ChangeLog
1 2015-02-06 Nick Clifton <nickc@redhat.com>
2
3 PR binutils/17512
4 * dwarf.c (display_debug_frames): Fix range checks to work on
5 32-bit binaries complied on a 64-bit host.
6
7 PR binutils/17531
8 * dwarf.c (xcmalloc): Fail if the arguments are too big.
9 (xcrealloc): Likewise.
10 (xcalloc2): Likewise.
11
12 2015-02-05 Alan Modra <amodra@gmail.com>
13
14 PR binutils/17926
15 * dwarf.c (dwarf_select_sections_by_letters): Don't refer to optarg.
16
17 2015-02-04 Nick Clifton <nickc@redhat.com>
18
19 PR binutils/17531
20 * dwarf.c (read_and_display_attr_value): Test for a block length
21 being so long that it wraps around to before the start of the block.
22 (process_debug_info): Test for section_begin wrapping around to
23 before the start of the section.
24 (display_gdb_index): Test for num_cus being so large that the end
25 address wraps around to before the start of the section.
26 (process_cu_tu_index): Test for j being so large that the section
27 index pool wraps around to before the start of the section.
28
29 2015-02-03 Nick Clifton <nickc@redhat.com>
30
31 PR binutils/17531
32 * dwarf.c (process_debug_info): Add range check.
33 (display_debug_pubnames_worker): Likewise.
34 (display_gdb_index): Fix range check.
35 (process_cu_tu_index): Add range check.
36 * readelf.c (get_data): Change parameter types from size_t to
37 bfd_size_type. Add checks for loss of accuracy when casting from
38 bfd_size_type to size_t.
39 (get_dynamic_data): Likewise.
40 (process_section_groups): Limit number of error messages.
41
42 2015-02-03 Nick Clifton <nickc@redhat.com>
43
44 PR binutils/17512
45 * objdump.c (display_any_bfd): Fail if archives nest too deeply.
46
47 2015-01-28 James Bowman <james.bowman@ftdichip.com>
48
49 * readelf.c: Add FT32 support.
50
51 2015-01-27 Nick Clifton <nickc@redhat.com>
52
53 PR binutils/17512
54 * dlltool.c (identify_search_archive): If the last archive was the
55 same as the current archive, terminate the loop.
56
57 * addr2line.c (slurp_symtab): If the symcount is zero, free the
58 symbol table pointer.
59
60 * rcparse.y: Add checks to avoid integer divide by zero.
61 * rescoff.c (read_coff_rsrc): Add check on the size of the
62 resource section.
63 (read_coff_res_dir): Add check on the nesting level.
64 Check for resource names overrunning the buffer.
65 * resrc.c (write_rc_messagetable): Update formatting.
66 Add check of 'elen' being zero.
67
68 2015-01-23 Nick Clifton <nickc@redhat.com>
69
70 * nlmconv.c (powerpc_mangle_relocs): Fix build errors introduced
71 by recent delta, when compiling on for a 32-bit host.
72
73 2015-01-21 Nick Clifton <nickc@redhat.com>
74
75 PR binutils/17512
76 * addr2line.c (main): Call bfd_set_error_program_name.
77 * ar.c (main): Likewise.
78 * coffdump.c (main): Likewise.
79 * cxxfilt.c (main): Likewise.
80 * dlltool.c (main): Likewise.
81 * nlmconv.c (main): Likewise.
82 * nm.c (main): Likewise.
83 * objdump.c (main): Likewise.
84 * size.c (main): Likewise.
85 * srconv.c (main): Likewise.
86 * strings.c (main): Likewise.
87 * sysdump.c (main): Likewise.
88 * windmc.c (main): Likewise.
89 * windres.c (main): Likewise.
90 * objcopy.c (main): Likewise.
91 (copy_relocations_in_section): Check for relocs without associated
92 symbol pointers.
93
94 2015-01-21 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
95
96 * MAINTAINERS: Add self to ARM maintainers list.
97
98 2015-01-21 Nick Clifton <nickc@redhat.com>
99
100 PR binutils/17512
101 * coffgrok.c (do_type): Check that computed ref exists.
102 (doit): Add range checks when computing section for scope.
103
104 2015-01-12 H.J. Lu <hongjiu.lu@intel.com>
105
106 * dwarf.c (process_debug_info): Properly check abbrev size.
107
108 2015-01-12 Nick Clifton <nickc@redhat.com>
109
110 PR binutils/17531
111 * dwarf.c (process_debug_info): Check for abbrev_base being larger
112 than the section size.
113 (process_cu_tu_index): Use xcalloc2 to allocate the CU and TU
114 arrays.
115 (xcalloc2): New function. Like xcalloc, but checks for overflow.
116 (display_debug_addr): Use xcalloc to allocate the debug_addr_info
117 array. Check for an address_base that is too large.
118
119 * dwarf.h (xcalloc2): Prototype.
120
121 2015-01-12 Alan Modra <amodra@gmail.com>
122
123 * prdbg.c (print_debugging_info): Don't use void* for function
124 pointer param.
125 * budbg.h (print_debugging_info): Update prototype.
126
127 2015-01-08 Nick Clifton <nickc@redhat.com>
128
129 PR binutils/17512
130 * ojcopy.c (copy_object): Free the symbol table if no symbols
131 could be loaded.
132 (copy_file): Use bfd_close_all_done to close files that could not
133 be copied.
134
135 * sysdump.c (getINT): Fail if reading off the end of the buffer.
136 Replace call to abort with a call to fatal.
137 (getCHARS): Prevetn reading off the end of the buffer.
138
139 * nlmconv.c (i386_mangle_relocs): Skip relocs without an
140 associated symbol.
141 (powerpc_mangle_relocs): Skip unrecognised relocs. Check address
142 range before applying a reloc.
143
144 2015-01-07 Nick Clifton <nickc@redhat.com>
145
146 PR binutils/17512
147 * dlltool.c (scan_obj_file): Break loop if the last archive
148 displayed matches the current archive.
149
150 * objdump.c (display_any_bfd): Add a depth limit to nested archive
151 display in order to avoid infinite loops.
152 * srconv.c: Replace calls to abort with calls to fatal with an
153 error message.
154
155 2015-01-06 Nick Clifton <nickc@redhat.com>
156
157 PR binutils/17512
158 * coffdump.c (dump_coff_section): Check for a symbol being
159 available before printing its name.
160 (main): Check the return value from coff_grok.
161 * coffgrok.c: Reformat and tidy.
162 Add range checks to most functions.
163 (coff_grok): Return NULL if the input bfd is not in a COFF
164 format.
165 * coffgrok.h: Reformat and tidy.
166 (struct coff_section): Change the nrelocs field to unsigned.
167 * srconv.c (main): Check the return value from coff_grok.
168
169 2015-01-05 Nick Clifton <nickc@redhat.com>
170
171 PR binutils/17512
172 * nm.c (print_symbol): Add 'is_synthetic' parameter. Use it to
173 help initialize the info.elfinfo field.
174 (print_size_symbols): Add 'synth_count' parameter. Use it to set
175 the is_synthetic parameter when calling print_symbol.
176 (print_symbols): Likewise.
177 (display_rel_file): Pass synth_count to printing function.
178 (display_archive): Break loop if the last archive displayed
179 matches the current archive.
180 * size.c (display_archive): Likewise.
181
182 2015-01-05 Nick Clifton <nickc@redhat.com>
183
184 PR binutils/17531
185 * dwarf.c (alloc_num_debug_info_entries): New variable.
186 (process_debug_info): Set it. Use it to avoid displaying
187 attributes for which there is no info.
188 (display_debug_abbrev): Check that the debug_info_entry index is
189 valid before using it.
190 (display_loc_list_dwo): Likewise.
191 (process_cu_tu_index): Add range check for an overlarge dw_sect
192 value.
193 (free_debug_memory): Reset alloc_num_debug_info_entries.
194 * readelf.c (slurp_ia64_unwind_table): Warn if the reloc could not
195 be indentified.
196 (dynamic_section_mips_val): Warn if the timestamp is invalid.
197 (print_mips_got_entry): Add a data_end parameter. Warn if a read
198 would go beyond the end of the data, and return an error value.
199 (process_mips_specific): Do not read options from beyond the end
200 of the section.
201 Correct code to display optional data at the end of an option.
202 Warn if there are too many GOT symbols.
203 Update calls to print_mips_got_entry, and handle error returns.
204
205 2015-01-05 Daniel Klauer <daniel.c.klauer@web.de>
206
207 PR binutils/17489
208 * doc/binutils.texi (dlltool): Correct description of --kill-at
209 option.
210
211 2015-01-01 Alan Modra <amodra@gmail.com>
212
213 * version.c (print_version): Just print current year.
214
215 2015-01-01 Alan Modra <amodra@gmail.com>
216
217 Update year range in copyright notice of all files.
218
219 For older changes see ChangeLog-2014
220 \f
221 Copyright (C) 2015 Free Software Foundation, Inc.
222
223 Copying and distribution of this file, with or without modification,
224 are permitted in any medium without royalty provided the copyright
225 notice and this notice are preserved.
226
227 Local Variables:
228 mode: change-log
229 left-margin: 8
230 fill-column: 74
231 version-control: never
232 End:
This page took 0.039745 seconds and 4 git commands to generate.