summaryrefslogtreecommitdiff
path: root/auth.h
diff options
context:
space:
mode:
Diffstat (limited to 'auth.h')
-rw-r--r--auth.h21
1 files changed, 15 insertions, 6 deletions
diff --git a/auth.h b/auth.h
index d081c94a6..db8603760 100644
--- a/auth.h
+++ b/auth.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: auth.h,v 1.78 2014/07/03 11:16:55 djm Exp $ */ 1/* $OpenBSD: auth.h,v 1.82 2015/02/16 22:13:32 djm Exp $ */
2 2
3/* 3/*
4 * Copyright (c) 2000 Markus Friedl. All rights reserved. 4 * Copyright (c) 2000 Markus Friedl. All rights reserved.
@@ -42,6 +42,9 @@
42#include <krb5.h> 42#include <krb5.h>
43#endif 43#endif
44 44
45struct ssh;
46struct sshkey;
47
45typedef struct Authctxt Authctxt; 48typedef struct Authctxt Authctxt;
46typedef struct Authmethod Authmethod; 49typedef struct Authmethod Authmethod;
47typedef struct KbdintDevice KbdintDevice; 50typedef struct KbdintDevice KbdintDevice;
@@ -75,6 +78,9 @@ struct Authctxt {
75#endif 78#endif
76 Buffer *loginmsg; 79 Buffer *loginmsg;
77 void *methoddata; 80 void *methoddata;
81
82 struct sshkey **prev_userkeys;
83 u_int nprev_userkeys;
78}; 84};
79/* 85/*
80 * Every authentication method has to handle authentication requests for 86 * Every authentication method has to handle authentication requests for
@@ -123,6 +129,8 @@ int hostbased_key_allowed(struct passwd *, const char *, char *, Key *);
123int user_key_allowed(struct passwd *, Key *); 129int user_key_allowed(struct passwd *, Key *);
124void pubkey_auth_info(Authctxt *, const Key *, const char *, ...) 130void pubkey_auth_info(Authctxt *, const Key *, const char *, ...)
125 __attribute__((__format__ (printf, 3, 4))); 131 __attribute__((__format__ (printf, 3, 4)));
132void auth2_record_userkey(Authctxt *, struct sshkey *);
133int auth2_userkey_already_used(Authctxt *, struct sshkey *);
126 134
127struct stat; 135struct stat;
128int auth_secure_path(const char *, struct stat *, const char *, uid_t, 136int auth_secure_path(const char *, struct stat *, const char *, uid_t,
@@ -195,12 +203,13 @@ check_key_in_hostfiles(struct passwd *, Key *, const char *,
195 203
196/* hostkey handling */ 204/* hostkey handling */
197Key *get_hostkey_by_index(int); 205Key *get_hostkey_by_index(int);
198Key *get_hostkey_public_by_index(int); 206Key *get_hostkey_public_by_index(int, struct ssh *);
199Key *get_hostkey_public_by_type(int); 207Key *get_hostkey_public_by_type(int, int, struct ssh *);
200Key *get_hostkey_private_by_type(int); 208Key *get_hostkey_private_by_type(int, int, struct ssh *);
201int get_hostkey_index(Key *); 209int get_hostkey_index(Key *, int, struct ssh *);
202int ssh1_session_key(BIGNUM *); 210int ssh1_session_key(BIGNUM *);
203void sshd_hostkey_sign(Key *, Key *, u_char **, u_int *, u_char *, u_int); 211int sshd_hostkey_sign(Key *, Key *, u_char **, size_t *,
212 const u_char *, size_t, u_int);
204 213
205/* debug messages during authentication */ 214/* debug messages during authentication */
206void auth_debug_add(const char *fmt,...) __attribute__((format(printf, 1, 2))); 215void auth_debug_add(const char *fmt,...) __attribute__((format(printf, 1, 2)));