Lines Matching defs:extents
92 * The types of extents in an ELF object.
115 * Compute the extents of a section, by looking at the data
359 _libelf_release_extents(struct _Elf_Extent_List *extents)
363 while ((ex = SLIST_FIRST(extents)) != NULL) {
364 SLIST_REMOVE_HEAD(extents, ex_next);
376 _libelf_extent_is_unused(struct _Elf_Extent_List *extents,
383 /* First, look for overlaps with existing extents. */
385 SLIST_FOREACH(t, extents, ex_next) {
414 * Insert an extent into the list of extents.
418 _libelf_insert_extent(struct _Elf_Extent_List *extents, int type,
431 if (!_libelf_extent_is_unused(extents, start, size, &prevt)) {
450 SLIST_INSERT_HEAD(extents, ex, ex_next);
459 _libelf_resync_sections(Elf *e, off_t rc, struct _Elf_Extent_List *extents)
486 if (!_libelf_insert_extent(extents, ELF_EXTENT_SECTION,
508 * - All extents in the ELF object are sorted in order of ascending
511 * extents.
520 _libelf_resync_elf(Elf *e, struct _Elf_Extent_List *extents)
614 if (!_libelf_insert_extent(extents, ELF_EXTENT_EHDR, 0, (uint64_t) rc,
648 if (!_libelf_insert_extent(extents, ELF_EXTENT_PHDR,
664 if ((rc = _libelf_resync_sections(e, rc, extents)) < 0)
694 if (!_libelf_insert_extent(extents, ELF_EXTENT_SHDR,
1046 _libelf_write_elf(Elf *e, off_t newsize, struct _Elf_Extent_List *extents)
1063 SLIST_FOREACH(ex, extents, ex_next) {
1215 struct _Elf_Extent_List extents;
1238 SLIST_INIT(&extents);
1240 if ((rc = _libelf_resync_elf(e, &extents)) < 0)
1252 rc = _libelf_write_elf(e, rc, &extents);
1255 _libelf_release_extents(&extents);