RPM Package Manager, CVS Repository http://rpm5.org/cvs/ ____________________________________________________________________________
Server: rpm5.org Name: Jeff Johnson Root: /v/rpm/cvs Email: [email protected] Module: rpm Date: 03-Jun-2010 17:52:13 Branch: HEAD Handle: 2010060315521200 Modified files: rpm/rpmio rpmgc.c Log: - gc: hardwire nbits=256 ECDSA parameters generating keypairs. total hack. - gc: set pubkey_algoN lazily with sign/generate methods. Summary: Revision Changes Path 2.29 +15 -1 rpm/rpmio/rpmgc.c ____________________________________________________________________________ patch -p0 <<'@@ .' Index: rpm/rpmio/rpmgc.c ============================================================================ $ cvs diff -u -r2.28 -r2.29 rpmgc.c --- rpm/rpmio/rpmgc.c 1 Jun 2010 22:00:28 -0000 2.28 +++ rpm/rpmio/rpmgc.c 3 Jun 2010 15:52:12 -0000 2.29 @@ -364,6 +364,10 @@ { rpmgc gc = dig->impl; int rc; +pgpDigParams pubp = pgpGetPubkey(dig); +pgpDigParams sigp = pgpGetSignature(dig); +dig->pubkey_algoN = _pgpPubkeyAlgo2Name(pubp->pubkey_algo); +dig->hash_algoN = _pgpHashAlgo2Name(sigp->hash_algo); /* Sign the hash. */ gc->err = rpmgcErr(gc, "gcry+pk_sign", @@ -383,9 +387,10 @@ int rpmgcGenerate(pgpDig dig) /*...@*/ { - pgpDigParams pubp = pgpGetPubkey(dig); rpmgc gc = dig->impl; int rc; +pgpDigParams pubp = pgpGetPubkey(dig); +dig->pubkey_algoN = _pgpPubkeyAlgo2Name(pubp->pubkey_algo); /* XXX FIXME: gc->{key_spec,key_pair} could be local. */ /* XXX FIXME: gc->qbits w DSA? curve w ECDSA? other params? */ @@ -415,12 +420,21 @@ gc->nbits)); break; case PGPPUBKEYALGO_ECDSA: +#ifdef DYING gc->err = rpmgcErr(gc, "gc->key_spec", gcry_sexp_build(&gc->key_spec, NULL, gc->in_fips_mode ? "(genkey (ECDSA (nbits %d)))" : "(genkey (ECDSA (nbits %d)(transient-key)))", gc->nbits)); +#else + gc->err = rpmgcErr(gc, "gc->key_spec", + gcry_sexp_build(&gc->key_spec, NULL, + gc->in_fips_mode + ? "(genkey (ECDSA (nbits 3:256)(curve prime256v1)))" + : "(genkey (ECDSA (nbits 3:256)(curve prime256v1)(transient-key)))", + gc->nbits)); +#endif break; default: assert(0); @@ . ______________________________________________________________________ RPM Package Manager http://rpm5.org CVS Sources Repository [email protected]
