* Copyright (c) 1983 The Regents of the University of California.
* Redistribution and use in source and binary forms are permitted
* provided that the above copyright notice and this paragraph are
* duplicated in all such forms and that any documentation,
* advertising materials, and other materials related to such
* distribution and use acknowledge that the software was developed
* by the University of California, Berkeley. The name of the
* University may not be used to endorse or promote products derived
* from this software without specific prior written permission.
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
"@(#) Copyright (c) 1983 The Regents of the University of California.\n\
static char sccsid
[] = "@(#)fingerd.c 5.3 (Berkeley) %G%";
int i
, p
[2], pid
, status
;
if (getpeername(0, &sin
, &i
) < 0)
fatal(argv
[0], "getpeername");
if (fgets(line
, sizeof(line
), stdin
) == NULL
)
if (*sp
== '/' && (sp
[1] == 'W' || sp
[1] == 'w')) {
if (*sp
&& !isspace(*sp
)) {
while (*sp
&& !isspace(*sp
))
if ((pid
= fork()) == 0) {
execv("/usr/ucb/finger", av
);
if ((fp
= fdopen(p
[0], "r")) == NULL
)
fatal(argv
[0], "fdopen");
while ((i
= getc(fp
)) != EOF
) {
while ((i
= wait(&status
)) != pid
&& i
!= -1)
fprintf(stderr
, "%s: ", prog
);