the condition was probably intended to be !*p rather than !p, but neither is needed here. the subsequent code naturally handles the case where it's already at end of string.
@@ -52,7 +52,6 @@ int __lookup_serv(struct service buf[static MAXSERVS], const char *name, int pro
/* Skip past canonical name at beginning of line */
for (p=line; *p && !isspace(*p); p++);
- if (!p) continue;
port = strtoul(p, &z, 10);
if (port > 65535 || z==p) continue;