]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
simplify casting to mpz_t using __mpz_struct and cleaned up mpz_t access.
authorNikos Mavrogiannopoulos <nmav@redhat.com>
Fri, 2 May 2014 07:10:49 +0000 (09:10 +0200)
committerNikos Mavrogiannopoulos <nmav@redhat.com>
Fri, 2 May 2014 07:26:55 +0000 (09:26 +0200)
lib/nettle/gnettle.h
lib/nettle/mpi.c
lib/nettle/pk.c

index 25c873e9fd072f32744f921d044f23479a46d7a8..e27149c3ea1651308e78b3d95947f2e39ed7691e 100644 (file)
@@ -1,2 +1,3 @@
 #define PRIME_CHECK_PARAM 8
 #define TOMPZ(x) ((__mpz_struct*)(x))
+#define SIZEOF_MPZT sizeof(__mpz_struct)
index 12e7a195022ba60e688bba707dd4828fafd4c736..7940b3caa19b00365e9a730a3f01606a1521af35 100644 (file)
@@ -71,16 +71,15 @@ wrap_nettle_mpi_print(const bigint_t a, void *buffer, size_t * nbytes,
 
 static int wrap_nettle_mpi_init(bigint_t *w)
 {
-mpz_t *r;
+bigint_t r;
 
-       r = gnutls_malloc(sizeof(*r));
+       r = gnutls_malloc(SIZEOF_MPZT);
        if (r == NULL) {
                gnutls_assert();
                return GNUTLS_E_MEMORY_ERROR;
        }
 
-       mpz_init(*r);
-       
+       mpz_init(TOMPZ(r));
        *w = r;
 
        return 0;
index 3f9bd3884fe0dd151bc84d242e124a394755b951..303cbaa78eed743a5c59dcf3fc4ef06424e6ce1b 100644 (file)
@@ -83,33 +83,33 @@ static void
 _dsa_params_to_pubkey(const gnutls_pk_params_st * pk_params,
                      struct dsa_public_key *pub)
 {
-       memcpy(&pub->p, pk_params->params[DSA_P], sizeof(mpz_t));
+       memcpy(pub->p, pk_params->params[DSA_P], SIZEOF_MPZT);
 
        if (pk_params->params[DSA_Q])
                memcpy(&pub->q, pk_params->params[DSA_Q], sizeof(mpz_t));
-       memcpy(&pub->g, pk_params->params[DSA_G], sizeof(mpz_t));
+       memcpy(pub->g, pk_params->params[DSA_G], SIZEOF_MPZT);
 
        if (pk_params->params[DSA_Y] != NULL)
-               memcpy(&pub->y, pk_params->params[DSA_Y], sizeof(mpz_t));
+               memcpy(pub->y, pk_params->params[DSA_Y], 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]));
@@ -119,8 +119,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);
 }
 
@@ -633,8 +633,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);
 
@@ -667,8 +667,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);