aboutsummaryrefslogtreecommitdiffstats
path: root/g10
diff options
context:
space:
mode:
Diffstat (limited to 'g10')
-rw-r--r--g10/ChangeLog6
-rw-r--r--g10/build-packet.c1
-rw-r--r--g10/encr-data.c1
-rw-r--r--g10/free-packet.c1
-rw-r--r--g10/gpgd.c1
-rw-r--r--g10/keygen.c48
-rw-r--r--g10/packet.h1
-rw-r--r--g10/parse-packet.c1
-rw-r--r--g10/passphrase.c1
-rw-r--r--g10/pubkey-enc.c1
-rw-r--r--g10/seskey.c1
-rw-r--r--g10/skclist.c1
12 files changed, 36 insertions, 28 deletions
diff --git a/g10/ChangeLog b/g10/ChangeLog
index f3898ca57..9dfd16b54 100644
--- a/g10/ChangeLog
+++ b/g10/ChangeLog
@@ -1,3 +1,9 @@
+Mon Jan 31 16:37:34 CET 2000 Werner Koch <[email protected]>
+
+ * keygen.c (gen_dsa): Modified to work with gcry_pk_genkey.
+
+ * Removed dummy-cipher.h from all files.
+
Thu Jan 27 18:00:44 CET 2000 Werner Koch <[email protected]>
* keygen.c (gen_elg): Modified to work with gcry_pk_genkey.
diff --git a/g10/build-packet.c b/g10/build-packet.c
index 7b737d624..2f3eebea3 100644
--- a/g10/build-packet.c
+++ b/g10/build-packet.c
@@ -28,7 +28,6 @@
#include "errors.h"
#include "iobuf.h"
#include "util.h"
-#include "dummy-cipher.h"
#include <gcrypt.h>
#include "options.h"
#include "main.h"
diff --git a/g10/encr-data.c b/g10/encr-data.c
index 0f741b9ec..7c90829e2 100644
--- a/g10/encr-data.c
+++ b/g10/encr-data.c
@@ -26,7 +26,6 @@
#include <gcrypt.h>
#include "util.h"
#include "packet.h"
-#include "dummy-cipher.h"
#include "options.h"
#include "i18n.h"
diff --git a/g10/free-packet.c b/g10/free-packet.c
index 56a65d7ae..173f8d812 100644
--- a/g10/free-packet.c
+++ b/g10/free-packet.c
@@ -27,7 +27,6 @@
#include "packet.h"
#include "iobuf.h"
#include "util.h"
-#include "dummy-cipher.h"
#include <gcrypt.h>
#include "options.h"
#include "main.h"
diff --git a/g10/gpgd.c b/g10/gpgd.c
index a11a6aacf..54a105978 100644
--- a/g10/gpgd.c
+++ b/g10/gpgd.c
@@ -38,7 +38,6 @@
#include <sys/stat.h>
#include "util.h"
-#include "dummy-cipher.h"
#include "options.h"
#include "main.h"
diff --git a/g10/keygen.c b/g10/keygen.c
index 1a0130072..af288b3aa 100644
--- a/g10/keygen.c
+++ b/g10/keygen.c
@@ -29,7 +29,6 @@
#include <gcrypt.h>
#include "main.h"
#include "packet.h"
-#include "dummy-cipher.h"
#include "ttyio.h"
#include "options.h"
#include "keydb.h"
@@ -296,8 +295,6 @@ gen_elg(int algo, unsigned nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
algo == GCRY_PK_ELG ? "elg" : "x-oops",0),
gcry_sexp_new_name_data( "nbits", buf, 0 ) )
);
- log_debug("input is:\n");
- gcry_sexp_dump( s_parms );
rc = gcry_pk_genkey( &s_key, s_parms );
gcry_sexp_release( s_parms );
@@ -305,8 +302,6 @@ gen_elg(int algo, unsigned nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
log_error("pk_genkey failed: %s\n", gpg_errstr(rc) );
return rc;
}
- log_debug("output is:\n");
- gcry_sexp_dump( s_key );
sk = gcry_xcalloc( 1, sizeof *sk );
pk = gcry_xcalloc( 1, sizeof *pk );
@@ -385,16 +380,23 @@ gen_dsa(unsigned nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
PACKET *pkt;
PKT_secret_key *sk;
PKT_public_key *pk;
- MPI skey[5];
MPI *factors;
+ char buf[100];
+ GCRY_SEXP s_parms, s_key;
if( nbits > 1024 )
nbits = 1024;
- /*rc = pubkey_generate( GCRY_PK_DSA, nbits, skey, &factors );*/
- rc = gcry_pk_genkey( NULL, NULL );
+ sprintf(buf, "%u", nbits );
+ s_parms = SEXP_CONS( SEXP_NEW( "genkey", 0 ),
+ SEXP_CONS( SEXP_NEW("dsa",0),
+ gcry_sexp_new_name_data( "nbits", buf, 0 ) )
+ );
+
+ rc = gcry_pk_genkey( &s_key, s_parms );
+ gcry_sexp_release( s_parms );
if( rc ) {
- log_error("pubkey_generate failed: %s\n", gpg_errstr(rc) );
+ log_error("pk_genkey failed: %s\n", gpg_errstr(rc) );
return rc;
}
@@ -406,15 +408,23 @@ gen_dsa(unsigned nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
sk->expiredate = pk->expiredate = sk->timestamp + expireval;
}
sk->pubkey_algo = pk->pubkey_algo = GCRY_PK_DSA;
- pk->pkey[0] = mpi_copy( skey[0] );
- pk->pkey[1] = mpi_copy( skey[1] );
- pk->pkey[2] = mpi_copy( skey[2] );
- pk->pkey[3] = mpi_copy( skey[3] );
- sk->skey[0] = skey[0];
- sk->skey[1] = skey[1];
- sk->skey[2] = skey[2];
- sk->skey[3] = skey[3];
- sk->skey[4] = skey[4];
+
+ rc = key_from_sexp( pk->pkey, s_key, "public-key", "pqgy" );
+ if( rc ) {
+ log_error("key_from_sexp failed: rc=%d\n", rc );
+ return rc;
+ }
+ rc = key_from_sexp( sk->skey, s_key, "private-key", "pqgyx" );
+ if( rc ) {
+ log_error("key_from_sexp failed: rc=%d\n", rc );
+ return rc;
+ }
+ rc = factors_from_sexp( &factors, s_key );
+ if( rc ) {
+ log_error("factors_from_sexp failed: rc=%d\n", rc );
+ return rc;
+ }
+
sk->is_protected = 0;
sk->protect.algo = 0;
@@ -453,6 +463,8 @@ gen_dsa(unsigned nbits, KBNODE pub_root, KBNODE sec_root, DEK *dek,
add_kbnode( sec_root,
make_mpi_comment_node("#:DSA_factor:", factors[i] ));
+ /* fixme: Merge this with the elg-generate function and release
+ * some more stuff */
return 0;
}
diff --git a/g10/packet.h b/g10/packet.h
index ca7005a74..495871cf2 100644
--- a/g10/packet.h
+++ b/g10/packet.h
@@ -23,7 +23,6 @@
#include "types.h"
#include "iobuf.h"
-#include "dummy-cipher.h"
#include "filter.h"
#ifndef DID_MPI_TYPEDEF
diff --git a/g10/parse-packet.c b/g10/parse-packet.c
index 107bf1a62..886ba4a25 100644
--- a/g10/parse-packet.c
+++ b/g10/parse-packet.c
@@ -27,7 +27,6 @@
#include "packet.h"
#include "iobuf.h"
#include "util.h"
-#include "dummy-cipher.h"
#include <gcrypt.h>
#include "filter.h"
#include "options.h"
diff --git a/g10/passphrase.c b/g10/passphrase.c
index ef59db0d4..53b2a82a3 100644
--- a/g10/passphrase.c
+++ b/g10/passphrase.c
@@ -28,7 +28,6 @@
#include <gcrypt.h>
#include "options.h"
#include "ttyio.h"
-#include "dummy-cipher.h"
#include "keydb.h"
#include "main.h"
#include "i18n.h"
diff --git a/g10/pubkey-enc.c b/g10/pubkey-enc.c
index 245c250eb..587847aeb 100644
--- a/g10/pubkey-enc.c
+++ b/g10/pubkey-enc.c
@@ -29,7 +29,6 @@
#include "main.h"
#include "keydb.h"
#include "trustdb.h"
-#include "dummy-cipher.h"
#include "status.h"
#include "options.h"
#include "i18n.h"
diff --git a/g10/seskey.c b/g10/seskey.c
index 261e904b7..996118e0f 100644
--- a/g10/seskey.c
+++ b/g10/seskey.c
@@ -26,7 +26,6 @@
#include <gcrypt.h>
#include "util.h"
-#include "dummy-cipher.h"
#include "main.h"
#include "i18n.h"
diff --git a/g10/skclist.c b/g10/skclist.c
index ab5682891..a0d69a49e 100644
--- a/g10/skclist.c
+++ b/g10/skclist.c
@@ -32,7 +32,6 @@
#include "keydb.h"
#include "util.h"
#include "i18n.h"
-#include "dummy-cipher.h"
#include "main.h"