From: Nathaniel McCallum Date: Fri, 12 Oct 2012 14:34:19 +0000 (-0400) Subject: Add responder support to preauth_encts/preauth_ec X-Git-Tag: krb5-1.11-alpha1~92 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=40e035eb8049e09bd7555ceded018a8f1b291e88;p=thirdparty%2Fkrb5.git Add responder support to preauth_encts/preauth_ec --- diff --git a/src/lib/krb5/krb/preauth_ec.c b/src/lib/krb5/krb/preauth_ec.c index 48a4a17bf4..2e0785a502 100644 --- a/src/lib/krb5/krb/preauth_ec.c +++ b/src/lib/krb5/krb/preauth_ec.c @@ -39,6 +39,17 @@ ec_flags(krb5_context context, krb5_preauthtype pa_type) return PA_REAL; } +static krb5_error_code +ec_prep_questions(krb5_context context, krb5_clpreauth_moddata moddata, + krb5_clpreauth_modreq modreq, krb5_get_init_creds_opt *opt, + krb5_clpreauth_callbacks cb, krb5_clpreauth_rock rock, + krb5_kdc_req *request, krb5_data *encoded_request_body, + krb5_data *encoded_previous_request, krb5_pa_data *pa_data) +{ + cb->need_as_key(context, rock); + return 0; +} + static krb5_error_code ec_process(krb5_context context, krb5_clpreauth_moddata moddata, krb5_clpreauth_modreq modreq, krb5_get_init_creds_opt *opt, @@ -156,6 +167,7 @@ clpreauth_encrypted_challenge_initvt(krb5_context context, int maj_ver, vt->name = "encrypted_challenge"; vt->pa_type_list = ec_types; vt->flags = ec_flags; + vt->prep_questions = ec_prep_questions; vt->process = ec_process; return 0; } diff --git a/src/lib/krb5/krb/preauth_encts.c b/src/lib/krb5/krb/preauth_encts.c index 559c6700f9..f42710e215 100644 --- a/src/lib/krb5/krb/preauth_encts.c +++ b/src/lib/krb5/krb/preauth_encts.c @@ -35,6 +35,19 @@ encts_flags(krb5_context context, krb5_preauthtype pa_type) return PA_REAL; } +static krb5_error_code +encts_prep_questions(krb5_context context, krb5_clpreauth_moddata moddata, + krb5_clpreauth_modreq modreq, + krb5_get_init_creds_opt *opt, krb5_clpreauth_callbacks cb, + krb5_clpreauth_rock rock, krb5_kdc_req *request, + krb5_data *encoded_request_body, + krb5_data *encoded_previous_request, + krb5_pa_data *pa_data) +{ + cb->need_as_key(context, rock); + return 0; +} + static krb5_error_code encts_process(krb5_context context, krb5_clpreauth_moddata moddata, krb5_clpreauth_modreq modreq, krb5_get_init_creds_opt *opt, @@ -125,6 +138,7 @@ clpreauth_encrypted_timestamp_initvt(krb5_context context, int maj_ver, vt->name = "encrypted_timestamp"; vt->pa_type_list = encts_pa_types; vt->flags = encts_flags; + vt->prep_questions = encts_prep_questions; vt->process = encts_process; return 0; }