]>
Commit | Line | Data |
---|---|---|
549c1d4b C |
1 | 2023-09-09 Yanglin Xun <xunyanglins@gmail.com> |
2 | ||
3 | * libelf.h: Fix typo in comment | |
4 | ||
708179f0 YT |
5 | 2023-04-01 Youling Tang <tangyouling@loongson.cn> |
6 | ||
7 | * elf.h: Update from glibc. | |
8 | ||
0a52a7dc MW |
9 | 2023-03-03 Mark Wielaard <mark@klomp.org> |
10 | ||
11 | * libelf.h: Define ELFCOMPRESS_ZSTD if undefined. | |
12 | (elf_compress): Document ELFCOMPRESS_ZSTD compression type. | |
13 | ||
924bee3c MW |
14 | 2023-02-20 Mark Wielaard <mark@klomp.org> |
15 | ||
16 | * gnuhash_xlate.h (elf_cvt_gnuhash): memmove any left over bytes. | |
17 | ||
86347d80 MW |
18 | 2022-11-30 Mark Wielaard <mark@klomp.org> |
19 | ||
20 | * elf.h: Update from glibc. | |
21 | ||
59217981 MW |
22 | 2022-10-28 Mark Wielaard <mark@klomp.org> |
23 | ||
24 | * elf.h: Update from glibc. | |
25 | ||
10f01dad YL |
26 | 2022-10-21 Yonggang Luo <luoyonggang@gmail.com> |
27 | ||
28 | * libelf_crc32.c: Remove LIB_SYSTEM_H define. | |
29 | ||
0e18267a YL |
30 | 2022-09-20 Yonggang Luo <luoyonggang@gmail.com> |
31 | ||
32 | * elf32_checksum.c: Use BYTE_ORDER, LITTLE_ENDIAN and BIG_ENDIAN. | |
33 | * elf32_xlatetof.c: Likewise. | |
34 | * elf_getarsym.c: Likewise. | |
35 | ||
a6b2ec76 YL |
36 | 2022-10-16 Yonggang Luo <luoyonggang@gmail.com> |
37 | ||
38 | * common.h: Remove ar.h, byteswap.h and endian.h. | |
39 | * elf32_checksum.c: Remove endian.h. | |
40 | * elf32_getphdr.c: Remove unistd.h and system.h. | |
41 | * elf32_getshdr.c: Remove unistd.h.h and system.h. | |
42 | * elf32_updatefile.c: Remove unistd.h, sys/mman.h and system.h. | |
43 | * elf32_updatenull.c: Remove endian.h and system.h. | |
44 | * elf32_xlatetof.c: Remove endian.h. | |
45 | * elf32_xlatetom.c: Likewise. | |
46 | * elf_begin.c: Remove unistd.h, sys/mman.h and system.h. | |
47 | * elf_cntl.c: Remove unistd.h. | |
48 | * elf_compress.c: Remove system.h and unistd.h. | |
49 | * elf_end.c: Remove sys.mman.h. | |
50 | * elf_getarsym.c: Remove byteswap.h, endian.h, unistd.h and | |
51 | system.h. | |
52 | * elf_getdata.c: Remove unistd.h and system.h. | |
53 | * elf_getdata_rawchunk.c: Remove unistd.h and system.h. | |
54 | * elf_getshdrstrndx.c: Likewise. | |
55 | * elf_readall.c: Likewise. | |
56 | * elf_update.c: Remove unistd.h and sys/mman.h. | |
57 | * gelf_xlate.c: Remove byteswap.h. | |
58 | * libelfP.h: Add system.h. | |
59 | * nlist.c: Remove unistd.h. | |
60 | ||
ee188125 MW |
61 | 2022-08-28 Mark Wielaard <mark@klomp.org> |
62 | ||
63 | * elf_begin.c (__libelf_next_arhdr_wrlock): Add OCT_FIELD macro, | |
64 | like INT_FIELD but use strtol with octal base 8. Use for ar_mode. | |
65 | ||
de209d23 AS |
66 | 2022-08-08 Andreas Schwab <schwab@suse.de> |
67 | ||
68 | * elf.h: Update from glibc. | |
69 | ||
3cf38698 MW |
70 | 2022-04-24 Mark Wielaard <mark@klomp.org> |
71 | ||
72 | * elf_update.c (write_file): Check HAVE_MREMAP. | |
73 | ||
8db84997 MW |
74 | 2022-04-01 Mark Wielaard <mark@klomp.org> |
75 | ||
76 | * libelfP.h (struct Elf_Data_Chunk): Add an int64_t offset field. | |
77 | * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Check whether the | |
78 | requested chunk, offset, size and type, was already handed out. | |
79 | Set new Elf_Data_Chunk offset field. | |
80 | ||
e3e2ae06 MW |
81 | 2022-03-29 Mark Wielaard <mark@klomp.org> |
82 | ||
83 | * gelf_xlate.c (START): Define and use sz variable. | |
84 | (END): Use sz variable to decide whether to do a memmove. | |
85 | ||
31d551ae MW |
86 | 2022-03-24 Mark Wielaard <mark@klomp.org> |
87 | ||
88 | * elf.h: Update from glibc. | |
89 | ||
4b77a768 MW |
90 | 2022-03-22 Mark Wielaard <mark@klomp.org> |
91 | ||
92 | * elf_getdata.c (__libelf_type_aligns): ELF_T_GNUHASH has different | |
93 | alignment for ELFCLASS32 and ELFCLASS64. | |
94 | ||
2785ba7a MW |
95 | 2022-03-20 Mark Wielaard <mark@klomp.org> |
96 | ||
97 | * version_xlate.h (elf_cvt_Verdef): Make sure aux_offset and | |
98 | def_offset don't overflow. | |
99 | (elf_cvt_Verneed): Make sure aux_offset and need_offset don't | |
100 | overflow. | |
101 | ||
0346d5fd MW |
102 | 2022-03-18 Mark Wielaard <mark@klomp.org> |
103 | ||
104 | * version_xlate.h (elf_cvt_Verdef): Check alignment of def_offset | |
105 | and aux_offset. | |
106 | (elf_cvt_Verneed): Check alignment of need_offset and aux_offset. | |
107 | ||
ed42e7cf MW |
108 | 2022-03-17 Mark Wielaard <mark@klomp.org> |
109 | ||
110 | * elf_begin.c (read_long_names): Check ar_size starts with a digit. | |
111 | ||
1b09e673 MW |
112 | 2022-03-17 Mark Wielaard <mark@klomp.org> |
113 | ||
114 | * elf_begin.c (get_shnum): Take offset into account for Shdr | |
115 | alignment check. | |
116 | ||
aab1cc4c MW |
117 | 2021-12-19 Mark Wielaard <mark@klomp.org> |
118 | ||
119 | * elf_begin.c (file_read_elf): Cast ehdr to uintptr_t before e_shoff | |
120 | alignment check. Only set shdr state when scncnt is larger than zero. | |
121 | ||
b16ff819 MW |
122 | 2021-12-16 Mark Wielaard <mark@klomp.org> |
123 | ||
124 | * libelfP.h (NOTE_ALIGN4): And with negative unsigned long. | |
125 | (NOTE_ALIGN8): Likewise. | |
126 | ||
8303a9cf MW |
127 | 2021-12-15 Mark Wielaard <mark@klomp.org> |
128 | ||
129 | * elf_begin.c (get_shnum): Use offsetof to get field of unaligned | |
130 | struct. | |
131 | ||
e0942709 DL |
132 | 2021-09-06 Dmitry V. Levin <ldv@altlinux.org> |
133 | ||
134 | * common.h (allocate_elf): Remove cast of calloc return value. | |
135 | * elf_newdata.c (elf_newdata): Likewise. | |
136 | * elf_getscn.c (elf_getscn): Remove casts of calloc return values. | |
137 | * elf_newscn.c (elf_newscn): Likewise. | |
138 | * elf32_updatefile.c (__elfw2): Remove casts of malloc return values. | |
139 | * elf_getdata.c (convert_data): Likewise. | |
140 | (__libelf_set_rawdata_wrlock): Remove cast of malloc return value. | |
141 | * elf_begin.c (read_long_names): Remove cast of malloc return value. | |
142 | * elf_readall.c (__libelf_readall): Likewise. | |
143 | * elf_getarsym.c (elf_getarsym): Remove casts of malloc and realloc | |
144 | return values. | |
145 | ||
0aed4315 MW |
146 | 2021-07-19 Mark Wielaard <mark@klomp.org> |
147 | ||
148 | * elf_strptr.c (validate_str): Check last char is zero first before | |
149 | calling memrchr on the whole block. | |
150 | ||
b3601167 AH |
151 | 2021-06-09 Andrei Homescu <ah@immunant.com> |
152 | ||
153 | * elf_getdata.c: Fix d_align for sections where alignment is larger | |
154 | than offset. | |
155 | ||
fd119923 MW |
156 | 2020-12-12 Mark Wielaard <mark@klomp.org> |
157 | ||
158 | * elf.h: Update from glibc. | |
159 | ||
0a5defb6 DL |
160 | 2020-12-16 Dmitry V. Levin <ldv@altlinux.org> |
161 | ||
162 | * libelfP.h (_): Remove. | |
163 | ||
d21692c7 MW |
164 | 2020-12-15 Mark Wielaard <mark@klomp.org> |
165 | ||
166 | * elf_begin.c (get_shnum): Make sure the full Ehdr is available. | |
167 | ||
d178e376 DL |
168 | 2020-12-12 Dmitry V. Levin <ldv@altlinux.org> |
169 | ||
170 | * common.h: Fix spelling typo in comment. | |
171 | * gelf.h: Likewise. | |
172 | * libelf.h: Likewise. | |
173 | * libelfP.h: Likewise. | |
174 | * elf32_checksum.c (elfw2): Likewise. | |
175 | * elf_begin.c (dup_elf, write_file): Likewise. | |
176 | * elf_compress.c (__libelf_compress): Likewise. | |
177 | * elf_compress_gnu.c (elf_compress_gnu): Likewise. | |
178 | ||
ff38afe7 DL |
179 | 2020-12-11 Dmitry V. Levin <ldv@altlinux.org> |
180 | ||
181 | * Makefile.am (GCC_INCLUDE): Remove. | |
182 | ||
4f587a12 DL |
183 | 2020-12-09 Dmitry V. Levin <ldv@altlinux.org> |
184 | ||
185 | * Makefile.am (noinst_PROGRAMS): Rename to noinst_DATA. | |
186 | (libelf_so_SOURCES): Remove. | |
187 | (CLEANFILES): Add libelf.so. | |
188 | ||
2f02e815 DL |
189 | 2020-11-30 Dmitry V. Levin <ldv@altlinux.org> |
190 | ||
191 | * Makefile.am (libelf.so$(EXEEXT)): Drop $(EXEEXT) suffix. | |
192 | ||
d2da036d MW |
193 | 2020-11-06 Mark Wielaard <mark@klomp.org> |
194 | ||
195 | * elf-knowledge.h (SH_ENTSIZE_HASH): Update comment. | |
196 | ||
f31e45b1 MW |
197 | 2020-11-01 Mark Wielaard <mark@klomp.org> |
198 | ||
199 | * elf_strptr.c (elf_strptr): Check shdr is not NULL. | |
200 | ||
86cedeba MW |
201 | 2020-11-01 Mark Wielaard <mark@klomp.org> |
202 | ||
203 | * elf_getphdrnum.c (__elf_getphdrnum_rdlock): Set *dst to zero on | |
204 | error. | |
205 | ||
f2272dbe MW |
206 | 2020-11-01 Mark Wielaard <mark@klomp.org> |
207 | ||
208 | * libelfP.h (__libelf_data_type): Take an GElf_Ehdr instead of an | |
209 | Elf handle. | |
210 | * elf_getdata.c (__libelf_data_type): Likewise. And check ehdr | |
211 | directly instead of fetching a new one. | |
212 | (__libelf_set_rawdata_wrlock): Fetch Ehdr, report an error when that | |
213 | fails, otherwise call __libelf_data_type. | |
214 | ||
56f64c94 MW |
215 | 2020-10-28 Mark Wielaard <mark@klomp.org> |
216 | ||
217 | * elf.h: Update from glibc. | |
218 | ||
1d8b10e0 MW |
219 | 2020-08-28 Mark Wielaard <mark@klomp.org> |
220 | ||
221 | * elf.h: Update from glibc. | |
222 | ||
55c5c9a5 MW |
223 | 2020-08-19 Mark Wielaard <mark@klomp.org> |
224 | ||
225 | * elf32_updatenull.c (updatenull_wrlock): Fixup the sh_addralign | |
226 | of an SHF_COMPRESSED section if necessary. | |
227 | ||
39f22a76 MW |
228 | 2020-06-04 Mark Wielaard <mark@klomp.org> |
229 | ||
230 | * elf.h: Update from glibc. | |
231 | ||
24d65694 MW |
232 | 2020-05-08 Mark Wielaard <mark@klomp.org> |
233 | ||
234 | * elf_strptr.c (elf_strptr): Check shdr is not NULL. | |
235 | ||
59587b33 MW |
236 | 2020-05-08 Mark Wielaard <mark@klomp.org> |
237 | ||
238 | * elf_getdata.c (__libelf_set_rawdata_wrlock): Check | |
239 | __gelf_getehdr_rdlock return value. | |
240 | ||
a5d73b3e MW |
241 | 2020-04-25 Mark Wielaard <mark@klomp.org> |
242 | ||
243 | * elf_compress.c (__libelf_compress): Remove free (out_buf). | |
244 | ||
ee2dd07f OS |
245 | 2020-03-18 Omar Sandoval <osandov@fb.com> |
246 | ||
247 | * elf_getphdrnum.c (__elf_getphdrnum_rdlock): Call | |
248 | __elf{32,64}_getshdr_rdlock if the shdr is not cached. | |
249 | ||
2092865a MM |
250 | 2019-03-20 Matthias Maennich <maennich@google.com> |
251 | ||
252 | * elf_compress.c (__libelf_compress): Always call deflate_cleanup | |
253 | in failure path. Call deflateEnd only once. | |
254 | (__libelf_decompress): Call inflateEnd only once. | |
255 | ||
a46200f6 MW |
256 | 2019-06-18 Mark Wielaard <mark@klomp.org> |
257 | ||
258 | * common.h (allocate_elf): Use int64_t instead of off_t for offset. | |
259 | * elf32_newphdr.c (newphdr): Document why Elf32/64_Word is correct. | |
260 | * elf32_updatefile.c (fill): Use int64_t instead of off_t for pos. | |
261 | (updatefile): Define last_offset, shdr_offset and scn_start as | |
262 | int64_t instead of off_t. | |
263 | * elf32_updatenull.c: Define Elf32_SizeWord and Elf64_SizeWord. | |
264 | (updatenull_wrlock): Return int64_t instead of off_t. Define size, | |
265 | sh_entsize, sh_align and sh_size as SizeWords. Define offset as | |
266 | int64_t. Cast data->d_off to SizeWord instead of GElf_Word. Drop | |
267 | size GElf_Word cast. Cast offset to SizeWord instead of GElf_Word | |
268 | when comparing with sh_size. | |
269 | * elf_begin.c (get_shnum): Define offset as int64_t instead of | |
270 | off_t. Document why use GElf_Word is correct. | |
271 | (file_read_elf): Define offset as int64_t instead of off_t. | |
272 | (__libelf_read_mmaped_file): Likewise. | |
273 | (read_unmmaped_file): Likewise. | |
274 | (read_file): Likewise. | |
275 | * elf_getaroff.c (elf_getaroff): Return int64_t. | |
276 | * elf_getbase.c (elf_getbase): Likewise. | |
277 | * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Define offset as | |
278 | int64_t instead of off_t. | |
279 | * elf_update.c (write_file): Return int64_t instead of off_t, | |
280 | define size as int64_t instead of off_t. | |
281 | (elf_update): Likewise. | |
282 | * libelfP.h (struct Elf): Define start_offset, sizestr_offset and | |
283 | offset as int64_t. | |
284 | (__libelf_read_mmaped_file): Define offset as int64_t. | |
285 | (__elf32_updatenull_wrlock): Return int64_t. | |
286 | (__elf64_updatenull_wrlock): Return int64_t. | |
287 | ||
d7193bd7 MW |
288 | 2019-05-12 Mark Wielaard <mark@klomp.org> |
289 | ||
290 | * elf32_updatenull.c (updatenull_wrlock): Mark shdr_flags dirty if | |
291 | either offset or size changed. | |
292 | ||
4628b0ea MW |
293 | 2019-05-01 Mark Wielaard <mark@klomp.org> |
294 | ||
295 | * gelf_getnote.c (gelf_getnote): Check n_namesz doesn't overflow | |
296 | offset. | |
297 | ||
1d8f5d30 MW |
298 | 2019-04-30 Mark Wielaard <mark@klomp.org> |
299 | ||
300 | * note_xlate.h (elf_cvt_note): Indicate we only translated the note | |
301 | header if we ran out of data by updating len, src and dest. | |
302 | ||
9c82942a MH |
303 | 2019-04-01 Mao Han <han_mao@c-sky.com> |
304 | ||
305 | * elf.h: Update from glibc. | |
306 | ||
6bd060a2 MW |
307 | 2019-03-07 Mark Wielaard <mark@klomp.org> |
308 | ||
309 | * elf32_updatefile.c (updatemmap): Use posix_memalign instead of | |
310 | aligned_alloc. | |
311 | ||
75e147d0 MW |
312 | 2019-03-06 Mark Wielaard <mark@klomp.org> |
313 | ||
314 | * elf32_updatefile.c (updatemmap): Free scns before returning | |
315 | allocation failure. | |
316 | ||
e56a0969 MW |
317 | 2019-02-24 Mark Wielaard <mark@klomp.org> |
318 | ||
319 | * gelf_xlate.c (__elf_xfctstof): Remove alias. | |
320 | * libelfP.h (__elf_xfctstof): Remove definition. | |
321 | ||
be8080bd MW |
322 | 2019-02-24 Mark Wielaard <mark@klomp.org> |
323 | ||
324 | * elf32_fsize.c (local_strong_alias): Remove definition. | |
325 | (msize): Remove alias. | |
326 | * libelfP.h (__elf32_msize): Remove definition. | |
327 | (__elf64_msize): Likewise. | |
328 | ||
b9d16789 MW |
329 | 2019-02-21 Mark Wielaard <mark@klomp.org> |
330 | ||
331 | * common.h (determine_kind): Only accept EV_CURRENT. | |
332 | * elf32_fsize.c (fsize): Just check version is EV_CURRENT. | |
333 | Use __libelf_type_size without version dimension. | |
334 | * elf32_updatefile.c (updatemmap): Define fctp from __elf_xfctstom | |
335 | without version dimension. | |
336 | (updatefile): Likewise. | |
337 | * elf32_updatenull.c (default_ehdr): Check e_version is EV_CURRENT. | |
338 | (updatenull_wrlock): Check d_version is EV_CURRENT. | |
339 | (elf32_xlatetof): Likewise. And get recsize without version | |
340 | dimension from __elf_xfctstom. | |
341 | (elf32_xlatetom): Likewise. | |
342 | * elf_begin.c (elf_begin): Check __libelf_version is EV_CURRENT. | |
343 | * elf_compress.c (__libelf_reset_rawdata): Set d_version to | |
344 | EV_CURRENT. | |
345 | * elf_getdata.c (shtype_map): Remove version dimension. | |
346 | (__libelf_type_aligns): Likewise. | |
347 | (__libelf_data_type): Use shtype_map without version dimension. | |
348 | (convert_data): Remove unused version argument. Get fp from | |
349 | __elf_xfctstom without version dimensions. | |
350 | (__libelf_set_data_list_rdlock): Call convert_data without version. | |
351 | * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Call __elfcfctstom | |
352 | conversion function without version dimensions. Set d_version to | |
353 | EV_CURRENT. | |
354 | * elf_newdata.c (elf_newdata): Set d_version to EV_CURRENT. | |
355 | * elf_version.c (__libelf_version_initialized): Removed. | |
356 | (__libelf_version): Initialized to EV_NONE. | |
357 | (elf_version): Always return EV_CURRENT for EV_NONE version. | |
358 | Only accept (and return) EV_CURRENT as version. | |
359 | * gelf_fsize.c (__libelf_type_sizes): Remove version dimension. | |
360 | (gelf_fsize): Only accept EV_CURRENT as version. | |
361 | Use __libelf_type_sizes without version dimension. | |
362 | * gelf_xlate.c (__elf_xftstom): Remove version dimensions. | |
363 | * libelfP.h (__elf_xfctstom): Defined without version dimensions. | |
364 | (__elf_xfctstof): Likewise. | |
365 | (__libelf_type_sizes): Define without version dimension. | |
366 | (elf_typesize): Define using __libelf_type_sizes without version | |
367 | dimension. | |
368 | (__libelf_version_initialized): Remove definition. | |
369 | (__libelf_version): Add definition. | |
370 | (LIBELF_EV_IDX): Removed define. | |
371 | (__libelf_type_aligns): Remove version dimension. | |
372 | * nlist.c (nlist): Call elf_version unconditionally. | |
373 | ||
ff7fe986 MW |
374 | 2019-02-19 Mark Wielaard <mark@klomp.org> |
375 | ||
376 | * elf_compress.c (do_deflate_cleanup): Remove ei_data argument, | |
377 | check cdatap is not NULL before calling free. | |
378 | (deflate_cleanup): Add cdata as argument. | |
379 | (__libelf_compress): Also check whether the d_size is not zero | |
380 | before converting data. Call deflate_cleanup with an extra | |
381 | argument depending on whether there is converted data to free. | |
382 | Always allocate allocate at least one byte for buf_out. | |
383 | ||
e32380ec MW |
384 | 2019-02-14 Mark Wielaard <mark@klomp.org> |
385 | ||
386 | * elf_begin.c (read_long_names): Make sure ar_size is properly | |
387 | terminated. Sanity check len early if we can. | |
388 | ||
b63007ed MW |
389 | 2019-01-18 Mark Wielaard <mark@klomp.org> |
390 | ||
391 | * Makefile.am (INSTALL_ELFH): Add elf.h to include_HEADERS when | |
392 | defined, otherwise (the default) add elf.h to noinst_HEADERS. | |
393 | ||
e65d91d2 MW |
394 | 2019-01-16 Mark Wielaard <mark@klomp.org> |
395 | ||
396 | * note_xlate.h (elf_cvt_note): Check n_namesz and n_descsz don't | |
397 | overflow note_len into note header. | |
398 | ||
5f9fab9e MW |
399 | 2018-11-17 Mark Wielaard <mark@klomp.org> |
400 | ||
401 | * elf32_updatefile.c (updatemmap): Make sure to call convert | |
402 | function on a properly aligned destination. | |
403 | ||
a01938d5 MW |
404 | 2018-11-16 Mark Wielaard <mark@klomp.org> |
405 | ||
406 | * libebl.h (__elf32_msize): Mark with const attribute. | |
407 | (__elf64_msize): Likewise. | |
408 | ||
cf10453f MW |
409 | 2018-11-13 Mark Wielaard <mark@klomp.org> |
410 | ||
411 | * elf_getdata.c (__libelf_set_rawdata_wrlock): Explicitly set the | |
412 | alignment of SHF_COMPRESSED data to the alignment of ELF_T_CHDR. | |
413 | * elf_compress.c (elf_compress): After compression set sh_addralign | |
414 | to the alignment of ELF_T_CHDR. | |
415 | ||
d3e62667 MW |
416 | 2018-11-09 Mark Wielaard <mark@klomp.org> |
417 | ||
418 | * elf_compress_gnu.c (elf_compress_gnu): Use elf_getdata. | |
419 | ||
72e30c2e MW |
420 | 2018-11-12 Mark Wielaard <mark@klomp.org> |
421 | ||
422 | * elf-knowledge.c (ELF_NOTE_GNU_BUILD_ATTRIBUTE_PREFIX): New define. | |
423 | (NT_GNU_BUILD_ATTRIBUTE_{OPEN,FUNC}): Likewise. | |
424 | (GNU_BUILD_ATTRIBUTE_TYPE_{NUMERIC,STRING,BOOL_TRUE,BOOL_FALSE}): | |
425 | Likewise. | |
426 | (GNU_BUILD_ATTRIBUTE_{VERSION,STACK_PROT,RELRO,STACK_SIZE,TOOL,ABI, | |
427 | PIC,SHORT_ENUM}): Likewise. | |
428 | ||
4789e0fb MW |
429 | 2018-11-09 Mark Wielaard <mark@klomp.org> |
430 | ||
431 | * elf_compress.c (__libelf_reset_rawdata): Make rawdata change | |
432 | explicit by calling __libelf_set_data_list. | |
433 | * elf_getdata.c (convert_data): Don't convert if type is ELF_T_BYTE | |
434 | even if endianness is different. | |
435 | ||
5199e158 MW |
436 | 2018-10-18 Mark Wielaard <mark@klomp.org> |
437 | ||
438 | * libelf.h (Elf_Type): Add ELF_T_NHDR8. | |
439 | * libelfP.h (__libelf_data_type): Add align argument. | |
440 | (NOTE_ALIGN): Split into... | |
441 | (NOTE_ALIGN4): ... and ... | |
442 | (NOTE_ALIGN8): this. | |
443 | * elf32_xlatetom.c (xlatetom): Recognize both ELF_T_NHDR and | |
444 | ELF_T_NHDR8. | |
445 | * elf_compress.c (elf_compress): Pass zdata_align to | |
446 | __libelf_data_type. | |
447 | * elf_compress_gnu.c (elf_compress_gnu): Pass sh_addralign to | |
448 | __libelf_data_type. | |
449 | * elf_getdata.c (shtype_map): Add ELF_T_NHDR8. | |
450 | (__libelf_data_type): Take align as extra argument, use it to | |
451 | determine Elf_Type. | |
452 | (__libelf_set_rawdata_wrlock): Recognize ELF_T_NHDR8. Pass align to | |
453 | __libelf_data_type. | |
454 | * gelf_fsize.c (__libelf_type_sizes): Add ELF_T_NHDR8. | |
455 | * gelf_getnote.c (gelf_getnote): Use Elf_Type of Elf_Data to calculate | |
456 | padding. | |
457 | * gelf_xlate.c (__elf_xfctstom): Set ELF_T_NHDR to elf_cvt_note4, | |
458 | add ELF_T_NHDR8. | |
459 | * note_xlate.h (elf_cvt_note): Take nhdr8 argument and use it to | |
460 | determine padding. | |
461 | (elf_cvt_note4): New function. | |
462 | (elf_cvt_note8): Likewise. | |
463 | ||
34534cc1 MW |
464 | 2018-09-13 Mark Wielaard <mark@klomp.org> |
465 | ||
466 | * elf32_updatefile.c (updatemmap): Use shnum, not ehdr->e_shnum. | |
467 | * elf_getscn.c (elf_getscn): Create section zero if it is requested, | |
468 | but doesn't exist yet. | |
469 | ||
fb0457f4 MW |
470 | 2018-09-12 Mark Wielaard <mark@klomp.org> |
471 | ||
472 | * elf32_updatefile.c (updatemmap): Use memmove, not memcpy. | |
473 | * elf_update.c (write_file): Try to mremap if file needs to be | |
474 | extended. | |
475 | ||
56b18521 MW |
476 | 2018-08-18 Mark Wielaard <mark@klomp.org> |
477 | ||
478 | * libelf.h (elf_compress_gnu): Add documentation about | |
479 | interaction between SHF_COMPRESED and elf_compress_gnu. | |
480 | * elf_compress_gnu.c (elf_compress_gnu): Return error if section | |
481 | sh_flags has SHF_COMPRESSED set. | |
482 | ||
7df31382 MW |
483 | 2018-07-27 Mark Wielaard <mark@klomp.org> |
484 | ||
485 | * libelf.h (elf_getshdrstrndx): Fix documentation. | |
486 | (elf_getshstrndx): Likewise. | |
487 | ||
dd813335 MW |
488 | 2018-06-19 Mark Wielaard <mark@klomp.org> |
489 | ||
490 | * libelfP.h (__libelf_type_align): Remove !ALLOW_UNALIGNED guard. | |
491 | * elf_getdata.c (__libelf_type_aligns): Likewise. | |
492 | (convert_data): Remove ALLOW_UNALIGNED check. | |
493 | * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Likewise. | |
494 | ||
3e4f78a7 MW |
495 | 2018-06-21 Mark Wielaard <mark@klomp.org> |
496 | ||
497 | * elf.h: Update from glibc. | |
498 | ||
9b29c2a1 AS |
499 | 2018-04-19 Andreas Schwab <schwab@suse.de> |
500 | ||
501 | * elf.h: Update from glibc. | |
502 | ||
88f3d2da MW |
503 | 2018-02-16 Mark Wielaard <mark@klomp.org> |
504 | ||
505 | * elf.h: Update from glibc. | |
506 | ||
555e15eb JW |
507 | 2018-02-09 Joshua Watt <JPEWhacker@gmail.com> |
508 | ||
509 | * elf32_updatenull.c (updatenull_wrlock): Use FALLTHROUGH macro | |
510 | instead of comment. | |
511 | * elf_begin.c (read_unmmaped_file): Likewise. | |
512 | (elf_begin): Likewise. | |
513 | * elf_cntl.c (elf_cntl): Likewise. | |
514 | ||
4f977868 MW |
515 | 2017-10-04 Mark Wielaard <mark@klomp.org> |
516 | ||
517 | * elf_begin.c (file_read_elf): Skip sanity checking e_shoff if scncnt | |
518 | is zero, we won't use it then. | |
519 | ||
fef9e11b MW |
520 | 2017-10-04 Mark Wielaard <mark@klomp.org> |
521 | ||
522 | * libelfP.h: Add ELF_E_INVALID_ELF to error values enum. | |
523 | * elf_error.c (ELF_E_INVALID_ELF_IDX): New define. Use it as value | |
524 | for ELF_E_INVALID_ELF in msgidx. | |
525 | * elf_getshdrstrndx.c (elf_getshdrstrndx): Distinquish between pread | |
526 | failing and not having enough data. | |
527 | * elf_begin.c (get_shnum): Likewise. Explicitly set libelf errno on | |
528 | too large value. | |
529 | (file_read_elf): Make sure to always set libelf errno when returning | |
530 | NULL. Distinquish between i/o file and elf data errors. | |
531 | ||
17d7194d UH |
532 | 2017-08-18 Ulf Hermann <ulf.hermann@qt.io> |
533 | ||
534 | * gelf_xlate.c: Use attribute_packed. | |
535 | ||
1127470a UH |
536 | 2017-04-27 Ulf Hermann <ulf.hermann@qt.io> |
537 | ||
538 | * libelfP.h: Use attribute_hidden. | |
539 | ||
07737584 UH |
540 | 2017-04-27 Ulf Hermann <ulf.hermann@qt.io> |
541 | ||
542 | * Makefile.am: Use fpic_CFLAGS and dso_LDFLAGS. | |
543 | ||
6d2e7e71 MW |
544 | 2017-08-15 Mark Wielaard <mark@klomp.org> |
545 | ||
546 | * elf.h: Update from glibc. Add new powerpc note descriptors. | |
547 | ||
55a471f5 GR |
548 | 2017-07-19 Gustavo Romero <gromero@linux.vnet.ibm.com> |
549 | ||
550 | * elf.h: Add known type in notes segment descriptor for HTM SPRs. | |
551 | ||
8abf0b5b UH |
552 | 2017-02-17 Ulf hermann <ulf.hermann@qt.io> |
553 | ||
554 | * Makefile.am: Add libelf_so_DEPS, which include libeu.a, | |
555 | libelf_so_LIBS. | |
556 | (libelf_so_LDLIBS): Add $(libelf_so_DEPS). | |
557 | (libelf.so$(EXEEXT): Use $(libelf_so_LIBS), require libelf.map | |
558 | from the right directory. | |
559 | ||
575198c2 UH |
560 | 2017-04-20 Ulf Hermann <ulf.hermann@qt.io> |
561 | ||
562 | * libelfP.h: Don't include config.h. | |
563 | ||
fd9e7345 UH |
564 | 2017-04-20 Ulf Hermann <ulf.hermann@qt.io> |
565 | ||
566 | * elf_begin.c: Use F_GETFD rather than F_GETFL. | |
567 | ||
c73a00d8 UH |
568 | 2017-04-20 Ulf Hermann <ulf.hermann@qt.io> |
569 | ||
570 | * libelf.h: Define macros for various function attributes and use | |
571 | them. | |
572 | ||
a6c6fb4a UH |
573 | 2017-04-20 Ulf Hermann <ulf.hermann@qt.io> |
574 | ||
575 | * elf_update.c: Set ELF_F_MMAPPED flag if we mmap from elf_update. | |
576 | ||
7114c513 MW |
577 | 2017-04-19 Mark Wielaard <mark@klomp.org> |
578 | ||
579 | * elf_getarsym.c (elf_getarsym): Initialize n to zero. | |
580 | ||
a3bf8f08 MW |
581 | 2017-03-27 Mark Wielaard <mark@klomp.org> |
582 | ||
583 | * elf32_updatefile.c (updatemmap): Always update last_positition. | |
584 | (updatefile): Likewise. | |
585 | ||
8dcc4bf7 MW |
586 | 2017-03-24 Mark Wielaard <mark@klomp.org> |
587 | ||
588 | * elf_compress.c (__libelf_decompress): Check insane compression | |
589 | ratios before trying to allocate output buffer. | |
590 | ||
0d0f8450 AO |
591 | 2016-10-11 Akihiko Odaki <akihiko.odaki.4i@stu.hosei.ac.jp> |
592 | Mark Wielaard <mjw@redhat.com> | |
593 | ||
594 | * gelf.h (gelf_newehdr): Change return type to void *. | |
595 | (gelf_newphdr): Likewise. | |
596 | * gelf_newehdr.c (gelf_newehdr): Likewise. | |
597 | * gelf_newphdr.c (gelf_newphdr): Likewise. | |
598 | ||
09ec02ec MW |
599 | 2016-10-21 Mark Wielaard <mjw@redhat.com> |
600 | ||
601 | * elf_getdata.c (__libelf_set_rawdata_wrlock): Sanity check | |
602 | offset and size before trying to malloc and read data. | |
603 | ||
191000fd MW |
604 | 2016-10-26 Mark Wielaard <mjw@redhat.com> |
605 | ||
606 | * elf_begin.c (read_file): Always set maxsize when parent == NULL. | |
607 | ||
608 | 2016-10-11 Akihiko Odaki <akihiko.odaki.4i@stu.hosei.ac.jp> | |
a24d52ac AO |
609 | |
610 | * elf_getarsym.c (elf_getarsym): Open code rawmemchr when not | |
611 | available. | |
612 | * elf_strptr.c: Include stdbool.h. | |
613 | (validate_str): New function. | |
614 | (elf_strptr): Use validate_str instead of memrchr. | |
615 | ||
191000fd | 616 | 2016-10-11 Akihiko Odaki <akihiko.odaki.4i@stu.hosei.ac.jp> |
60b2bf1b AO |
617 | |
618 | * elf32_updatefile.c: Remove sys/param.h include. | |
619 | * elf32_updatenull.c: Likewise. Add system.h include. | |
620 | * elf_begin.c: Remove sys/param.h. | |
621 | * elf_compress: Likewise. Add system.h include. | |
622 | (MAX): Remove definition. | |
623 | ||
e93f2d80 MW |
624 | 2016-08-07 Mark Wielaard <mjw@redhat.com> |
625 | ||
626 | * elf_compress.c (__libelf_reset_rawdata): Check scn->flags and | |
627 | free rawdata_base when malloced. Set ELF_F_MALLOCED for scn->flags. | |
628 | * elf_end.c (elf_end): Check scn->flags and free rawdata_base if | |
629 | malloced. | |
630 | * libelfP.h (struct Elf_Scn): Document flags ELF_F_MALLOCED usage. | |
631 | ||
e6ca75dd MW |
632 | 2016-07-06 Mark Wielaard <mjw@redhat.com> |
633 | ||
634 | * elf-knowledge.h (SH_FLAGS_COMBINE): Removed. | |
635 | (SH_FLAGS_IMPORTANT): Likewise. | |
636 | ||
8b5f017d MW |
637 | 2016-07-06 Mark Wielaard <mjw@redhat.com> |
638 | ||
639 | * elf32_updatenull.c (updatenull_wrlock): Ignore e_type when | |
640 | updating phdrs. | |
641 | * elf_getphdrnum.c (__elf_getphdrnum_chk_rdlock): Only do sanity | |
642 | checking if phdrs haven't been read in yet. | |
643 | ||
96e140f6 JO |
644 | 2016-06-24 John Ogness <john.ogness@linutronix.de> |
645 | ||
646 | * elf32_updatenull.c (updatenull_wrlock): Find first section. | |
647 | * elf_nextscn.c (elf_nextscn): When scn is NULL start from 0th | |
648 | section. | |
649 | ||
4c746f25 RH |
650 | 2016-06-28 Richard Henderson <rth@redhat.com> |
651 | ||
652 | * elf.h: Update from glibc. Add lots of new EM_* definitions. | |
653 | ||
f7f45ed5 MW |
654 | 2016-04-14 Mark Wielaard <mjw@redhat.com> |
655 | ||
656 | * elf_compress.c (__libelf_compress): Free out_buf if deflateInit | |
657 | fails. | |
658 | ||
7249c8e4 MW |
659 | 2016-02-13 Mark Wielaard <mjw@redhat.com> |
660 | ||
661 | * elf32_updatefile.c (updatemmap): Free scns when out of memory. | |
662 | ||
2f289fa9 MW |
663 | 2016-01-28 Mark Wielaard <mjw@redhat.com> |
664 | ||
665 | * elf.h: Update from glibc. Add new i386 and x86_64 relocations. | |
666 | ||
1899704b MW |
667 | 2016-02-12 Mark Wielaard <mjw@redhat.com> |
668 | ||
669 | * elf.h: Update from glibc. Add NT_ARM_SYSTEM_CALL. | |
670 | ||
22035605 MW |
671 | 2016-02-04 Mark Wielaard <mjw@redhat.com> |
672 | ||
673 | * elf_getdata.c (__libelf_set_rawdata_wrlock): Don't adjust align | |
674 | for SHT_NOBITS sections. | |
675 | ||
203f0a3e CHH |
676 | 2016-01-22 Chih-Hung Hsieh <chh@google.com> |
677 | ||
678 | * elf_compress.c (__libelf_compress): Move nested function | |
679 | 'do_deflate_cleanup' to file scope to compile with clang. | |
680 | * elf_strptr.c (elf_strptr): Move nested function 'get_zdata' | |
681 | to file scope to compile with clang. | |
682 | ||
344ca077 MW |
683 | 2016-01-13 Mark Wielaard <mjw@redhat.com> |
684 | ||
685 | * libelf.h: Check SHF_COMPRESSED is defined. If not define it and the | |
686 | associated ELF compression types/defines. | |
687 | ||
519c13c9 MW |
688 | 2015-11-26 Mark Wielaard <mjw@redhat.com> |
689 | ||
690 | * elf_compress.c (__libelf_decompress_elf): New function, extracted | |
691 | from... | |
692 | (elf_compress): here. Check zdata_base use __libelf_decompress_elf. | |
693 | * elf_strptr.c (elf_strptr): If SHF_COMPRESSED check, uncompress and | |
694 | use zdata. | |
695 | * libelfP.h (struct Elf_Scn): Add zdata_size and zdata_align. | |
696 | (__libelf_decompress_elf): New internal function definition. | |
697 | ||
272018bb MW |
698 | 2015-10-21 Mark Wielaard <mjw@redhat.com> |
699 | ||
700 | * Makefile.am (libelf_a_SOURCES): Add elf_compress.c and | |
701 | elf_compress_gnu.c. | |
702 | * elf_compress.c: New file. | |
703 | * elf_compress_gnu.c: Likewise. | |
704 | * elf_begin.c (file_read_elf): Make a writable copy of the shdrs | |
705 | for ELF_C_READ_MMAP. | |
706 | * elf_end.c (elf_end): Free zdata_base. | |
707 | * elf_error.c: Add ELF_E_ALREADY_COMPRESSED, | |
708 | ELF_E_UNKNOWN_COMPRESSION_TYPE, ELF_E_COMPRESS_ERROR and | |
709 | ELF_E_DECOMPRESS_ERROR. | |
710 | * elf_data.c (__libelf_data_type): New internal function extracted | |
711 | from convert_data. | |
712 | (convert_data): Handle SHF_COMPRESSED. | |
713 | * elf32_updatenull.c (updatenull_wrlock): Check sh_entsize against | |
714 | uncompressed section data size if SHF_COMPRESSED. | |
715 | * elf32_getshdr.c (load_shdr_wrlock): Adjust assert to account for | |
716 | ELF_C_READ_MMAP. | |
717 | * libelf.h: Define elf_compress and elf_compress_gnu. | |
718 | * libelf.map (ELFUTILS_1.7): Add elf_compress and elf_compress_gnu. | |
719 | * libelfP.h: Add ELF_E_ALREADY_COMPRESSED, | |
720 | ELF_E_UNKNOWN_COMPRESSION_TYPE, ELF_E_COMPRESS_ERROR and | |
721 | ELF_E_DECOMPRESS_ERROR. Define __libelf_data_type. | |
722 | (__libelf_compress): New internal function definition. | |
723 | (__libelf_decompress): Likewise. | |
724 | (__libelf_reset_rawdata): Likewise. | |
725 | (__libelf_data_type): Likewise. | |
726 | (struct Elf_Scn): Add zdata_base. | |
727 | ||
5ddb50af MW |
728 | 2015-11-19 Mark Wielaard <mjw@redhat.com> |
729 | ||
730 | * Makefile.am (libelf_a_SOURCES): Add elf32_getchdr.c, | |
731 | elf64_getchdr.c and gelf_getchdr.c. | |
732 | (noinst_HEADERS): Add chdr_xlate.h. | |
733 | * abstract.h: Define Chdr32 and Chdr64. | |
734 | * chdr_xlate.h: New file. | |
735 | * elf32_getchdr.c: New file. | |
736 | * elf64_getchdr.c: New file. | |
737 | * elf_error.c: Add ELF_E_NOT_COMPRESSED, ELF_E_INVALID_SECTION_TYPE | |
738 | and ELF_E_INVALID_SECTION_FLAGS. | |
739 | * elf_getdata.c (__libelf_set_rawdata_wrlock): Set d_type to | |
740 | ELF_T_CHDR for SHF_COMPRESSED sections. | |
741 | * exttypes.h: Add Chdr32 and Chdr64. | |
742 | * gelf.h (GElf_Chdr): New typedef. | |
743 | (gelf_getchdr): New function definition. | |
744 | * gelf_fsize.c (__libelf_type_sizes): Add ELF_T_CHDR. | |
745 | * gelf_getchdr.c: New file. | |
746 | * gelf_xlate.c (__elf_xfctstom): Add ELF_T_CHDR cvt_chdr. | |
747 | * gelf_xlate.h: Add Chdr. | |
748 | * libelf.h (Elf_Type): Add ELF_T_CHDR. | |
749 | (elf32_getchdr): New function definition. | |
750 | (elf64_getchdr): Likewise. | |
751 | * libelf.map (ELFUTILS_1.7): New sections add elf32_getchdr, | |
752 | elf64_getchdr and gelf_getchdr. | |
753 | * libelfP.h: Add ELF_E_NOT_COMPRESSED, ELF_E_INVALID_SECTION_TYPE | |
754 | and ELF_E_INVALID_SECTION_FLAGS. | |
755 | ||
528cb45f MW |
756 | 2015-10-16 Mark Wielaard <mjw@redhat.com> |
757 | ||
758 | * Makefile.am (libelf_so_LDLIBS): Add -lz. | |
759 | ||
5eb3e901 MW |
760 | 2015-10-14 Mark Wielaard <mjw@redhat.com> |
761 | ||
762 | * elf.h: Update from glibc. Add section compression constants and | |
763 | structures. | |
764 | ||
1ed7195e JM |
765 | 2015-10-20 Jose E. Marchesi <jose.marchesi@oracle.com> |
766 | ||
767 | * elf_begin.c (get_shnum): Elf64_Shdr.sh_size is an Elf64_Xword. | |
768 | Fix the size argument to pread_retry. | |
769 | ||
239d8591 CHH |
770 | 2015-10-13 Chih-Hung Hsieh <chh@google.com> |
771 | ||
772 | * elf32_updatefile.c (__elfw2(LIBELFBITS,updatemmap)): Move nested | |
773 | function 'fill_mmap' to file scope. | |
774 | * elf_begin.c (elf_begin): Move nested function 'lock_dup_elf' | |
775 | to file scope. | |
776 | ||
b1d0b0fc JS |
777 | 2015-10-09 Josh Stone <jistone@redhat.com> |
778 | ||
779 | * libelf.h: Replace loff_t with int64_t throughout. | |
780 | ||
ae1e85ea MW |
781 | 2015-10-05 Mark Wielaard <mjw@redhat.com> |
782 | ||
783 | * elf_update.c (write_file): Only use posix_fallocate when using | |
784 | mmap. Only report failure when errno is ENOSPC. | |
785 | ||
3425454a JS |
786 | 2015-10-09 Josh Stone <jistone@redhat.com> |
787 | ||
788 | * libelfP.h (struct Elf): Replace off64_t with off_t. | |
789 | * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Likewise. | |
790 | ||
7eff36d5 CHH |
791 | 2015-10-05 Chih-Hung Hsieh <chh@google.com> |
792 | ||
793 | * elf_getarsym.c (elf_getarsym): Do not use | |
794 | union of variable length arrays. | |
795 | ||
daee4714 JS |
796 | 2015-10-05 Josh Stone <jistone@redhat.com> |
797 | ||
798 | * Makefile.am (libelf.so): Add AM_V_CCLD and AM_V_at silencers. | |
799 | ||
6a20e20e JM |
800 | 2015-09-24 Jose E. Marchesi <jose.marchesi@oracle.com> |
801 | ||
802 | * Makefile.am (AM_CFLAGS): Use -fPIC instead of -fpic to avoid | |
803 | relocation overflows in some platforms. | |
804 | ||
3adda3ce MW |
805 | 2015-09-29 Mark Wielaard <mjw@redhat.com> |
806 | ||
807 | * elf32_updatenull.c (default_ehdr): Set e_version when EV_NONE. | |
808 | (updatenull_wrlock): Always set e_shentsize. | |
809 | ||
d8698e55 MW |
810 | 2015-09-23 Mark Wielaard <mjw@redhat.com> |
811 | ||
812 | * elf32_getehdr.c (getehdr_wrlock): Mark as internal_function. | |
813 | * elf32_getshdr.c (getshdr_rdlock): Likewise. | |
814 | (getshdr_wrlock): Likewise. | |
815 | * elf_error.c (__libelf_seterrno): Likewise. | |
816 | * elf_getphdrnum.c (__elf_getphdrnum_rdlock): Likewise. | |
817 | (__elf_getphdrnum_chk_rdlock): Likewise. | |
818 | * elf_getshdrnum.c (__elf_getphdrnum_rdlock): Likewise. | |
819 | (__elf_getphdrnum_chk_rdlock): Likewise. | |
820 | * elf_getshdrnum.c (__elf_getshdrnum_rdlock): Likewise. | |
821 | * elf_readall.c (__libelf_readall): Likewise. | |
822 | * gelf_getehdr.c (__gelf_getehdr_rdlock): Likewise. | |
823 | ||
1ccdfb68 MW |
824 | 2015-09-22 Mark Wielaard <mjw@redhat.com> |
825 | ||
826 | * *.c: Remove old-style function definitions. | |
827 | ||
e260d79d MW |
828 | 2015-06-22 Mark Wielaard <mjw@redhat.com> |
829 | ||
830 | * dl-hash.h: Update from glibc. | |
831 | ||
3c57452a MW |
832 | 2015-06-18 Mark Wielaard <mjw@redhat.com> |
833 | ||
834 | * elf32_updatefile.c (updatefile): Always free shdr_data and scns | |
835 | when allocated on failure paths. | |
836 | ||
aec69c7f MW |
837 | 2015-06-18 Mark Wielaard <mjw@redhat.com> |
838 | ||
839 | * nlist.c (nlist): Check symscn shdr exists before use. | |
840 | ||
0d01165e MW |
841 | 2015-06-16 Mark Wielaard <mjw@redhat.com> |
842 | ||
843 | * elf_update.c (write_file): Always also use ftruncate before | |
844 | posix_fallocate to make sure file has the right size. | |
845 | ||
ede1d9d8 MW |
846 | 2015-06-04 Mark Wielaard <mjw@redhat.com> |
847 | ||
848 | * elf_getdata.c (__libelf_type_aligns): Add entries for ELF_T_EHDR, | |
849 | ELF_T_OFF, ELF_T_PHDR, ELF_T_SHDR, ELF_T_SWORD, ELF_T_XWORD, | |
850 | ELF_T_SXWORD, ELF_T_GNUHASH, ELF_T_AUXV. | |
851 | * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Check alignment | |
852 | of rawdata against requested type. | |
853 | ||
9a9f7f66 MW |
854 | 2015-06-02 Mark Wielaard <mjw@redhat.com> |
855 | ||
856 | * elf_getdata.c (convert_data): Make sure source data is properly | |
857 | aligned for type before calling actual conversion function. | |
858 | ||
560aa98b MW |
859 | 2015-06-04 Mark Wielaard <mjw@redhat.com> |
860 | ||
861 | * elf_begin.c (get_shnum): Check alignment of Shdr, not Ehdr before | |
862 | direct access. | |
863 | ||
b9fd0eee MW |
864 | 2015-06-02 Mark Wielaard <mjw@redhat.com> |
865 | ||
866 | * elf_begin.c (file_read_elf): Split checks for ehdr and shdr | |
867 | alignment, drop phdr alignment check. | |
868 | ||
96f6c995 MW |
869 | 2015-05-31 Mark Wielaard <mjw@redhat.com> |
870 | ||
871 | * elf32_getshdr.c (load_shdr_wrlock): Allocate shdrs with malloc, | |
872 | not alloca and free after conversion when a copy needs to be made. | |
873 | ||
2ec51824 MW |
874 | 2015-05-31 Mark Wielaard <mjw@redhat.com> |
875 | ||
876 | * elf32_getphdr.c (getphdr_wrlock): Allocate phdrs with malloc, not | |
877 | alloca and free after conversion when a copy needs to be made. | |
878 | ||
f78e8640 MW |
879 | 2015-05-31 Mark Wielaard <mjw@redhat.com> |
880 | ||
881 | * elf_getarsym.c (elf_getarsym): Allocate temporary file_date with | |
882 | malloc, not alloca also in !ALLOW_UNALIGNED case. | |
883 | ||
fc9b7940 MW |
884 | 2015-05-30 Mark Wielaard <mjw@redhat.com> |
885 | ||
886 | * gelf_xlate.c (elf_cvt_Byte): Only call memmove with non-zero size. | |
887 | ||
b4ad3c4b MW |
888 | 2015-05-30 Mark Wielaard <mjw@redhat.com> |
889 | ||
890 | * elf32_updatefile.c (updatemmap): Only call mempcpy and update | |
891 | last_position when d_size is non-zero. | |
892 | ||
e6261005 MW |
893 | 2015-05-17 Mark Wielaard <mjw@redhat.com> |
894 | ||
895 | * elf32_updatefile.c (updatefile): Allocate shdr_data and scns | |
896 | with malloc, not alloca. Free after writing section headers. | |
897 | ||
2e5df0c3 MW |
898 | 2015-05-16 Mark Wielaard <mjw@redhat.com> |
899 | ||
900 | * elf32_updatefile.c (updatemmap): Allocate temporary shdr storage | |
901 | with malloc, not alloca. Free after writing section header. | |
902 | ||
bfb9a752 MW |
903 | 2015-05-16 Mark Wielaard <mjw@redhat.com> |
904 | ||
905 | * elf_getarsym.c (elf_getarsym): Allocate temporary file_date with | |
906 | malloc, not alloca. Call free after out. | |
907 | ||
77482c4b MW |
908 | 2015-05-14 Mark Wielaard <mjw@redhat.com> |
909 | ||
910 | * elf_update.c (write_file): Use posix_fallocate instead of | |
911 | ftruncate to extend file if necessary. | |
912 | ||
c2297eab MW |
913 | 2015-05-13 Mark Wielaard <mjw@redhat.com> |
914 | ||
915 | * elf32_updatenull.c (default_ehdr): If e_phnum is zero then set | |
916 | e_phoff also to zero. | |
917 | ||
c0748eff MW |
918 | 2015-05-12 Mark Wielaard <mjw@redhat.com> |
919 | ||
920 | * elf32_updatenull.c (updatenull_wrlock): Check that sh_addralign | |
921 | is a powerof2. | |
922 | * elf_getdata.c (__libelf_set_rawdata_wrlock): Clamp large d_aligns | |
923 | to the elf image offset. | |
924 | ||
458027d2 MW |
925 | 2015-05-12 Mark Wielaard <mjw@redhat.com> |
926 | ||
927 | * elf32_newphdr.c (newphdr): Call __libelf_seterrno with | |
928 | ELF_E_INVALID_INDEX before failing. Check whether section zero shdr | |
929 | actually exists if we need to put extended phnum in section zero. | |
930 | ||
a2b964c7 MW |
931 | 2015-05-08 Mark Wielaard <mjw@redhat.com> |
932 | ||
933 | * nlist.c (nlist): Call gelf_fsize with EV_CURRENT. | |
934 | ||
59c1f123 MW |
935 | 2015-01-03 Mark Wielaard <mjw@redhat.com> |
936 | ||
937 | * version_xlate.h (elf_cvt_Verdef): Use memmove to copy src to dest. | |
938 | (elf_cvt_Verneed): Likewise. | |
939 | ||
bcefec51 MW |
940 | 2015-03-28 Mark Wielaard <mjw@redhat.com> |
941 | ||
942 | * elf.h: Update from glibc. | |
943 | ||
5370bb0a MW |
944 | 2015-03-23 Mark Wielaard <mjw@redhat.com> |
945 | ||
946 | * elf32_updatenull.c (updatenull_wrlock): Don't extend size with | |
947 | SHT_NOBITS sh_offset. | |
948 | ||
6c9f1ec5 MW |
949 | 2015-02-18 Mark Wielaard <mjw@redhat.com> |
950 | ||
951 | * libelfP.h (__libelf_set_data_list_rdlock): Make internal_function. | |
952 | ||
6f5934c1 JK |
953 | 2015-02-07 Jan Kratochvil <jan.kratochvil@redhat.com> |
954 | ||
955 | * elf32_updatenull.c (__elfw2(LIBELFBITS,updatenull_wrlock)): Consider | |
956 | sh_addralign 0 as 1. | |
957 | ||
9d481b29 MW |
958 | 2015-01-22 Mark Wielaard <mjw@redhat.com> |
959 | ||
960 | * elf_strptr (elf_strptr): Make sure returned string is NUL | |
961 | terminated. | |
962 | ||
710ca878 MW |
963 | 2015-01-21 Mark Wielaard <mjw@redhat.com> |
964 | ||
965 | * elf_strptr.c (elf_strptr): Check data_list_rear == NULL instead | |
966 | of rawdata_base != NULL before using rawdata directly. | |
967 | ||
b543cdd9 MW |
968 | 2015-01-20 Mark Wielaard <mjw@redhat.com> |
969 | ||
970 | * libelfP.h (__elf_strptr_internal): New function declaration. | |
971 | * elf_getdata.c (__libelf_set_data_list_rdlock): New internal | |
972 | function extracted from... | |
973 | (__elf_getdata_rdlock): ... here. | |
974 | * elf_newdata.c (elf_newdata): Check scn->rawdata_base and update | |
975 | datalist if necessary. | |
976 | ||
058ae7b4 MW |
977 | 2015-01-20 Mark Wielaard <mjw@redhat.com> |
978 | ||
979 | * elf_strptr.c (elf_strptr): Call __elf[32|64]_getshdr_rdlock if | |
980 | necessary. | |
981 | ||
cc62e378 MW |
982 | 2014-12-30 Mark Wielaard <mjw@redhat.com> |
983 | ||
984 | * elf_getphdrnum.c (__elf_getphdrnum_chk_rdlock): New function. | |
985 | (elf_getphdrnum): Call __elf_getphdrnum_chk_rdlock. | |
986 | * gelf_getphdr (gelf_getphdr): Call __elf_getphdrnum_chk_rdlock | |
987 | and always check ndx against phnum. | |
988 | * libelfP.h (__elf_getphdrnum_chk_rdlock): New internal function. | |
989 | ||
68588d62 MW |
990 | 2014-12-25 Mark Wielaard <mjw@redhat.com> |
991 | ||
992 | * elf_begin.c (__libelf_next_arhdr_wrlock): ar_size cannot be | |
993 | negative. Include start_offset in maxsize. | |
994 | ||
147018e7 AC |
995 | 2014-12-28 Alexander Cherepanov <cherepan@mccme.ru> |
996 | ||
997 | * elf_begin.c (read_long_names): Don't miss '/' right after | |
998 | another '/'. Fixes a dir traversal vuln in ar extraction. | |
999 | ||
898ed261 UD |
1000 | 2014-12-18 Ulrich Drepper <drepper@gmail.com> |
1001 | ||
1002 | * Makefile.am: Suppress output of textrel_check command. | |
1003 | ||
55f847d6 MW |
1004 | 2014-12-16 Mark Wielaard <mjw@redhat.com> |
1005 | ||
1006 | * elf_begin.c (read_long_names): Make sure long_names len fits | |
1007 | in mapped ELF file. | |
1008 | ||
4bb122a8 MW |
1009 | 2014-12-15 Mark Wielaard <mjw@redhat.com> |
1010 | ||
1011 | * elf_getarsym.c (elf_getarsym): Check index_size doesn't overflow. | |
1012 | ||
9520242b MW |
1013 | 2014-12-15 Mark Wielaard <mjw@redhat.com> |
1014 | ||
1015 | * elf_begin.c (read_long_names): Clear any garbage left in the | |
1016 | name table. | |
1017 | ||
65a556fc MW |
1018 | 2014-12-11 Mark Wielaard <mjw@redhat.com> |
1019 | ||
1020 | * elf_begin.c (file_read_elf): Correct ELF64 section offset check. | |
1021 | ||
7d63628b MW |
1022 | 2014-12-11 Mark Wielaard <mjw@redhat.com> |
1023 | ||
1024 | * elf_begin.c (read_long_names): Check for offset overflow. | |
1025 | (__libelf_next_arhdr_wrlock): Likewise. Sanity check the ar_size. | |
1026 | Don't allow it to go beyond end of file. | |
1027 | ||
16f08ebd MW |
1028 | 2014-12-09 Mark Wielaard <mjw@redhat.com> |
1029 | ||
1030 | * elf_getarsym.c (elf_getarsym): Make sure n * w doesn't overflow. | |
1031 | ||
805ec833 MW |
1032 | 2014-11-27 Mark Wielaard <mjw@redhat.com> |
1033 | ||
1034 | * Makefile.am (libelf.so): Use textrel_check. | |
1035 | ||
f62658f7 MW |
1036 | 2014-11-23 Mark Wielaard <mjw@redhat.com> |
1037 | ||
1038 | * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Change signed | |
1039 | overflow check to unsigned. | |
1040 | ||
51abc748 MW |
1041 | 2014-11-23 Mark Wielaard <mjw@redhat.com> |
1042 | ||
1043 | * note_xlate.h (elf_cvt_note): Copy over any leftover data if | |
1044 | src != dest. The data is probably part of truncated name/desc. | |
1045 | ||
2deeb7c5 MW |
1046 | 2014-11-22 Mark Wielaard <mjw@redhat.com> |
1047 | ||
1048 | * elf_getphdrnum.c (elf_getphdrnum): Sanity check the | |
1049 | __elf_getphdrnum_rdlock result. | |
1050 | ||
9b5fa6b5 MW |
1051 | 2014-11-18 Mark Wielaard <mjw@redhat.com> |
1052 | ||
1053 | * version_xlate.h (elf_cvt_Verdef): Check for overflow. | |
1054 | (elf_cvt_Verneed): Likewise. | |
1055 | ||
5c1a45c2 MW |
1056 | 2014-11-17 Mark Wielaard <mjw@redhat.com> |
1057 | ||
1058 | * elf-knowledge.h (SECTION_STRIP_P): Check name is not NULL. | |
1059 | ||
babcdeff MW |
1060 | 2014-11-16 Mark Wielaard <mjw@redhat.com> |
1061 | ||
1062 | * elf_getshdrstrndx.c: Check there are section headers before | |
1063 | handling SHN_XINDEX. | |
1064 | ||
436275ed MW |
1065 | 2014-11-16 Mark Wielaard <mjw@redhat.com> |
1066 | ||
1067 | * elf32_getphdr.c (getphdr_wrlock): Check e_phoff isn't zero. | |
1068 | Check for too many pheaders. | |
1069 | * elf_getphdrnum.c (__elf_getphdrnum_rdlock): Check section zero | |
1070 | actually exists before handling PN_XNUM. | |
1071 | ||
8ea90b7a MW |
1072 | 2014-11-16 Mark Wielaard <mjw@redhat.com> |
1073 | ||
1074 | * gelf_getnote.c (gelf_getnote): Check padding overflow. | |
1075 | ||
502430c7 MW |
1076 | 2014-11-16 Mark Wielaard <mjw@redhat.com> |
1077 | ||
1078 | * elf_getdata.c (__libelf_set_rawdata_wrlock): Declare offset, size | |
1079 | and align as Elf64_Off and Elf64_Xword not size_t. | |
1080 | ||
df2fe503 MW |
1081 | 2014-11-14 Mark Wielaard <mjw@redhat.com> |
1082 | ||
1083 | * gelf_getnote.c (gelf_getnote): Check offset overflow. | |
1084 | ||
c50ddfca MW |
1085 | 2014-11-13 Mark Wielaard <mjw@redhat.com> |
1086 | ||
1087 | * elf_getdata.c (__libelf_set_rawdata_wrlock): Fix unsigned overflow | |
1088 | check. | |
1089 | ||
babd5b6d MW |
1090 | 2014-11-08 Mark Wielaard <mjw@redhat.com> |
1091 | ||
1092 | * elf_begin.c (__libelf_next_arhdr_wrlock): Use mempcpy not __mempcpy. | |
1093 | ||
b635b8dc MW |
1094 | 2014-11-07 Mark Wielaard <mjw@redhat.com> |
1095 | ||
1096 | * elf_begin.c (file_read_elf): Correct sh_size check. | |
1097 | * elf_getdata.c (__libelf_set_rawdata_wrlock): Check for unsigned | |
1098 | overflow. | |
1099 | ||
237188e4 PM |
1100 | 2014-09-10 Petr Machata <pmachata@redhat.com> |
1101 | ||
1102 | * elf_begin (read_unmmaped_file): Call __libelf_seterrno if the | |
1103 | file is unreadable. | |
1104 | ||
16e2d351 MW |
1105 | 2014-07-07 Mark Wielaard <mjw@redhat.com> |
1106 | ||
1107 | * elf.h: Update from glibc. | |
1108 | ||
32324794 MW |
1109 | 2014-04-13 Mark Wielaard <mjw@redhat.com> |
1110 | ||
1111 | * Makefile.am: Remove !MUDFLAP conditions. | |
1112 | * elf_begin.c (read_file): Don't clear use_mmap when _MUDFLAP is | |
1113 | defined. | |
1114 | * elf_update.c (write_file): Remove _MUDFLAP condition. | |
1115 | ||
a9039623 JJ |
1116 | 2014-01-17 Jakub Jelinek <jakub@redhat.com> |
1117 | Roland McGrath <roland@redhat.com> | |
1118 | ||
1119 | * libelfP.h (INVALID_NDX): Define. | |
1120 | * gelf_getdyn.c (gelf_getdyn): Use it. Remove ndx < 0 test if any. | |
1121 | * gelf_getlib.c (gelf_getlib): Likewise. | |
1122 | * gelf_getmove.c (gelf_getmove): Likewise. | |
1123 | * gelf_getrel.c (gelf_getrel): Likewise. | |
1124 | * gelf_getrela.c (gelf_getrela): Likewise. | |
1125 | * gelf_getsym.c (gelf_getsym): Likewise. | |
1126 | * gelf_getsyminfo.c (gelf_getsyminfo): Likewise. | |
1127 | * gelf_getsymshndx.c (gelf_getsymshndx): Likewise. | |
1128 | * gelf_getversym.c (gelf_getversym): Likewise. | |
1129 | * gelf_update_dyn.c (gelf_update_dyn): Likewise. | |
1130 | * gelf_update_lib.c (gelf_update_lib): Likewise. | |
1131 | * gelf_update_move.c (gelf_update_move): Likewise. | |
1132 | * gelf_update_rel.c (gelf_update_rel): Likewise. | |
1133 | * gelf_update_rela.c (gelf_update_rela): Likewise. | |
1134 | * gelf_update_sym.c (gelf_update_sym): Likewise. | |
1135 | * gelf_update_syminfo.c (gelf_update_syminfo): Likewise. | |
1136 | * gelf_update_symshndx.c (gelf_update_symshndx): Likewise. | |
1137 | * gelf_update_versym.c (gelf_update_versym): Likewise. | |
1138 | ||
720383c5 JJ |
1139 | 2014-01-17 Jakub Jelinek <jakub@redhat.com> |
1140 | ||
1141 | * elf32_getphdr.c (elfw2(LIBELFBITS,getphdr)): Check if program header | |
1142 | table fits into object's bounds. | |
1143 | * elf_getshdrstrndx.c (elf_getshstrndx): Add elf->start_offset to | |
1144 | elf->map_address. Check if first section header fits into object's | |
1145 | bounds. | |
1146 | * elf32_getshdr.c (elfw2(LIBELFBITS,getshdr)): | |
1147 | Check if section header table fits into object's bounds. | |
1148 | * elf_begin.c (get_shnum): Ensure section headers fits into | |
1149 | object's bounds. | |
1150 | (file_read_elf): Make sure scncnt is small enough to allocate both | |
1151 | ElfXX_Shdr and Elf_Scn array. Make sure section and program header | |
1152 | tables fit into object's bounds. Avoid memory leak on failure. | |
1153 | * elf_newscn.c (elf_newscn): Check for overflow. | |
1154 | * elf32_updatefile.c (__elfw2(LIBELFBITS,updatemmap)): Likewise. | |
1155 | (__elfw2(LIBELFBITS,updatefile)): Likewise. | |
1156 | * elf32_newphdr.c (elfw2(LIBELFBITS,newphdr)): Likewise. | |
1157 | * elf_getarsym.c (elf_getarsym): Likewise. | |
1158 | ||
3ba50403 MW |
1159 | 2013-11-08 Mark Wielaard <mjw@redhat.com> |
1160 | ||
1161 | * elf32_updatefile.c (elfXX_updatemmap): Only memcpy ehdr when not | |
1162 | already directly mmapped. | |
1163 | ||
88ad5ddb MW |
1164 | 2013-11-05 Mark Wielaard <mjw@redhat.com> |
1165 | ||
1166 | * elf32_updatefile.c (elfXX_updatefile): Copy all section headers | |
1167 | if elf->flags dirty. | |
1168 | ||
a45c8043 MF |
1169 | 2013-11-01 Michael Forney <mforney@mforney.org> |
1170 | ||
1171 | * Makefile.am: Use READELF. | |
1172 | ||
acf12679 PM |
1173 | 2013-10-01 Petr Machata <pmachata@redhat.com> |
1174 | ||
1175 | * elf.h: Update from glibc. | |
1176 | ||
49a1a381 PM |
1177 | 2013-06-17 Petr Machata <pmachata@redhat.com> |
1178 | ||
1179 | * elf.h: Update from glibc. | |
1180 | ||
e0b4385b NK |
1181 | 2013-08-28 Namhyung Kim <namhyung@gmail.com> |
1182 | ||
1183 | * gelf.h (gelf_fsize): Fix typo in comment. | |
1184 | ||
d0509d49 MW |
1185 | 2013-08-28 Mark Wielaard <mjw@redhat.com> |
1186 | ||
1187 | * gelf_getauxv.c (gelf_getauxv): Add missing whitespace. | |
1188 | ||
4f017daa MW |
1189 | 2013-08-27 Mark Wielaard <mjw@redhat.com> |
1190 | ||
1191 | * gelf_getauxv.c (gelf_getauxv): Remove unnecessary casts to char *. | |
1192 | ||
617f8ea8 KR |
1193 | 2013-08-25 Kurt Roeckx <kurt@roeckx.be> |
1194 | ||
1195 | * gelf_getauxv.c (gelf_getauxv): Use memcpy instead of pointer | |
1196 | dereference to avoid alignment problems. | |
1197 | ||
99d9db00 RM |
1198 | 2013-01-07 Roland McGrath <roland@hack.frob.com> |
1199 | ||
6722a667 RM |
1200 | * elf_getarsym.c (elf_getarsym): Copy FILE_DATA into stack space if it |
1201 | would be unaligned and !ALLOW_UNALIGNED. | |
1202 | ||
99d9db00 RM |
1203 | * elf_getarsym.c (read_number_entries): Use memcpy instead of pointer |
1204 | dereference so as not to assume the field is naturally aligned. | |
1205 | ||
9312cb5e PM |
1206 | 2012-09-17 Petr Machata <pmachata@redhat.com> |
1207 | ||
1208 | * elf.h: Update from glibc. | |
1209 | ||
d83f1324 RM |
1210 | 2012-08-16 Roland McGrath <roland@hack.frob.com> |
1211 | ||
1212 | * elf.h: Update from glibc. | |
1213 | ||
2105022c MW |
1214 | 2012-08-14 Mark Wielaard <mjw@redhat.com> |
1215 | ||
1216 | * elf32_checksum.c (ebl_debugscn_p): Removed unused define and | |
1217 | confusing outdated comment. | |
1218 | ||
e1873141 PM |
1219 | 2012-08-01 Petr Machata <pmachata@redhat.com> |
1220 | ||
1221 | * elf_getarsym (read_number_entries): New function. | |
1222 | (elf_getarsym): Handle 64-bit symbol table, stored in special | |
1223 | entry named "/SYM64/". | |
1224 | * elf_begin.c (__libelf_next_arhdr_wrlock): Don't reject archive | |
1225 | because it contains 64-bit symbol table. | |
1226 | ||
030f626f MW |
1227 | 2012-07-19 Mark Wielaard <mjw@redhat.com> |
1228 | ||
1229 | * elf32_getshdr.c (load_shdr_wrlock): Add elf->flags & ELF_F_MALLOCED | |
1230 | to asserts. | |
1231 | ||
bc0f7450 PM |
1232 | 2012-07-17 Petr Machata <pmachata@redhat.com> |
1233 | ||
1234 | * elf32_xlatetom.c (elfw2(LIBELFBITS, xlatetom)): Do not check for | |
1235 | integer number of records in case of ELF_T_NHDR. | |
1236 | ||
191d1f0b MW |
1237 | 2012-04-02 Mark Wielaard <mjw@redhat.com> |
1238 | ||
1239 | * elf32_offscn.c: Do not match SHT_NOBITS sections at OFFSET unless | |
1240 | there are no nonempty sections at that offset. | |
1241 | ||
8e8f0be5 RM |
1242 | 2012-03-21 Roland McGrath <roland@hack.frob.com> |
1243 | ||
1244 | * elf-knowledge.h (SECTION_STRIP_P): Remove < SHT_NUM check. | |
1245 | ||
49550161 MW |
1246 | 2011-02-26 Mark Wielaard <mjw@redhat.com> |
1247 | ||
1248 | * elf_end.c (elf_end): Call rwlock_unlock before rwlock_fini. | |
1249 | ||
f1ccc410 JK |
1250 | 2011-01-05 Jan Kratochvil <jan.kratochvil@redhat.com> |
1251 | ||
1252 | * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Fix off64_t overflow | |
1253 | when MAXIMUM_SIZE == ~0. | |
1254 | ||
b088f216 RM |
1255 | 2010-08-18 Roland McGrath <roland@redhat.com> |
1256 | ||
1257 | * gelf_fsize.c (__libelf_type_sizes): Add entries for ELF_T_LIB | |
1258 | and ELF_T_GNUHASH. | |
1259 | Reported by Mark Hatle <mark.hatle@windriver.com>. | |
1260 | ||
1261 | * exttypes.h: Add cases for ElfNN_Lib. | |
1262 | Reported by Mark Hatle <mark.hatle@windriver.com>. | |
1263 | ||
d7635784 UD |
1264 | 2010-06-14 Ulrich Drepper <drepper@redhat.com> |
1265 | ||
1266 | * gelf_update_shdr.c: Implicitly set ELF_F_DIRTY bit. | |
1267 | * gelf_update_phdr.c: Likewise. | |
1268 | * gelf_update_ehdr.c: Likewise. | |
1269 | ||
957072c1 RM |
1270 | 2010-04-14 Roland McGrath <roland@redhat.com> |
1271 | ||
1272 | * elf32_getphdr.c: Check for e_phoff/size outside the file bounds. | |
1273 | * elf_begin.c (file_read_elf): Don't set .phdr here. | |
1274 | ||
f35dfa89 | 1275 | 2010-04-13 Roland McGrath <roland@redhat.com> |
d80f0b2c | 1276 | |
f35dfa89 | 1277 | * elf.h: Update from glibc. |
d80f0b2c | 1278 | |
3b495d8e RM |
1279 | 2010-04-06 Roland McGrath <roland@redhat.com> |
1280 | ||
1281 | * elf_error.c (ELF_E_FD_MISMATCH_IDX): Avoid nonobvious abbreviation | |
1282 | in error message. | |
1283 | ||
d7b12c62 PM |
1284 | 2010-04-01 Petr Machata <pmachata@redhat.com> |
1285 | ||
1286 | * elf_getdata.c (__elf_getdata_rdlock): Initialize data.s for data | |
1287 | that do not need a conversion. | |
1288 | ||
331a186d RM |
1289 | 2010-03-11 Roland McGrath <roland@redhat.com> |
1290 | ||
1291 | * elf.h: Update from glibc. | |
1292 | ||
f7a9a9e4 UD |
1293 | 2010-03-04 Ulrich Drepper <drepper@redhat.com> |
1294 | ||
1295 | * elf.h: Update from glibc. | |
1296 | ||
429502fd RM |
1297 | 2010-02-17 Roland McGrath <roland@redhat.com> |
1298 | ||
1299 | * elf_begin.c (file_read_elf): Leave section rawdata_base and | |
1300 | data_base pointers null when [sh_offset,sh_size) points outside | |
1301 | the mapped file. | |
1302 | ||
22359e26 RM |
1303 | 2010-02-15 Roland McGrath <roland@redhat.com> |
1304 | ||
1305 | * Makefile.am: Use config/eu.am for common stuff. | |
1306 | ||
6fd3cd10 RM |
1307 | 2010-01-07 Roland McGrath <roland@redhat.com> |
1308 | ||
1309 | * elf32_getphdr.c: Use __elf_getphdrnum_rdlock. | |
1310 | * gelf_getphdr.c: Likewise. | |
1311 | * gelf_update_phdr.c: Likewise. | |
1312 | * elf32_updatefile.c (__elf32_updatemmap, __elf32_updatefile): Likewise. | |
1313 | * elf32_updatenull.c (__elf32_updatenull_wrlock): Likewise. | |
1314 | * elf32_newphdr.c: Clear section 0's sh_info when resetting e_phnum. | |
1315 | If COUNT is too large, use store PN_XNUM instead and set sh_info. | |
1316 | * elf_begin.c (file_read_elf): Always allocate space we can use later | |
1317 | for section 0 if doing RDWR. | |
1318 | ||
1319 | * elf_getphdrnum.c: New file. | |
1320 | * Makefile.am (libelf_a_SOURCES): Add it. | |
1321 | * libelf.h: Declare elf_getphdrnum. | |
1322 | * libelfP.h: Declare __elf_getphdrnum_rdlock. | |
1323 | * libelf.map (ELFUTILS_1.6): New set, add elf_getphdrnum. | |
1324 | ||
1325 | * elf.h: Update from glibc. | |
1326 | ||
2cfe33f4 LR |
1327 | 2009-10-23 Lubomir Rintel <lkundrak@v3.sk> |
1328 | ||
1329 | * elf32_updatefile.c (fill_mmap): When starting past shdr_end, start | |
1330 | filling from section start, not shdr_end. | |
1331 | ||
0c6db7e3 RM |
1332 | 2009-11-10 Roland McGrath <roland@redhat.com> |
1333 | ||
1334 | * elf_readall.c (__libelf_readall): Fetch file size if not yet known. | |
1335 | ||
c6f5e920 MW |
1336 | 2009-11-06 Mark Wielaard <mjw@redhat.com> |
1337 | ||
1338 | * elf_next.c (elf_next): Mark the archive header as unusable when | |
1339 | there is no next ar element. | |
1340 | ||
e2fedf4a MW |
1341 | 2009-08-12 Mark Wielaard <mjw@redhat.com> |
1342 | ||
1343 | * Makefile.am (libelf.so): Use -Wl,-z,defs not -defs. | |
1344 | ||
3117a85d UD |
1345 | 2009-07-26 Ulrich Drepper <drepper@redhat.com> |
1346 | ||
1347 | * elf.h: Update from glibc. | |
1348 | ||
fa1d4447 LR |
1349 | 2009-07-21 Ulrich Drepper <drepper@redhat.com> |
1350 | ||
1351 | * elf32_updatefile.c (__elfXX_updatemmap): Fix handling of gaps between | |
1352 | sections. Patch by Lubomir Rintel <lkundrak@v3.sk>. | |
1353 | ||
9dedfccc RM |
1354 | 2009-07-08 Roland McGrath <roland@redhat.com> |
1355 | ||
1356 | * libelfP.h (struct Elf): Remove unused ar.has_index field. | |
1357 | Reorder various members for optimal packing. | |
1358 | ||
70c442ca UD |
1359 | 2009-07-08 Ulrich Drepper <drepper@redhat.com> |
1360 | ||
1361 | * elf.h: Update from glibc. | |
1362 | ||
f1894931 UD |
1363 | 2009-06-13 Ulrich Drepper <drepper@redhat.com> |
1364 | ||
1365 | * Makefile.am (libelf_a_SOURCES): Replace elf_getshnum.c and | |
1366 | elf_getshstrndx.c with elf_getshdrnum.c and elf_getshdrstrndx.c. | |
1367 | * elf_getshnum.c: Renamed to... | |
1368 | * elf_getshdrnum.c: ...this. Rename function and add old name as | |
1369 | alias. Likewise for internal functions with derived names. | |
1370 | * elf_getshstrndx.c: Renamed to... | |
1371 | * elf_getshdrstrndx.c: ...this. Rename function and add old name as | |
1372 | alias. Likewise for internal functions with derived names. | |
1373 | * libelf.h: Add prototypes for new names. Make old names as | |
1374 | deprecated. | |
1375 | * libelfP.h: Rename internal function prototypes. | |
1376 | * libelf.map: Export for names. | |
1377 | * elf32_checksum.c: Don't use deprecated functions. | |
1378 | * elf32_getshdr.c: Likewise. | |
1379 | ||
b47d290a UD |
1380 | 2009-06-01 Ulrich Drepper <drepper@redhat.com> |
1381 | ||
1382 | * elf.h: Update from glibc. | |
1383 | ||
eb9ba470 RM |
1384 | 2009-04-14 Roland McGrath <roland@redhat.com> |
1385 | ||
1386 | * elf.h: Update from glibc. | |
1387 | ||
d5ff6678 RM |
1388 | 2009-04-01 Roland McGrath <roland@redhat.com> |
1389 | ||
1390 | * elf.h: Update from glibc. | |
1391 | ||
18fb6398 UD |
1392 | 2009-02-10 Ulrich Drepper <drepper@redhat.com> |
1393 | ||
fe31538f | 1394 | * elf32_updatefile.c (updatefile): For the zeroth section we still |
18fb6398 UD |
1395 | have to copy the section header. |
1396 | ||
d11522f0 UD |
1397 | 2009-02-01 Ulrich Drepper <drepper@redhat.com> |
1398 | ||
1399 | * elf_strptr.c: Add comment re possible problem. | |
1400 | ||
119f4acb UD |
1401 | 2009-01-26 Ulrich Drepper <drepper@redhat.com> |
1402 | ||
1403 | * elf32_updatenull.c (updatenull_wrlock): Fix comment of | |
1404 | ELF_F_LAYOUT behaviour re section header table. | |
1405 | ||
5ece8096 UD |
1406 | 2009-01-22 Ulrich Drepper <drepper@redhat.com> |
1407 | ||
1408 | * elf32_updatefile.c (__elfXX_updatemmap): Fill the gap between | |
1409 | sections even if only the section at the start of the gap has been | |
1410 | changed. | |
1411 | (__elfXX_updatefile): Likewise. | |
1412 | ||
07ba31fc UD |
1413 | 2009-01-21 Ulrich Drepper <drepper@redhat.com> |
1414 | ||
5ece8096 | 1415 | * elf32_updatefile.c (__elfXX_updatemmap): Skip most of the loop to |
23fba758 UD |
1416 | handle sections for NOBITS sections. |
1417 | (elfXX_updatefile): Likewise. | |
1418 | ||
5ece8096 | 1419 | * elf32_updatefile.c (__elfXX_updatemmap): When skipping non-NOBITS |
07ba31fc UD |
1420 | sections we haven't loaded, update last_position based on scn_start, |
1421 | not based on old value. Don't run the loop for the dummy section 0. | |
1422 | (elfXX_updatefile): Don't run the loop for the dummy section 0. | |
1423 | ||
7e678fa3 UD |
1424 | 2009-01-10 Ulrich Drepper <drepper@redhat.com> |
1425 | ||
43aafe64 UD |
1426 | * libelfP.h (_): We only have one translation domain, elfutils. |
1427 | ||
7e678fa3 UD |
1428 | * Makefile.am: Use USE_LOCKS instead of USE_TLS. |
1429 | * elf_error.c: Always use __thread. Remove all !USE_TLS code. | |
1430 | ||
315ebd52 RM |
1431 | 2009-01-04 Roland McGrath <roland@redhat.com> |
1432 | ||
1433 | * note_xlate.h (elf_cvt_note): Don't examine a size too small to | |
1434 | container a note header. | |
1435 | ||
970a1663 RM |
1436 | 2008-12-11 Roland McGrath <roland@redhat.com> |
1437 | ||
75b07c00 RM |
1438 | * elf32_updatefile.c (__elfw2(LIBELFBITS,updatemmap)): Handle |
1439 | placement offset going backwards, for out-of-order or overlapping | |
1440 | (bogus) sh_offset layouts. It's a dumb use, but should not crash. | |
1441 | (__elfw2(LIBELFBITS,updatefile)): Likewise. | |
1442 | Fixes RHBZ#476136. | |
1443 | ||
970a1663 RM |
1444 | * libelf.h (Elf_Data): Whitespace fix. |
1445 | ||
d3533280 RM |
1446 | 2008-12-10 Roland McGrath <roland@redhat.com> |
1447 | ||
1448 | * elf_getarhdr.c (elf_getarhdr): Fix missing rename in last change. | |
1449 | ||
02f66452 UD |
1450 | 2008-10-22 Petr Machata <pmachata@redhat.com> |
1451 | ||
1452 | * elf_rawfile.c (elf_rawfile): Lock around elf-> references. | |
1453 | ||
1454 | 2008-10-21 Petr Machata <pmachata@redhat.com> | |
1455 | ||
1456 | * libelfP.h: Rename getehdr_rdlock to getehdr_wrlock. | |
1457 | * elf32_getehdr.c (getehdr_rdlock): Move the code to new function | |
1458 | getehdr_impl and make it a wrapper. Rename to getehdr_wrlock. | |
1459 | (getehdr_impl): Guard elf->class init with wrlock. | |
1460 | (getehdr): Also make it a wrapper of getehdr_impl. | |
1461 | * elf32_updatenull.c (updatenull_wrlock): Call getehdr_wrlock. | |
1462 | ||
1463 | 2008-10-20 Petr Machata <pmachata@redhat.com> | |
1464 | ||
1465 | * elf_getdata_rawchunk.c (elf_getdata_rawchunk): Lock around the | |
1466 | code that reads mutable elf state. Relock to write lock to chain | |
1467 | the new chunk on the elf rawchunks list. | |
1468 | ||
1469 | 2008-10-20 Petr Machata <pmachata@redhat.com> | |
1470 | ||
1471 | * elf32_checksum.c (checksum): Place a lock around the code that | |
1472 | processes data. Make it wrlock if the code needs to xlate the | |
1473 | data before processing. | |
1474 | ||
1475 | 2008-10-16 Petr Machata <pmachata@redhat.com> | |
1476 | ||
1477 | * elf_begin.c | |
1478 | (__libelf_next_arhdr): Rename to __libelf_next_arhdr_wrlock. | |
1479 | (dup_elf): Adjust the call. | |
1480 | (elf_begin): New local function lock_dup_elf. Relocks the elf if | |
1481 | necessary before calling dup. Call this instead of dup_elf. | |
1482 | * elf_getarhdr.c | |
1483 | (elf_getarhdr): Lock before calling __libelf_next_arhdr_wrlock. | |
1484 | * elf_next.c (elf_next): Likewise. | |
1485 | * elf_rand.c (elf_rand): Likewise. | |
1486 | ||
1487 | 2008-10-14 Petr Machata <pmachata@redhat.com> | |
1488 | ||
1489 | * elf_getdata.c (__elf_getdata_rdlock): Lock before converting. | |
1490 | ||
a845f68b RM |
1491 | 2008-11-26 Roland McGrath <roland@redhat.com> |
1492 | ||
1493 | * elf.h: Update from glibc. | |
1494 | ||
1495 | 2008-10-06 Roland McGrath <roland@redhat.com> | |
1496 | ||
1497 | * elf_getarhdr.c (elf_getarhdr): Return NULL when passed NULL. | |
1498 | ||
9cf28e4f RM |
1499 | 2008-08-27 Roland McGrath <roland@redhat.com> |
1500 | ||
1501 | * elf_begin.c (get_shnum): Avoid misaligned reads for matching endian. | |
1502 | ||
1503 | * libelfP.h [!ALLOW_UNALIGNED] (__libelf_type_align): Fix CLASS index. | |
1504 | ||
b4d6f0f8 | 1505 | 2008-08-25 Roland McGrath <roland@redhat.com> |
f729d778 | 1506 | |
b4d6f0f8 RM |
1507 | * Makefile.am (libelf_so_LDLIBS): New variable. |
1508 | (libelf.so): Use it in the link. | |
f729d778 | 1509 | |
b4d6f0f8 | 1510 | 2008-08-21 Petr Machata <pmachata@redhat.com> |
d56e232f | 1511 | |
b4d6f0f8 RM |
1512 | * elf_getdata.c, libelfP.h |
1513 | (__elf_getdata_internal): Rename to __elf_getdata_rdlock. | |
1514 | (__libelf_set_rawdata_wrlock): New function. | |
1515 | (__libelf_set_rawdata): Make it a wrapper that calls *_wrlock. | |
1516 | * elf32_updatenull.c, libelfP.h | |
1517 | (__elfNN_updatenull): Rename to __elfNN_updatenull_wrlock. | |
d56e232f | 1518 | |
b4d6f0f8 | 1519 | 2008-08-21 Petr Machata <pmachata@redhat.com> |
d56e232f | 1520 | |
d56e232f | 1521 | * elf32_getphdr.c, libelfP.h |
b4d6f0f8 RM |
1522 | (__elfNN_getphdr_internal): Drop. Move __elfNN_getphdr_internal |
1523 | code to __elfNN_getphdr_wrlock. | |
1524 | (__elfNN_getphdr_rdlock, __elfNN_getphdr_wrlock): New functions. | |
1525 | (__elfNN_getphdr_rdlock, __elfNN_getphdr_wrlock): Make these | |
1526 | wrappers of getphdr_impl. | |
d56e232f | 1527 | |
b4d6f0f8 | 1528 | 2008-08-21 Petr Machata <pmachata@redhat.com> |
d56e232f | 1529 | |
d56e232f | 1530 | * elf32_getehdr.c, libelfP.h |
b4d6f0f8 RM |
1531 | (__elfNN_getehdr_internal): Rename to __elfNN_getehdr_rdlock. |
1532 | * gelf_getehdr, libelfP.h: | |
1533 | (__gelf_getehdr_internal): Rename to __gelf_getehdr_rdlock. | |
1534 | ||
1535 | 2008-08-21 Petr Machata <pmachata@redhat.com> | |
1536 | ||
1537 | * elf32_getshdr.c | |
1538 | (__elfNN_getshdr_internal): Drop. | |
02f66452 | 1539 | (load_shdr_wrlock, scn_valid): New functions, contain bits of |
b4d6f0f8 RM |
1540 | behaviour from __elfNN_getshdr_internal. |
1541 | (__elfNN_getshdr_rdlock, __elfNN_getshdr_wrlock): Replacements for | |
1542 | dropped _internal functions above. | |
1543 | * elf_getshnum.c | |
1544 | (__elf_getshnum_internal): Rename to __elf_getshnum_rdlock. | |
d56e232f UD |
1545 | |
1546 | 2008-08-04 Petr Machata <pmachata@redhat.com> | |
1547 | ||
1548 | * libelfP.h (RWLOCK_RDLOCK, RWLOCK_WRLOCK, RWLOCK_UNLOCK): New macros. | |
1549 | ||
1d8bb25c RM |
1550 | 2008-07-28 Roland McGrath <roland@redhat.com> |
1551 | ||
1552 | * elf.h: Update from glibc. | |
1553 | ||
13b69609 RM |
1554 | 2008-03-31 Roland McGrath <roland@redhat.com> |
1555 | ||
1556 | * elf32_offscn.c: Make sure shdrs have been read in. | |
1557 | ||
059c83e5 RM |
1558 | 2008-02-19 Roland McGrath <roland@redhat.com> |
1559 | ||
1560 | * elf.h: Update from glibc. | |
1561 | ||
1562 | 2008-02-08 Roland McGrath <roland@redhat.com> | |
1563 | ||
1564 | * elf.h: Update from glibc. | |
1565 | ||
89759c76 UD |
1566 | 2008-01-31 Ulrich Drepper <drepper@redhat.com> |
1567 | ||
1568 | * elf_strptr.c (elf_strptr): Don't fail if the ELF file is currently | |
1569 | under construction and no raw data can be read from disk. | |
1570 | ||
059c83e5 RM |
1571 | 2008-01-30 Roland McGrath <roland@redhat.com> |
1572 | ||
1573 | * elf.h: Update from glibc. | |
1574 | ||
1575 | 2008-01-26 Roland McGrath <roland@redhat.com> | |
1576 | ||
1577 | * elf_begin.c (__libelf_next_arhdr): Rewrite conversions using a macro. | |
1578 | Fixes various pastos in wrong type in sizeof, wrong string parsed. | |
1579 | ||
51b3032e RM |
1580 | 2008-01-20 Roland McGrath <roland@redhat.com> |
1581 | ||
1582 | * elf_getaroff.c: Calculate from start_offset, instead of using | |
1583 | parent's state.ar.offset field. | |
1584 | ||
e219f1c1 UD |
1585 | 2008-01-08 Roland McGrath <roland@redhat.com> |
1586 | ||
1587 | * Makefile.am (euinclude): Variable removed. | |
1588 | (pkginclude_HEADERS): Set this instead of euinclude_HEADERS. | |
1589 | ||
1590 | 2008-01-03 Roland McGrath <roland@redhat.com> | |
1591 | ||
1592 | * common.h: Add __attribute__ ((unused)) to static functions. | |
1593 | ||
3cbdd387 UD |
1594 | 2007-12-20 Ulrich Drepper <drepper@redhat.com> |
1595 | ||
1596 | * Makefile.am (libelf_a_SOURCES): Add elf_scnshndx. | |
1597 | * libelfP.h (struct Elf_Scn): Add shndx_index field. | |
1598 | Declare __elf_scnshndx_internal. | |
1599 | * elf32_getshdr.c: Record location of extended section header. | |
1600 | * elf_begin.c (file_read_elf): Likewise. | |
1601 | * elf_scnshndx.c: New file. | |
1602 | * libelf.h: Declare elf_scnshndx. | |
1603 | * libelf.map: Add elf_scnshndx to version ELFUTILS_1.4. | |
1604 | ||
1a2e8f4f RM |
1605 | 2007-11-12 Roland McGrath <roland@redhat.com> |
1606 | ||
1607 | * libelf.h: Replace off64_t with loff_t throughout. | |
1608 | Only that type name is unconditionally defined by <sys/types.h> | |
1609 | ||
2449d7f7 RM |
1610 | 2007-11-03 Roland McGrath <roland@redhat.com> |
1611 | ||
1612 | * libelf.h (Elf_Data): Comment fix. | |
1613 | ||
e4c22ea0 RM |
1614 | 2007-10-18 Roland McGrath <roland@redhat.com> |
1615 | ||
1616 | * elf.h: Update from glibc. | |
1617 | ||
b597dfad UD |
1618 | 2007-10-07 Roland McGrath <roland@redhat.com> |
1619 | ||
1620 | * elf_begin.c (__libelf_next_arhdr): Fix fencepost error and wrong | |
1621 | member access in terminating name with no trailing /. Trim trailing | |
1622 | spaces when there is no /. | |
1623 | ||
59ea7f33 RM |
1624 | 2007-10-04 Roland McGrath <roland@redhat.com> |
1625 | ||
1626 | * elf_end.c (elf_end): Don't free ELF->state.ar.ar_sym when it's -1l. | |
1627 | ||
1628 | 2007-10-03 Roland McGrath <roland@redhat.com> | |
1629 | ||
1630 | * libelf.h (Elf_Data): Use off64_t for d_off. | |
1631 | (Elf_Arhdr): Use off64_t for ar_size. | |
1632 | (elf_update, elf_getbase, elf_getaroff): Return off64_t. | |
1633 | ||
1634 | * gelf_rawchunk.c: File removed. | |
1635 | * gelf_freechunk.c: File removed. | |
1636 | * Makefile.am (libelf_a_SOURCES): Remove them. | |
1637 | * libelf.map (ELFUTILS_1.0): Remove exports. | |
1638 | * gelf.h: Remove decls. | |
1639 | ||
1640 | * elf_getdata_rawchunk.c: New file. | |
1641 | * Makefile.am (libelf_a_SOURCES): Add it. | |
1642 | * libelf.map (ELFUTILS_1.3): Add elf_getdata_rawchunk. | |
1643 | * libelf.h: Declare it. | |
1644 | * libelfP.h (Elf_Data_Chunk): New type. | |
1645 | (struct Elf.elf): New member `rawchunks'. | |
1646 | * elf_end.c (elf_end): Free recorded rawchunk buffers. | |
1647 | ||
c76f0b05 RM |
1648 | 2007-08-24 Roland McGrath <roland@redhat.com> |
1649 | ||
1650 | * gelf_getnote.c: New file. | |
1651 | * Makefile.am (libelf_a_SOURCES): Add it. | |
1652 | * gelf.h: Declare gelf_getnote. | |
1653 | * libelf.map (ELFUTILS_1.3): Add gelf_getnote. | |
1654 | ||
1655 | * libelfP.h (NOTE_ALIGN): New macro. | |
1656 | * note_xlate.h: New file. | |
1657 | * Makefile.am (noinst_HEADERS): Add it. | |
1658 | * gelf_xlate.c: Include it. | |
1659 | (__elf_xfctstom): Use elf_cvt_note. | |
1660 | * elf_getdata.c (shtype_map, __libelf_type_align): Handle SHT_NOTE. | |
1661 | (__libelf_set_rawdata): Likewise. | |
1662 | ||
cb6d8650 RM |
1663 | 2007-08-19 Roland McGrath <roland@redhat.com> |
1664 | ||
1665 | * gelf_update_auxv.c: New file. | |
1666 | * gelf_getauxv.c: New file. | |
1667 | * Makefile.am (libelf_a_SOURCES): Add them. | |
1668 | * gelf.h: Declare gelf_getauxv, gelf_update_auxv. | |
1669 | * libelf.map (ELFUTILS_1.3): New set, inherits fom ELFUTILS_1.2. | |
1670 | Export gelf_getauxv, gelf_update_auxv. | |
1671 | ||
1672 | * libelf.h (Elf_Type): Add ELF_T_AUXV. | |
1673 | * abstract.h: Add auxv_t entries. | |
1674 | * exttypes.h: Likewise. | |
1675 | * gelf_xlate.h: Likewise. | |
1676 | * gelf_xlate.c (__elf_xfctstom): Add ELF_T_AUXV entries. | |
1677 | * gelf_fsize.c (__libelf_type_sizes): Likewise. | |
1678 | ||
099dd527 RM |
1679 | 2007-08-12 Roland McGrath <roland@redhat.com> |
1680 | ||
1681 | * elf32_updatefile.c (compare_sections): Sort secondarily on sh_size, | |
1682 | and only tertiarily on index. | |
1683 | ||
87d4780b RM |
1684 | 2007-07-09 Roland McGrath <roland@redhat.com> |
1685 | ||
1686 | * elf.h: Update from glibc. | |
1687 | ||
4be15243 RM |
1688 | 2007-04-22 Roland McGrath <roland@redhat.com> |
1689 | ||
1690 | * elf.h: Update from glibc. | |
1691 | ||
c07fbb3f UD |
1692 | 2007-03-18 Roland McGrath <roland@redhat.com> |
1693 | ||
1694 | * elf_begin.c (get_shnum): Fix test for e_shoff being out of bounds. | |
1695 | Return zero when the section headers do not fit within MAXSIZE. | |
1696 | ||
1697 | 2007-03-09 Roland McGrath <roland@redhat.com> | |
1698 | ||
1699 | * libelfP.h (LIBELF_EV_IDX): New macro. | |
1700 | (__libelf_type_align): New macro. | |
1701 | [! ALLOW_UNALIGNED]: Declare __libc_type_aligns array. | |
1702 | * elf_getdata.c (shtype_map): Convert to just Elf_Type[][]. | |
1703 | (convert_data, __libelf_set_rawdata): Use that, __libelf_type_align, | |
1704 | and __libelf_type_sizes, in place of old table. | |
1705 | (__libc_type_aligns): New const variable. | |
1706 | ||
ce0bdb6e UD |
1707 | 2007-02-04 Ulrich Drepper <drepper@redhat.com> |
1708 | ||
1709 | * Makefile (libelf.so): Build with -z relro. | |
1710 | ||
1711 | * elf_begin.c (read_file): When using ELF_C_READ_MMAP use MAP_PRIVATE. | |
1712 | ||
ecf2b124 UD |
1713 | 2007-01-30 Ulrich Drepper <drepper@redhat.com> |
1714 | ||
1715 | * nlist.c: Close file descriptor before returning. | |
1716 | ||
aa915fd3 UD |
1717 | 2007-01-20 Roland McGrath <roland@redhat.com> |
1718 | ||
1719 | * gnuhash_xlate.h (elf_cvt_gnuhash): Fix fence-post error so we | |
1720 | convert the final word. | |
1721 | ||
1722 | * elf32_getshdr.c: Don't byteswap shdr fields when EI_DATA matches | |
1723 | MY_ELFDATA on !ALLOW_UNALIGNED machines. | |
1724 | ||
1725 | 2007-01-18 Roland McGrath <roland@redhat.com> | |
1726 | ||
1727 | * gelf_rawchunk.c (gelf_rawchunk): Clear RESULT pointer after freeing | |
1728 | it on read error. | |
1729 | ||
8190db6a RM |
1730 | 2006-10-13 Roland McGrath <roland@redhat.com> |
1731 | ||
56bc0b83 | 1732 | * elf32_updatenull.c: Look for and accept phdr also for ET_CORE. |
8190db6a RM |
1733 | * elf_error.c (msgstr): Change ELF_E_INVALID_PHDR string. |
1734 | ||
c373d850 RM |
1735 | 2006-08-29 Roland McGrath <roland@redhat.com> |
1736 | ||
1737 | * elf32_getphdr.c: Don't byteswap phdr fields when EI_DATA matches | |
1738 | MY_ELFDATA on !ALLOW_UNALIGNED machines. | |
1739 | Reported by Christian Aichinger <Greek0@gmx.net>. | |
1740 | ||
1741 | * Makefile.am (CLEANFILES): Add libelf.so.$(VERSION). | |
1742 | ||
231c590f UD |
1743 | 2006-08-08 Ulrich Drepper <drepper@redhat.com> |
1744 | ||
1745 | * elf.h (DT_VALNUM): Update. | |
1746 | (DT_ADDRNUM): Likewise. | |
1747 | ||
077c65f3 UD |
1748 | 2006-07-12 Ulrich Drepper <drepper@redhat.com> |
1749 | ||
1750 | * elf32_updatefile.c: Adjust for internal_function_def removal. | |
1751 | * elf32_updatenull.c: Likewise. | |
1752 | * elf_begin.c: Likewise. | |
1753 | * elf_getdata.c: Likewise. | |
1754 | ||
8ae58142 UD |
1755 | 2006-07-11 Ulrich Drepper <drepper@redhat.com> |
1756 | ||
1757 | * libelf.h: Define ELF_T_GNUHASH. | |
1758 | * elf_getdata.c (TYPEIDX): Handle SHT_GNU_HASH. | |
1759 | (shtype_map): Add SHT_GNU_HASH entries. | |
1760 | * gelf_xlate.c (__elf_xfctstom): Add ELF_T_GNUHASH entries. | |
d315bb2d UD |
1761 | * gnuhash_xlate.h: New file. |
1762 | * Makefile.am (noinst_HEADERS): Add gnuhash_xlate.h. | |
8ae58142 | 1763 | |
28ed895f UD |
1764 | 2006-07-06 Ulrich Drepper <drepper@redhat.com> |
1765 | ||
1766 | * elf_gnu_hash.c: New file. | |
1767 | * libelf.h: Declare elf_gnu_hash. | |
1768 | * Makefile.am (libelf_a_SOURCES): Add elf_gnu_hash. | |
1769 | * libelf.map: Add elf_gnu_map for version ELFUTILS_1.2. | |
1770 | ||
1d3a64d7 RM |
1771 | 2006-06-15 Roland McGrath <roland@redhat.com> |
1772 | ||
1773 | * libelf.h (elf_getarsym): Fix comment typo. | |
1774 | Rename second parameter to be more explanatory. | |
1775 | (elf_getident, elf_rawhide): Likewise. | |
1776 | ||
f97208e0 UD |
1777 | 2006-05-28 Ulrich Drepper <drepper@redhat.com> |
1778 | ||
1779 | * elf32_updatefile.c (updatemmap): Preserve section content if | |
1780 | copying would overwrite them. | |
1781 | Fix msync paramters. | |
1782 | ||
b4379728 RM |
1783 | 2006-04-04 Roland McGrath <roland@redhat.com> |
1784 | ||
1785 | * elf32_updatefile.c (updatemmap): Handle other-endian case. | |
1786 | ||
697d8d28 UD |
1787 | 2006-04-04 Ulrich Drepper <drepper@redhat.com> |
1788 | ||
1789 | * elf32_updatefile.c (updatemmap): Cleanups. Remove shdr_dest | |
1790 | variable. Before writing sections, make a copy of the section | |
1791 | header data if necessary. Don't write section header while | |
1792 | writing the section constent, it might overwrite some sections. | |
1793 | Restore the pointer afterwards. | |
1794 | * elf32_updatenull.c (updatenull): If the offset of a section in a | |
1795 | file changed make sure we read the section so that it'll be written | |
1796 | out. | |
1797 | ||
1798 | * elf_update.c: Remove debug message. | |
1799 | ||
7747de92 RM |
1800 | 2005-12-07 Roland McGrath <roland@redhat.com> |
1801 | ||
1802 | * gelf_xlate.c [! ALLOW_UNALIGNED] (union unaligned): New type. | |
1803 | (FETCH, STORE): New macros. | |
1804 | (INLINE3): Use those to do alignment-friendly conversion. | |
1805 | ||
1806 | * elf32_getshdr.c: Include map_address and start_offset in alignment | |
1807 | calculations. | |
1808 | * elf32_getphdr.c: Likewise. | |
1809 | ||
b6405ca2 RM |
1810 | 2005-11-19 Roland McGrath <roland@redhat.com> |
1811 | ||
1812 | * elf.h: Update from glibc. | |
1813 | ||
92b85239 RM |
1814 | 2005-11-17 Roland McGrath <roland@redhat.com> |
1815 | ||
1816 | * elf.h: Update from glibc. | |
1817 | ||
fd856b58 RM |
1818 | 2005-11-10 Roland McGrath <roland@redhat.com> |
1819 | ||
1820 | * elf.h: Update from glibc. | |
1821 | ||
89757447 RM |
1822 | 2005-09-09 Roland McGrath <roland@redhat.com> |
1823 | ||
1824 | * elf_update.c (write_file): Stat the file and fchmod it after update | |
1825 | if its mode had S_ISUID or S_ISGID bits set. | |
1826 | ||
fbe998a0 UD |
1827 | 2005-08-28 Ulrich Drepper <drepper@redhat.com> |
1828 | ||
1829 | * elf32_getphdr.c: Include <system.h>. Use pread_retry instead of | |
1830 | pread. And branch prediction where useful. | |
1831 | * elf_begin.c: Likewise. | |
1832 | * elf_getdata.c: Likewise. | |
1833 | * elf_getshstrndx.c: Likewise. | |
1834 | * elf_readall.c: Likewise. | |
1835 | * gelf_rawchunk.c: Likewise. | |
1836 | * elf32_updatefile.c: Include <system.h>. Use pread_retry instead of | |
1837 | pread. And branch prediction where useful. | |
1838 | * elf_getarsym.c: Don't define pread_retry here. | |
1839 | ||
1840 | * Makefile.am: Use $(LINK) not $(CC) when creating DSO. | |
1841 | (%.os): Use COMPILE.os. | |
1842 | (COMPILE.os): Filter out gconv options. | |
1843 | ||
1844 | 2005-08-27 Ulrich Drepper <drepper@redhat.com> | |
1845 | ||
1846 | * elf_begin.c (file_read_elf): Avoid reading ELF header from file | |
1847 | again. Instead accept additional parameter which points to it if we | |
1848 | don't use mmap. | |
1849 | (get_shnum): Use passed in e_ident value as source of ELF header. | |
1850 | ||
5d83229c UD |
1851 | 2005-08-15 Ulrich Drepper <drepper@redhat.com> |
1852 | ||
e5294612 UD |
1853 | * elf_begin.c (__libelf_next_arhdr): Use TEMP_FAILURE_RETRY. |
1854 | ||
5d83229c UD |
1855 | * Makefile (libelf_a_SOURCES): Add elf_getaroff.c. |
1856 | * libelf.map: Export elf_getaroff. | |
1857 | * libelf.h: Declare elf_getaroff. | |
1858 | * elf_getaroff.c: New file. | |
1859 | ||
0f6abbbc UD |
1860 | 2005-08-13 Ulrich Drepper <drepper@redhat.com> |
1861 | ||
1862 | * elf_begin.c (get_shnum): Optimize memory handling. Always read from | |
1863 | mapped file if available. Fix access to 64-bit sh_size. Recognize | |
1864 | overflow. | |
1865 | (file_read_elf): Likewise. | |
1866 | ||
e9c4e8ec RM |
1867 | 2005-08-12 Roland McGrath <roland@redhat.com> |
1868 | ||
1869 | * elf32_offscn.c: Do not match empty sections at OFFSET unless | |
1870 | there are no nonempty sections at that offset. | |
1871 | ||
b03b0578 UD |
1872 | 2005-08-07 Ulrich Drepper <drepper@redhat.com> |
1873 | ||
1874 | * elf.h: Update from glibc. | |
1875 | ||
47be795d UD |
1876 | 2005-08-06 Ulrich Drepper <drepper@redhat.com> |
1877 | ||
1878 | * Makefile.am (AM_CFLAGS): Add -fpic when BUILD_STATIC. | |
1879 | ||
acb89839 UD |
1880 | 2005-08-03 Ulrich Drepper <drepper@redhat.com> |
1881 | ||
1882 | * libelf.map: Move elf32_offscn, elf64_offscn, and gelf_offscn in | |
1883 | new version ELFUTILS_1.1.1. | |
1884 | ||
41de488a UD |
1885 | 2005-08-02 Ulrich Drepper <drepper@redhat.com> |
1886 | ||
1887 | * elf_error.c: Add handling of ELF_E_INVALID_OFFSET. | |
1888 | * elf32_offscn.c: New file. | |
1889 | * elf64_offscn.c: New file. | |
1890 | * gelf_offscn.c: New file. | |
1891 | * Makefile.am (libelf_a_SOURCES): Add elf32_offscn.c, elf64_offscn.c, | |
1892 | and gelf_offscn.c. | |
1893 | * libelf.sym: Export new symbols. | |
1894 | ||
b08d5a8f UD |
1895 | 2005-07-23 Ulrich Drepper <drepper@redhat.com> |
1896 | ||
1897 | * elf-knowledge.h (SECTION_STRIP_P): Don't handle removal of debug | |
1898 | sections here anymore. | |
1899 | * elf32_checksum.c: Adjust for change in SECTION_STRIP_P interface. | |
1900 | ||
1901 | * elf_update.c (elf_update): Get write lock, not read lock. | |
1902 | ||
1903 | * elf32_updatenull.c (updatenull): Get section headers if necessary | |
1904 | and possible. | |
1905 | ||
1906 | 2005-07-22 Ulrich Drepper <drepper@redhat.com> | |
1907 | ||
1908 | * elf32_updatenull.c (updatenull): If program header hasn't been loaded | |
1909 | yet, try to do it now. | |
1910 | Don't unnecessarily update overflow of section count in zeroth section | |
1911 | sh_size field. | |
1912 | If section content hasn't been read yet, do it before looking for the | |
1913 | block size. If no section data present, infer size of section header. | |
1914 | ||
1915 | 2005-05-11 Ulrich Drepper <drepper@redhat.com> | |
1916 | ||
1917 | * elf.h: Update again. | |
1918 | ||
1919 | 2005-05-09 Ulrich Drepper <drepper@redhat.com> | |
1920 | ||
1921 | * elf.h: Update from glibc. | |
1922 | ||
1923 | 2005-05-08 Roland McGrath <roland@redhat.com> | |
1924 | ||
1925 | * elf_begin.c (read_file) [_MUDFLAP]: Don't use mmap for now. | |
1926 | * elf_update.c (write_file) [_MUDFLAP]: Likewise. | |
1927 | ||
1928 | 2005-03-29 Ulrich Drepper <drepper@redhat.com> | |
1929 | ||
1930 | * elf32_checksum.c: Use INTUSE and INTDEF to avoid PLTs. | |
1931 | * elf_end.c: Likewise. | |
1932 | * elf_getdata.c: Likewise. | |
1933 | * gelf_getehdr.c: Likewise. | |
1934 | * nlist.c: Likewise. | |
1935 | * libelfP.h: Add declarations of internal functions. | |
1936 | ||
1937 | 2005-02-15 Ulrich Drepper <drepper@redhat.com> | |
1938 | ||
1939 | * common.h (CONVERT): Make sure all values are unsigned. | |
1940 | (CONVERT_TO): Likewise. | |
1941 | ||
1942 | * Makefile.am (AM_CFLAGS): Add -Wformat=2. | |
1943 | Fix rule to build libelf.so. | |
1944 | ||
1945 | 2005-02-06 Ulrich Drepper <drepper@redhat.com> | |
1946 | ||
1947 | * Makefile.am: Cleanup AM_CFLAGS handling. Add -Wunused -Wextra. | |
1948 | Remove lint handling. | |
1949 | * elf32_getphdr.c: Minor cleanups. | |
1950 | * elf32_getshdr.c: Likewise. | |
1951 | * elf32_updatefile.c: Likewise. | |
1952 | * elf32_updatenull.c: Likewise. | |
1953 | * elf_begin.c: Likewise. | |
1954 | * elf_error.c: Likewise. | |
1955 | * elf_getarsym.c: Likewise. | |
1956 | * elf_getdata.c: Likewise. | |
1957 | * elf_update.c: Likewise. | |
1958 | * gelf_xlate.c: Likewise. | |
1959 | ||
1960 | 2005-02-05 Ulrich Drepper <drepper@redhat.com> | |
1961 | ||
1962 | * Makefile.am: Check for text relocations in constructed DSO. | |
1963 | ||
1964 | * Makefile.am [MUDFLAP] (AM_CFLAGS): Add -Werror -fpic -fmudflap. | |
1965 | ||
1966 | 2005-02-04 Ulrich Drepper <drepper@redhat.com> | |
1967 | ||
1968 | * gelf_getehdr.c (gelf_getehdr): Slight optimization. | |
1969 | ||
1970 | * elf32_checksum.c (checksum): Do not look at NOBITS sections. | |
1971 | ||
1972 | * gelf.h: Add gelf_checksum prototype. | |
1973 | ||
1974 | 2004-09-25 Ulrich Drepper <drepper@redhat.com> | |
1975 | ||
1976 | * elf32_checksum.c: Make compile with gcc 4.0. | |
1977 | * elf32_updatefile.c: Likewise. | |
1978 | * elf32_updatenull.c: Likewise. | |
1979 | * elf_begin.c: Likewise. | |
1980 | * elf_error.c: Likewise. | |
1981 | * elf_getdata.c: Likewise. | |
1982 | * elf_getident.c: Likewise. | |
1983 | ||
1984 | 2004-04-01 Ulrich Drepper <drepper@redhat.com> | |
1985 | ||
1986 | * elf.h: Update from glibc. | |
1987 | ||
1988 | 2004-01-23 Ulrich Drepper <drepper@redhat.com> | |
1989 | ||
1990 | * elf_update.c: Fix locking. | |
1991 | * elf_clone.c: Likewise. | |
1992 | ||
1993 | * libelf.h: Define ELF_T_LIB. | |
1994 | * gelf_getlib.c: New file. | |
1995 | * gelf_update_lib.c: New file. | |
1996 | * gelf.h: Declare the new functions. Define GElf_Lib. | |
1997 | * abstract.h: Define Lib, Lib32, Lib64. | |
1998 | * gelf_xlate.c (__elf_xfctstom): Add ELF_T_LIB entry. | |
1999 | * gelf_xlate.h: Add entry for ElfXX_Lib. | |
2000 | * elf_getdata.c: Recognize SHT_GNU_LIBLIST as a known section type. | |
2001 | * libelf.map: Add new symbols to ELFUTILS_1.1. | |
2002 | * Makefile.am (libelf_a_SOURCES): Add gelf_getlib.c and | |
2003 | gelf_update_lib.c. | |
2004 | ||
2005 | 2004-01-17 Ulrich Drepper <drepper@redhat.com> | |
2006 | ||
2007 | * Makefile.am: Support building with mudflap. | |
2008 | ||
2009 | * gelf_xlate.c (INLINE3): Avoid using cast as lvalue. | |
2010 | * dl-hash.h (_dl_elf_hash): Likewise. | |
2011 | ||
2012 | 2004-01-05 Ulrich Drepper <drepper@redhat.com> | |
2013 | ||
2014 | * elf-knowledge.h: New file. From libelf subdir. | |
2015 | * Makefile.am (euincludedir): Define. | |
2016 | (euinclude_HEADERS): Add elf-knowledge.h. | |
2017 | ||
2018 | 2003-09-24 Ulrich Drepper <drepper@redhat.com> | |
2019 | ||
2020 | * elf.h: Define some PT_IA_64_HP_* constants. | |
2021 | ||
2022 | 2003-09-23 Jakub Jelinek <jakub@redhat.com> | |
2023 | ||
2024 | * libelfP.h (struct Elf): Move state.elf64.sizestr_offset after | |
2025 | state.elf64.scnincr to match state.elf{,32}. | |
2026 | ||
2027 | 2003-08-12 Ulrich Drepper <drepper@redhat.com> | |
2028 | ||
2029 | * elf32_updatefile.c (__updatemmap): When writing back file where | |
2030 | some sections have not been read in, count their sizes based on | |
2031 | the section header. | |
2032 | ||
2033 | 2003-08-11 Ulrich Drepper <drepper@redhat.com> | |
2034 | ||
d7635784 | 2035 | * Moved to CVS archive. |