/* $Header: getXNSpass.c,v 2.0 85/11/21 07:22:25 jqj Exp $ */
* based on the standard library routine getpass(), it is modified
* for XNS passwords, which may be of almost arbitrary length
/* $Log: getXNSpass.c,v $
* Revision 2.0 85/11/21 07:22:25 jqj
* 4.3BSD standard release
* Revision 1.1 85/03/26 06:29:09 jqj
* Revision 1.1 85/03/26 06:29:09 jqj
/* @(#)getpass.c 4.3 (Berkeley) 5/16/84 */
static char pbuf
[PASSLEN
+1];
if ((fi
= fdopen(open("/dev/tty", 2), "r")) == NULL
)
setbuf(fi
, (char *)NULL
);
sig
= signal(SIGINT
, SIG_IGN
);
ioctl(fileno(fi
), TIOCGETP
, &ttyb
);
ioctl(fileno(fi
), TIOCSETP
, &ttyb
);
fprintf(stderr
, "%s", prompt
); fflush(stderr
);
for (p
=pbuf
; (c
= getc(fi
))!='\n' && c
!=EOF
;) {
fprintf(stderr
, "\n"); fflush(stderr
);
ioctl(fileno(fi
), TIOCSETP
, &ttyb
);