]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - binutils/ChangeLog
Fix memory access violations triggered by running objdump compiled with out-of-bounds...
[thirdparty/binutils-gdb.git] / binutils / ChangeLog
CommitLineData
77ef8654
NC
12015-02-10 Nick Clifton <nickc@redhat.com>
2
3 PR binutils/17512
4 * dwarf.c (eh_addr_size): Use an unsigned type.
5 (size_of_encoded_value): Return an unsigned type.
6 (read_leb128): Break if the shift becomes too big.
7 (process_extended_line_op): Do not read the address if the length
8 is too long.
9 (read_cie): Warn and fail if the pointer size or segment size are
10 too big.
11 * dwarf.h (DWARF2_External_LineInfo): Delete unused and incorrect
12 structure definition.
13 (DWARF2_External_PubNames): Likewise.
14 (DWARF2_External_CompUnit): Likewise.
15 (DWARF2_External_ARange): Likewise.
16 (DWARF2_Internal_LineInfo): Use dwarf_vma type for
17 li_prologue_length.
18 (eh_addr_size): Update prototype.
19
5a195044
MW
202015-02-09 Mark Wielaard <mjw@redhat.com>
21
22 * dwarf.c (read_and_display_attr_value): Handle DW_LANG_Fortran03
23 and DW_LANG_Fortran08.
24
5929c344
NC
252015-02-06 Nick Clifton <nickc@redhat.com>
26
27 PR binutils/17512
28 * dwarf.c (display_debug_frames): Fix range checks to work on
29 32-bit binaries complied on a 64-bit host.
30
8490fb40
NC
31 PR binutils/17531
32 * dwarf.c (xcmalloc): Fail if the arguments are too big.
33 (xcrealloc): Likewise.
34 (xcalloc2): Likewise.
55325047
NC
35 * readelf.c (process_mips_specific): Fail if an option has an
36 invalid size.
8490fb40 37
7cc78d07
AM
382015-02-05 Alan Modra <amodra@gmail.com>
39
40 PR binutils/17926
41 * dwarf.c (dwarf_select_sections_by_letters): Don't refer to optarg.
42
f3853b34
NC
432015-02-04 Nick Clifton <nickc@redhat.com>
44
45 PR binutils/17531
46 * dwarf.c (read_and_display_attr_value): Test for a block length
47 being so long that it wraps around to before the start of the block.
48 (process_debug_info): Test for section_begin wrapping around to
49 before the start of the section.
50 (display_gdb_index): Test for num_cus being so large that the end
51 address wraps around to before the start of the section.
52 (process_cu_tu_index): Test for j being so large that the section
53 index pool wraps around to before the start of the section.
54
57028622
NC
552015-02-03 Nick Clifton <nickc@redhat.com>
56
57 PR binutils/17531
58 * dwarf.c (process_debug_info): Add range check.
59 (display_debug_pubnames_worker): Likewise.
60 (display_gdb_index): Fix range check.
61 (process_cu_tu_index): Add range check.
62 * readelf.c (get_data): Change parameter types from size_t to
63 bfd_size_type. Add checks for loss of accuracy when casting from
64 bfd_size_type to size_t.
65 (get_dynamic_data): Likewise.
66 (process_section_groups): Limit number of error messages.
67
64d29018
NC
682015-02-03 Nick Clifton <nickc@redhat.com>
69
70 PR binutils/17512
71 * objdump.c (display_any_bfd): Fail if archives nest too deeply.
72
3f8107ab
AM
732015-01-28 James Bowman <james.bowman@ftdichip.com>
74
75 * readelf.c: Add FT32 support.
76
37e3922e
NC
772015-01-27 Nick Clifton <nickc@redhat.com>
78
79 PR binutils/17512
80 * dlltool.c (identify_search_archive): If the last archive was the
81 same as the current archive, terminate the loop.
82
877a8638
NC
83 * addr2line.c (slurp_symtab): If the symcount is zero, free the
84 symbol table pointer.
85
0897ec15
NC
86 * rcparse.y: Add checks to avoid integer divide by zero.
87 * rescoff.c (read_coff_rsrc): Add check on the size of the
88 resource section.
89 (read_coff_res_dir): Add check on the nesting level.
90 Check for resource names overrunning the buffer.
91 * resrc.c (write_rc_messagetable): Update formatting.
92 Add check of 'elen' being zero.
93
bb97bdd7
NC
942015-01-23 Nick Clifton <nickc@redhat.com>
95
96 * nlmconv.c (powerpc_mangle_relocs): Fix build errors introduced
97 by recent delta, when compiling on for a 32-bit host.
98
86eafac0
NC
992015-01-21 Nick Clifton <nickc@redhat.com>
100
101 PR binutils/17512
102 * addr2line.c (main): Call bfd_set_error_program_name.
103 * ar.c (main): Likewise.
104 * coffdump.c (main): Likewise.
105 * cxxfilt.c (main): Likewise.
106 * dlltool.c (main): Likewise.
107 * nlmconv.c (main): Likewise.
108 * nm.c (main): Likewise.
109 * objdump.c (main): Likewise.
110 * size.c (main): Likewise.
111 * srconv.c (main): Likewise.
112 * strings.c (main): Likewise.
113 * sysdump.c (main): Likewise.
114 * windmc.c (main): Likewise.
115 * windres.c (main): Likewise.
116 * objcopy.c (main): Likewise.
117 (copy_relocations_in_section): Check for relocs without associated
118 symbol pointers.
119
6c1965f9
RR
1202015-01-21 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
121
122 * MAINTAINERS: Add self to ARM maintainers list.
123
5b7d6237
NC
1242015-01-21 Nick Clifton <nickc@redhat.com>
125
126 PR binutils/17512
127 * coffgrok.c (do_type): Check that computed ref exists.
128 (doit): Add range checks when computing section for scope.
129
a0a3b04c
L
1302015-01-12 H.J. Lu <hongjiu.lu@intel.com>
131
132 * dwarf.c (process_debug_info): Properly check abbrev size.
133
72c61a0d
NC
1342015-01-12 Nick Clifton <nickc@redhat.com>
135
136 PR binutils/17531
137 * dwarf.c (process_debug_info): Check for abbrev_base being larger
138 than the section size.
139 (process_cu_tu_index): Use xcalloc2 to allocate the CU and TU
140 arrays.
141 (xcalloc2): New function. Like xcalloc, but checks for overflow.
1306a742
NC
142 (display_debug_addr): Use xcalloc to allocate the debug_addr_info
143 array. Check for an address_base that is too large.
144
72c61a0d
NC
145 * dwarf.h (xcalloc2): Prototype.
146
b38ead21
AM
1472015-01-12 Alan Modra <amodra@gmail.com>
148
149 * prdbg.c (print_debugging_info): Don't use void* for function
150 pointer param.
151 * budbg.h (print_debugging_info): Update prototype.
152
3565cf8f
NC
1532015-01-08 Nick Clifton <nickc@redhat.com>
154
155 PR binutils/17512
063bb025
NC
156 * ojcopy.c (copy_object): Free the symbol table if no symbols
157 could be loaded.
158 (copy_file): Use bfd_close_all_done to close files that could not
159 be copied.
160
848cde35
NC
161 * sysdump.c (getINT): Fail if reading off the end of the buffer.
162 Replace call to abort with a call to fatal.
163 (getCHARS): Prevetn reading off the end of the buffer.
164
3565cf8f
NC
165 * nlmconv.c (i386_mangle_relocs): Skip relocs without an
166 associated symbol.
167 (powerpc_mangle_relocs): Skip unrecognised relocs. Check address
168 range before applying a reloc.
169
c88f5b8e
NC
1702015-01-07 Nick Clifton <nickc@redhat.com>
171
172 PR binutils/17512
d7b24d29
NC
173 * dlltool.c (scan_obj_file): Break loop if the last archive
174 displayed matches the current archive.
175
c88f5b8e
NC
176 * objdump.c (display_any_bfd): Add a depth limit to nested archive
177 display in order to avoid infinite loops.
178 * srconv.c: Replace calls to abort with calls to fatal with an
179 error message.
180
85880250
NC
1812015-01-06 Nick Clifton <nickc@redhat.com>
182
183 PR binutils/17512
184 * coffdump.c (dump_coff_section): Check for a symbol being
185 available before printing its name.
186 (main): Check the return value from coff_grok.
187 * coffgrok.c: Reformat and tidy.
188 Add range checks to most functions.
189 (coff_grok): Return NULL if the input bfd is not in a COFF
190 format.
191 * coffgrok.h: Reformat and tidy.
192 (struct coff_section): Change the nrelocs field to unsigned.
193 * srconv.c (main): Check the return value from coff_grok.
194
896ca098
NC
1952015-01-05 Nick Clifton <nickc@redhat.com>
196
197 PR binutils/17512
198 * nm.c (print_symbol): Add 'is_synthetic' parameter. Use it to
199 help initialize the info.elfinfo field.
200 (print_size_symbols): Add 'synth_count' parameter. Use it to set
201 the is_synthetic parameter when calling print_symbol.
202 (print_symbols): Likewise.
203 (display_rel_file): Pass synth_count to printing function.
204 (display_archive): Break loop if the last archive displayed
205 matches the current archive.
206 * size.c (display_archive): Likewise.
207
82b1b41b
NC
2082015-01-05 Nick Clifton <nickc@redhat.com>
209
210 PR binutils/17531
211 * dwarf.c (alloc_num_debug_info_entries): New variable.
212 (process_debug_info): Set it. Use it to avoid displaying
213 attributes for which there is no info.
214 (display_debug_abbrev): Check that the debug_info_entry index is
215 valid before using it.
216 (display_loc_list_dwo): Likewise.
217 (process_cu_tu_index): Add range check for an overlarge dw_sect
218 value.
219 (free_debug_memory): Reset alloc_num_debug_info_entries.
220 * readelf.c (slurp_ia64_unwind_table): Warn if the reloc could not
221 be indentified.
222 (dynamic_section_mips_val): Warn if the timestamp is invalid.
223 (print_mips_got_entry): Add a data_end parameter. Warn if a read
224 would go beyond the end of the data, and return an error value.
225 (process_mips_specific): Do not read options from beyond the end
226 of the section.
227 Correct code to display optional data at the end of an option.
228 Warn if there are too many GOT symbols.
229 Update calls to print_mips_got_entry, and handle error returns.
230
c1724c7f
DK
2312015-01-05 Daniel Klauer <daniel.c.klauer@web.de>
232
233 PR binutils/17489
234 * doc/binutils.texi (dlltool): Correct description of --kill-at
235 option.
236
efd321f9
AM
2372015-01-01 Alan Modra <amodra@gmail.com>
238
239 * version.c (print_version): Just print current year.
240
b90efa5b 2412015-01-01 Alan Modra <amodra@gmail.com>
5c294fee 242
b90efa5b 243 Update year range in copyright notice of all files.
5c294fee 244
b90efa5b 245For older changes see ChangeLog-2014
252b5132 246\f
b90efa5b 247Copyright (C) 2015 Free Software Foundation, Inc.
752937aa
NC
248
249Copying and distribution of this file, with or without modification,
250are permitted in any medium without royalty provided the copyright
251notice and this notice are preserved.
252
252b5132
RH
253Local Variables:
254mode: change-log
255left-margin: 8
256fill-column: 74
257version-control: never
258End: