summary refs log tree commit diff
path: root/crypto/src/bcpg
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/src/bcpg')
-rw-r--r--crypto/src/bcpg/ArmoredInputStream.cs13
-rw-r--r--crypto/src/bcpg/ArmoredOutputStream.cs50
-rw-r--r--crypto/src/bcpg/BcpgInputStream.cs13
-rw-r--r--crypto/src/bcpg/BcpgOutputStream.cs17
-rw-r--r--crypto/src/bcpg/PublicKeyEncSessionPacket.cs2
5 files changed, 53 insertions, 42 deletions
diff --git a/crypto/src/bcpg/ArmoredInputStream.cs b/crypto/src/bcpg/ArmoredInputStream.cs

index 3109dd4fd..c7bb85942 100644 --- a/crypto/src/bcpg/ArmoredInputStream.cs +++ b/crypto/src/bcpg/ArmoredInputStream.cs
@@ -504,10 +504,13 @@ namespace Org.BouncyCastle.Bcpg return pos - offset; } - public override void Close() - { - input.Close(); - base.Close(); - } + protected override void Dispose(bool disposing) + { + if (disposing) + { + input.Dispose(); + } + base.Dispose(disposing); + } } } diff --git a/crypto/src/bcpg/ArmoredOutputStream.cs b/crypto/src/bcpg/ArmoredOutputStream.cs
index b3a32c6f5..458e74a97 100644 --- a/crypto/src/bcpg/ArmoredOutputStream.cs +++ b/crypto/src/bcpg/ArmoredOutputStream.cs
@@ -97,8 +97,7 @@ namespace Org.BouncyCastle.Bcpg private static readonly string footerStart = "-----END PGP "; private static readonly string footerTail = "-----"; - private static readonly string version = "BCPG C# v" - + Assembly.GetExecutingAssembly().GetName().Version; + private static readonly string version = "BCPG C# v" + AssemblyInfo.Version; private readonly IDictionary headers; @@ -280,37 +279,40 @@ namespace Org.BouncyCastle.Bcpg * <b>Note</b>: close does nor close the underlying stream. So it is possible to write * multiple objects using armoring to a single stream. */ - public override void Close() + protected override void Dispose(bool disposing) { - if (type != null) + if (disposing) { - if (bufPtr > 0) - { - Encode(outStream, buf, bufPtr); - } + if (type != null) + { + if (bufPtr > 0) + { + Encode(outStream, buf, bufPtr); + } - DoWrite(nl + '='); + DoWrite(nl + '='); - int crcV = crc.Value; + int crcV = crc.Value; - buf[0] = ((crcV >> 16) & 0xff); - buf[1] = ((crcV >> 8) & 0xff); - buf[2] = (crcV & 0xff); + buf[0] = ((crcV >> 16) & 0xff); + buf[1] = ((crcV >> 8) & 0xff); + buf[2] = (crcV & 0xff); - Encode(outStream, buf, 3); + Encode(outStream, buf, 3); - DoWrite(nl); - DoWrite(footerStart); - DoWrite(type); - DoWrite(footerTail); - DoWrite(nl); + DoWrite(nl); + DoWrite(footerStart); + DoWrite(type); + DoWrite(footerTail); + DoWrite(nl); - outStream.Flush(); + outStream.Flush(); - type = null; - start = true; - base.Close(); - } + type = null; + start = true; + } + } + base.Dispose(disposing); } private void WriteHeaderEntry( diff --git a/crypto/src/bcpg/BcpgInputStream.cs b/crypto/src/bcpg/BcpgInputStream.cs
index 2e08cd090..9835891b1 100644 --- a/crypto/src/bcpg/BcpgInputStream.cs +++ b/crypto/src/bcpg/BcpgInputStream.cs
@@ -246,11 +246,14 @@ namespace Org.BouncyCastle.Bcpg } } - public override void Close() - { - m_in.Close(); - base.Close(); - } + protected override void Dispose(bool disposing) + { + if (disposing) + { + m_in.Dispose(); + } + base.Dispose(disposing); + } /// <summary> /// A stream that overlays our input stream, allowing the user to only read a segment of it. diff --git a/crypto/src/bcpg/BcpgOutputStream.cs b/crypto/src/bcpg/BcpgOutputStream.cs
index 204f65b50..f62fadc19 100644 --- a/crypto/src/bcpg/BcpgOutputStream.cs +++ b/crypto/src/bcpg/BcpgOutputStream.cs
@@ -379,12 +379,15 @@ namespace Org.BouncyCastle.Bcpg } } - public override void Close() - { - this.Finish(); - outStr.Flush(); - outStr.Close(); - base.Close(); - } + protected override void Dispose(bool disposing) + { + if (disposing) + { + this.Finish(); + outStr.Flush(); + outStr.Dispose(); + } + base.Dispose(disposing); + } } } diff --git a/crypto/src/bcpg/PublicKeyEncSessionPacket.cs b/crypto/src/bcpg/PublicKeyEncSessionPacket.cs
index 74d04f7aa..eefe4495b 100644 --- a/crypto/src/bcpg/PublicKeyEncSessionPacket.cs +++ b/crypto/src/bcpg/PublicKeyEncSessionPacket.cs
@@ -107,7 +107,7 @@ namespace Org.BouncyCastle.Bcpg pOut.Write(data[i]); } - pOut.Close(); + pOut.Dispose(); bcpgOut.WritePacket(PacketTag.PublicKeyEncryptedSession , bOut.ToArray(), true); }