<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/lib/libelf/_libelf.h, branch releng/8.4</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=releng%2F8.4</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=releng%2F8.4'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2010-09-04T13:13:00Z</updated>
<entry>
<title>MFC r210331-r210333,r210335,r210336,r210338,r210340,r210341,r210559.</title>
<updated>2010-09-04T13:13:00Z</updated>
<author>
<name>Kai Wang</name>
<email>kaiw@FreeBSD.org</email>
</author>
<published>2010-09-04T13:13:00Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=47b197ad1551b93f2e82b1914f6fb7fbeccd3d0a'/>
<id>urn:sha1:47b197ad1551b93f2e82b1914f6fb7fbeccd3d0a</id>
<content type='text'>
r210331:
  Add a new ELF type denoting GNU style hash tables.

r210332:
  Changes for supporting GNU Hash sections.

r210333:
  Note that the *_fsize() functions are only defined for ELF types that
  have a fixed size.

r210335:
  - Return zero for file sizes of ELF types that have a variable size.
  - Neaten a few comments.

r210336:
  Reduce verbosity.

r210338:
  Perform additional checks when translating between file and memory
  representations of ELF types.

  The ELF(3) API allows applications to request a conversion that is
  `in-place', i.e., with source and destinations data buffers being
  the same.  However, the file and memory sizes of ELF sections that
  have additional internal structure, such as those of type `Elf_Note',
  or `Elf_GNU_Hash_Header', can be determined only known after the
  type-specific headers that comprise the first few words in these
  sections are read and translated.

  Pass in the size of destination buffer to type translation routines
  in "libelf_convert.m4" and have these routines return an error code
  if the translated data would not fit inside the destination buffer.

r210340:
  - Document that the *fsize() functions return a size of 1 for Elf
    types that don't have a fixed size.
  - The *fsize() functions should return a size of 1, for variable length
    types.
  - Redefine symbol ELF_T_LAST to match the current end of the list.

r210341:
  Add support for translating sections of type ELF_T_GNUHASH.

r210559:
  Protect GNUHASH translation functions with #ifdef; unbreak cross
  toolchain build.
</content>
</entry>
<entry>
<title>MFC r210344,r210345,r210348.</title>
<updated>2010-09-04T12:52:44Z</updated>
<author>
<name>Kai Wang</name>
<email>kaiw@FreeBSD.org</email>
</author>
<published>2010-09-04T12:52:44Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=deb110f098ddd102e07952219c874521136e92b6'/>
<id>urn:sha1:deb110f098ddd102e07952219c874521136e92b6</id>
<content type='text'>
r210344:
  Avoid switching between "unsigned char" and "char" in the C code
  generated from "libelf_convert.m4".

r210345:
  * Deprecate `elf_getshnum()`, `elf_getphnum()` and `elf_getshstrndx()` in
    favour of `elf_getshdrnum()`, `elf_getphdrnum()` and `elf_getshdrstrndx()`
    respectively.
  * Add new manual pages for `elf_getshdrstrndx()`, `elf_getphdrnum()` and
    `elf_getshdrnum()`.
  * Add a deprecation warning for `elf_getshstrndx()`, `elf_getphnum()` and
    `elf_getshnum()`.

r210348:
  Move helper functions `_libelf_ar_get_{name,number,string}()` and
  `_libelf_ar_open()` to a new compilation unit "libelf_ar_util.c"
  to break the circular dependency between "elf_memory.o" and
  "libelf_ar.o".
</content>
</entry>
<entry>
<title>MFC r210329,r210330,r210347.</title>
<updated>2010-09-04T12:40:06Z</updated>
<author>
<name>Kai Wang</name>
<email>kaiw@FreeBSD.org</email>
</author>
<published>2010-09-04T12:40:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=7af6c9deaa8b123c1a13db69cea4f11a01d70c62'/>
<id>urn:sha1:7af6c9deaa8b123c1a13db69cea4f11a01d70c62</id>
<content type='text'>
r210329:
  Use &lt;unistd.h&gt; to declare the prototype for ftruncate().

r210330:
  Allow an application that updates only the ELF Ehdr to work.

r210347:
  Fix a memory leak.
</content>
</entry>
<entry>
<title>Keep shadow copies of the `e_shnum', `e_phnum' and `e_shstrndx'</title>
<updated>2006-12-25T02:22:22Z</updated>
<author>
<name>Joseph Koshy</name>
<email>jkoshy@FreeBSD.org</email>
</author>
<published>2006-12-25T02:22:22Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=f6c0f35e07ea010de170b0d79c48c2b4b4a5d9d4'/>
<id>urn:sha1:f6c0f35e07ea010de170b0d79c48c2b4b4a5d9d4</id>
<content type='text'>
members of the ELF Executable Header inside the library-private
`struct _Elf' descriptor and only update the underlying Elf{32,64}_Ehdr
structure on an elf_update(3) call.  These fields of the Ehdr
structure are technically `out of bounds' for an application program
per the ELF(3) API, but we've seen applications that initialize
a new Ehdr structure using memcpy(), messing up the library's
invariants. [1]

Implement elf_getphnum() and handle ELF objects with more than
64K program header table entries.

Reported by:	jb [1]
</content>
</entry>
<entry>
<title>MFP4: Add an implementation of the ELF(3) and GELF(3) API set.</title>
<updated>2006-11-11T17:16:35Z</updated>
<author>
<name>Joseph Koshy</name>
<email>jkoshy@FreeBSD.org</email>
</author>
<published>2006-11-11T17:16:35Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3eb1a62e694a65c67f6f86ca86a47dc06c93f1ee'/>
<id>urn:sha1:3eb1a62e694a65c67f6f86ca86a47dc06c93f1ee</id>
<content type='text'>
Bump __FreeBSD_version.

Reviewed by:	jb
</content>
</entry>
</feed>
