]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
corrected bug in stream decryption..
authorNikos Mavrogiannopoulos <nmav@gnutls.org>
Fri, 22 Jun 2001 21:19:04 +0000 (21:19 +0000)
committerNikos Mavrogiannopoulos <nmav@gnutls.org>
Fri, 22 Jun 2001 21:19:04 +0000 (21:19 +0000)
lib/gnutls_cipher.c
src/serv.c

index 41b451d2c073e80c67a45b5e6e298db8fb3c79d3..9f14cbfad4a7a53b2e90c9bbb8d923ea1da72c81 100644 (file)
@@ -310,11 +310,11 @@ int _gnutls_connection_state_init(GNUTLS_STATE state)
                }
 
                if (state->connection_state.mac_secret_size > 0) {
-                       memmove(state->connection_state.read_mac_secret,
+                       memcpy(state->connection_state.read_mac_secret,
                                state->
                                cipher_specs.client_write_mac_secret,
                                state->connection_state.mac_secret_size);
-                       memmove(state->connection_state.write_mac_secret,
+                       memcpy(state->connection_state.write_mac_secret,
                                state->cipher_specs.
                                server_write_mac_secret,
                                state->connection_state.mac_secret_size);
@@ -356,11 +356,11 @@ int _gnutls_connection_state_init(GNUTLS_STATE state)
                }
 
                if (state->connection_state.mac_secret_size > 0) {
-                       memmove(state->connection_state.read_mac_secret,
+                       memcpy(state->connection_state.read_mac_secret,
                                state->
                                cipher_specs.server_write_mac_secret,
                                state->connection_state.mac_secret_size);
-                       memmove(state->connection_state.write_mac_secret,
+                       memcpy(state->connection_state.write_mac_secret,
                                state->
                                cipher_specs.client_write_mac_secret,
                                state->connection_state.mac_secret_size);
@@ -470,8 +470,8 @@ int _gnutls_compressed2TLSCiphertext(GNUTLS_STATE state,
                        gnutls_assert();
                        return GNUTLS_E_MEMORY_ERROR;
                }
-               memmove(data, compressed.data, compressed.size);
-               memmove(&data[compressed.size], MAC,
+               memcpy(data, compressed.data, compressed.size);
+               memcpy(&data[compressed.size], MAC,
                        state->security_parameters.hash_size);
 
                gnutls_cipher_encrypt(state->connection_state.
@@ -510,8 +510,8 @@ int _gnutls_compressed2TLSCiphertext(GNUTLS_STATE state,
                        return GNUTLS_E_MEMORY_ERROR;
                }
                memset(&data[length - pad], pad - 1, pad);
-               memmove(data, compressed.data, compressed.size);
-               memmove(&data[compressed.size], MAC,
+               memcpy(data, compressed.data, compressed.size);
+               memcpy(&data[compressed.size], MAC,
                        state->security_parameters.hash_size);
 
                gnutls_cipher_encrypt(state->connection_state.
@@ -587,7 +587,11 @@ int _gnutls_ciphertext2TLSCompressed(GNUTLS_STATE state,
                        return GNUTLS_E_MEMORY_ERROR;
                }
 
-               memmove(data, ciphertext.data, length);
+               gnutls_cipher_decrypt(state->connection_state.
+                                     read_cipher_state, ciphertext.data,
+                                     ciphertext.size);
+
+               memcpy(data, ciphertext.data, length);
 
                compress->data = data;
                compress->size = length;
@@ -619,7 +623,7 @@ int _gnutls_ciphertext2TLSCompressed(GNUTLS_STATE state,
                        return GNUTLS_E_MEMORY_ERROR;
                }
 
-               memmove(data, ciphertext.data, length);
+               memcpy(data, ciphertext.data, length);
                compress->data = data;
                compress->size = length;
                break;
index 8d4540aad18323e2feadda02c62d9ab0aa25d383..b1251d19855b8b96e84e569d3e179b2e9c9d7d92 100644 (file)
@@ -87,7 +87,7 @@ GNUTLS_STATE initialize_state()
         * purposes.
         */
        gnutls_set_cipher_priority(state, GNUTLS_NULL_CIPHER, 
-                                  GNUTLS_RIJNDAEL_CBC, GNUTLS_3DES_CBC, 0);
+                                  GNUTLS_RIJNDAEL_CBC, GNUTLS_ARCFOUR, GNUTLS_3DES_CBC, 0);
        gnutls_set_compression_priority(state, GNUTLS_ZLIB, GNUTLS_NULL_COMPRESSION, 0);
        gnutls_set_kx_priority(state, GNUTLS_KX_DHE_RSA, GNUTLS_KX_RSA, GNUTLS_KX_SRP,
                               GNUTLS_KX_DH_ANON, 0);