[PATCH] support: exit on consistency check failure in resolv_response_add_name

Florian Weimer fweimer@redhat.com
Thu Nov 6 13:49:21 GMT 2025


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



More information about the Libc-alpha mailing list