diff mbox series

[2/2] libsemanage/tests: check that string pointers are not NULL before comparing them

Message ID 20190930202211.781578-2-nicolas.iooss@m4x.org (mailing list archive)
State Accepted
Headers show
Series [1/2] libsemanage/tests: return when str is NULL | expand

Commit Message

Nicolas Iooss Sept. 30, 2019, 8:22 p.m. UTC
This silences many issues reported by Infer static analyzer about
possible NULL pointer dereferences.

Signed-off-by: Nicolas Iooss <nicolas.iooss@m4x.org>
---
 libsemanage/tests/test_utilities.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

Comments

Stephen Smalley Oct. 1, 2019, 7:02 p.m. UTC | #1
On 9/30/19 4:22 PM, Nicolas Iooss wrote:
> This silences many issues reported by Infer static analyzer about
> possible NULL pointer dereferences.
> 
> Signed-off-by: Nicolas Iooss <nicolas.iooss@m4x.org>

Thanks, both applied.

> ---
>   libsemanage/tests/test_utilities.c | 10 ++++++++++
>   1 file changed, 10 insertions(+)
> 
> diff --git a/libsemanage/tests/test_utilities.c b/libsemanage/tests/test_utilities.c
> index fa3a077f5e92..33609401920c 100644
> --- a/libsemanage/tests/test_utilities.c
> +++ b/libsemanage/tests/test_utilities.c
> @@ -145,16 +145,19 @@ void test_semanage_split_on_space(void)
>   		return;
>   	}
>   	temp = semanage_split_on_space(str);
> +	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
>   	CU_ASSERT_STRING_EQUAL(temp, "bar    baz");
>   	free(str);
>   	str = temp;
>   
>   	temp = semanage_split_on_space(str);
> +	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
>   	CU_ASSERT_STRING_EQUAL(temp, "baz");
>   	free(str);
>   	str = temp;
>   
>   	temp = semanage_split_on_space(str);
> +	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
>   	CU_ASSERT_STRING_EQUAL(temp, "");
>   	free(str);
>   	free(temp);
> @@ -171,21 +174,25 @@ void test_semanage_split(void)
>   		return;
>   	}
>   	temp = semanage_split(str, NULL);
> +	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
>   	CU_ASSERT_STRING_EQUAL(temp, "foo2   foo:bar:");
>   	free(str);
>   	str = temp;
>   
>   	temp = semanage_split(str, "");
> +	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
>   	CU_ASSERT_STRING_EQUAL(temp, "foo:bar:");
>   	free(str);
>   	str = temp;
>   
>   	temp = semanage_split(str, ":");
> +	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
>   	CU_ASSERT_STRING_EQUAL(temp, "bar:");
>   	free(str);
>   	str = temp;
>   
>   	temp = semanage_split(str, ":");
> +	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
>   	CU_ASSERT_STRING_EQUAL(temp, "");
>   	free(str);
>   	free(temp);
> @@ -301,14 +308,17 @@ void test_semanage_findval(void)
>   		CU_FAIL_FATAL("Temporary file was not created, aborting test.");
>   	}
>   	tok = semanage_findval(fname, "one", NULL);
> +	CU_ASSERT_PTR_NOT_NULL_FATAL(tok);
>   	CU_ASSERT_STRING_EQUAL(tok, "");
>   	free(tok);
>   	rewind(fptr);
>   	tok = semanage_findval(fname, "one", "");
> +	CU_ASSERT_PTR_NOT_NULL_FATAL(tok);
>   	CU_ASSERT_STRING_EQUAL(tok, "");
>   	free(tok);
>   	rewind(fptr);
>   	tok = semanage_findval(fname, "sigma", "=");
> +	CU_ASSERT_PTR_NOT_NULL_FATAL(tok);
>   	CU_ASSERT_STRING_EQUAL(tok, "foo");
>   	free(tok);
>   }
>
diff mbox series

Patch

diff --git a/libsemanage/tests/test_utilities.c b/libsemanage/tests/test_utilities.c
index fa3a077f5e92..33609401920c 100644
--- a/libsemanage/tests/test_utilities.c
+++ b/libsemanage/tests/test_utilities.c
@@ -145,16 +145,19 @@  void test_semanage_split_on_space(void)
 		return;
 	}
 	temp = semanage_split_on_space(str);
+	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
 	CU_ASSERT_STRING_EQUAL(temp, "bar    baz");
 	free(str);
 	str = temp;
 
 	temp = semanage_split_on_space(str);
+	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
 	CU_ASSERT_STRING_EQUAL(temp, "baz");
 	free(str);
 	str = temp;
 
 	temp = semanage_split_on_space(str);
+	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
 	CU_ASSERT_STRING_EQUAL(temp, "");
 	free(str);
 	free(temp);
@@ -171,21 +174,25 @@  void test_semanage_split(void)
 		return;
 	}
 	temp = semanage_split(str, NULL);
+	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
 	CU_ASSERT_STRING_EQUAL(temp, "foo2   foo:bar:");
 	free(str);
 	str = temp;
 
 	temp = semanage_split(str, "");
+	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
 	CU_ASSERT_STRING_EQUAL(temp, "foo:bar:");
 	free(str);
 	str = temp;
 
 	temp = semanage_split(str, ":");
+	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
 	CU_ASSERT_STRING_EQUAL(temp, "bar:");
 	free(str);
 	str = temp;
 
 	temp = semanage_split(str, ":");
+	CU_ASSERT_PTR_NOT_NULL_FATAL(temp);
 	CU_ASSERT_STRING_EQUAL(temp, "");
 	free(str);
 	free(temp);
@@ -301,14 +308,17 @@  void test_semanage_findval(void)
 		CU_FAIL_FATAL("Temporary file was not created, aborting test.");
 	}
 	tok = semanage_findval(fname, "one", NULL);
+	CU_ASSERT_PTR_NOT_NULL_FATAL(tok);
 	CU_ASSERT_STRING_EQUAL(tok, "");
 	free(tok);
 	rewind(fptr);
 	tok = semanage_findval(fname, "one", "");
+	CU_ASSERT_PTR_NOT_NULL_FATAL(tok);
 	CU_ASSERT_STRING_EQUAL(tok, "");
 	free(tok);
 	rewind(fptr);
 	tok = semanage_findval(fname, "sigma", "=");
+	CU_ASSERT_PTR_NOT_NULL_FATAL(tok);
 	CU_ASSERT_STRING_EQUAL(tok, "foo");
 	free(tok);
 }