From: mdw Date: Sat, 3 Feb 2001 11:58:22 +0000 (+0000) Subject: Store the correct seed information and count for DSA keys now that it's X-Git-Url: https://git.distorted.org.uk/u/mdw/catacomb/commitdiff_plain/f4f8e305f12b252b02f405657fc7277a61a3e755 Store the correct seed information and count for DSA keys now that it's available. --- diff --git a/keyutil.c b/keyutil.c index fac8813..25be851 100644 --- a/keyutil.c +++ b/keyutil.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: keyutil.c,v 1.11 2000/12/06 20:33:27 mdw Exp $ + * $Id: keyutil.c,v 1.12 2001/02/03 11:58:22 mdw Exp $ * * Simple key manager program * @@ -30,6 +30,10 @@ /*----- Revision history --------------------------------------------------* * * $Log: keyutil.c,v $ + * Revision 1.12 2001/02/03 11:58:22 mdw + * Store the correct seed information and count for DSA keys now that it's + * available. + * * Revision 1.11 2000/12/06 20:33:27 mdw * Make flags be macros rather than enumerations, to ensure that they're * unsigned. @@ -467,6 +471,7 @@ static void alg_dsaparam(keyopts *k) dstr d = DSTR_INIT; base64_ctx c; key_data *kd = &k->k->k; + dsa_seed ds; /* --- Choose appropriate bit lengths if necessary --- */ @@ -483,7 +488,7 @@ static void alg_dsaparam(keyopts *k) /* --- Allocate the parameters --- */ - if (dsa_gen(&dp, k->qbits, k->bits, 0, p, sz, + if (dsa_gen(&dp, k->qbits, k->bits, 0, p, sz, &ds, (k->f & f_quiet) ? 0 : pgen_ev, 0)) die(EXIT_FAILURE, "DSA parameter generation failed"); @@ -502,9 +507,13 @@ static void alg_dsaparam(keyopts *k) base64_init(&c); c.maxline = 0; c.indent = ""; - base64_encode(&c, p, sz, &d); + base64_encode(&c, ds.p, ds.sz, &d); base64_encode(&c, 0, 0, &d); key_putattr(k->kf, k->k, "seed", d.buf); + DRESET(&d); + dstr_putf(&d, "%u", ds.count); + key_putattr(k->kf, k->k, "count", d.buf); + xfree(ds.p); sub_free(p, sz); dstr_destroy(&d); }