summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2005-04-27 18:06:22 +0000
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2005-04-27 18:06:22 +0000
commitd463a569f225108ac2ac84d44aadaad35d5c3b5e (patch)
treef50c6656664a51a70d70c6d84724e12ff6ec5c2d
parent507c9c909d570a845cd3823fe21cac182a0e8e7f (diff)
downloadgnutls-d463a569f225108ac2ac84d44aadaad35d5c3b5e.tar.gz
at the export phase, encode the key.
-rw-r--r--lib/x509/privkey.c13
-rw-r--r--lib/x509/x509.h78
2 files changed, 39 insertions, 52 deletions
diff --git a/lib/x509/privkey.c b/lib/x509/privkey.c
index 24156e6daa..687a7229a8 100644
--- a/lib/x509/privkey.c
+++ b/lib/x509/privkey.c
@@ -144,9 +144,8 @@ int gnutls_x509_privkey_cpy(gnutls_x509_privkey_t dst,
/* Converts an RSA PKCS#1 key to
* an internal structure (gnutls_private_key)
*/
-ASN1_TYPE _gnutls_privkey_decode_pkcs1_rsa_key(const gnutls_datum_t *
- raw_key,
- gnutls_x509_privkey_t pkey)
+ASN1_TYPE _gnutls_privkey_decode_pkcs1_rsa_key(
+ const gnutls_datum_t * raw_key, gnutls_x509_privkey_t pkey)
{
int result;
ASN1_TYPE pkey_asn;
@@ -667,9 +666,13 @@ int gnutls_x509_privkey_export(gnutls_x509_privkey_t key,
msg = PEM_KEY_DSA;
else
msg = NULL;
-
+
+ /* we encode the exported key anyway
+ */
+#if 0
if (key->crippled) { /* encode the parameters on the fly.
*/
+#endif
switch (key->pk_algorithm) {
case GNUTLS_PK_DSA:
ret = _encode_dsa(&key->key, key->params);
@@ -689,7 +692,9 @@ int gnutls_x509_privkey_export(gnutls_x509_privkey_t key,
gnutls_assert();
return GNUTLS_E_INVALID_REQUEST;
}
+#if 0
}
+#endif
return _gnutls_x509_export_int(key->key, format, msg,
*output_data_size, output_data, output_data_size);
diff --git a/lib/x509/x509.h b/lib/x509/x509.h
index 1fa863611c..f80ad65c18 100644
--- a/lib/x509/x509.h
+++ b/lib/x509/x509.h
@@ -92,98 +92,80 @@ typedef struct gnutls_x509_privkey_int {
} gnutls_x509_privkey_int;
int gnutls_x509_crt_get_issuer_dn_by_oid(gnutls_x509_crt_t cert,
- const char *oid, int indx,
- unsigned int raw_flag, void *buf,
- size_t * sizeof_buf);
+ const char *oid, int indx, unsigned int raw_flag, void *buf,
+ size_t * sizeof_buf);
int gnutls_x509_crt_get_subject_alt_name(gnutls_x509_crt_t cert,
- unsigned int seq, void *ret,
- size_t * ret_size,
- unsigned int *critical);
+ unsigned int seq, void *ret, size_t * ret_size,
+ unsigned int *critical);
int gnutls_x509_crt_get_dn_by_oid(gnutls_x509_crt_t cert, const char *oid,
- int indx, unsigned int raw_flag,
- void *buf, size_t * sizeof_buf);
+ int indx, unsigned int raw_flag, void *buf, size_t * sizeof_buf);
int gnutls_x509_crt_get_ca_status(gnutls_x509_crt_t cert,
- unsigned int *critical);
+ unsigned int *critical);
int gnutls_x509_crt_get_pk_algorithm(gnutls_x509_crt_t cert,
- unsigned int *bits);
+ unsigned int *bits);
int _gnutls_x509_crt_cpy(gnutls_x509_crt_t dest, gnutls_x509_crt_t src);
int _gnutls_x509_crt_get_raw_issuer_dn(gnutls_x509_crt_t cert,
- gnutls_datum_t * start);
+ gnutls_datum_t * start);
int _gnutls_x509_crt_get_raw_dn(gnutls_x509_crt_t cert,
- gnutls_datum_t * start);
+ gnutls_datum_t * start);
int gnutls_x509_crt_get_serial(gnutls_x509_crt_t cert, void *result,
- size_t * result_size);
+ size_t * result_size);
int _gnutls_x509_compare_raw_dn(const gnutls_datum_t * dn1,
- const gnutls_datum_t * dn2);
+ const gnutls_datum_t * dn2);
int gnutls_x509_crt_check_revocation(gnutls_x509_crt_t cert,
- const gnutls_x509_crl_t * crl_list,
- int crl_list_length);
+ const gnutls_x509_crl_t * crl_list, int crl_list_length);
int _gnutls_x509_crl_cpy(gnutls_x509_crl_t dest, gnutls_x509_crl_t src);
int _gnutls_x509_crl_get_raw_issuer_dn(gnutls_x509_crl_t crl,
- gnutls_datum_t * dn);
+ gnutls_datum_t * dn);
int gnutls_x509_crl_get_crt_count(gnutls_x509_crl_t crl);
int gnutls_x509_crl_get_crt_serial(gnutls_x509_crl_t crl, int indx,
- unsigned char *serial,
- size_t * serial_size, time_t * tim);
+ unsigned char *serial, size_t * serial_size, time_t * tim);
void gnutls_x509_crl_deinit(gnutls_x509_crl_t crl);
int gnutls_x509_crl_init(gnutls_x509_crl_t * crl);
int gnutls_x509_crl_import(gnutls_x509_crl_t crl,
- const gnutls_datum_t * data,
- gnutls_x509_crt_fmt_t format);
+ const gnutls_datum_t * data, gnutls_x509_crt_fmt_t format);
int gnutls_x509_crl_export(gnutls_x509_crl_t crl,
- gnutls_x509_crt_fmt_t format, void *output_data,
- size_t * output_data_size);
+ gnutls_x509_crt_fmt_t format, void *output_data,
+ size_t * output_data_size);
int gnutls_x509_crt_init(gnutls_x509_crt_t * cert);
void gnutls_x509_crt_deinit(gnutls_x509_crt_t cert);
int gnutls_x509_crt_import(gnutls_x509_crt_t cert,
- const gnutls_datum_t * data,
- gnutls_x509_crt_fmt_t format);
+ const gnutls_datum_t * data, gnutls_x509_crt_fmt_t format);
int gnutls_x509_crt_export(gnutls_x509_crt_t cert,
- gnutls_x509_crt_fmt_t format, void *output_data,
- size_t * output_data_size);
+ gnutls_x509_crt_fmt_t format, void *output_data,
+ size_t * output_data_size);
int gnutls_x509_crt_get_key_usage(gnutls_x509_crt_t cert,
- unsigned int *key_usage,
- unsigned int *critical);
+ unsigned int *key_usage, unsigned int *critical);
int gnutls_x509_crt_get_version(gnutls_x509_crt_t cert);
int gnutls_x509_privkey_init(gnutls_x509_privkey_t * key);
void gnutls_x509_privkey_deinit(gnutls_x509_privkey_t key);
int gnutls_x509_privkey_generate(gnutls_x509_privkey_t key,
- gnutls_pk_algorithm_t algo,
- unsigned int bits, unsigned int flags);
+ gnutls_pk_algorithm_t algo, unsigned int bits, unsigned int flags);
int gnutls_x509_privkey_import(gnutls_x509_privkey_t key,
- const gnutls_datum_t * data,
- gnutls_x509_crt_fmt_t format);
+ const gnutls_datum_t * data, gnutls_x509_crt_fmt_t format);
int gnutls_x509_privkey_get_pk_algorithm(gnutls_x509_privkey_t key);
int gnutls_x509_privkey_import_rsa_raw(gnutls_x509_privkey_t key,
- const gnutls_datum_t * m,
- const gnutls_datum_t * e,
- const gnutls_datum_t * d,
- const gnutls_datum_t * p,
- const gnutls_datum_t * q,
- const gnutls_datum_t * u);
+ const gnutls_datum_t * m, const gnutls_datum_t * e,
+ const gnutls_datum_t * d, const gnutls_datum_t * p,
+ const gnutls_datum_t * q, const gnutls_datum_t * u);
int gnutls_x509_privkey_export_rsa_raw(gnutls_x509_privkey_t key,
- gnutls_datum_t * m,
- gnutls_datum_t * e,
- gnutls_datum_t * d,
- gnutls_datum_t * p,
- gnutls_datum_t * q,
- gnutls_datum_t * u);
+ gnutls_datum_t * m, gnutls_datum_t * e, gnutls_datum_t * d,
+ gnutls_datum_t * p, gnutls_datum_t * q, gnutls_datum_t * u);
int gnutls_x509_privkey_export(gnutls_x509_privkey_t key,
- gnutls_x509_crt_fmt_t format,
- void *output_data,
- size_t * output_data_size);
+ gnutls_x509_crt_fmt_t format, void *output_data,
+ size_t * output_data_size);
#define GNUTLS_CRL_REASON_UNUSED 128
#define GNUTLS_CRL_REASON_KEY_COMPROMISE 64