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 committed 2015-06-17 13:36:06 +02:00
1 parent dbcece81ea
commit 6c58a7d774
1 file changed
+6 -6
+6 -6
View File
@@ -138,12 +138,12 @@ svc_t *svc_iterator(int first)
*/ */
svc_t *svc_inetd_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)) if (svc_is_inetd(svc))
return svc; return svc;
} while ((svc = svc_iterator(0))); }
return NULL; return NULL;
} }
@@ -159,12 +159,12 @@ svc_t *svc_inetd_iterator(int first)
*/ */
svc_t *svc_dynamic_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) if (svc->mtime)
return svc; return svc;
} while ((svc = svc_iterator(0))); }
return NULL; return NULL;
} }