diff options
author | Nikos Mavrogiannopoulos <nmav@redhat.com> | 2014-05-02 09:10:49 +0200 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@redhat.com> | 2014-05-02 15:01:16 +0200 |
commit | fc5d7cdce296f2a8a6189f78b6d3eb3644186ccb (patch) | |
tree | 14174ecb7e0dfd6c7b9b8cdcd9d4a4890957aecf | |
parent | bd533f6c55a2edc1394d63025adeb04767c5b863 (diff) | |
download | gnutls-fc5d7cdce296f2a8a6189f78b6d3eb3644186ccb.tar.gz |
simplify casting to mpz_t using __mpz_struct and cleaned up mpz_t access.
Conflicts:
lib/nettle/mpi.c
lib/nettle/pk.c
-rw-r--r-- | lib/nettle/gnettle.h | 1 | ||||
-rw-r--r-- | lib/nettle/mpi.c | 8 | ||||
-rw-r--r-- | lib/nettle/pk.c | 34 |
3 files changed, 22 insertions, 21 deletions
diff --git a/lib/nettle/gnettle.h b/lib/nettle/gnettle.h index 25c873e9fd..e27149c3ea 100644 --- a/lib/nettle/gnettle.h +++ b/lib/nettle/gnettle.h @@ -1,2 +1,3 @@ #define PRIME_CHECK_PARAM 8 #define TOMPZ(x) ((__mpz_struct*)(x)) +#define SIZEOF_MPZT sizeof(__mpz_struct) diff --git a/lib/nettle/mpi.c b/lib/nettle/mpi.c index 1e9b5db61f..bd5f6074c7 100644 --- a/lib/nettle/mpi.c +++ b/lib/nettle/mpi.c @@ -71,17 +71,17 @@ wrap_nettle_mpi_print(const bigint_t a, void *buffer, size_t * nbytes, static bigint_t wrap_nettle_mpi_new(int nbits) { - mpz_t *p; + bigint_t p; - p = gnutls_malloc(sizeof(*p)); + p = gnutls_malloc(SIZEOF_MPZT); if (p == NULL) { gnutls_assert(); return NULL; } if (nbits == 0) - mpz_init(*p); + mpz_init(TOMPZ(p)); else - mpz_init2(*p, nbits); + mpz_init2(TOMPZ(p), nbits); return p; } diff --git a/lib/nettle/pk.c b/lib/nettle/pk.c index 9cdedc3ed5..008e3ecc70 100644 --- a/lib/nettle/pk.c +++ b/lib/nettle/pk.c @@ -57,29 +57,29 @@ static void _dsa_params_to_pubkey(const gnutls_pk_params_st * pk_params, struct dsa_public_key *pub) { - memcpy(&pub->p, pk_params->params[0], sizeof(mpz_t)); - memcpy(&pub->q, pk_params->params[1], sizeof(mpz_t)); - memcpy(&pub->g, pk_params->params[2], sizeof(mpz_t)); - memcpy(&pub->y, pk_params->params[3], sizeof(mpz_t)); + memcpy(pub->p, pk_params->params[0], SIZEOF_MPZT); + memcpy(pub->q, pk_params->params[1], SIZEOF_MPZT); + memcpy(pub->g, pk_params->params[2], SIZEOF_MPZT); + memcpy(pub->y, pk_params->params[3], SIZEOF_MPZT); } static void _dsa_params_to_privkey(const gnutls_pk_params_st * pk_params, struct dsa_private_key *pub) { - memcpy(&pub->x, pk_params->params[4], sizeof(mpz_t)); + memcpy(pub->x, pk_params->params[4], SIZEOF_MPZT); } static void _rsa_params_to_privkey(const gnutls_pk_params_st * pk_params, struct rsa_private_key *priv) { - memcpy(&priv->d, pk_params->params[2], sizeof(mpz_t)); - memcpy(&priv->p, pk_params->params[3], sizeof(mpz_t)); - memcpy(&priv->q, pk_params->params[4], sizeof(mpz_t)); - memcpy(&priv->c, pk_params->params[5], sizeof(mpz_t)); - memcpy(&priv->a, pk_params->params[6], sizeof(mpz_t)); - memcpy(&priv->b, pk_params->params[7], sizeof(mpz_t)); + memcpy(priv->d, pk_params->params[2], SIZEOF_MPZT); + memcpy(priv->p, pk_params->params[3], SIZEOF_MPZT); + memcpy(priv->q, pk_params->params[4], SIZEOF_MPZT); + memcpy(priv->c, pk_params->params[5], SIZEOF_MPZT); + memcpy(priv->a, pk_params->params[6], SIZEOF_MPZT); + memcpy(priv->b, pk_params->params[7], SIZEOF_MPZT); priv->size = nettle_mpz_sizeinbase_256_u(TOMPZ (pk_params->params[RSA_MODULUS])); @@ -89,8 +89,8 @@ static void _rsa_params_to_pubkey(const gnutls_pk_params_st * pk_params, struct rsa_public_key *pub) { - memcpy(&pub->n, pk_params->params[RSA_MODULUS], sizeof(mpz_t)); - memcpy(&pub->e, pk_params->params[RSA_PUB], sizeof(mpz_t)); + memcpy(pub->n, pk_params->params[RSA_MODULUS], SIZEOF_MPZT); + memcpy(pub->e, pk_params->params[RSA_PUB], SIZEOF_MPZT); pub->size = nettle_mpz_sizeinbase_256_u(pub->n); } @@ -525,8 +525,8 @@ _wrap_nettle_pk_verify(gnutls_pk_algorithm_t algo, goto cleanup; } - memcpy(&sig.r, tmp[0], sizeof(sig.r)); - memcpy(&sig.s, tmp[1], sizeof(sig.s)); + memcpy(sig.r, tmp[0], SIZEOF_MPZT); + memcpy(sig.s, tmp[1], SIZEOF_MPZT); _gnutls_dsa_q_to_hash(algo, pk_params, &hash_len); @@ -559,8 +559,8 @@ _wrap_nettle_pk_verify(gnutls_pk_algorithm_t algo, } memset(&pub, 0, sizeof(pub)); _dsa_params_to_pubkey(pk_params, &pub); - memcpy(&sig.r, tmp[0], sizeof(sig.r)); - memcpy(&sig.s, tmp[1], sizeof(sig.s)); + memcpy(sig.r, tmp[0], SIZEOF_MPZT); + memcpy(sig.s, tmp[1], SIZEOF_MPZT); _gnutls_dsa_q_to_hash(algo, pk_params, &hash_len); |