[PATCH] support: exit on consistency check failure in resolv_response_add_name
Collin Funk
collin.funk1@gmail.com
Fri Nov 7 01:18:21 GMT 2025
Florian Weimer <fweimer@redhat.com> writes:
> Using TEST_VERIFY (crname_target != crname) instructs some analysis
> tools that crname_target == crname might hold. Under this assumption,
> they report a use-after-free for crname_target->offset below, caused
> by the previous free (crname).
>
> ---
> support/resolv_test.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/support/resolv_test.c b/support/resolv_test.c
> index ab37d3d58c..29e59da958 100644
> --- a/support/resolv_test.c
> +++ b/support/resolv_test.c
> @@ -326,7 +326,7 @@ resolv_response_add_name (struct resolv_response_builder *b,
> crname_target = *ptr;
> else
> crname_target = NULL;
> - TEST_VERIFY (crname_target != crname);
> + TEST_VERIFY_EXIT (crname_target != crname);
> /* Not added to the tree. */
> free (crname);
> }
>
> base-commit: a61332f0869885b3f2fd3266ec0f28a2ed13ff75
Makes sense.
Reviewed-by: Collin Funk <collin.funk1@gmail.com>
Thanks,
Collin
More information about the Libc-alpha
mailing list