summary refs log tree commit diff
path: root/crypto/src
diff options
context:
space:
mode:
authorPeter Dettman <peter.dettman@bouncycastle.org>2023-04-21 18:54:36 +0700
committerPeter Dettman <peter.dettman@bouncycastle.org>2023-04-21 18:54:36 +0700
commitb9c0074fb1b1b210182bba31d236664ea9ca37a8 (patch)
tree64ff754cd8fbffb5923e992843ab5fb51ca9faf9 /crypto/src
parentSet version to '2.2' (diff)
downloadBouncyCastle.NET-ed25519-b9c0074fb1b1b210182bba31d236664ea9ca37a8.tar.xz
Patch #1 for 2.2 release-2.2.1
- enable optimized code in 'Publish' configuration
- fixed blocksRemaining tracking in GcmBlockCipher (not net60)
- complete connection ID for block ciphers with encrypt_then_mac (not net60)
- added some missing entries for the contributors file
Diffstat (limited to 'crypto/src')
-rw-r--r--crypto/src/BouncyCastle.Crypto.csproj2
-rw-r--r--crypto/src/crypto/modes/GCMBlockCipher.cs5
-rw-r--r--crypto/src/tls/crypto/impl/TlsBlockCipher.cs2
3 files changed, 3 insertions, 6 deletions
diff --git a/crypto/src/BouncyCastle.Crypto.csproj b/crypto/src/BouncyCastle.Crypto.csproj
index b7fc0cf30..b4b5f8f4e 100644
--- a/crypto/src/BouncyCastle.Crypto.csproj
+++ b/crypto/src/BouncyCastle.Crypto.csproj
@@ -71,6 +71,7 @@
   <PropertyGroup Condition="'$(Configuration)'=='Release'">
     <DefineConstants />
     <GenerateDocumentationFile>true</GenerateDocumentationFile>
+    <Optimize>True</Optimize>
   </PropertyGroup>
 
   <PropertyGroup Condition="'$(Configuration)'=='Publish'">
@@ -78,6 +79,7 @@
     <GenerateDocumentationFile>true</GenerateDocumentationFile>
     <!-- Deterministic build. -->
     <ContinuousIntegrationBuild>true</ContinuousIntegrationBuild>
+    <Optimize>True</Optimize>
   </PropertyGroup>
 
   <ItemGroup>
diff --git a/crypto/src/crypto/modes/GCMBlockCipher.cs b/crypto/src/crypto/modes/GCMBlockCipher.cs
index 16d9f3654..ad4c044d4 100644
--- a/crypto/src/crypto/modes/GCMBlockCipher.cs
+++ b/crypto/src/crypto/modes/GCMBlockCipher.cs
@@ -1716,11 +1716,6 @@ namespace Org.BouncyCastle.Crypto.Modes
 
         private void GetNextCtrBlock(byte[] block)
         {
-            if (blocksRemaining == 0)
-                throw new InvalidOperationException("Attempt to process too many blocks");
-
-            blocksRemaining--;
-
             Pack.UInt32_To_BE(++counter32, counter, 12);
 
             cipher.ProcessBlock(counter, 0, block, 0);
diff --git a/crypto/src/tls/crypto/impl/TlsBlockCipher.cs b/crypto/src/tls/crypto/impl/TlsBlockCipher.cs
index 479f00fc9..b9b8b2a76 100644
--- a/crypto/src/tls/crypto/impl/TlsBlockCipher.cs
+++ b/crypto/src/tls/crypto/impl/TlsBlockCipher.cs
@@ -277,7 +277,7 @@ namespace Org.BouncyCastle.Tls.Crypto.Impl
 
             if (m_encryptThenMac)
             {
-                byte[] mac = m_writeMac.CalculateMac(seqNo, recordType, outBuf, headerAllocation,
+                byte[] mac = m_writeMac.CalculateMac(seqNo, recordType, m_encryptConnectionID, outBuf, headerAllocation,
                     outOff - headerAllocation);
                 Array.Copy(mac, 0, outBuf, outOff, mac.Length);
                 outOff += mac.Length;