support: Exit on consistency check failure in resolv_response_add_name

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).

Reviewed-by: Collin Funk <collin.funk1@gmail.com>
This commit is contained in:
Florian Weimer 2025-11-06 14:49:21 +01:00
parent e45af510bc
commit b64335ff11
1 changed files with 1 additions and 1 deletions

View File

@ -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);
}