version 1.2.8.2, 2004/03/04 18:18:15 |
version 1.3, 2003/04/08 20:21:28 |
|
|
/* import */ |
/* import */ |
extern ServerOptions options; |
extern ServerOptions options; |
extern u_char *session_id2; |
extern u_char *session_id2; |
extern u_int session_id2_len; |
extern int session_id2_len; |
|
|
static int |
static int |
userauth_pubkey(Authctxt *authctxt) |
userauth_pubkey(Authctxt *authctxt) |
|
|
authenticated = 0; |
authenticated = 0; |
if (PRIVSEP(user_key_allowed(authctxt->pw, key)) && |
if (PRIVSEP(user_key_allowed(authctxt->pw, key)) && |
PRIVSEP(key_verify(key, sig, slen, buffer_ptr(&b), |
PRIVSEP(key_verify(key, sig, slen, buffer_ptr(&b), |
buffer_len(&b))) == 1) |
buffer_len(&b))) == 1) |
authenticated = 1; |
authenticated = 1; |
buffer_free(&b); |
buffer_clear(&b); |
xfree(sig); |
xfree(sig); |
} else { |
} else { |
debug("test whether pkalg/pkblob are acceptable"); |
debug("test whether pkalg/pkblob are acceptable"); |
|
|
struct stat st; |
struct stat st; |
Key *found; |
Key *found; |
char *fp; |
char *fp; |
|
|
|
if (pw == NULL) |
|
return 0; |
|
|
/* Temporarily use the user's uid. */ |
/* Temporarily use the user's uid. */ |
temporarily_use_uid(pw); |
temporarily_use_uid(pw); |