xref: /plan9/sys/src/cmd/auth/userpasswd.c (revision 9a747e4fd48b9f4522c70c07e8f882a15030f964)
1*9a747e4fSDavid du Colombier #include <u.h>
2*9a747e4fSDavid du Colombier #include <libc.h>
3*9a747e4fSDavid du Colombier #include <auth.h>
4*9a747e4fSDavid du Colombier 
5*9a747e4fSDavid du Colombier void
usage(void)6*9a747e4fSDavid du Colombier usage(void)
7*9a747e4fSDavid du Colombier {
8*9a747e4fSDavid du Colombier 	fprint(2, "usage: auth/userpasswd fmt\n");
9*9a747e4fSDavid du Colombier 	exits("usage");
10*9a747e4fSDavid du Colombier }
11*9a747e4fSDavid du Colombier 
12*9a747e4fSDavid du Colombier void
main(int argc,char ** argv)13*9a747e4fSDavid du Colombier main(int argc, char **argv)
14*9a747e4fSDavid du Colombier {
15*9a747e4fSDavid du Colombier 	UserPasswd *up;
16*9a747e4fSDavid du Colombier 
17*9a747e4fSDavid du Colombier 	ARGBEGIN{
18*9a747e4fSDavid du Colombier 	default:
19*9a747e4fSDavid du Colombier 		usage();
20*9a747e4fSDavid du Colombier 	}ARGEND
21*9a747e4fSDavid du Colombier 
22*9a747e4fSDavid du Colombier 	if(argc != 1)
23*9a747e4fSDavid du Colombier 		usage();
24*9a747e4fSDavid du Colombier 
25*9a747e4fSDavid du Colombier 	up = auth_getuserpasswd(auth_getkey, "proto=pass %s", argv[0]);
26*9a747e4fSDavid du Colombier 	if(up == nil)	/* bug in factotum, fixed but need to reboot servers -rsc, 2/10/2002 */
27*9a747e4fSDavid du Colombier 		up = auth_getuserpasswd(nil, "proto=pass %s", argv[0]);
28*9a747e4fSDavid du Colombier 	if(up == nil)
29*9a747e4fSDavid du Colombier 		sysfatal("getuserpasswd: %r");
30*9a747e4fSDavid du Colombier 
31*9a747e4fSDavid du Colombier 	quotefmtinstall();
32*9a747e4fSDavid du Colombier 	print("%s\n%s\n", up->user, up->passwd);
33*9a747e4fSDavid du Colombier 	exits(0);
34*9a747e4fSDavid du Colombier }
35