Fix sending empty SPTPS records.
authorGuus Sliepen <guus@tinc-vpn.org>
Tue, 15 Oct 2013 12:09:42 +0000 (14:09 +0200)
committerGuus Sliepen <guus@tinc-vpn.org>
Tue, 15 Oct 2013 12:09:42 +0000 (14:09 +0200)
src/openssl/cipher.c

index b01f5267c04c17456f16f55646b95d18a2758906..5172d82e69b81c3cd439f8d48b263e4b44345f55 100644 (file)
@@ -160,7 +160,7 @@ bool cipher_gcm_encrypt_start(cipher_t *cipher, const void *indata, size_t inlen
 
 bool cipher_gcm_encrypt_finish(cipher_t *cipher, const void *indata, size_t inlen, void *outdata, size_t *outlen) {
        int len = 0, pad = 0;
-       if(!(inlen && EVP_EncryptUpdate(&cipher->ctx, (unsigned char *)outdata, &len, (unsigned char *)indata, inlen))
+       if((inlen && !EVP_EncryptUpdate(&cipher->ctx, (unsigned char *)outdata, &len, (unsigned char *)indata, inlen))
                        || !EVP_EncryptFinal(&cipher->ctx, (unsigned char *)outdata + len, &pad)) {
                logger(DEBUG_ALWAYS, LOG_ERR, "Error while encrypting: %s", ERR_error_string(ERR_get_error(), NULL));
                return false;