diff options
author | Sam Hartman <hartmans@mit.edu> | 2009-04-03 04:03:45 +0000 |
---|---|---|
committer | Sam Hartman <hartmans@mit.edu> | 2009-04-03 04:03:45 +0000 |
commit | 4e609bf313a80dbc2247a73d1303b2068eec9acd (patch) | |
tree | 9ac56fbff02569ca272eff8d98227b3efbe92f39 /src/kdc/kdc_preauth.c | |
parent | 6d48a7deaeed3dcb5dce55d8e9730c47512a904e (diff) | |
download | krb5-4e609bf313a80dbc2247a73d1303b2068eec9acd.zip krb5-4e609bf313a80dbc2247a73d1303b2068eec9acd.tar.gz krb5-4e609bf313a80dbc2247a73d1303b2068eec9acd.tar.bz2 |
Merge fast branch at 22166 onto trunk
ticket: 6436
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@22167 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/kdc/kdc_preauth.c')
-rw-r--r-- | src/kdc/kdc_preauth.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/kdc/kdc_preauth.c b/src/kdc/kdc_preauth.c index cf26975..3dda381 100644 --- a/src/kdc/kdc_preauth.c +++ b/src/kdc/kdc_preauth.c @@ -290,6 +290,17 @@ static krb5_preauth_systems static_preauth_systems[] = { 0 }, { + "FAST", + KRB5_PADATA_FX_FAST, + PA_HARDWARE, + NULL, + NULL, + NULL, + NULL, + NULL, + 0 + }, + { "etype-info", KRB5_PADATA_ETYPE_INFO, 0, @@ -961,7 +972,8 @@ void get_preauth_hint_list(krb5_kdc_req *request, krb5_db_entry *client, e_data->data = 0; hw_only = isflagset(client->attributes, KRB5_KDB_REQUIRES_HW_AUTH); - pa_data = malloc(sizeof(krb5_pa_data *) * (n_preauth_systems+1)); + /* Allocate 1 entry for the terminator and one for the cookie*/ + pa_data = malloc(sizeof(krb5_pa_data *) * (n_preauth_systems+21)); if (pa_data == 0) return; memset(pa_data, 0, sizeof(krb5_pa_data *) * (n_preauth_systems+1)); @@ -995,6 +1007,8 @@ void get_preauth_hint_list(krb5_kdc_req *request, krb5_db_entry *client, "%spreauth required but hint list is empty", hw_only ? "hw" : ""); } +/* If we fail to get the cookie it is probably still reasonable to continue with the response*/ + kdc_preauth_get_cookie(request->kdc_state, pa); retval = encode_krb5_padata_sequence(pa_data, &edat); if (retval) goto errout; |