aboutsummaryrefslogtreecommitdiff
path: root/src/ProtocolBuffers.Serialization/RecursionLimitExceeded.cs
diff options
context:
space:
mode:
authorcsharptest <roger@csharptest.net>2011-08-05 20:40:14 -0500
committerrogerk <devnull@localhost>2011-08-05 20:40:14 -0500
commit0f3540e24b7b5cf66b59b97cb824fd5449fb77b4 (patch)
treef07ad11ac6c814df0f6b8091eae023cf5f5d5cc1 /src/ProtocolBuffers.Serialization/RecursionLimitExceeded.cs
parent304ff3a83823fdfce6e2eac40cc44e2b4b1fd3c3 (diff)
downloadprotobuf-0f3540e24b7b5cf66b59b97cb824fd5449fb77b4.tar.gz
protobuf-0f3540e24b7b5cf66b59b97cb824fd5449fb77b4.tar.bz2
protobuf-0f3540e24b7b5cf66b59b97cb824fd5449fb77b4.zip
Split off the Serialization namespace into a new assembly.
Diffstat (limited to 'src/ProtocolBuffers.Serialization/RecursionLimitExceeded.cs')
-rw-r--r--src/ProtocolBuffers.Serialization/RecursionLimitExceeded.cs28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/ProtocolBuffers.Serialization/RecursionLimitExceeded.cs b/src/ProtocolBuffers.Serialization/RecursionLimitExceeded.cs
new file mode 100644
index 00000000..cdecb525
--- /dev/null
+++ b/src/ProtocolBuffers.Serialization/RecursionLimitExceeded.cs
@@ -0,0 +1,28 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Google.ProtocolBuffers.Serialization
+{
+ /// <summary>
+ /// The exception raised when a recursion limit is reached while parsing input.
+ /// </summary>
+#if !SILVERLIGHT2
+ [Serializable]
+#endif
+ public sealed class RecursionLimitExceededException : FormatException
+ {
+ const string message = "Possible malicious message had too many levels of nesting.";
+
+ internal RecursionLimitExceededException() : base(message)
+ {
+ }
+
+#if !SILVERLIGHT2
+ private RecursionLimitExceededException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
+ : base(info, context)
+ {
+ }
+#endif
+ }
+}