X-Git-Url: http://www.project-moonshot.org/gitweb/?p=openssh.git;a=blobdiff_plain;f=ssh-gss.h;fp=ssh-gss.h;h=55eabc7751674ffc3b90467544f3d31205b6fb8f;hp=c29a1b7e7e4e71cd819046c34217b54a84516d76;hb=d759e6c50b8bab860dae48501cd0d7fe48ee45e7;hpb=0bf87176543b3874dfd9e1a2ad928fe78388669d diff --git a/ssh-gss.h b/ssh-gss.h index c29a1b7..55eabc7 100644 --- a/ssh-gss.h +++ b/ssh-gss.h @@ -42,6 +42,10 @@ # include # endif +#ifndef HEIMDAL +#include +#endif + /* MIT Kerberos doesn't seem to define GSS_NT_HOSTBASED_SERVICE */ #ifndef GSS_C_NT_HOSTBASED_SERVICE @@ -71,20 +75,10 @@ typedef struct { gss_buffer_desc displayname; gss_buffer_desc exportedname; gss_cred_id_t creds; - struct ssh_gssapi_mech_struct *mech; + gss_name_t name; ssh_gssapi_ccache store; } ssh_gssapi_client; -typedef struct ssh_gssapi_mech_struct { - char *enc_name; - char *name; - gss_OID_desc oid; - int (*dochild) (ssh_gssapi_client *); - int (*userok) (ssh_gssapi_client *, char *); - int (*localname) (ssh_gssapi_client *, char **); - void (*storecreds) (ssh_gssapi_client *); -} ssh_gssapi_mech; - typedef struct { OM_uint32 major; /* both */ OM_uint32 minor; /* both */ @@ -96,13 +90,10 @@ typedef struct { gss_cred_id_t client_creds; /* server */ } Gssctxt; -extern ssh_gssapi_mech *supported_mechs[]; - int ssh_gssapi_check_oid(Gssctxt *, void *, size_t); void ssh_gssapi_set_oid_data(Gssctxt *, void *, size_t); void ssh_gssapi_set_oid(Gssctxt *, gss_OID); void ssh_gssapi_supported_oids(gss_OID_set *); -ssh_gssapi_mech *ssh_gssapi_get_ctype(Gssctxt *); OM_uint32 ssh_gssapi_import_name(Gssctxt *, const char *); OM_uint32 ssh_gssapi_init_ctx(Gssctxt *, int,