summaryrefslogtreecommitdiff
path: root/auth-passwd.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2001-02-18 17:01:00 +1100
committerDamien Miller <djm@mindrot.org>2001-02-18 17:01:00 +1100
commit60396b060b803fd2d20aa151dc0432a344f798b0 (patch)
tree6027eced4465cbb8ab7146ba6cd3f9a89c38bd03 /auth-passwd.c
parent75da9a9e721bf0f73aab8a28505a62224c327d18 (diff)
- (djm) Merge BSD_AUTH support from Markus Friedl and David J. MacKenzie
enable with --with-bsd-auth.
Diffstat (limited to 'auth-passwd.c')
-rw-r--r--auth-passwd.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/auth-passwd.c b/auth-passwd.c
index c849abdcc..5a91e5585 100644
--- a/auth-passwd.c
+++ b/auth-passwd.c
@@ -77,14 +77,17 @@ RCSID("$OpenBSD: auth-passwd.c,v 1.21 2001/02/12 16:16:23 markus Exp $");
77#define is_winnt (GetVersion() < 0x80000000) 77#define is_winnt (GetVersion() < 0x80000000)
78#endif 78#endif
79 79
80
81extern ServerOptions options;
82
80/* 83/*
81 * Tries to authenticate the user using password. Returns true if 84 * Tries to authenticate the user using password. Returns true if
82 * authentication succeeds. 85 * authentication succeeds.
83 */ 86 */
84int 87int
85auth_password(struct passwd * pw, const char *password) 88auth_password(Authctxt *authctxt, const char *password)
86{ 89{
87 extern ServerOptions options; 90 struct passwd * pw = authctxt->pw;
88 char *encrypted_password; 91 char *encrypted_password;
89 char *pw_password; 92 char *pw_password;
90 char *salt; 93 char *salt;
@@ -122,6 +125,13 @@ auth_password(struct passwd * pw, const char *password)
122#endif 125#endif
123 if (*password == '\0' && options.permit_empty_passwd == 0) 126 if (*password == '\0' && options.permit_empty_passwd == 0)
124 return 0; 127 return 0;
128#ifdef BSD_AUTH
129 if (auth_userokay(pw->pw_name, authctxt->style, "auth-ssh",
130 (char *)password) == 0)
131 return 0;
132 else
133 return 1;
134#endif
125 135
126#ifdef HAVE_CYGWIN 136#ifdef HAVE_CYGWIN
127 if (is_winnt) { 137 if (is_winnt) {