summaryrefslogtreecommitdiffstats
path: root/lib/libskey/skey_crypt.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libskey/skey_crypt.c')
-rw-r--r--lib/libskey/skey_crypt.c38
1 files changed, 0 insertions, 38 deletions
diff --git a/lib/libskey/skey_crypt.c b/lib/libskey/skey_crypt.c
deleted file mode 100644
index 4e3a141..0000000
--- a/lib/libskey/skey_crypt.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Author: Wietse Venema, Eindhoven University of Technology. */
-
-#include <string.h>
-#include <stdio.h>
-#include <pwd.h>
-#include <unistd.h>
-
-#include "skey.h"
-
-/* skey_crypt - return encrypted UNIX passwd if s/key or regular password ok */
-
-const char *skey_crypt(pp, salt, pwd, pwok)
-char *pp;
-char *salt;
-struct passwd *pwd;
-int pwok;
-{
- struct skey skey;
- char *p;
-
- /* Try s/key authentication even when the UNIX password is permitted. */
-
- if (pwd != 0 && skeyinfo(&skey, pwd->pw_name, (char *) 0) == 0
- && skeyverify(&skey, pp) == 0) {
- /* s/key authentication succeeded */
- return (pwd->pw_passwd);
- }
-
- /* When s/key authentication does not work, always invoke crypt(). */
-
- p = crypt(pp, salt);
- if (pwok && pwd != 0 && strcmp(p, pwd->pw_passwd) == 0)
- return (pwd->pw_passwd);
-
- /* The user does not exist or entered bad input. */
-
- return (":");
-}
OpenPOWER on IntegriCloud