summaryrefslogtreecommitdiff
path: root/ssh-gss.h
diff options
context:
space:
mode:
Diffstat (limited to 'ssh-gss.h')
-rw-r--r--ssh-gss.h22
1 files changed, 20 insertions, 2 deletions
diff --git a/ssh-gss.h b/ssh-gss.h
index 52fb49a6f..213930103 100644
--- a/ssh-gss.h
+++ b/ssh-gss.h
@@ -62,6 +62,16 @@
62 62
63#define SSH_GSS_OIDTYPE 0x06 63#define SSH_GSS_OIDTYPE 0x06
64 64
65#define SSH2_MSG_KEXGSS_INIT 30
66#define SSH2_MSG_KEXGSS_CONTINUE 31
67#define SSH2_MSG_KEXGSS_COMPLETE 32
68#define SSH2_MSG_KEXGSS_HOSTKEY 33
69#define SSH2_MSG_KEXGSS_ERROR 34
70#define SSH2_MSG_KEXGSS_GROUPREQ 40
71#define SSH2_MSG_KEXGSS_GROUP 41
72#define KEX_GSS_GRP1_SHA1_ID "gss-group1-sha1-"
73#define KEX_GSS_GEX_SHA1_ID "gss-gex-sha1-"
74
65typedef struct { 75typedef struct {
66 char *filename; 76 char *filename;
67 char *envvar; 77 char *envvar;
@@ -99,6 +109,7 @@ typedef struct {
99} Gssctxt; 109} Gssctxt;
100 110
101extern ssh_gssapi_mech *supported_mechs[]; 111extern ssh_gssapi_mech *supported_mechs[];
112extern Gssctxt *gss_kex_context;
102 113
103int ssh_gssapi_check_oid(Gssctxt *, void *, size_t); 114int ssh_gssapi_check_oid(Gssctxt *, void *, size_t);
104void ssh_gssapi_set_oid_data(Gssctxt *, void *, size_t); 115void ssh_gssapi_set_oid_data(Gssctxt *, void *, size_t);
@@ -121,13 +132,20 @@ OM_uint32 ssh_gssapi_sign(Gssctxt *, gss_buffer_t, gss_buffer_t);
121OM_uint32 ssh_gssapi_server_ctx(Gssctxt **, gss_OID); 132OM_uint32 ssh_gssapi_server_ctx(Gssctxt **, gss_OID);
122void ssh_gssapi_buildmic(Buffer *, const char *, const char *, const char *); 133void ssh_gssapi_buildmic(Buffer *, const char *, const char *, const char *);
123 134
124/* In the server */ 135typedef int ssh_gssapi_check_fn(gss_OID, void *);
136char *ssh_gssapi_client_mechanisms(const char *host);
137char *ssh_gssapi_kex_mechs(gss_OID_set, ssh_gssapi_check_fn *, void *);
138int ssh_gssapi_check_mechanism(gss_OID, void *);
139gss_OID ssh_gssapi_id_kex(Gssctxt *, char *, int *);
140
141int ssh_gssapi_server_check_mech(gss_OID, void *);
125int ssh_gssapi_userok(char *name); 142int ssh_gssapi_userok(char *name);
126OM_uint32 ssh_gssapi_checkmic(Gssctxt *, gss_buffer_t, gss_buffer_t); 143OM_uint32 ssh_gssapi_checkmic(Gssctxt *, gss_buffer_t, gss_buffer_t);
127void ssh_gssapi_do_child(char ***, u_int *); 144void ssh_gssapi_do_child(char ***, u_int *);
128void ssh_gssapi_cleanup_creds(void); 145void ssh_gssapi_cleanup_creds(void);
129void ssh_gssapi_storecreds(void); 146void ssh_gssapi_storecreds(void);
130 147char * ssh_gssapi_server_mechanisms(void);
148int ssh_gssapi_oid_table_ok();
131#endif /* GSSAPI */ 149#endif /* GSSAPI */
132 150
133#endif /* _SSH_GSS_H */ 151#endif /* _SSH_GSS_H */