[PATCH] elf: Fix subprocess tatus handling for tst-dlopen-sgid (bug 32987)
Sam James
sam@gentoo.org
Tue May 20 22:35:25 GMT 2025
Sam James <sam@gentoo.org> writes:
> Florian Weimer <fweimer@redhat.com> writes:
>
>> This should really move into support_capture_subprogram_self_sgid.
s/tatus/status in summary btw (sorry, forgot to include that earlier)
>>
>> ---
>> elf/tst-dlopen-sgid.c | 12 ++++++++++--
>> 1 file changed, 10 insertions(+), 2 deletions(-)
>>
>> diff --git a/elf/tst-dlopen-sgid.c b/elf/tst-dlopen-sgid.c
>> index 47829a405e..5688b79f2e 100644
>> --- a/elf/tst-dlopen-sgid.c
>> +++ b/elf/tst-dlopen-sgid.c
>> @@ -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;
>> }
>
> Thanks for the quick fix.
>
> Reviewed-by: Sam James <sam@gentoo.org>
More information about the Libc-alpha
mailing list