version 1.7, 2004/06/21 17:36:31 |
version 1.8, 2004/12/06 11:41:03 |
|
|
#include "includes.h" |
#include "includes.h" |
RCSID("$OpenBSD$"); |
RCSID("$OpenBSD$"); |
|
|
|
#include "ssh.h" |
#include "ssh2.h" |
#include "ssh2.h" |
#include "xmalloc.h" |
#include "xmalloc.h" |
#include "packet.h" |
#include "packet.h" |
|
|
static int |
static int |
user_key_allowed2(struct passwd *pw, Key *key, char *file) |
user_key_allowed2(struct passwd *pw, Key *key, char *file) |
{ |
{ |
char line[8192]; |
char line[SSH_MAX_PUBKEY_BYTES]; |
int found_key = 0; |
int found_key = 0; |
FILE *f; |
FILE *f; |
u_long linenum = 0; |
u_long linenum = 0; |
|
|
found_key = 0; |
found_key = 0; |
found = key_new(key->type); |
found = key_new(key->type); |
|
|
while (fgets(line, sizeof(line), f)) { |
while (read_keyfile_line(f, file, line, sizeof(line), &linenum) != -1) { |
char *cp, *key_options = NULL; |
char *cp, *key_options = NULL; |
linenum++; |
|
/* Skip leading whitespace, empty and comment lines. */ |
/* Skip leading whitespace, empty and comment lines. */ |
for (cp = line; *cp == ' ' || *cp == '\t'; cp++) |
for (cp = line; *cp == ' ' || *cp == '\t'; cp++) |
; |
; |