* Copyright (c) 1983 Regents of the University of California.
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid
[] = "@(#)getservbyname.c 5.3 (Berkeley) 5/19/86";
#endif LIBC_SCCS and not lint
extern int _serv_stayopen
;
getservbyname(name
, proto
)
register struct servent
*p
;
setservent(_serv_stayopen
);
while (p
= getservent()) {
if (strcmp(name
, p
->s_name
) == 0)
for (cp
= p
->s_aliases
; *cp
; cp
++)
if (strcmp(name
, *cp
) == 0)
if (proto
== 0 || strcmp(p
->s_proto
, proto
) == 0)