aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/auth/userpasswd.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/auth/userpasswd.c')
-rw-r--r--src/cmd/auth/userpasswd.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/cmd/auth/userpasswd.c b/src/cmd/auth/userpasswd.c
new file mode 100644
index 00000000..ec974113
--- /dev/null
+++ b/src/cmd/auth/userpasswd.c
@@ -0,0 +1,34 @@
+#include <u.h>
+#include <libc.h>
+#include <auth.h>
+
+void
+usage(void)
+{
+ fprint(2, "usage: auth/userpasswd fmt\n");
+ exits("usage");
+}
+
+void
+main(int argc, char **argv)
+{
+ UserPasswd *up;
+
+ ARGBEGIN{
+ default:
+ usage();
+ }ARGEND
+
+ if(argc != 1)
+ usage();
+
+ up = auth_getuserpasswd(auth_getkey, "proto=pass %s", argv[0]);
+ if(up == nil) /* bug in factotum, fixed but need to reboot servers -rsc, 2/10/2002 */
+ up = auth_getuserpasswd(nil, "proto=pass %s", argv[0]);
+ if(up == nil)
+ sysfatal("getuserpasswd: %r");
+
+ quotefmtinstall();
+ print("%s\n%s\n", up->user, up->passwd);
+ exits(0);
+}