diff --git a/src/backtrace.c b/src/backtrace.c
index 607097212ade..9f130523d5bc 100644
--- a/src/backtrace.c
+++ b/src/backtrace.c
@@ -54,7 +54,7 @@ void __iwd_backtrace_print(unsigned int offset)
 	int pathlen;
 	pid_t pid;
 
-	if (program_exec == NULL)
+	if (!program_exec)
 		return;
 
 	pathlen = strlen(program_path);
@@ -186,7 +186,7 @@ void __iwd_backtrace_init(void)
 		}
 	}
 
-	if (program_exec == NULL)
+	if (!program_exec)
 		return;
 
 	program_path = getcwd(cwd, sizeof(cwd));
diff --git a/src/eap.c b/src/eap.c
index 4d08f072c32d..9e924577637d 100644
--- a/src/eap.c
+++ b/src/eap.c
@@ -974,7 +974,7 @@ static void __eap_method_enable(struct eap_method_desc *start,
 
 	l_debug("");
 
-	if (start == NULL || stop == NULL)
+	if (!start || !stop)
 		return;
 
 	for (desc = start; desc < stop; desc++) {
@@ -992,7 +992,7 @@ static void __eap_method_disable(struct eap_method_desc *start,
 
 	l_debug("");
 
-	if (start == NULL || stop == NULL)
+	if (!start || !stop)
 		return;
 
 	for (desc = start; desc < stop; desc++) {
diff --git a/src/frame-xchg.c b/src/frame-xchg.c
index 158befd0ba83..e9729927d6ab 100644
--- a/src/frame-xchg.c
+++ b/src/frame-xchg.c
@@ -342,8 +342,7 @@ static bool frame_watch_group_io_read(struct l_io *io, void *user_data)
 
 	nlmsg_len = bytes_read;
 
-	for (cmsg = CMSG_FIRSTHDR(&msg); cmsg != NULL;
-					cmsg = CMSG_NXTHDR(&msg, cmsg)) {
+	for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg)) {
 		struct nl_pktinfo pktinfo;
 
 		if (cmsg->cmsg_level != SOL_NETLINK)
diff --git a/src/netconfig.c b/src/netconfig.c
index b31209cf820b..4e8fa0d8cf9f 100644
--- a/src/netconfig.c
+++ b/src/netconfig.c
@@ -710,7 +710,7 @@ struct netconfig *netconfig_new(uint32_t ifindex)
 	netconfig_commit_init(netconfig);
 
 	debug_level = getenv("IWD_DHCP_DEBUG");
-	if (debug_level != NULL) {
+	if (debug_level) {
 		if (!strcmp("debug", debug_level))
 			dhcp_priority = L_LOG_DEBUG;
 		else if (!strcmp("info", debug_level))
diff --git a/src/storage.c b/src/storage.c
index b756b1726618..c70554df53f2 100644
--- a/src/storage.c
+++ b/src/storage.c
@@ -596,7 +596,7 @@ struct l_settings *storage_network_open(enum security type, const char *ssid)
 	struct l_settings *settings;
 	_auto_(l_free) char *path = NULL;
 
-	if (ssid == NULL)
+	if (!ssid)
 		return NULL;
 
 	path = storage_get_network_file_path(type, ssid);
@@ -623,7 +623,7 @@ int storage_network_touch(enum security type, const char *ssid)
 	char *path;
 	int ret;
 
-	if (ssid == NULL)
+	if (!ssid)
 		return -EINVAL;
 
 	path = storage_get_network_file_path(type, ssid);
diff --git a/src/udev.c b/src/udev.c
index 8baf47246be7..859f00bdcdbb 100644
--- a/src/udev.c
+++ b/src/udev.c
@@ -234,8 +234,7 @@ static bool can_read_data(struct l_io *io, void *user_data)
 	if (len < 0)
 		return false;
 
-	for (cmsg = CMSG_FIRSTHDR(&msg); cmsg != NULL;
-					cmsg = CMSG_NXTHDR(&msg, cmsg)) {
+	for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg)) {
 		struct nl_pktinfo *pktinfo;
 
 		if (cmsg->cmsg_level != SOL_NETLINK)
diff --git a/src/wscutil.c b/src/wscutil.c
index 934deeda49b6..570c4d66ea2e 100644
--- a/src/wscutil.c
+++ b/src/wscutil.c
@@ -722,7 +722,7 @@ int wsc_parse_attrs(const unsigned char *pdu, unsigned int len,
 			}
 		}
 
-		if (e2 == NULL) {
+		if (!e2) {
 			if (!ext_iter)
 				break;
 
diff --git a/unit/test-dpp.c b/unit/test-dpp.c
index 0a4fd01f8e42..70e79814c111 100644
--- a/unit/test-dpp.c
+++ b/unit/test-dpp.c
@@ -124,7 +124,7 @@ static bool verify_info(const struct dpp_uri_info *parsed,
 
 	assert(!memcmp(parsed->mac, expected->mac, 6));
 	assert(parsed->version == expected->version);
-	assert(parsed->boot_public != NULL);
+	assert(parsed->boot_public);
 
 	for (i = 0; result->expected_freqs[i]; i++)
 		assert(scan_freq_set_contains(parsed->freqs,
@@ -140,7 +140,7 @@ static void test_uri_parse(const void *data)
 
 	info = dpp_parse_uri(test_info->uri);
 	if (test_info->expect_fail) {
-		assert(info == NULL);
+		assert(!info);
 		return;
 	}
 
diff --git a/unit/test-ie.c b/unit/test-ie.c
index 7ea84c387121..a28cef85de25 100644
--- a/unit/test-ie.c
+++ b/unit/test-ie.c
@@ -660,7 +660,7 @@ static void ie_test_concat_wsc(const void *data)
 	if (len > 0)
 		assert(!memcmp(res, test->expected_data, len));
 	else
-		assert(res == NULL);
+		assert(!res);
 
 	l_free(res);
 }
@@ -681,7 +681,7 @@ static void ie_test_encapsulate_wsc(const void *data)
 	if (extracted_len > 0)
 		assert(!memcmp(extracted, test->expected_data, extracted_len));
 	else
-		assert(extracted == NULL);
+		assert(!extracted);
 
 	packed = ie_tlv_encapsulate_wsc_payload(extracted, extracted_len,
 								&packed_len);
diff --git a/unit/test-json.c b/unit/test-json.c
index 0d48b3d16d64..73e6f8c1b834 100644
--- a/unit/test-json.c
+++ b/unit/test-json.c
@@ -106,7 +106,7 @@ static void test_json(const void *data)
 			JSON_OPTIONAL("objnotfound", JSON_OBJECT, &objnotfound),
 			JSON_UNDEFINED));
 
-	assert(opt_not_found == NULL);
+	assert(!opt_not_found);
 	assert(!json_iter_is_valid(&objnotfound));
 
 	assert(!strcmp(tech, "infra"));
