]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
Cleaned up the big number support.
authorNikos Mavrogiannopoulos <nmav@gnutls.org>
Wed, 1 May 2002 09:05:59 +0000 (09:05 +0000)
committerNikos Mavrogiannopoulos <nmav@gnutls.org>
Wed, 1 May 2002 09:05:59 +0000 (09:05 +0000)
22 files changed:
lib/auth_anon.c
lib/auth_dhe.c
lib/auth_rsa.c
lib/auth_srp.c
lib/auth_srp_passwd.c
lib/crypt.c
lib/crypt_bcrypt.c
lib/crypt_srpsha1.c
lib/debug.c
lib/gnutls_auth.c
lib/gnutls_dh.c
lib/gnutls_dh_primes.c
lib/gnutls_gcry.c
lib/gnutls_gcry.h
lib/gnutls_openpgp.c
lib/gnutls_openpgp.h
lib/gnutls_pk.c
lib/gnutls_privkey.c
lib/gnutls_srp.c
lib/gnutls_x509.c
lib/x509_ASN.c
lib/x509_sig_check.c

index d343ec129a178aea4ec77897f888bed9b40fe28c..663c2ee42f44b8e728eb183a21ed52920c3dd30c 100644 (file)
@@ -57,7 +57,7 @@ MOD_AUTH_STRUCT anon_auth_struct = {
 };
 
 int gen_anon_server_kx( GNUTLS_STATE state, opaque** data) {
-       MPI x, X, g, p;
+       GNUTLS_MPI x, X, g, p;
        int bits, ret;
        size_t n_X, n_g, n_p;
        uint8 *data_p;
@@ -86,7 +86,7 @@ int gen_anon_server_kx( GNUTLS_STATE state, opaque** data) {
        }
 
        info = _gnutls_get_auth_info( state);   
-       if ((ret=_gnutls_dh_set_prime_bits( state, gcry_mpi_get_nbits(p))) < 0) {
+       if ((ret=_gnutls_dh_set_prime_bits( state, _gnutls_mpi_get_nbits(p))) < 0) {
                gnutls_assert();
                return ret;
        }
@@ -100,7 +100,7 @@ int gen_anon_server_kx( GNUTLS_STATE state, opaque** data) {
                _gnutls_mpi_release( &X);
                return GNUTLS_E_MEMORY_ERROR;
        }
-       ret=_gnutls_dh_set_secret_bits( state, gcry_mpi_get_nbits(x));
+       ret=_gnutls_dh_set_secret_bits( state, _gnutls_mpi_get_nbits(x));
        if (ret<0) {
                gnutls_assert();
                return ret;
@@ -139,7 +139,7 @@ int gen_anon_server_kx( GNUTLS_STATE state, opaque** data) {
 }
 
 int gen_anon_client_kx( GNUTLS_STATE state, opaque** data) {
-MPI x, X;
+GNUTLS_MPI x, X;
 size_t n_X;
 int ret;
 
@@ -151,7 +151,7 @@ int ret;
                return GNUTLS_E_MEMORY_ERROR;
        }
        
-       ret=_gnutls_dh_set_secret_bits( state, gcry_mpi_get_nbits(x));
+       ret=_gnutls_dh_set_secret_bits( state, _gnutls_mpi_get_nbits(x));
        if (ret<0) {
                gnutls_assert();
                return ret;
@@ -249,21 +249,21 @@ int proc_anon_server_kx( GNUTLS_STATE state, opaque* data, int data_size) {
                return ret;
        }
 
-       if ( gcry_mpi_get_nbits( state->gnutls_key->client_p) < _gnutls_dh_get_prime_bits( state)) {
+       if ( _gnutls_mpi_get_nbits( state->gnutls_key->client_p) < _gnutls_dh_get_prime_bits( state)) {
                /* the prime used by the peer is not acceptable
                 */
                gnutls_assert();
                return GNUTLS_E_DH_PRIME_UNACCEPTABLE;
        }
        
-       ret=_gnutls_dh_set_prime_bits( state, gcry_mpi_get_nbits(
+       ret=_gnutls_dh_set_prime_bits( state, _gnutls_mpi_get_nbits(
                state->gnutls_key->client_p));
        if (ret<0) {
                gnutls_assert();
                return ret;
        }
 
-       ret=_gnutls_dh_set_peer_public_bits( state, gcry_mpi_get_nbits(
+       ret=_gnutls_dh_set_peer_public_bits( state, _gnutls_mpi_get_nbits(
                state->gnutls_key->client_Y));
        if (ret<0) {
                gnutls_assert();
@@ -277,7 +277,7 @@ int proc_anon_server_kx( GNUTLS_STATE state, opaque* data, int data_size) {
 int proc_anon_client_kx( GNUTLS_STATE state, opaque* data, int data_size) {
        uint16 n_Y;
        size_t _n_Y;
-       MPI g, p;
+       GNUTLS_MPI g, p;
        int bits, ret;
        const GNUTLS_ANON_SERVER_CREDENTIALS cred;
        
@@ -305,7 +305,7 @@ int proc_anon_client_kx( GNUTLS_STATE state, opaque* data, int data_size) {
                return GNUTLS_E_MEMORY_ERROR;
        }
 
-       ret=_gnutls_dh_set_peer_public_bits( state, gcry_mpi_get_nbits(state->gnutls_key->client_Y));
+       ret=_gnutls_dh_set_peer_public_bits( state, _gnutls_mpi_get_nbits(state->gnutls_key->client_Y));
        if (ret<0) {
                gnutls_assert();
                return ret;
index 3ccb935194564adf4d669d081410704255053796..c0de5a8d019ac623dc5be04a7ecc97e4682c8368 100644 (file)
@@ -80,7 +80,7 @@ MOD_AUTH_STRUCT dhe_dss_auth_struct = {
 
 static int gen_dhe_server_kx(GNUTLS_STATE state, opaque ** data)
 {
-       MPI x, X, g, p;
+       GNUTLS_MPI x, X, g, p;
        size_t n_X, n_g, n_p;
        uint8 *data_p;
        uint8 *data_g;
@@ -123,7 +123,7 @@ static int gen_dhe_server_kx(GNUTLS_STATE state, opaque ** data)
        }
 
        info = _gnutls_get_auth_info( state);
-       ret=_gnutls_dh_set_prime_bits( state, gcry_mpi_get_nbits(p));
+       ret=_gnutls_dh_set_prime_bits( state, _gnutls_mpi_get_nbits(p));
        if (ret<0) {
                gnutls_assert();
                return ret;
@@ -137,7 +137,7 @@ static int gen_dhe_server_kx(GNUTLS_STATE state, opaque ** data)
                return GNUTLS_E_MEMORY_ERROR;
        }
        state->gnutls_key->dh_secret = x;
-       ret=_gnutls_dh_set_secret_bits( state, gcry_mpi_get_nbits(x));
+       ret=_gnutls_dh_set_secret_bits( state, _gnutls_mpi_get_nbits(x));
        if (ret<0) {
                gnutls_assert();
                return ret;
@@ -212,7 +212,7 @@ static int gen_dhe_server_kx(GNUTLS_STATE state, opaque ** data)
 
 static int gen_dhe_client_kx(GNUTLS_STATE state, opaque ** data)
 {
-       MPI x, X;
+       GNUTLS_MPI x, X;
        size_t n_X;
        int ret;
 
@@ -225,7 +225,7 @@ static int gen_dhe_client_kx(GNUTLS_STATE state, opaque ** data)
                return GNUTLS_E_MEMORY_ERROR;
        }
 
-       ret=_gnutls_dh_set_secret_bits( state, gcry_mpi_get_nbits(x));
+       ret=_gnutls_dh_set_secret_bits( state, _gnutls_mpi_get_nbits(x));
        if (ret<0) {
                gnutls_assert();
                return ret;
@@ -255,7 +255,7 @@ static int gen_dhe_client_kx(GNUTLS_STATE state, opaque ** data)
                return GNUTLS_E_MEMORY_ERROR;
        }
 
-       ret=_gnutls_dh_set_peer_public_bits( state, gcry_mpi_get_nbits(
+       ret=_gnutls_dh_set_peer_public_bits( state, _gnutls_mpi_get_nbits(
                state->gnutls_key->client_Y));
        if (ret<0) {
                gnutls_assert();
@@ -350,21 +350,21 @@ static int proc_dhe_server_kx(GNUTLS_STATE state, opaque * data,
                return GNUTLS_E_MPI_SCAN_FAILED;
        }
 
-       ret=_gnutls_dh_set_peer_public_bits( state, gcry_mpi_get_nbits(
+       ret=_gnutls_dh_set_peer_public_bits( state, _gnutls_mpi_get_nbits(
                state->gnutls_key->client_Y));
        if (ret<0) {
                gnutls_assert();
                return ret;
        }
 
-       if ( gcry_mpi_get_nbits( state->gnutls_key->client_p) < _gnutls_dh_get_prime_bits( state)) {
+       if ( _gnutls_mpi_get_nbits( state->gnutls_key->client_p) < _gnutls_dh_get_prime_bits( state)) {
                /* the prime used by the peer is not acceptable
                 */
                gnutls_assert();
                return GNUTLS_E_DH_PRIME_UNACCEPTABLE;
        }
 
-       ret=_gnutls_dh_set_prime_bits( state, gcry_mpi_get_nbits(
+       ret=_gnutls_dh_set_prime_bits( state, _gnutls_mpi_get_nbits(
                state->gnutls_key->client_p));
        if (ret<0) {
                gnutls_assert();
@@ -426,7 +426,7 @@ static int proc_dhe_client_kx(GNUTLS_STATE state, opaque * data,
 {
        uint16 n_Y;
        size_t _n_Y;
-       MPI g, p;
+       GNUTLS_MPI g, p;
        int bits, ret;
        const GNUTLS_CERTIFICATE_CREDENTIALS cred;
 
@@ -448,7 +448,7 @@ static int proc_dhe_client_kx(GNUTLS_STATE state, opaque * data,
                return GNUTLS_E_MPI_SCAN_FAILED;
        }
 
-       ret=_gnutls_dh_set_peer_public_bits( state, gcry_mpi_get_nbits(
+       ret=_gnutls_dh_set_peer_public_bits( state, _gnutls_mpi_get_nbits(
                state->gnutls_key->client_Y));
        if (ret<0) {
                gnutls_assert();
index 8c1c65c59a8020d5c2ca3c5bdaf65700da493457..d029957909be9c787317ce63965498f6b691e775 100644 (file)
@@ -66,7 +66,7 @@ MOD_AUTH_STRUCT rsa_auth_struct = {
 
 /* This function reads the RSA parameters from peer's certificate;
  */
-static int _gnutls_get_public_rsa_params(GNUTLS_STATE state, MPI params[MAX_PARAMS_SIZE], int* params_len)
+static int _gnutls_get_public_rsa_params(GNUTLS_STATE state, GNUTLS_MPI params[MAX_PARAMS_SIZE], int* params_len)
 {
 int ret;
 CERTIFICATE_AUTH_INFO info = _gnutls_get_auth_info( state);
@@ -108,7 +108,7 @@ int i;
        *params_len = peer_cert.params_size;
 
        for (i=0;i<*params_len;i++) {
-               params[i] = gcry_mpi_copy(peer_cert.params[i]);
+               params[i] = _gnutls_mpi_copy(peer_cert.params[i]);
        }
        _gnutls_free_cert( peer_cert);
 
@@ -117,7 +117,7 @@ int i;
 
 /* This function reads the RSA parameters from the private key
  */
-static int _gnutls_get_private_rsa_params(GNUTLS_STATE state, MPI **params, int* params_size)
+static int _gnutls_get_private_rsa_params(GNUTLS_STATE state, GNUTLS_MPI **params, int* params_size)
 {
 int index;
 const GNUTLS_CERTIFICATE_CREDENTIALS cred;
@@ -153,7 +153,7 @@ int proc_rsa_client_kx(GNUTLS_STATE state, opaque * data, int data_size)
        gnutls_sdatum plaintext;
        gnutls_datum ciphertext;
        int ret, dsize;
-       MPI *params;
+       GNUTLS_MPI *params;
        int params_len;
 
        if (gnutls_protocol_get_version(state) == GNUTLS_SSL3) {
@@ -218,7 +218,7 @@ int gen_rsa_client_kx(GNUTLS_STATE state, opaque ** data)
 {
        CERTIFICATE_AUTH_INFO auth = state->gnutls_key->auth_info;
        gnutls_datum sdata;     /* data to send */
-       MPI params[MAX_PARAMS_SIZE];
+       GNUTLS_MPI params[MAX_PARAMS_SIZE];
        int params_len = MAX_PARAMS_SIZE;
        int ret, i;
        GNUTLS_Version ver;
index 39ca764f29a349e3cc43c463cfaac3fce82c2c71..e794c16b292d9bb749644fa335e6149d54bddc1b 100644 (file)
@@ -126,9 +126,9 @@ int gen_srp_server_hello(GNUTLS_STATE state, opaque * data, int data_size)
                return GNUTLS_E_MEMORY_ERROR;
        }
 
-       gcry_mpi_set(G, pwd_entry->g);
-       gcry_mpi_set(N, pwd_entry->n);
-       gcry_mpi_set(V, pwd_entry->v);
+       _gnutls_mpi_set(G, pwd_entry->g);
+       _gnutls_mpi_set(N, pwd_entry->n);
+       _gnutls_mpi_set(V, pwd_entry->v);
 
        if (data_size < n_n + n_g + pwd_entry->salt_size + 6 + 1) {
                gnutls_assert();
index 58f6d98770411a56bc58e4eb1a85084a9db43752..d47df6ec7a18fbe22d1757b2b27f69c431b9840f 100644 (file)
@@ -343,7 +343,7 @@ GNUTLS_SRP_PWD_ENTRY* _gnutls_randomize_pwd_entry() {
                return NULL;
        }
 
-        gcry_mpi_randomize( pwd_entry->v, 160, GCRY_WEAK_RANDOM);
+        _gnutls_mpi_randomize( pwd_entry->v, 160, GCRY_WEAK_RANDOM);
 
        pwd_entry->salt_size = RND_SALT_SIZE;
        
@@ -384,7 +384,7 @@ void _gnutls_srp_clear_pwd_entry( GNUTLS_SRP_PWD_ENTRY * entry) {
 int _gnutls_srp_generate_prime(opaque ** ret_g, opaque ** ret_n, int bits)
 {
 
-       MPI prime, g;
+       GNUTLS_MPI prime, g;
        int siz;
        char *tmp;
 
index 9e4c00c03b8a287a42f91d67a2e8322bb6c291de..6da9c339b5a0a2d7bb1fb1c50c4c4c260118f33e 100644 (file)
@@ -26,7 +26,7 @@
 #include "crypt_srpsha1.h"
 #include "gnutls_random.h"
 
-char * gnutls_crypt(const char* username, const char *passwd, crypt_algo algo, int salt, MPI g, MPI n) {
+char * gnutls_crypt(const char* username, const char *passwd, crypt_algo algo, int salt, GNUTLS_MPI g, GNUTLS_MPI n) {
        
        switch(algo) {
        case BLOWFISH_CRYPT: /* bcrypt */
@@ -39,7 +39,7 @@ char * gnutls_crypt(const char* username, const char *passwd, crypt_algo algo, i
        return NULL;
 }
 
-int gnutls_crypt_vrfy(const char* username, const char *passwd, char* salt, MPI g, MPI n) {
+int gnutls_crypt_vrfy(const char* username, const char *passwd, char* salt, GNUTLS_MPI g, GNUTLS_MPI n) {
        char* cr;
 
        switch(salt[0]) {
index a9c9aa8fa3cf30864ac3efffc18023c5484fe577..55ece44c4bee66d206781aead8df7e99025fef7c 100644 (file)
@@ -600,7 +600,7 @@ static const char magic[] = "$2$";
 
 #define B64TEXT "OrpheanBeholderScryDoubt"
 
-char *crypt_bcrypt(const char* username, const char *passwd, const char *salt, MPI g, MPI n)
+char *crypt_bcrypt(const char* username, const char *passwd, const char *salt, GNUTLS_MPI g, GNUTLS_MPI n)
 {
        unsigned char *sp;
        blf_ctx *ctx;
@@ -695,7 +695,7 @@ char *crypt_bcrypt(const char* username, const char *passwd, const char *salt, M
 /* cost is stored as the first byte in salt (thus < 255) which is 
  * just fine! 
  */
-char *crypt_bcrypt_wrapper(const char* username, const char *pass_new, int cost, MPI g, MPI n)
+char *crypt_bcrypt_wrapper(const char* username, const char *pass_new, int cost, GNUTLS_MPI g, GNUTLS_MPI n)
 {
        opaque *result;
        char *tcp;
index f58cdbe87da9416c5981f8bbff82b71f665e0665..0dbc5ff8e8c8084bd596d8de8a00af1b321c6b02 100644 (file)
@@ -33,7 +33,7 @@
 static const char magic[] = "";
 
 char *crypt_srpsha1(const char *username, const char *passwd,
-                   const char *salt, MPI g, MPI n)
+                   const char *salt, GNUTLS_MPI g, GNUTLS_MPI n)
 {
        unsigned char *sp, r1[MAX_HASH_SIZE];
        int salt_size = strlen(salt);
@@ -130,7 +130,7 @@ char *crypt_srpsha1(const char *username, const char *passwd,
 
 /* salt here is the salt size */
 char *crypt_srpsha1_wrapper(const char *username, const char *pass_new,
-                           int salt, MPI g, MPI n)
+                           int salt, GNUTLS_MPI g, GNUTLS_MPI n)
 {
        unsigned char *result;
        char *tcp;
index 870cc0230d17d1889b7b78229a21f3de2fe5aef4..405a4f5099069ae813fa0b0aec3ffeaf12ab7c43 100644 (file)
 
 #ifdef DEBUG
 
-void _gnutls_dump_mpi(char* prefix, MPI a)
+void _gnutls_dump_mpi(char* prefix, GNUTLS_MPI a)
 {
        char buf[400];
        size_t n = sizeof buf;
        
-       if (gcry_mpi_print(GCRYMPI_FMT_HEX, buf, &n, a))
+       if (gcry_mpi_print(GCRYGNUTLS_MPI_FMT_HEX, buf, &n, a))
                strcpy(buf, "[can't print value]"); /* Flawfinder: ignore */
-       _gnutls_log( "MPI: length: %d\n\t%s%s\n", (n-1)/2, prefix, buf);
+       _gnutls_log( "GNUTLS_MPI: length: %d\n\t%s%s\n", (n-1)/2, prefix, buf);
 }
 
 
index 48636ef5fe5366fe194284a600b9aecc102082b7..864a214163eb85e04bf4854a2bdb3203e94728be 100644 (file)
@@ -282,7 +282,7 @@ int _gnutls_auth_info_set( GNUTLS_STATE state, CredType type, int size, int allo
        return 0;
 }
 
-/* this function will copy an MPI key to 
+/* this function will copy an GNUTLS_MPI key to 
  * opaque data.
  */
 int _gnutls_generate_key(GNUTLS_KEY key) {
index ee2508f2767a493e92efd19c1a9e0139b975577f..784ed4c554e6a1a14ab5c1e5e0c45fe187012458 100644 (file)
@@ -57,10 +57,10 @@ static int get_x_size(int bits)
 
 /* returns the public value (X), and the secret (ret_x).
  */
-MPI gnutls_calc_dh_secret(MPI * ret_x, MPI g, MPI prime)
+GNUTLS_MPI gnutls_calc_dh_secret(GNUTLS_MPI * ret_x, GNUTLS_MPI g, GNUTLS_MPI prime)
 {
-       MPI e, x;
-       int x_size = get_x_size(gcry_mpi_get_nbits(prime));
+       GNUTLS_MPI e, x;
+       int x_size = get_x_size(_gnutls_mpi_get_nbits(prime));
 
 
        x = _gnutls_mpi_new(x_size);    /* FIXME: allocate in secure memory */
@@ -72,7 +72,7 @@ MPI gnutls_calc_dh_secret(MPI * ret_x, MPI g, MPI prime)
                return NULL;
        }
 
-       gcry_mpi_randomize(x, x_size, GCRY_STRONG_RANDOM);
+       _gnutls_mpi_randomize(x, x_size, GCRY_STRONG_RANDOM);
        /* fixme: set high bit of x and select a larger one */
 
        e = _gnutls_mpi_alloc_like(prime);
@@ -84,7 +84,7 @@ MPI gnutls_calc_dh_secret(MPI * ret_x, MPI g, MPI prime)
                _gnutls_mpi_release( &x);
                return NULL;
        }
-       gcry_mpi_powm(e, g, x, prime);
+       _gnutls_mpi_powm(e, g, x, prime);
 
        if (ret_x)
                *ret_x = x;
@@ -94,14 +94,14 @@ MPI gnutls_calc_dh_secret(MPI * ret_x, MPI g, MPI prime)
 }
 
 
-MPI gnutls_calc_dh_key(MPI f, MPI x, MPI prime)
+GNUTLS_MPI gnutls_calc_dh_key(GNUTLS_MPI f, GNUTLS_MPI x, GNUTLS_MPI prime)
 {
-       MPI k;
+       GNUTLS_MPI k;
 
        k = _gnutls_mpi_alloc_like(prime);
        if (k == NULL)
                return NULL;
-       gcry_mpi_powm(k, f, x, prime);
+       _gnutls_mpi_powm(k, f, x, prime);
        return k;
 }
 
index 4eb0bf643b31f38ae6b33e7aefe45eb84ea92f43..47bad3ade90f4cd8720ba7a2d77186f9f64607d5 100644 (file)
@@ -223,7 +223,7 @@ static uint8 diffie_hellman_prime_2048[] = { 0x00,
 };
 
 /* Holds the prime to be used in DH authentication.
- * Initialy the MPIs are not calculated (must call global_init, or _gnutls_dh_calc_mpis()).
+ * Initialy the GNUTLS_MPIs are not calculated (must call global_init, or _gnutls_dh_calc_mpis()).
  */
 _GNUTLS_DH_PARAMS _gnutls_dh_default_params[] = {
        {768, NULL, NULL, {DH_G_1024, sizeof(DH_G_1024)}
@@ -301,7 +301,7 @@ static int normalize_bits(int bits)
        return bits;
 }
 
-/* Clears allocated MPIs and data. Only to be called at exit.
+/* Clears allocated GNUTLS_MPIs and data. Only to be called at exit.
  */
 void _gnutls_dh_clear_mpis(void) {
 int i;
@@ -321,7 +321,7 @@ int i;
 
 }
 
-/* Generates MPIs from opaque integer data. Initializes the dh_primes to
+/* Generates GNUTLS_MPIs from opaque integer data. Initializes the dh_primes to
  * be used.
  */
 int _gnutls_dh_calc_mpis(void)
@@ -363,9 +363,9 @@ int i, n;
 /* returns g and p, depends on the requested bits.
  * We only support limited key sizes.
  */
-MPI gnutls_get_dh_params(GNUTLS_DH_PARAMS dh_primes, MPI * ret_p, int bits)
+GNUTLS_MPI gnutls_get_dh_params(GNUTLS_DH_PARAMS dh_primes, GNUTLS_MPI * ret_p, int bits)
 {
-       MPI g=NULL, prime=NULL;
+       GNUTLS_MPI g=NULL, prime=NULL;
        int i;
 
        if (dh_primes==NULL) {
@@ -378,8 +378,8 @@ MPI gnutls_get_dh_params(GNUTLS_DH_PARAMS dh_primes, MPI * ret_p, int bits)
        i = 0;
        do {
                if (dh_primes[i].bits == bits) {
-                       prime = gcry_mpi_copy(dh_primes[i]._prime);
-                       g = gcry_mpi_copy(dh_primes[i]._generator);
+                       prime = _gnutls_mpi_copy(dh_primes[i]._prime);
+                       g = _gnutls_mpi_copy(dh_primes[i]._generator);
                        break;
                }
                i++;
@@ -401,9 +401,9 @@ MPI gnutls_get_dh_params(GNUTLS_DH_PARAMS dh_primes, MPI * ret_p, int bits)
 /* returns g and p, depends on the requested bits.
  * We only support limited key sizes.
  */
-MPI _gnutls_get_rnd_srp_params( MPI * ret_p, int bits)
+GNUTLS_MPI _gnutls_get_rnd_srp_params( GNUTLS_MPI * ret_p, int bits)
 {
-       MPI g=NULL, prime=NULL;
+       GNUTLS_MPI g=NULL, prime=NULL;
        int i;
 
        if (_gnutls_dh_default_params==NULL) {
@@ -416,8 +416,8 @@ MPI _gnutls_get_rnd_srp_params( MPI * ret_p, int bits)
        i = 0;
        do {
                if (_gnutls_dh_default_params[i].bits == bits) {
-                       prime = gcry_mpi_copy(_gnutls_dh_default_params[i]._prime);
-                       g = gcry_mpi_copy(_gnutls_dh_default_params[i]._generator);
+                       prime = _gnutls_mpi_copy(_gnutls_dh_default_params[i]._prime);
+                       g = _gnutls_mpi_copy(_gnutls_dh_default_params[i]._generator);
                        break;
                }
                i++;
@@ -437,13 +437,13 @@ MPI _gnutls_get_rnd_srp_params( MPI * ret_p, int bits)
 }
 
 /* These should be added in gcrypt.h */
-MPI _gcry_generate_elg_prime(int mode, unsigned pbits,
-                            unsigned qbits, MPI g, MPI ** ret_factors);
+GNUTLS_MPI _gcry_generate_elg_prime(int mode, unsigned pbits,
+                            unsigned qbits, GNUTLS_MPI g, GNUTLS_MPI ** ret_factors);
 
-int _gnutls_dh_generate_prime(MPI * ret_g, MPI * ret_n, int bits)
+int _gnutls_dh_generate_prime(GNUTLS_MPI * ret_g, GNUTLS_MPI * ret_n, int bits)
 {
 
-       MPI g, prime;
+       GNUTLS_MPI g, prime;
        int qbits;
 
        g = mpi_new(16);        /* this should be ok */
@@ -509,7 +509,7 @@ int i=0;
   **/
 int gnutls_dh_params_set( GNUTLS_DH_PARAMS dh_params, gnutls_datum prime, gnutls_datum generator, int bits)
 {
-       MPI tmp_prime, tmp_g;
+       GNUTLS_MPI tmp_prime, tmp_g;
        int siz=0, i=0;
        GNUTLS_DH_PARAMS sprime;
 
@@ -551,8 +551,8 @@ int gnutls_dh_params_set( GNUTLS_DH_PARAMS dh_params, gnutls_datum prime, gnutls
        sprime->_prime = tmp_prime;
        sprime->_generator = tmp_g;
 
-/*     sprime->_prime = gcry_mpi_copy(tmp_prime);
-       sprime->_generator = gcry_mpi_copy(tmp_g);
+/*     sprime->_prime = _gnutls_mpi_copy(tmp_prime);
+       sprime->_generator = _gnutls_mpi_copy(tmp_g);
 */
        if (gnutls_set_datum( &sprime->prime, prime.data, prime.size) < 0) {
                gnutls_assert();
@@ -641,7 +641,7 @@ int i;
 int gnutls_dh_params_generate( gnutls_datum* prime, gnutls_datum* generator, int bits)
 {
 
-       MPI tmp_prime, tmp_g;
+       GNUTLS_MPI tmp_prime, tmp_g;
        int siz;
 
        if (check_bits(bits) < 0) {
index 782705883914427261634e1e2e3ad03c9ab16f65..a18908ea6613e918f9b72eb520220402df8bff1d 100644 (file)
 /* Functions that refer to the libgcrypt library.
  */
  
-void _gnutls_mpi_release( MPI* x) {
+void _gnutls_mpi_release( GNUTLS_MPI* x) {
        if (*x==NULL) return;
        gcry_mpi_release(*x);
        *x=NULL;
 }
 
-MPI _gnutls_mpi_new( int bits) {
-       return gcry_mpi_new( bits);
-}
-
-int _gnutls_mpi_scan( GCRY_MPI *ret_mpi, const opaque *buffer, size_t *nbytes ) {
+int _gnutls_mpi_scan( GNUTLS_MPI *ret_mpi, const opaque *buffer, size_t *nbytes ) {
        return gcry_mpi_scan( ret_mpi, GCRYMPI_FMT_USG, buffer, nbytes);
+}
 
+int _gnutls_mpi_scan_pgp( GNUTLS_MPI *ret_mpi, const opaque *buffer, size_t *nbytes ) {
+       return gcry_mpi_scan( ret_mpi, GCRYMPI_FMT_PGP, buffer, nbytes);
 }
 
-int _gnutls_mpi_print( opaque *buffer, size_t *nbytes, const GCRY_MPI a ) {
+int _gnutls_mpi_print( opaque *buffer, size_t *nbytes, const GNUTLS_MPI a ) {
        return gcry_mpi_print( GCRYMPI_FMT_USG, buffer, nbytes, a);
 }
 
 /* Always has the first bit zero */
-int _gnutls_mpi_print_lz( opaque *buffer, size_t *nbytes, const GCRY_MPI a ) {
+int _gnutls_mpi_print_lz( opaque *buffer, size_t *nbytes, const GNUTLS_MPI a ) {
        return gcry_mpi_print( GCRYMPI_FMT_STD, buffer, nbytes, a);
 }
 
@@ -54,7 +53,7 @@ int _gnutls_mpi_print_lz( opaque *buffer, size_t *nbytes, const GCRY_MPI a ) {
  * from asn1 structs. Combines the read and mpi_scan
  * steps.
  */
-int _gnutls_x509_read_int( node_asn* node, char* value, char* tmpstr, int tmpstr_size, MPI* ret_mpi) {
+int _gnutls_x509_read_int( node_asn* node, char* value, char* tmpstr, int tmpstr_size, GNUTLS_MPI* ret_mpi) {
 int len, result;
 
        len = tmpstr_size - 1;
index e9836f29b39de323b410f0f00a3f9b6097744ee4..2248951a52df5603f2aad79a7e83cddd340f5091 100644 (file)
@@ -4,16 +4,32 @@
 # include <gcrypt.h>
 # include <x509_asn1.h>
 
-MPI _gnutls_mpi_new( int);
-
-# define _gnutls_mpi_alloc_like(x) _gnutls_mpi_new(gcry_mpi_get_nbits(x)) 
+#define GNUTLS_MPI GCRY_MPI
+
+#define _gnutls_mpi_new gcry_mpi_new
+#define _gnutls_mpi_snew gcry_mpi_snew
+#define _gnutls_mpi_copy gcry_mpi_copy
+#define _gnutls_mpi_set_ui gcry_mpi_set_ui
+#define _gnutls_mpi_set gcry_mpi_set
+#define _gnutls_mpi_randomize gcry_mpi_randomize
+#define _gnutls_mpi_get_nbits gcry_mpi_get_nbits
+#define _gnutls_mpi_powm gcry_mpi_powm
+#define _gnutls_mpi_invm _gcry_mpi_invm
+#define _gnutls_mpi_addm gcry_mpi_addm
+#define _gnutls_mpi_subm gcry_mpi_subm
+#define _gnutls_mpi_mulm gcry_mpi_mulm
+#define _gnutls_mpi_mul gcry_mpi_mul
+#define _gnutls_mpi_add gcry_mpi_add
+
+# define _gnutls_mpi_alloc_like(x) _gnutls_mpi_new(_gnutls_mpi_get_nbits(x)) 
 
 void _gnutls_mpi_release( MPI* x);
 
-int _gnutls_mpi_scan( GCRY_MPI *ret_mpi, const opaque *buffer, size_t *nbytes );
+int _gnutls_mpi_scan( GNUTLS_MPI *ret_mpi, const opaque *buffer, size_t *nbytes );
+int _gnutls_mpi_scan_pgp( GNUTLS_MPI *ret_mpi, const opaque *buffer, size_t *nbytes );
 
-int _gnutls_mpi_print( opaque *buffer, size_t *nbytes, const GCRY_MPI a );
-int _gnutls_mpi_print_lz( opaque *buffer, size_t *nbytes, const GCRY_MPI a );
+int _gnutls_mpi_print( opaque *buffer, size_t *nbytes, const GNUTLS_MPI a );
+int _gnutls_mpi_print_lz( opaque *buffer, size_t *nbytes, const GNUTLS_MPI a );
 
 int _gnutls_x509_read_int( node_asn* node, char* value, char* tmpstr, int tmpstr_size, MPI* ret_mpi);
 
index f942d242e7520aad6f03d68e37dd2bf276875f88..059cac97a7e9525157ba03824e9ea2ba51782dfb 100644 (file)
@@ -55,15 +55,14 @@ typedef enum {
 } keyring_blob_types;
 
 static void
-release_mpi_array( MPI *arr, size_t n )
+release_mpi_array(GNUTLS_MPI *arr, size_t n)
 {
-  MPI x;
+  GNUTLS_MPI x;
   
   while ( arr && n-- )
     {
       x = *arr;
-      /*_gnutls_mpi_release( &x );*/
-      gcry_mpi_release (x);
+      _gnutls_mpi_release(&x);
       *arr = NULL; arr++;
     }
 }
@@ -346,7 +345,7 @@ openpgp_pk_to_gnutls_cert(gnutls_cert *cert, PKT_public_key *pk)
   for (i=0; i<cert->params_size; i++)
     {      
       nbytes = pk->mpi[i].bytes+2;
-      rc = gcry_mpi_scan(&cert->params[i], GCRYMPI_FMT_PGP,
+      rc = _gnutls_mpi_scan_pgp(&cert->params[i], 
                          pk->mpi[i].data, &nbytes);
       if (rc)
         {
@@ -449,7 +448,7 @@ _gnutls_openpgp_key2gnutls_key( gnutls_private_key *pkey,
   for (i=0; i<pkey->params_size; i++)
     {
       nbytes = sk->pk->mpi[i].bytes+2;
-      rc = gcry_mpi_scan(&pkey->params[i], GCRYMPI_FMT_PGP,
+      rc = _gnutls_mpi_scan_pgp(&pkey->params[i],
                          sk->pk->mpi[i].data, &nbytes);
       if (rc)
         {
@@ -462,7 +461,7 @@ _gnutls_openpgp_key2gnutls_key( gnutls_private_key *pkey,
   for (j=0; j<cdk_pk_get_nskey( pke_algo ); j++, i++)
     {
       nbytes = sk->mpi[j]->bytes+2;
-      rc = gcry_mpi_scan(&pkey->params[i], GCRYMPI_FMT_PGP,
+      rc = _gnutls_mpi_scan_pgp(&pkey->params[i],
                          sk->mpi[j]->data, &nbytes);
       if (rc)
         {
index a729aa48a01295015ab1bd75f0449bdd380d08e6..8149556f3e7135fb1057a77465870e6993969e9a 100644 (file)
@@ -69,12 +69,3 @@ _gnutls_openpgp_request_key( gnutls_datum* ret,
        int key_fpr_size);
 
 #endif /*GNUTLS_OPENPGP_H*/
-
-
-
-
-
-
-
-
-
index 1304d93d7c41a43592a75c3a1b4d2008b4e5c940..86bd020ebe8fb62cd2f9b5ec6e26ca2d1d3fe5c7 100644 (file)
 #include <x509_der.h>
 #include "debug.h"
 
-static int _gnutls_pk_encrypt(int algo, MPI * resarr, MPI data, MPI * pkey, int pkey_len);
-static int _gnutls_pk_sign(int algo, MPI* data, MPI hash, MPI * pkey, int);
-static int _gnutls_pk_verify(int algo, MPI hash, MPI* data, MPI *pkey, int);
-static int _gnutls_pk_decrypt(int algo, MPI * resarr, MPI data, MPI * pkey, int);
+static int _gnutls_pk_encrypt(int algo, GNUTLS_MPI * resarr, GNUTLS_MPI data, GNUTLS_MPI * pkey, int pkey_len);
+static int _gnutls_pk_sign(int algo, GNUTLS_MPI* data, GNUTLS_MPI hash, GNUTLS_MPI * pkey, int);
+static int _gnutls_pk_verify(int algo, GNUTLS_MPI hash, GNUTLS_MPI* data, GNUTLS_MPI *pkey, int);
+static int _gnutls_pk_decrypt(int algo, GNUTLS_MPI * resarr, GNUTLS_MPI data, GNUTLS_MPI * pkey, int);
 
 
 /* Do PKCS-1 RSA encryption. 
  * params is modulus, public exp.
  */
 int _gnutls_pkcs1_rsa_encrypt(gnutls_datum * ciphertext,
-                             gnutls_datum plaintext, MPI* params,
+                             gnutls_datum plaintext, GNUTLS_MPI* params,
                              int params_len,
                              int btype)
 {
        int k, psize, i, ret, pad;
-       MPI m, res;
+       GNUTLS_MPI m, res;
        opaque *edata, *ps;
 
        
-       k = gcry_mpi_get_nbits(params[0]) / 8;
+       k = _gnutls_mpi_get_nbits(params[0]) / 8;
 
        if (plaintext.size > k - 11) {
                gnutls_assert();
@@ -161,14 +161,14 @@ int _gnutls_pkcs1_rsa_encrypt(gnutls_datum * ciphertext,
  * Can decrypt block type 1 and type 2 packets.
  */
 int _gnutls_pkcs1_rsa_decrypt(gnutls_sdatum * plaintext,
-                             gnutls_datum ciphertext, MPI* params, int params_len,
+                             gnutls_datum ciphertext, GNUTLS_MPI* params, int params_len,
                              int btype)
 {
        int k, esize, i, ret;
-       MPI c, res;
+       GNUTLS_MPI c, res;
        opaque *edata;
 
-       k = gcry_mpi_get_nbits(params[0]) / 8;
+       k = _gnutls_mpi_get_nbits(params[0]) / 8;
        esize = ciphertext.size;
 
        if (esize != k) {
@@ -268,7 +268,7 @@ int _gnutls_pkcs1_rsa_decrypt(gnutls_sdatum * plaintext,
 
 
 int _gnutls_rsa_verify( const gnutls_datum* vdata, const gnutls_datum *ciphertext, 
-       MPI *params, int params_len, int btype) {
+       GNUTLS_MPI *params, int params_len, int btype) {
 
        gnutls_datum plain;
        int ret;
@@ -298,7 +298,7 @@ int _gnutls_rsa_verify( const gnutls_datum* vdata, const gnutls_datum *ciphertex
 
 /* encodes the Dss-Sig-Value structure
  */
-static int encode_ber_rs( gnutls_datum* sig_value, MPI r, MPI s) {
+static int encode_ber_rs( gnutls_datum* sig_value, GNUTLS_MPI r, GNUTLS_MPI s) {
 node_asn* sig;
 int result;
 opaque str[MAX_PARAMETER_SIZE];
@@ -365,9 +365,9 @@ int tot_len = 0;
 /* Do DSA signature calculation. params is p, q, g, y, x in that order.
  */
 int _gnutls_dsa_sign(gnutls_datum * signature, const gnutls_datum *hash,
-                    MPI * params, int params_len)
+                    GNUTLS_MPI * params, int params_len)
 {
-       MPI rs[2], mdata;
+       GNUTLS_MPI rs[2], mdata;
        int k, ret;
 
        k = hash->size;
@@ -406,7 +406,7 @@ int _gnutls_dsa_sign(gnutls_datum * signature, const gnutls_datum *hash,
 
 /* decodes the Dss-Sig-Value structure
  */
-static int decode_ber_rs( const gnutls_datum* sig_value, MPI* r, MPI* s) {
+static int decode_ber_rs( const gnutls_datum* sig_value, GNUTLS_MPI* r, GNUTLS_MPI* s) {
 node_asn* sig;
 int result;
 opaque str[MAX_PARAMETER_SIZE];
@@ -449,11 +449,11 @@ opaque str[MAX_PARAMETER_SIZE];
 /* params is p, q, g, y in that order
  */
 int _gnutls_dsa_verify( const gnutls_datum* vdata, const gnutls_datum *sig_value, 
-       MPI * params, int params_len) {
+       GNUTLS_MPI * params, int params_len) {
 
-       MPI mdata;
+       GNUTLS_MPI mdata;
        int ret, k;
-       MPI rs[2];
+       GNUTLS_MPI rs[2];
 
        if (vdata->size != 20) { /* sha-1 only */
                gnutls_assert();
@@ -491,7 +491,7 @@ int _gnutls_dsa_verify( const gnutls_datum* vdata, const gnutls_datum *sig_value
  * Emulate our old PK interface here - sometime in the future we might
  * change the internal design to directly fit to libgcrypt.
  */
-static int _gnutls_pk_encrypt(int algo, MPI * resarr, MPI data, MPI * pkey, int pkey_len)
+static int _gnutls_pk_encrypt(int algo, GNUTLS_MPI * resarr, GNUTLS_MPI data, GNUTLS_MPI * pkey, int pkey_len)
 {
        GCRY_SEXP s_ciph, s_data, s_pkey;
        int rc=-1;
@@ -553,7 +553,7 @@ static int _gnutls_pk_encrypt(int algo, MPI * resarr, MPI data, MPI * pkey, int
        return rc;
 }
 
-static int _gnutls_pk_decrypt(int algo, MPI * resarr, MPI data, MPI * pkey, int pkey_len)
+static int _gnutls_pk_decrypt(int algo, GNUTLS_MPI * resarr, GNUTLS_MPI data, GNUTLS_MPI * pkey, int pkey_len)
 {
        GCRY_SEXP s_plain, s_data, s_pkey;
        int rc=-1;
@@ -612,7 +612,7 @@ static int _gnutls_pk_decrypt(int algo, MPI * resarr, MPI data, MPI * pkey, int
 /* in case of DSA puts into data, r,s
  */
 static 
-int _gnutls_pk_sign(int algo, MPI* data, MPI hash, MPI * pkey, int pkey_len)
+int _gnutls_pk_sign(int algo, GNUTLS_MPI* data, GNUTLS_MPI hash, GNUTLS_MPI * pkey, int pkey_len)
 {
        GCRY_SEXP s_hash, s_key, s_sig;
        int rc=-1;
@@ -703,7 +703,7 @@ int _gnutls_pk_sign(int algo, MPI* data, MPI hash, MPI * pkey, int pkey_len)
 }
 
 
-static int _gnutls_pk_verify(int algo, MPI hash, MPI* data, MPI *pkey, int pkey_len)
+static int _gnutls_pk_verify(int algo, GNUTLS_MPI hash, GNUTLS_MPI* data, GNUTLS_MPI *pkey, int pkey_len)
 {
        GCRY_SEXP s_sig, s_hash, s_pkey;
        int rc=-1;
index 2a115a59b7bd756fec20e907d8f76b32bfbd24df..5e6d31f192f59b19c944b723f588a9276e817df5 100644 (file)
@@ -52,9 +52,9 @@ int _gnutls_PKCS1key2gnutlsKey(gnutls_private_key * pkey,
                return _gnutls_asn2err(result);
        }
 
-       if ((sizeof(pkey->params) / sizeof(MPI)) < RSA_PRIVATE_PARAMS) {
+       if ((sizeof(pkey->params) / sizeof(GNUTLS_MPI)) < RSA_PRIVATE_PARAMS) {
                gnutls_assert();
-               /* internal error. Increase the MPIs in params */
+               /* internal error. Increase the GNUTLS_MPIs in params */
                return GNUTLS_E_INTERNAL_ERROR;
        }
 
@@ -121,14 +121,14 @@ int _gnutls_PKCS1key2gnutlsKey(gnutls_private_key * pkey,
         * library is uses the p,q in the reverse order.
         */
        pkey->params[5] =
-           gcry_mpi_snew(gcry_mpi_get_nbits(pkey->params[0]));
+           _gnutls_mpi_snew(_gnutls_mpi_get_nbits(pkey->params[0]));
 
        if (pkey->params[5] == NULL) {
                gnutls_assert();
                return GNUTLS_E_MEMORY_ERROR;
        }
 
-       _gcry_mpi_invm(pkey->params[5], pkey->params[3], pkey->params[4]);
+       _gnutls_mpi_invm(pkey->params[5], pkey->params[3], pkey->params[4]);
        /*                              p, q */
 #else
        if ( (result=_gnutls_x509_read_int( pkey_asn, "rsakey.coefficient",
@@ -181,9 +181,9 @@ int _gnutls_DSAkey2gnutlsKey(gnutls_private_key * pkey,
                return _gnutls_asn2err(result);
        }
 
-       if ((sizeof(pkey->params) / sizeof(MPI)) < DSA_PRIVATE_PARAMS) {
+       if ((sizeof(pkey->params) / sizeof(GNUTLS_MPI)) < DSA_PRIVATE_PARAMS) {
                gnutls_assert();
-               /* internal error. Increase the MPIs in params */
+               /* internal error. Increase the GNUTLS_MPIs in params */
                return GNUTLS_E_INTERNAL_ERROR;
        }
 
index 2fd21dedc96b76d39b3f5f27c2081efd5036cf26..f5ca3e7fd62fe15c2570f08b617f8276c39b91c3 100644 (file)
  */
 
 
-int _gnutls_srp_gx(opaque * text, int textsize, opaque ** result, MPI g,
-                  MPI prime)
+int _gnutls_srp_gx(opaque * text, int textsize, opaque ** result, GNUTLS_MPI g,
+                  GNUTLS_MPI prime)
 {
 
-       MPI x, e;
+       GNUTLS_MPI x, e;
        int result_size;
 
        if (_gnutls_mpi_scan(&x, text, &textsize)) {
@@ -56,7 +56,7 @@ int _gnutls_srp_gx(opaque * text, int textsize, opaque ** result, MPI g,
        }
 
        /* e = g^x mod prime (n) */
-       gcry_mpi_powm(e, g, x, prime);
+       _gnutls_mpi_powm(e, g, x, prime);
        _gnutls_mpi_release(&x);
 
        _gnutls_mpi_print( NULL, &result_size, e);
@@ -78,21 +78,21 @@ int _gnutls_srp_gx(opaque * text, int textsize, opaque ** result, MPI g,
  * Choose a random value b and calculate B = (v + g^b) % N.
  * Return: B and if ret_b is not NULL b.
  */
-MPI _gnutls_calc_srp_B(MPI * ret_b, MPI g, MPI n, MPI v)
+GNUTLS_MPI _gnutls_calc_srp_B(GNUTLS_MPI * ret_b, GNUTLS_MPI g, GNUTLS_MPI n, GNUTLS_MPI v)
 {
-       MPI tmpB;
-       MPI b, B;
+       GNUTLS_MPI tmpB;
+       GNUTLS_MPI b, B;
        int bits;
 
        /* calculate:  B = (v + g^b) % N */
-       bits = gcry_mpi_get_nbits(n);
+       bits = _gnutls_mpi_get_nbits(n);
        b = _gnutls_mpi_new(bits);      /* FIXME: allocate in secure memory */
        if (b==NULL) {
                gnutls_assert();
                return NULL;
        }
        
-       gcry_mpi_randomize(b, bits, GCRY_STRONG_RANDOM);
+       _gnutls_mpi_randomize(b, bits, GCRY_STRONG_RANDOM);
 
        tmpB = _gnutls_mpi_new(bits);   /* FIXME: allocate in secure memory */
        if (tmpB==NULL) {
@@ -109,8 +109,8 @@ MPI _gnutls_calc_srp_B(MPI * ret_b, MPI g, MPI n, MPI v)
                return NULL;
        }
 
-       gcry_mpi_powm(tmpB, g, b, n);
-       gcry_mpi_addm(B, v, tmpB, n);
+       _gnutls_mpi_powm(tmpB, g, b, n);
+       _gnutls_mpi_addm(B, v, tmpB, n);
 
        _gnutls_mpi_release(&tmpB);
 
@@ -122,13 +122,13 @@ MPI _gnutls_calc_srp_B(MPI * ret_b, MPI g, MPI n, MPI v)
        return B;
 }
 
-MPI _gnutls_calc_srp_u(MPI B)
+GNUTLS_MPI _gnutls_calc_srp_u(GNUTLS_MPI B)
 {
        int b_size;
        opaque *b_holder, hd[MAX_HASH_SIZE];
        GNUTLS_HASH_HANDLE td;
        uint32 u;
-       MPI ret;
+       GNUTLS_MPI ret;
 
        _gnutls_mpi_print( NULL, &b_size, B);
        b_holder = gnutls_malloc(b_size);
@@ -150,7 +150,7 @@ MPI _gnutls_calc_srp_u(MPI B)
 
        gnutls_free(b_holder);
 
-       ret = gcry_mpi_set_ui(NULL, u);
+       ret = _gnutls_mpi_set_ui(NULL, u);
        if (ret==NULL) {
                gnutls_assert();
                return NULL;
@@ -162,10 +162,10 @@ MPI _gnutls_calc_srp_u(MPI B)
 /* S = (A * v^u) ^ b % N 
  * this is our shared key
  */
-MPI _gnutls_calc_srp_S1(MPI A, MPI b, MPI u, MPI v, MPI n)
+GNUTLS_MPI _gnutls_calc_srp_S1(GNUTLS_MPI A, GNUTLS_MPI b, GNUTLS_MPI u, GNUTLS_MPI v, GNUTLS_MPI n)
 {
-       MPI tmp1, tmp2;
-       MPI S;
+       GNUTLS_MPI tmp1, tmp2;
+       GNUTLS_MPI S;
 
        S = _gnutls_mpi_alloc_like(n);
        if (S==NULL)
@@ -180,11 +180,11 @@ MPI _gnutls_calc_srp_S1(MPI A, MPI b, MPI u, MPI v, MPI n)
                return NULL;
        }
 
-       gcry_mpi_powm(tmp1, v, u, n);
-       gcry_mpi_mulm(tmp2, A, tmp1, n);
+       _gnutls_mpi_powm(tmp1, v, u, n);
+       _gnutls_mpi_mulm(tmp2, A, tmp1, n);
        _gnutls_mpi_release(&tmp1);
 
-       gcry_mpi_powm(S, tmp2, b, n);
+       _gnutls_mpi_powm(S, tmp2, b, n);
        _gnutls_mpi_release(&tmp2);
 
        return S;
@@ -193,20 +193,20 @@ MPI _gnutls_calc_srp_S1(MPI A, MPI b, MPI u, MPI v, MPI n)
 /* A = g^a % N 
  * returns A and a (which is random)
  */
-MPI _gnutls_calc_srp_A(MPI * a, MPI g, MPI n)
+GNUTLS_MPI _gnutls_calc_srp_A(GNUTLS_MPI * a, GNUTLS_MPI g, GNUTLS_MPI n)
 {
-       MPI tmpa;
-       MPI A;
+       GNUTLS_MPI tmpa;
+       GNUTLS_MPI A;
        int bits;
 
-       bits = gcry_mpi_get_nbits(n);
+       bits = _gnutls_mpi_get_nbits(n);
        tmpa = _gnutls_mpi_new(bits);   /* FIXME: allocate in secure memory */
        if (tmpa==NULL) {
                gnutls_assert();
                return NULL;
        }
        
-       gcry_mpi_randomize(tmpa, bits, GCRY_STRONG_RANDOM);
+       _gnutls_mpi_randomize(tmpa, bits, GCRY_STRONG_RANDOM);
 
        A = _gnutls_mpi_new(bits);      /* FIXME: allocate in secure memory */
        if (A==NULL) {
@@ -214,7 +214,7 @@ MPI _gnutls_calc_srp_A(MPI * a, MPI g, MPI n)
                _gnutls_mpi_release( &tmpa);
                return NULL;
        }
-       gcry_mpi_powm(A, g, tmpa, n);
+       _gnutls_mpi_powm(A, g, tmpa, n);
 
        if (a != NULL)
                *a = tmpa;
@@ -277,9 +277,9 @@ int _gnutls_calc_srp_x(char *username, char *password, opaque * salt,
 /* S = (B - g^x) ^ (a + u * x) % N
  * this is our shared key
  */
-MPI _gnutls_calc_srp_S2(MPI B, MPI g, MPI x, MPI a, MPI u, MPI n)
+GNUTLS_MPI _gnutls_calc_srp_S2(GNUTLS_MPI B, GNUTLS_MPI g, GNUTLS_MPI x, GNUTLS_MPI a, GNUTLS_MPI u, GNUTLS_MPI n)
 {
-       MPI S, tmp1, tmp2, tmp4;
+       GNUTLS_MPI S, tmp1, tmp2, tmp4;
 
        S = _gnutls_mpi_alloc_like(n);
        if (S==NULL)
@@ -293,19 +293,19 @@ MPI _gnutls_calc_srp_S2(MPI B, MPI g, MPI x, MPI a, MPI u, MPI n)
                return NULL;
        }
 
-       gcry_mpi_powm(tmp1, g, x, n);
+       _gnutls_mpi_powm(tmp1, g, x, n);
 
-       gcry_mpi_subm(tmp2, B, tmp1, n);
+       _gnutls_mpi_subm(tmp2, B, tmp1, n);
 
        tmp4 = _gnutls_mpi_alloc_like(n);
        if (tmp4==NULL)
                return NULL;
 
-       gcry_mpi_mul(tmp1, u, x);
-       gcry_mpi_add(tmp4, a, tmp1);
+       _gnutls_mpi_mul(tmp1, u, x);
+       _gnutls_mpi_add(tmp4, a, tmp1);
        _gnutls_mpi_release(&tmp1);
 
-       gcry_mpi_powm(S, tmp2, tmp4, n);
+       _gnutls_mpi_powm(S, tmp2, tmp4, n);
        _gnutls_mpi_release(&tmp2);
        _gnutls_mpi_release(&tmp4);
 
index 35aa118a9554285f2fef7c6202697fb072312d1b..98034e96da8ff42a49d875144c6813f6d8b06475 100644 (file)
@@ -1614,7 +1614,7 @@ int gnutls_certificate_set_x509_key_mem(GNUTLS_CERTIFICATE_CREDENTIALS res, cons
 
 
 
-static int _read_rsa_params(opaque * der, int dersize, MPI * params)
+static int _read_rsa_params(opaque * der, int dersize, GNUTLS_MPI * params)
 {
        opaque str[MAX_PARAMETER_SIZE];
        int result;
@@ -1662,7 +1662,7 @@ static int _read_rsa_params(opaque * der, int dersize, MPI * params)
  * from the certificate 
  * params[0-2]
  */
-static int _read_dsa_params(opaque * der, int dersize, MPI * params)
+static int _read_dsa_params(opaque * der, int dersize, GNUTLS_MPI * params)
 {
        opaque str[MAX_PARAMETER_SIZE];
        int result;
@@ -1724,7 +1724,7 @@ static int _read_dsa_params(opaque * der, int dersize, MPI * params)
  * from the certificate 
  * params[3]
  */
-static int _read_dsa_pubkey(opaque * der, int dersize, MPI * params)
+static int _read_dsa_pubkey(opaque * der, int dersize, GNUTLS_MPI * params)
 {
        opaque str[MAX_PARAMETER_SIZE];
        int result;
@@ -1786,9 +1786,9 @@ int len, result;
                 */
                gCert->subject_pk_algorithm = GNUTLS_PK_RSA;
 
-               if ((sizeof(gCert->params) / sizeof(MPI)) < RSA_PUBLIC_PARAMS) {
+               if ((sizeof(gCert->params) / sizeof(GNUTLS_MPI)) < RSA_PUBLIC_PARAMS) {
                        gnutls_assert();
-                       /* internal error. Increase the MPIs in params */
+                       /* internal error. Increase the GNUTLS_MPIs in params */
                        return GNUTLS_E_INTERNAL_ERROR;
                }
 
@@ -1810,9 +1810,9 @@ int len, result;
                 */
                gCert->subject_pk_algorithm = GNUTLS_PK_DSA;
 
-               if ((sizeof(gCert->params) / sizeof(MPI)) < DSA_PUBLIC_PARAMS) {
+               if ((sizeof(gCert->params) / sizeof(GNUTLS_MPI)) < DSA_PUBLIC_PARAMS) {
                        gnutls_assert();
-                       /* internal error. Increase the MPIs in params */
+                       /* internal error. Increase the GNUTLS_MPIs in params */
                        return GNUTLS_E_INTERNAL_ERROR;
                }
 
@@ -2306,7 +2306,7 @@ int gnutls_x509_extract_certificate_pk_algorithm( const gnutls_datum * cert, int
        opaque str[MAX_X509_CERT_SIZE];
        int algo;
        int len = sizeof(str);
-       MPI params[MAX_PARAMS_SIZE];
+       GNUTLS_MPI params[MAX_PARAMS_SIZE];
 
        if ((result=asn1_create_structure
            (_gnutls_get_pkix(), "PKIX1.Certificate", &c2,
@@ -2375,7 +2375,7 @@ int gnutls_x509_extract_certificate_pk_algorithm( const gnutls_datum * cert, int
                        return result;
                }
 
-               bits[0] = gcry_mpi_get_nbits( params[0]);
+               bits[0] = _gnutls_mpi_get_nbits( params[0]);
        
                _gnutls_mpi_release( &params[0]);
                _gnutls_mpi_release( &params[1]);
@@ -2390,7 +2390,7 @@ int gnutls_x509_extract_certificate_pk_algorithm( const gnutls_datum * cert, int
                        return result;
                }
 
-               bits[0] = gcry_mpi_get_nbits( params[3]);
+               bits[0] = _gnutls_mpi_get_nbits( params[3]);
 
                _gnutls_mpi_release( &params[3]);
        }
index 0621d79d5439fa889cda58bb0db6f9a3b98cc41d..d9da3983c1ed7754b65fd30a5b1d8f1517860496 100644 (file)
@@ -1,5 +1,5 @@
 /* A Bison parser, made from x509_ASN.y
-   by GNU bison 1.32.  */
+   by GNU bison 1.35.  */
 
 #define YYBISON 1  /* Identify Bison output.  */
 
@@ -66,6 +66,7 @@ typedef union {
   node_asn* node;
 } yystype;
 # define YYSTYPE yystype
+# define YYSTYPE_IS_TRIVIAL 1
 #endif
 #ifndef YYDEBUG
 # define YYDEBUG 0
@@ -207,7 +208,7 @@ static const char *const yytname[] =
   "type_assig_right_tag_default", "type_assig", "type_assig_list", 
   "sequence_def", "set_def", "choise_def", "any_def", "type_def", 
   "constant_def", "type_constant", "type_constant_list", "definitions_id", 
-  "imports_def", "explicit_implicit", "definitions", NULL
+  "imports_def", "explicit_implicit", "definitions", 0
 };
 #endif
 
@@ -361,7 +362,9 @@ static const short yycheck[] =
 #line 3 "/usr/share/bison/bison.simple"
 
 /* Skeleton output parser for bison,
-   Copyright (C) 1984, 1989, 1990, 2000, 2001 Free Software Foundation, Inc.
+
+   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software
+   Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -395,24 +398,16 @@ static const short yycheck[] =
    define necessary library symbols; they are noted "INFRINGES ON
    USER NAME SPACE" below.  */
 
-#ifdef __cplusplus
-# define YYSTD(x) std::x
-#else
-# define YYSTD(x) x
-#endif
-
 #if ! defined (yyoverflow) || defined (YYERROR_VERBOSE)
 
 /* The parser invokes alloca or malloc; define the necessary symbols.  */
 
 # if YYSTACK_USE_ALLOCA
 #  define YYSTACK_ALLOC alloca
-#  define YYSIZE_T YYSTD (size_t)
 # else
 #  ifndef YYSTACK_USE_ALLOCA
 #   if defined (alloca) || defined (_ALLOCA_H)
 #    define YYSTACK_ALLOC alloca
-#    define YYSIZE_T YYSTD (size_t)
 #   else
 #    ifdef __GNUC__
 #     define YYSTACK_ALLOC __builtin_alloca
@@ -425,18 +420,19 @@ static const short yycheck[] =
    /* Pacify GCC's `empty if-body' warning. */
 #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
 # else
-#  ifdef __cplusplus
-#   include <cstdlib> /* INFRINGES ON USER NAME SPACE */
-#   define YYSIZE_T std::size_t
-#  else
-#   ifdef __STDC__
-#    include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
-#    define YYSIZE_T size_t
-#   endif
+#  if defined (__STDC__) || defined (__cplusplus)
+#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
+#   define YYSIZE_T size_t
 #  endif
-#  define YYSTACK_ALLOC YYSTD (malloc)
-#  define YYSTACK_FREE YYSTD (free)
+#  define YYSTACK_ALLOC malloc
+#  define YYSTACK_FREE free
 # endif
+#endif /* ! defined (yyoverflow) || defined (YYERROR_VERBOSE) */
+
+
+#if (! defined (yyoverflow) \
+     && (! defined (__cplusplus) \
+        || (YYLTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
 
 /* A type that is properly aligned for any stack member.  */
 union yyalloc
@@ -463,24 +459,41 @@ union yyalloc
       + YYSTACK_GAP_MAX)
 # endif
 
-/* Relocate the TYPE STACK from its old location to the new one.  The
+/* Copy COUNT objects from FROM to TO.  The source and destination do
+   not overlap.  */
+# ifndef YYCOPY
+#  if 1 < __GNUC__
+#   define YYCOPY(To, From, Count) \
+      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
+#  else
+#   define YYCOPY(To, From, Count)             \
+      do                                       \
+       {                                       \
+         register YYSIZE_T yyi;                \
+         for (yyi = 0; yyi < (Count); yyi++)   \
+           (To)[yyi] = (From)[yyi];            \
+       }                                       \
+      while (0)
+#  endif
+# endif
+
+/* Relocate STACK from its old location to the new one.  The
    local variables YYSIZE and YYSTACKSIZE give the old and new number of
    elements in the stack, and YYPTR gives the new location of the
    stack.  Advance YYPTR to a properly aligned location for the next
    stack.  */
-# define YYSTACK_RELOCATE(Type, Stack)                                 \
+# define YYSTACK_RELOCATE(Stack)                                       \
     do                                                                 \
       {                                                                        \
        YYSIZE_T yynewbytes;                                            \
-       yymemcpy ((char *) yyptr, (char *) (Stack),                     \
-                 yysize * (YYSIZE_T) sizeof (Type));                   \
+       YYCOPY (&yyptr->Stack, Stack, yysize);                          \
        Stack = &yyptr->Stack;                                          \
-       yynewbytes = yystacksize * sizeof (Type) + YYSTACK_GAP_MAX;     \
+       yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAX;   \
        yyptr += yynewbytes / sizeof (*yyptr);                          \
       }                                                                        \
     while (0)
 
-#endif /* ! defined (yyoverflow) || defined (YYERROR_VERBOSE) */
+#endif
 
 
 #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
@@ -490,14 +503,9 @@ union yyalloc
 # define YYSIZE_T size_t
 #endif
 #if ! defined (YYSIZE_T)
-# ifdef __cplusplus
-#  include <cstddef> /* INFRINGES ON USER NAME SPACE */
-#  define YYSIZE_T std::size_t
-# else
-#  ifdef __STDC__
-#   include <stddef.h> /* INFRINGES ON USER NAME SPACE */
-#   define YYSIZE_T size_t
-#  endif
+# if defined (__STDC__) || defined (__cplusplus)
+#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
+#  define YYSIZE_T size_t
 # endif
 #endif
 #if ! defined (YYSIZE_T)
@@ -576,12 +584,8 @@ while (0)
 #if YYDEBUG
 
 # ifndef YYFPRINTF
-#  ifdef __cplusplus
-#   include <cstdio>  /* INFRINGES ON USER NAME SPACE */
-#  else
-#   include <stdio.h> /* INFRINGES ON USER NAME SPACE */
-#  endif
-#  define YYFPRINTF YYSTD (fprintf)
+#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
+#  define YYFPRINTF fprintf
 # endif
 
 # define YYDPRINTF(Args)                       \
@@ -589,10 +593,8 @@ do {                                               \
   if (yydebug)                                 \
     YYFPRINTF Args;                            \
 } while (0)
-/* Nonzero means print parse trace. [The following comment makes no
-   sense to me.  Could someone clarify it?  --akim] Since this is
-   uninitialized, it does not stop multiple parsers from coexisting.
-   */
+/* Nonzero means print parse trace.  It is left uninitialized so that
+   multiple parsers can coexist.  */
 int yydebug;
 #else /* !YYDEBUG */
 # define YYDPRINTF(Args)
@@ -618,33 +620,6 @@ int yydebug;
 # define YYMAXDEPTH 10000
 #endif
 \f
-#if ! defined (yyoverflow) && ! defined (yymemcpy)
-# if __GNUC__ > 1              /* GNU C and GNU C++ define this.  */
-#  define yymemcpy __builtin_memcpy
-# else                         /* not GNU C or C++ */
-
-/* This is the most reliable way to avoid incompatibilities
-   in available built-in functions on various systems.  */
-static void
-#  if defined (__STDC__) || defined (__cplusplus)
-yymemcpy (char *yyto, const char *yyfrom, YYSIZE_T yycount)
-#  else
-yymemcpy (yyto, yyfrom, yycount)
-     char *yyto;
-     const char *yyfrom;
-     YYSIZE_T yycount;
-#  endif
-{
-  register const char *yyf = yyfrom;
-  register char *yyt = yyto;
-  register YYSIZE_T yyi = yycount;
-
-  while (yyi-- != 0)
-    *yyt++ = *yyf++;
-}
-# endif
-#endif
-
 #ifdef YYERROR_VERBOSE
 
 # ifndef yystrlen
@@ -697,7 +672,7 @@ yystpcpy (yydest, yysrc)
 # endif
 #endif
 \f
-#line 341 "/usr/share/bison/bison.simple"
+#line 315 "/usr/share/bison/bison.simple"
 
 
 /* The user can define YYPARSE_PARAM as the name of an argument to be passed
@@ -707,13 +682,13 @@ yystpcpy (yydest, yysrc)
    to the proper pointer type.  */
 
 #ifdef YYPARSE_PARAM
-# ifdef __cplusplus
+# if defined (__STDC__) || defined (__cplusplus)
 #  define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
 #  define YYPARSE_PARAM_DECL
-# else /* !__cplusplus */
+# else
 #  define YYPARSE_PARAM_ARG YYPARSE_PARAM
 #  define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
-# endif /* !__cplusplus */
+# endif
 #else /* !YYPARSE_PARAM */
 # define YYPARSE_PARAM_ARG
 # define YYPARSE_PARAM_DECL
@@ -887,6 +862,9 @@ yyparse (YYPARSE_PARAM_ARG)
        yyvs = yyvs1;
       }
 #else /* no yyoverflow */
+# ifndef YYSTACK_RELOCATE
+      goto yyoverflowlab;
+# else
       /* Extend the stack our own way.  */
       if (yystacksize >= YYMAXDEPTH)
        goto yyoverflowlab;
@@ -900,15 +878,16 @@ yyparse (YYPARSE_PARAM_ARG)
          (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
        if (! yyptr)
          goto yyoverflowlab;
-       YYSTACK_RELOCATE (short, yyss);
-       YYSTACK_RELOCATE (YYSTYPE, yyvs);
+       YYSTACK_RELOCATE (yyss);
+       YYSTACK_RELOCATE (yyvs);
 # if YYLSP_NEEDED
-       YYSTACK_RELOCATE (YYLTYPE, yyls);
+       YYSTACK_RELOCATE (yyls);
 # endif
 # undef YYSTACK_RELOCATE
        if (yyss1 != yyssa)
          YYSTACK_FREE (yyss1);
       }
+# endif
 #endif /* no yyoverflow */
 
       yyssp = yyss + yysize - 1;
@@ -1539,7 +1518,7 @@ case 97:
     break;
 }
 
-#line 727 "/usr/share/bison/bison.simple"
+#line 705 "/usr/share/bison/bison.simple"
 
 \f
   yyvsp -= yylen;
index c5e73bc2174a3fb988b92f1c67eb4d3a52783359..fe1d5b90e8580c4fae4ed2425e4a912fea9e77c7 100644 (file)
@@ -140,7 +140,7 @@ int len;
  * params[1] is public key
  */
 static int
-_pkcs1_rsa_verify_sig( const gnutls_datum* signature, gnutls_datum* text, MPI *params, int params_len)
+_pkcs1_rsa_verify_sig( const gnutls_datum* signature, gnutls_datum* text, GNUTLS_MPI *params, int params_len)
 {
        MACAlgorithm hash;
        int ret;