From 04e19e8a449beefad8a451bdd9a55afa8ab61456 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 8 Jan 2021 09:13:26 +0100 Subject: zstrptr: Pull print_string() into file scope MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Get rid of a nested function this way. Signed-off-by: Timm Bäder --- tests/zstrptr.c | 43 ++++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 21 deletions(-) (limited to 'tests/zstrptr.c') diff --git a/tests/zstrptr.c b/tests/zstrptr.c index 6d8e19f7..9fb42e28 100644 --- a/tests/zstrptr.c +++ b/tests/zstrptr.c @@ -30,6 +30,26 @@ #include ELFUTILS_HEADER(elf) #include +static void +print_strings (Elf_Scn *scn, Elf *elf, size_t ndx) +{ + GElf_Shdr shdr_mem; + GElf_Shdr *shdr = gelf_getshdr (scn, &shdr_mem); + + printf ("Strings in section %zd (%s):\n", ndx, + ((shdr->sh_flags & SHF_COMPRESSED) != 0 + ? "compressed" : "uncompressed")); + + size_t off = 0; + const char *str = elf_strptr (elf, ndx, off); + while (str != NULL) + { + printf ("[%zx] '%s'\n", off, str); + off += strlen (str) + 1; + str = elf_strptr (elf, ndx, off); + } +} + int main (int argc, char *argv[]) { @@ -79,38 +99,19 @@ main (int argc, char *argv[]) exit (1); } - void print_strings (void) - { - GElf_Shdr shdr_mem; - GElf_Shdr *shdr = gelf_getshdr (scn, &shdr_mem); - - printf ("Strings in section %zd (%s):\n", ndx, - ((shdr->sh_flags & SHF_COMPRESSED) != 0 - ? "compressed" : "uncompressed")); - - size_t off = 0; - const char *str = elf_strptr (elf, ndx, off); - while (str != NULL) - { - printf ("[%zx] '%s'\n", off, str); - off += strlen (str) + 1; - str = elf_strptr (elf, ndx, off); - } - } - if (elf_compress (scn, ELFCOMPRESS_ZLIB, 0) < 0) { printf ("Couldn't compress section %zd: %s\n", ndx, elf_errmsg (-1)); exit (1); } - print_strings (); + print_strings (scn, elf, ndx); if (elf_compress (scn, 0, 0) < 0) { printf ("Couldn't decompress section %zd: %s\n", ndx, elf_errmsg (-1)); exit (1); } - print_strings (); + print_strings (scn, elf, ndx); if (elf_end (elf) != 0) { -- cgit v1.2.3