From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from madrid.collaboradmins.com (madrid.collaboradmins.com [46.235.227.194]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B2BE24404; Sat, 30 Dec 2023 07:17:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="hE5CErlJ" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1703920671; bh=d1iZc91LabcnMVqjWAlFYm0XHTmeSnEeDR2JG77Ywrw=; h=Date:Cc:Subject:To:References:From:In-Reply-To:From; b=hE5CErlJG3Eniyw3kJTkZPVa7omSD2Ig6+aA5VgrEy3z0vkq4Ez7Rbo2OxxUTcXkb 4JFwL5vUqoXPacoLYcd/TycKljtJnf7pB5oF6TqAujgGPYS/50H9yXmXLOmSg7tE+S mYxq09LroA5O8pJ3q8NT/cAEpaT2rVjychExSmJUjEy6wWjIFNiHFCoWLr/W540mk9 FcZug0qTq2zLB1pAvSBlwLNCBN8/4GlGFMQScI7Ez9ErGVQupmcagQCqg7TaurVzEk jMbsBzvRakwt03Z3z+dFDXAOJl9UWTgPlLdUe99dmRCEjY8J9JV1gfmv000owWA5dP PptrH5ANUBV0g== Received: from [100.96.234.34] (cola.collaboradmins.com [195.201.22.229]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: usama.anjum) by madrid.collaboradmins.com (Postfix) with ESMTPSA id ABBAF37811F1; Sat, 30 Dec 2023 07:17:46 +0000 (UTC) Message-ID: Date: Sat, 30 Dec 2023 12:17:49 +0500 Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Cc: Muhammad Usama Anjum , linux-kselftest@vger.kernel.org, kunit-dev@googlegroups.com, linux-kernel@vger.kernel.org, patches@opensource.cirrus.com Subject: Re: [PATCH] kunit: Protect string comparisons against NULL Content-Language: en-US To: Richard Fitzgerald , brendan.higgins@linux.dev, davidgow@google.com, rmoar@google.com References: <20231220155256.407974-1-rf@opensource.cirrus.com> From: Muhammad Usama Anjum In-Reply-To: <20231220155256.407974-1-rf@opensource.cirrus.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 12/20/23 8:52 PM, Richard Fitzgerald wrote: > Add NULL checks to KUNIT_BINARY_STR_ASSERTION() so that it will fail > cleanly if either pointer is NULL, instead of causing a NULL pointer > dereference in the strcmp(). > > A test failure could be that a string is unexpectedly NULL. This could > be trapped by KUNIT_ASSERT_NOT_NULL() but that would terminate the test > at that point. It's preferable that the KUNIT_EXPECT_STR*() macros can > handle NULL pointers as a failure. > > Signed-off-by: Richard Fitzgerald Reviewed-by: Muhammad Usama Anjum > --- > include/kunit/test.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/include/kunit/test.h b/include/kunit/test.h > index b163b9984b33..c2ce379c329b 100644 > --- a/include/kunit/test.h > +++ b/include/kunit/test.h > @@ -758,7 +758,7 @@ do { \ > .right_text = #right, \ > }; \ > \ > - if (likely(strcmp(__left, __right) op 0)) \ > + if (likely((__left) && (__right) && (strcmp(__left, __right) op 0))) \ > break; \ > \ > \ -- BR, Muhammad Usama Anjum