version 1.7, 2003/11/21 11:57:03 |
version 1.8, 2004/06/21 17:36:31 |
|
|
static int |
static int |
userauth_gssapi(Authctxt *authctxt) |
userauth_gssapi(Authctxt *authctxt) |
{ |
{ |
gss_OID_desc oid = {0, NULL}; |
gss_OID_desc goid = {0, NULL}; |
Gssctxt *ctxt = NULL; |
Gssctxt *ctxt = NULL; |
int mechs; |
int mechs; |
gss_OID_set supported; |
gss_OID_set supported; |
|
|
if (len > 2 && |
if (len > 2 && |
doid[0] == SSH_GSS_OIDTYPE && |
doid[0] == SSH_GSS_OIDTYPE && |
doid[1] == len - 2) { |
doid[1] == len - 2) { |
oid.elements = doid + 2; |
goid.elements = doid + 2; |
oid.length = len - 2; |
goid.length = len - 2; |
gss_test_oid_set_member(&ms, &oid, supported, |
gss_test_oid_set_member(&ms, &goid, supported, |
&present); |
&present); |
} else { |
} else { |
logit("Badly formed OID received"); |
logit("Badly formed OID received"); |
|
|
return (0); |
return (0); |
} |
} |
|
|
if (GSS_ERROR(PRIVSEP(ssh_gssapi_server_ctx(&ctxt, &oid)))) { |
if (GSS_ERROR(PRIVSEP(ssh_gssapi_server_ctx(&ctxt, &goid)))) { |
xfree(doid); |
xfree(doid); |
return (0); |
return (0); |
} |
} |