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