Fix Coverty CID #96209: Dereference NULL return value.

The new iterators `svc_inetd_iterator()` and `svc_dynamic_iterator()`
used unsafe constructs that could cause them, at least the latter, to
dereference a `NULL` pointer.

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
This commit is contained in:
Joachim Nilsson
2015-06-17 13:36:06 +02:00
parent dbcece81ea
commit 6c58a7d774
+6 -6
View File
@@ -138,12 +138,12 @@ svc_t *svc_iterator(int first)
*/
svc_t *svc_inetd_iterator(int first)
{
svc_t *svc = svc_iterator(first);
svc_t *svc;
do {
for (svc = svc_iterator(first); svc; svc = svc_iterator(0)) {
if (svc_is_inetd(svc))
return svc;
} while ((svc = svc_iterator(0)));
}
return NULL;
}
@@ -159,12 +159,12 @@ svc_t *svc_inetd_iterator(int first)
*/
svc_t *svc_dynamic_iterator(int first)
{
svc_t *svc = svc_iterator(first);
svc_t *svc;
do {
for (svc = svc_iterator(first); svc; svc = svc_iterator(0)) {
if (svc->mtime)
return svc;
} while ((svc = svc_iterator(0)));
}
return NULL;
}