elf: Fix subprocess status handling for tst-dlopen-sgid (bug 32987)

This should really move into support_capture_subprogram_self_sgid.

Reviewed-by: Sam James <sam@gentoo.org>
(cherry picked from commit 35fc356fa3)
This commit is contained in:
Florian Weimer 2025-05-21 08:43:32 +02:00
parent ca41fe44a5
commit ca7e32d024
2 changed files with 11 additions and 2 deletions

1
NEWS
View File

@ -67,6 +67,7 @@ The following bugs are resolved with this release:
[32231] elf: Change ldconfig auxcache magic number
[32470] x86: Avoid integer truncation with large cache sizes
[32582] Fix underallocation of abort_msg_s struct (CVE-2025-0395)
[32987] elf: Fix subprocess status handling for tst-dlopen-sgid
Version 2.38

View File

@ -26,6 +26,8 @@
#include <support/check.h>
#include <support/support.h>
#include <support/temp_file.h>
#include <support/test-driver.h>
#include <sys/wait.h>
#include <unistd.h>
/* This is the name of our test object. Use a custom module for
@ -66,10 +68,16 @@ do_test (void)
free (from);
}
TEST_COMPARE (support_capture_subprogram_self_sgid (magic_argument), 0);
free (libdir);
int status = support_capture_subprogram_self_sgid (magic_argument);
if (WEXITSTATUS (status) == EXIT_UNSUPPORTED)
return EXIT_UNSUPPORTED;
if (!WIFEXITED (status))
FAIL_EXIT1 ("Unexpected exit status %d from child process\n", status);
return 0;
}