diff options
author | Peter Dettman <peter.dettman@bouncycastle.org> | 2023-03-16 12:41:05 +0700 |
---|---|---|
committer | Peter Dettman <peter.dettman@bouncycastle.org> | 2023-03-16 12:41:05 +0700 |
commit | fdeafa10e2dcfee734d050f2f11ab50a350f69cc (patch) | |
tree | b839357e0bea77bf7c192671b77539b9051162a0 | |
parent | Fix non-8-aligned IPv4 netmask parsing (diff) | |
download | BouncyCastle.NET-ed25519-fdeafa10e2dcfee734d050f2f11ab50a350f69cc.tar.xz |
Fix rethrow syntax
- see https://github.com/bcgit/bc-csharp/issues/425
28 files changed, 121 insertions, 109 deletions
diff --git a/crypto/src/cms/CMSSignedHelper.cs b/crypto/src/cms/CMSSignedHelper.cs index 37fefe140..8f2a92147 100644 --- a/crypto/src/cms/CMSSignedHelper.cs +++ b/crypto/src/cms/CMSSignedHelper.cs @@ -187,7 +187,7 @@ namespace Org.BouncyCastle.Cms { return DigestUtilities.GetDigest(algorithm); } - catch (SecurityUtilityException e) + catch (SecurityUtilityException) { // This is probably superfluous on C#, since no provider infrastructure, // assuming DigestUtilities already knows all the aliases @@ -196,7 +196,7 @@ namespace Org.BouncyCastle.Cms try { return DigestUtilities.GetDigest(alias); } catch (SecurityUtilityException) {} } - throw e; + throw; } } diff --git a/crypto/src/cms/SignerInformation.cs b/crypto/src/cms/SignerInformation.cs index 2e32a3ae6..116e349f0 100644 --- a/crypto/src/cms/SignerInformation.cs +++ b/crypto/src/cms/SignerInformation.cs @@ -612,9 +612,9 @@ namespace Org.BouncyCastle.Cms throw new CmsException("algorithm: " + algorithm + " not supported in base signatures."); } } - catch (SecurityUtilityException e) + catch (SecurityUtilityException) { - throw e; + throw; } catch (GeneralSecurityException e) { diff --git a/crypto/src/crypto/engines/IesEngine.cs b/crypto/src/crypto/engines/IesEngine.cs index 33fc4141b..2581aac2c 100644 --- a/crypto/src/crypto/engines/IesEngine.cs +++ b/crypto/src/crypto/engines/IesEngine.cs @@ -140,7 +140,7 @@ namespace Org.BouncyCastle.Crypto.Engines byte[] T1 = Arrays.CopyOfRange(in_enc, inOff, inOff + macBuf.Length); if (!Arrays.FixedTimeEquals(T1, macBuf)) - throw (new InvalidCipherTextException("Invalid MAC.")); + throw new InvalidCipherTextException("Invalid MAC."); return M; } diff --git a/crypto/src/openpgp/PgpPbeEncryptedData.cs b/crypto/src/openpgp/PgpPbeEncryptedData.cs index 7920f54ea..1c3432d89 100644 --- a/crypto/src/openpgp/PgpPbeEncryptedData.cs +++ b/crypto/src/openpgp/PgpPbeEncryptedData.cs @@ -133,9 +133,9 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp return encStream; } - catch (PgpException e) + catch (PgpException) { - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/openpgp/PgpPublicKey.cs b/crypto/src/openpgp/PgpPublicKey.cs index 3ebfc6256..1fadcff64 100644 --- a/crypto/src/openpgp/PgpPublicKey.cs +++ b/crypto/src/openpgp/PgpPublicKey.cs @@ -635,9 +635,9 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp throw new PgpException("unknown public key algorithm encountered"); } } - catch (PgpException e) + catch (PgpException) { - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/openpgp/PgpPublicKeyEncryptedData.cs b/crypto/src/openpgp/PgpPublicKeyEncryptedData.cs index 8c6fcda53..645973215 100644 --- a/crypto/src/openpgp/PgpPublicKeyEncryptedData.cs +++ b/crypto/src/openpgp/PgpPublicKeyEncryptedData.cs @@ -45,9 +45,9 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp throw new PgpException("unknown asymmetric algorithm: " + algorithm); } } - catch (PgpException e) + catch (PgpException) { - throw e; + throw; } catch (Exception e) { @@ -116,9 +116,9 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp cipher = CipherUtilities.GetCipher(cName); } - catch (PgpException e) + catch (PgpException) { - throw e; + throw; } catch (Exception e) { @@ -175,9 +175,9 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp return encStream; } - catch (PgpException e) + catch (PgpException) { - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/openpgp/PgpSecretKey.cs b/crypto/src/openpgp/PgpSecretKey.cs index a120f97d8..f6e36715f 100644 --- a/crypto/src/openpgp/PgpSecretKey.cs +++ b/crypto/src/openpgp/PgpSecretKey.cs @@ -154,9 +154,9 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp } } } - catch (PgpException e) + catch (PgpException) { - throw e; + throw; } catch (Exception e) { @@ -605,9 +605,9 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp return data; } - catch (PgpException e) + catch (PgpException) { - throw e; + throw; } catch (Exception e) { @@ -771,9 +771,9 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp return new PgpPrivateKey(KeyId, pubPk, privateKey); } - catch (PgpException e) + catch (PgpException) { - throw e; + throw; } catch (Exception e) { @@ -1000,9 +1000,9 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp keyData = EncryptKeyDataV3(rawKeyData, newEncAlgorithm, rawNewPassPhrase, clearPassPhrase, rand, out s2k, out iv); } } - catch (PgpException e) + catch (PgpException) { - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/openpgp/PgpUtilities.cs b/crypto/src/openpgp/PgpUtilities.cs index 17e100bff..82f65bd08 100644 --- a/crypto/src/openpgp/PgpUtilities.cs +++ b/crypto/src/openpgp/PgpUtilities.cs @@ -526,9 +526,9 @@ namespace Org.BouncyCastle.Bcpg.OpenPgp return new ArmoredInputStream(inputStream, hasHeaders); } - catch (IOException e) + catch (IOException) { - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/openssl/PEMReader.cs b/crypto/src/openssl/PEMReader.cs index a2c4fd1d6..cb6950c47 100644 --- a/crypto/src/openssl/PEMReader.cs +++ b/crypto/src/openssl/PEMReader.cs @@ -356,9 +356,9 @@ namespace Org.BouncyCastle.OpenSsl return new AsymmetricCipherKeyPair(pubSpec, privSpec); } - catch (IOException e) + catch (IOException) { - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/openssl/PEMWriter.cs b/crypto/src/openssl/PEMWriter.cs index 58b6156d5..504ea9e4b 100644 --- a/crypto/src/openssl/PEMWriter.cs +++ b/crypto/src/openssl/PEMWriter.cs @@ -31,7 +31,7 @@ namespace Org.BouncyCastle.OpenSsl if (e.InnerException is IOException inner) throw inner; - throw e; + throw; } } } diff --git a/crypto/src/tls/ClientHello.cs b/crypto/src/tls/ClientHello.cs index 574264491..ab0125b55 100644 --- a/crypto/src/tls/ClientHello.cs +++ b/crypto/src/tls/ClientHello.cs @@ -103,9 +103,9 @@ namespace Org.BouncyCastle.Tls { return ImplParse(messageInput, dtlsOutput); } - catch (TlsFatalAlert e) + catch (TlsFatalAlert) { - throw e; + throw; } catch (IOException e) { diff --git a/crypto/src/tls/DtlsClientProtocol.cs b/crypto/src/tls/DtlsClientProtocol.cs index 92478dc46..3b32c044e 100644 --- a/crypto/src/tls/DtlsClientProtocol.cs +++ b/crypto/src/tls/DtlsClientProtocol.cs @@ -69,12 +69,12 @@ namespace Org.BouncyCastle.Tls catch (TlsFatalAlert fatalAlert) { AbortClientHandshake(state, recordLayer, fatalAlert.AlertDescription); - throw fatalAlert; + throw; } - catch (IOException e) + catch (IOException) { AbortClientHandshake(state, recordLayer, AlertDescription.internal_error); - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/tls/DtlsRecordLayer.cs b/crypto/src/tls/DtlsRecordLayer.cs index bab6892b7..3cf04b8ac 100644 --- a/crypto/src/tls/DtlsRecordLayer.cs +++ b/crypto/src/tls/DtlsRecordLayer.cs @@ -78,7 +78,7 @@ namespace Org.BouncyCastle.Tls //catch (InterruptedIOException e) //{ // e.bytesTransferred = 0; - // throw e; + // throw; //} sender.Send(buf, off, len); @@ -578,13 +578,13 @@ namespace Org.BouncyCastle.Tls if (TlsUtilities.IsTimeout(e)) return -1; - throw e; + throw; } // TODO[tls-port] Can we support interrupted IO on .NET? //catch (InterruptedIOException e) //{ // e.bytesTransferred = 0; - // throw e; + // throw; //} } diff --git a/crypto/src/tls/DtlsServerProtocol.cs b/crypto/src/tls/DtlsServerProtocol.cs index 43d4e5539..3bf92395b 100644 --- a/crypto/src/tls/DtlsServerProtocol.cs +++ b/crypto/src/tls/DtlsServerProtocol.cs @@ -57,12 +57,12 @@ namespace Org.BouncyCastle.Tls catch (TlsFatalAlert fatalAlert) { AbortServerHandshake(state, recordLayer, fatalAlert.AlertDescription); - throw fatalAlert; + throw; } catch (IOException e) { AbortServerHandshake(state, recordLayer, AlertDescription.internal_error); - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/tls/DtlsTransport.cs b/crypto/src/tls/DtlsTransport.cs index 033e0af0b..2d950ede0 100644 --- a/crypto/src/tls/DtlsTransport.cs +++ b/crypto/src/tls/DtlsTransport.cs @@ -54,29 +54,29 @@ namespace Org.BouncyCastle.Tls return -1; m_recordLayer.Fail(fatalAlert.AlertDescription); - throw fatalAlert; + throw; } - catch (TlsTimeoutException e) + catch (TlsTimeoutException) { - throw e; + throw; } catch (SocketException e) { if (TlsUtilities.IsTimeout(e)) - throw e; + throw; m_recordLayer.Fail(AlertDescription.internal_error); throw new TlsFatalAlert(AlertDescription.internal_error, e); } // TODO[tls-port] Can we support interrupted IO on .NET? - //catch (InterruptedIOException e) + //catch (InterruptedIOException) //{ - // throw e; + // throw; //} - catch (IOException e) + catch (IOException) { m_recordLayer.Fail(AlertDescription.internal_error); - throw e; + throw; } catch (Exception e) { @@ -103,29 +103,29 @@ namespace Org.BouncyCastle.Tls return -1; m_recordLayer.Fail(fatalAlert.AlertDescription); - throw fatalAlert; + throw; } - catch (TlsTimeoutException e) + catch (TlsTimeoutException) { - throw e; + throw; } catch (SocketException e) { if (TlsUtilities.IsTimeout(e)) - throw e; + throw; m_recordLayer.Fail(AlertDescription.internal_error); throw new TlsFatalAlert(AlertDescription.internal_error, e); } // TODO[tls-port] Can we support interrupted IO on .NET? - //catch (InterruptedIOException e) + //catch (InterruptedIOException) //{ - // throw e; + // throw; //} - catch (IOException e) + catch (IOException) { m_recordLayer.Fail(AlertDescription.internal_error); - throw e; + throw; } catch (Exception e) { @@ -155,29 +155,29 @@ namespace Org.BouncyCastle.Tls catch (TlsFatalAlert fatalAlert) { m_recordLayer.Fail(fatalAlert.AlertDescription); - throw fatalAlert; + throw; } - catch (TlsTimeoutException e) + catch (TlsTimeoutException) { - throw e; + throw; } catch (SocketException e) { if (TlsUtilities.IsTimeout(e)) - throw e; + throw; m_recordLayer.Fail(AlertDescription.internal_error); throw new TlsFatalAlert(AlertDescription.internal_error, e); } // TODO[tls-port] Can we support interrupted IO on .NET? - //catch (InterruptedIOException e) + //catch (InterruptedIOException) //{ - // throw e; + // throw; //} - catch (IOException e) + catch (IOException) { m_recordLayer.Fail(AlertDescription.internal_error); - throw e; + throw; } catch (Exception e) { @@ -197,29 +197,29 @@ namespace Org.BouncyCastle.Tls catch (TlsFatalAlert fatalAlert) { m_recordLayer.Fail(fatalAlert.AlertDescription); - throw fatalAlert; + throw; } - catch (TlsTimeoutException e) + catch (TlsTimeoutException) { - throw e; + throw; } catch (SocketException e) { if (TlsUtilities.IsTimeout(e)) - throw e; + throw; m_recordLayer.Fail(AlertDescription.internal_error); throw new TlsFatalAlert(AlertDescription.internal_error, e); } // TODO[tls-port] Can we support interrupted IO on .NET? - //catch (InterruptedIOException e) + //catch (InterruptedIOException) //{ - // throw e; + // throw; //} - catch (IOException e) + catch (IOException) { m_recordLayer.Fail(AlertDescription.internal_error); - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/tls/RecordStream.cs b/crypto/src/tls/RecordStream.cs index 8dc2a30ce..ed1c8d871 100644 --- a/crypto/src/tls/RecordStream.cs +++ b/crypto/src/tls/RecordStream.cs @@ -1,6 +1,7 @@ using System; using System.Diagnostics; using System.IO; +using System.Runtime.ExceptionServices; using Org.BouncyCastle.Tls.Crypto; using Org.BouncyCastle.Utilities; @@ -356,14 +357,14 @@ namespace Org.BouncyCastle.Tls { m_inputRecord.Reset(); - IOException io = null; + ExceptionDispatchInfo io = null; try { m_input.Dispose(); } catch (IOException e) { - io = e; + io = ExceptionDispatchInfo.Capture(e); } try @@ -374,7 +375,7 @@ namespace Org.BouncyCastle.Tls { if (io == null) { - io = e; + io = ExceptionDispatchInfo.Capture(e); } else { @@ -383,8 +384,7 @@ namespace Org.BouncyCastle.Tls } } - if (io != null) - throw io; + io?.Throw(); } /// <exception cref="IOException"/> diff --git a/crypto/src/tls/TlsProtocol.cs b/crypto/src/tls/TlsProtocol.cs index 92322e949..55fb9f745 100644 --- a/crypto/src/tls/TlsProtocol.cs +++ b/crypto/src/tls/TlsProtocol.cs @@ -782,12 +782,12 @@ namespace Org.BouncyCastle.Tls catch (TlsFatalAlert e) { HandleException(e.AlertDescription, "Failed to read record", e); - throw e; + throw; } catch (IOException e) { HandleException(AlertDescription.internal_error, "Failed to read record", e); - throw e; + throw; } catch (Exception e) { @@ -813,20 +813,20 @@ namespace Org.BouncyCastle.Tls return; } } - catch (TlsFatalAlertReceived e) + catch (TlsFatalAlertReceived) { // Connection failure already handled at source - throw e; + throw; } catch (TlsFatalAlert e) { HandleException(e.AlertDescription, "Failed to read record", e); - throw e; + throw; } catch (IOException e) { HandleException(AlertDescription.internal_error, "Failed to read record", e); - throw e; + throw; } catch (Exception e) { @@ -849,12 +849,12 @@ namespace Org.BouncyCastle.Tls catch (TlsFatalAlert e) { HandleException(e.AlertDescription, "Failed to process record", e); - throw e; + throw; } catch (IOException e) { HandleException(AlertDescription.internal_error, "Failed to process record", e); - throw e; + throw; } catch (Exception e) { @@ -873,12 +873,12 @@ namespace Org.BouncyCastle.Tls catch (TlsFatalAlert e) { HandleException(e.AlertDescription, "Failed to write record", e); - throw e; + throw; } catch (IOException e) { HandleException(AlertDescription.internal_error, "Failed to write record", e); - throw e; + throw; } catch (Exception e) { @@ -898,12 +898,12 @@ namespace Org.BouncyCastle.Tls catch (TlsFatalAlert e) { HandleException(e.AlertDescription, "Failed to write record", e); - throw e; + throw; } catch (IOException e) { HandleException(AlertDescription.internal_error, "Failed to write record", e); - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/tls/TlsUtilities.cs b/crypto/src/tls/TlsUtilities.cs index 0d2a971a0..a2ee82f9e 100644 --- a/crypto/src/tls/TlsUtilities.cs +++ b/crypto/src/tls/TlsUtilities.cs @@ -2288,9 +2288,9 @@ namespace Org.BouncyCastle.Tls verified = verifier.VerifyRawSignature(certificateVerify, hash); } } - catch (TlsFatalAlert e) + catch (TlsFatalAlert ) { - throw e; + throw; } catch (Exception e) { @@ -2353,9 +2353,9 @@ namespace Org.BouncyCastle.Tls output.Write(prfHash, 0, prfHash.Length); verified = verifier.VerifySignature(certificateVerify.Signature); } - catch (TlsFatalAlert e) + catch (TlsFatalAlert) { - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/tls/crypto/impl/TlsAeadCipher.cs b/crypto/src/tls/crypto/impl/TlsAeadCipher.cs index 594981210..8525c2fe9 100644 --- a/crypto/src/tls/crypto/impl/TlsAeadCipher.cs +++ b/crypto/src/tls/crypto/impl/TlsAeadCipher.cs @@ -217,9 +217,9 @@ namespace Org.BouncyCastle.Tls.Crypto.Impl outputPos += m_encryptCipher.DoFinal(output, outputPos, plaintextLength + extraLength, output, outputPos); } - catch (IOException e) + catch (IOException) { - throw e; + throw; } catch (Exception e) { @@ -292,9 +292,9 @@ namespace Org.BouncyCastle.Tls.Crypto.Impl outputPos += m_encryptCipher.DoFinal(output, outputPos, plaintext.Length + extraLength, output, outputPos); } - catch (IOException e) + catch (IOException) { - throw e; + throw; } catch (Exception e) { @@ -357,11 +357,11 @@ namespace Org.BouncyCastle.Tls.Crypto.Impl { m_decryptCipher.Reset(); } - throw fatalAlert; + throw; } - catch (IOException e) + catch (IOException) { - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/tls/crypto/impl/bc/BcTlsECDomain.cs b/crypto/src/tls/crypto/impl/bc/BcTlsECDomain.cs index ab3481924..89607b35a 100644 --- a/crypto/src/tls/crypto/impl/bc/BcTlsECDomain.cs +++ b/crypto/src/tls/crypto/impl/bc/BcTlsECDomain.cs @@ -91,9 +91,9 @@ namespace Org.BouncyCastle.Tls.Crypto.Impl.BC return new ECPublicKeyParameters(point, m_domainParameters); } - catch (IOException e) + catch (IOException) { - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/x509/X509AttrCertParser.cs b/crypto/src/x509/X509AttrCertParser.cs index 0019a48eb..39727a0e2 100644 --- a/crypto/src/x509/X509AttrCertParser.cs +++ b/crypto/src/x509/X509AttrCertParser.cs @@ -141,6 +141,10 @@ namespace Org.BouncyCastle.X509 return ReadDerCertificate(new Asn1InputStream(inStream)); } + catch (CertificateException) + { + throw; + } catch (Exception e) { throw new CertificateException(e.ToString()); diff --git a/crypto/src/x509/X509CertPairParser.cs b/crypto/src/x509/X509CertPairParser.cs index 95ba522c8..d8ecd9ddf 100644 --- a/crypto/src/x509/X509CertPairParser.cs +++ b/crypto/src/x509/X509CertPairParser.cs @@ -74,6 +74,10 @@ namespace Org.BouncyCastle.X509 return ReadDerCrossCertificatePair(inStream); } + catch (CertificateException) + { + throw; + } catch (Exception e) { throw new CertificateException(e.ToString()); diff --git a/crypto/src/x509/X509CertificateParser.cs b/crypto/src/x509/X509CertificateParser.cs index 6fc1b3ff4..2d6da0f23 100644 --- a/crypto/src/x509/X509CertificateParser.cs +++ b/crypto/src/x509/X509CertificateParser.cs @@ -143,6 +143,10 @@ namespace Org.BouncyCastle.X509 return ReadDerCertificate(asn1In); } } + catch (CertificateException) + { + throw; + } catch (Exception e) { throw new CertificateException("Failed to read certificate", e); diff --git a/crypto/src/x509/X509CrlParser.cs b/crypto/src/x509/X509CrlParser.cs index 53a02393b..040943104 100644 --- a/crypto/src/x509/X509CrlParser.cs +++ b/crypto/src/x509/X509CrlParser.cs @@ -138,9 +138,9 @@ namespace Org.BouncyCastle.X509 return ReadDerCrl(asn1); } } - catch (CrlException e) + catch (CrlException) { - throw e; + throw; } catch (Exception e) { diff --git a/crypto/src/x509/X509V2AttributeCertificate.cs b/crypto/src/x509/X509V2AttributeCertificate.cs index b5a316d76..836213fdc 100644 --- a/crypto/src/x509/X509V2AttributeCertificate.cs +++ b/crypto/src/x509/X509V2AttributeCertificate.cs @@ -27,9 +27,9 @@ namespace Org.BouncyCastle.X509 { return AttributeCertificate.GetInstance(Asn1Object.FromStream(input)); } - catch (IOException e) + catch (IOException) { - throw e; + throw; } catch (Exception e) { diff --git a/crypto/test/src/math/test/PrimesTest.cs b/crypto/test/src/math/test/PrimesTest.cs index 4456ef2c1..6854e160b 100644 --- a/crypto/test/src/math/test/PrimesTest.cs +++ b/crypto/test/src/math/test/PrimesTest.cs @@ -142,7 +142,7 @@ namespace Org.BouncyCastle.Math.Tests continue; } - throw e; + throw; } } diff --git a/crypto/test/src/test/BaseBlockCipherTest.cs b/crypto/test/src/test/BaseBlockCipherTest.cs index 87fb01056..aca912131 100644 --- a/crypto/test/src/test/BaseBlockCipherTest.cs +++ b/crypto/test/src/test/BaseBlockCipherTest.cs @@ -115,9 +115,9 @@ namespace Org.BouncyCastle.Tests + Hex.ToHexString(cText)); } } - catch (TestFailedException e) + catch (TestFailedException) { - throw e; + throw; } catch (Exception e) { diff --git a/crypto/test/src/test/PkixPolicyMappingTest.cs b/crypto/test/src/test/PkixPolicyMappingTest.cs index 4dbfe0ad5..66e09309c 100644 --- a/crypto/test/src/test/PkixPolicyMappingTest.cs +++ b/crypto/test/src/test/PkixPolicyMappingTest.cs @@ -144,9 +144,9 @@ namespace Org.BouncyCastle.Tests return ""; } - catch (TestFailedException e) + catch (TestFailedException) { - throw e; + throw; } catch (Exception e) { |