X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvppinfra%2Felf.c;h=af0b2b8cb6fc3ece9c078cb5c2d7e968dc1e8371;hb=d5045e68a782d484e3f0e54edb4a88dc3dfac291;hp=0b8aaa5d0036edb1a19bdf5898228d0da90ec84f;hpb=350f6d6ef4955b8acb1ccfacd17ad5976398951c;p=vpp.git diff --git a/src/vppinfra/elf.c b/src/vppinfra/elf.c index 0b8aaa5d003..af0b2b8cb6f 100644 --- a/src/vppinfra/elf.c +++ b/src/vppinfra/elf.c @@ -43,7 +43,7 @@ elf_swap_verneed_aux (elf_dynamic_version_need_aux_t * n) #undef _ } -clib_error_t * +__clib_export clib_error_t * elf_get_section_by_name (elf_main_t * em, char *section_name, elf_section_t ** result) { @@ -65,9 +65,9 @@ elf_get_section_by_start_address_no_check (elf_main_t * em, return p ? vec_elt_at_index (em->sections, p[0]) : 0; } -clib_error_t * -elf_get_section_by_start_address (elf_main_t * em, uword start_address, - elf_section_t ** result) +__clib_export clib_error_t * +elf_get_section_by_start_address (elf_main_t *em, uword start_address, + elf_section_t **result) { elf_section_t *s = elf_get_section_by_start_address_no_check (em, start_address); @@ -541,8 +541,8 @@ elf_segment_va_compare (void *a1, void *a2) (i64) s2->header.virtual_address); } -u8 * -format_elf_main (u8 * s, va_list * args) +__clib_export u8 * +format_elf_main (u8 *s, va_list *args) { elf_main_t *em = va_arg (*args, elf_main_t *); u32 verbose = va_arg (*args, u32); @@ -895,8 +895,8 @@ elf_parse_symbols (elf_main_t * em) } } -void -elf_set_dynamic_entries (elf_main_t * em) +__clib_export void +elf_set_dynamic_entries (elf_main_t *em) { uword i; @@ -1325,7 +1325,7 @@ elf_parse_dynamic (elf_main_t * em) #include #include -clib_error_t * +__clib_export clib_error_t * elf_read_file (elf_main_t * em, char *file_name) { int fd; @@ -1357,7 +1357,7 @@ elf_read_file (elf_main_t * em, char *file_name) goto done; } - CLIB_MEM_UNPOISON (data, mmap_length); + clib_mem_unpoison (data, mmap_length); em->file_name = file_name; @@ -1455,7 +1455,6 @@ static void layout_sections (elf_main_t * em) { elf_section_t *s; - u32 n_sections_with_changed_exec_address = 0; u32 *deferred_symbol_and_string_sections = 0; u32 n_deleted_sections = 0; /* note: rebuild is always zero. Intent lost in the sands of time */ @@ -1614,7 +1613,6 @@ layout_sections (elf_main_t * em) if (s->header.flags & ELF_SECTION_FLAG_ALLOC) { s->exec_address_change = exec_address - s->header.exec_address; - n_sections_with_changed_exec_address += s->exec_address_change != 0; s->header.exec_address = exec_address; } @@ -1705,7 +1703,7 @@ layout_sections (elf_main_t * em) s_lo = s_hi = 0; /* *INDENT-OFF* */ - clib_bitmap_foreach (si, g->section_index_bitmap, ({ + clib_bitmap_foreach (si, g->section_index_bitmap) { u64 lo, hi; s = vec_elt_at_index (em->sections, si); @@ -1728,7 +1726,7 @@ layout_sections (elf_main_t * em) if (hi > s_hi) s_hi = hi; } - })); + } /* *INDENT-ON* */ if (n_sections == 0) @@ -1750,8 +1748,8 @@ layout_sections (elf_main_t * em) } } -clib_error_t * -elf_write_file (elf_main_t * em, char *file_name) +__clib_export clib_error_t * +elf_write_file (elf_main_t *em, char *file_name) { int fd; FILE *f; @@ -1977,7 +1975,7 @@ elf_create_section_with_contents (elf_main_t * em, if ((p = hash_get_mem (em->section_by_name, section_name))) { s = vec_elt_at_index (em->sections, p[0]); - _vec_len (s->contents) = 0; + vec_set_len (s->contents, 0); c = s->contents; } else