summary refs log tree commit diff
path: root/crypto/src/tls/TlsNoCloseNotifyException.cs
blob: b0314a4066918a1733fcd82f94f8c2961c5dccf5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
using System;
using System.IO;
using System.Runtime.Serialization;

namespace Org.BouncyCastle.Tls
{
    /// <summary>This exception will be thrown (only) when the connection is closed by the peer without sending a
    /// <see cref="AlertDescription.close_notify">close_notify</see> warning alert.</summary>
    /// <remarks>
    /// If this happens, the TLS protocol cannot rule out truncation of the connection data (potentially
    /// malicious). It may be possible to check for truncation via some property of a higher level protocol
    /// built upon TLS, e.g.the Content-Length header for HTTPS.
    /// </remarks>
    [Serializable]
    public class TlsNoCloseNotifyException
        : EndOfStreamException
    {
        public TlsNoCloseNotifyException()
            : base("No close_notify alert received before connection closed")
        {
        }

		protected TlsNoCloseNotifyException(SerializationInfo info, StreamingContext context)
			: base(info, context)
		{
		}
	}
}