version 1.95.2.1, 2003/04/01 00:12:13 |
version 1.95.2.2, 2003/09/16 21:20:24 |
|
|
#include "pathnames.h" |
#include "pathnames.h" |
#include "monitor_wrap.h" |
#include "monitor_wrap.h" |
|
|
|
#ifdef GSSAPI |
|
#include "ssh-gss.h" |
|
#endif |
|
|
/* import */ |
/* import */ |
extern ServerOptions options; |
extern ServerOptions options; |
extern u_char *session_id2; |
extern u_char *session_id2; |
extern int session_id2_len; |
extern u_int session_id2_len; |
|
|
Authctxt *x_authctxt = NULL; |
Authctxt *x_authctxt = NULL; |
|
|
|
|
extern Authmethod method_passwd; |
extern Authmethod method_passwd; |
extern Authmethod method_kbdint; |
extern Authmethod method_kbdint; |
extern Authmethod method_hostbased; |
extern Authmethod method_hostbased; |
|
#ifdef GSSAPI |
|
extern Authmethod method_gssapi; |
|
#endif |
|
|
Authmethod *authmethods[] = { |
Authmethod *authmethods[] = { |
&method_none, |
&method_none, |
&method_pubkey, |
&method_pubkey, |
|
#ifdef GSSAPI |
|
&method_gssapi, |
|
#endif |
&method_passwd, |
&method_passwd, |
&method_kbdint, |
&method_kbdint, |
&method_hostbased, |
&method_hostbased, |
|
|
authctxt->valid = 1; |
authctxt->valid = 1; |
debug2("input_userauth_request: setting up authctxt for %s", user); |
debug2("input_userauth_request: setting up authctxt for %s", user); |
} else { |
} else { |
log("input_userauth_request: illegal user %s", user); |
logit("input_userauth_request: illegal user %s", user); |
|
authctxt->pw = fakepw(); |
} |
} |
setproctitle("%s%s", authctxt->pw ? user : "unknown", |
setproctitle("%s%s", authctxt->pw ? user : "unknown", |
use_privsep ? " [net]" : ""); |
use_privsep ? " [net]" : ""); |
|
|
} |
} |
/* reset state */ |
/* reset state */ |
auth2_challenge_stop(authctxt); |
auth2_challenge_stop(authctxt); |
|
|
|
#ifdef GSSAPI |
|
dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_TOKEN, NULL); |
|
dispatch_set(SSH2_MSG_USERAUTH_GSSAPI_EXCHANGE_COMPLETE, NULL); |
|
#endif |
|
|
authctxt->postponed = 0; |
authctxt->postponed = 0; |
|
|
/* try to authenticate user */ |
/* try to authenticate user */ |