[15638] in Kerberos_V5_Development
encrypted_challenge_main.c
daemon@ATHENA.MIT.EDU (Jeff Blaine)
Wed Mar 24 10:15:40 2010
Message-ID: <4BAA1E74.7090606@kickflop.net>
Date: Wed, 24 Mar 2010 10:15:16 -0400
From: Jeff Blaine <jblaine@kickflop.net>
MIME-Version: 1.0
To: krbdev@mit.edu
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: krbdev-bounces@mit.edu
src/plugins/preauth/encrypted_challenge_main.c contains
the following (with a little different formatting than
this email shows).
Please take note of the 'retval' usage, specifically the
final 'if (retval == 0)' shown (C), which seems really poor as
it's checking on the return value of either "A" or "B" and
it doesn't know/care which.
Do I just not understand?
/* ... */
retval = get_data_proc(context, rock, /* A */
krb5plugin_preauth_client_get_etype,
&etype_data);
if (retval == 0) {
enctype = *((krb5_enctype *)etype_data->data);
if (as_key->length == 0 || as_key->enctype != enctype)
retval = gak_fct(context, request->client, /* B */
enctype, prompter, prompter_data,
salt, s2kparams,
as_key, gak_data);
}
if (padata->length) {
/* We've got padata. Try to decrypt the timestamp */
krb5_enc_data *enc = NULL;
krb5_data scratch;
scratch.length = padata->length;
scratch.data = (char *) padata->contents;
if (retval == 0) /* C */
retval = krb5_c_fx_cf2_simple(context, armor_key,
"kdcchallengearmor",
as_key, "challengelongterm",
&challenge_key);
/* ... */
_______________________________________________
krbdev mailing list krbdev@mit.edu
https://mailman.mit.edu/mailman/listinfo/krbdev