aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcsharptest <roger@csharptest.net>2015-02-07 10:45:11 -0600
committerrogerk <devnull@localhost>2015-02-07 10:45:11 -0600
commit13f56c0d9c2037fb8546cee46990323cd5b22177 (patch)
tree21ca8ac8a9b8fee251fc4920852ffedce6865156
parent6ab2678e2745aa7aeb1e228b6d7ad7411dcacd9f (diff)
downloadprotobuf-13f56c0d9c2037fb8546cee46990323cd5b22177.tar.gz
protobuf-13f56c0d9c2037fb8546cee46990323cd5b22177.tar.bz2
protobuf-13f56c0d9c2037fb8546cee46990323cd5b22177.zip
amended: Add SecurityCritical attributes to serialization
-rw-r--r--src/ProtocolBuffers/CustomSerialization.cs9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/ProtocolBuffers/CustomSerialization.cs b/src/ProtocolBuffers/CustomSerialization.cs
index 6d26f86b..a658e955 100644
--- a/src/ProtocolBuffers/CustomSerialization.cs
+++ b/src/ProtocolBuffers/CustomSerialization.cs
@@ -36,6 +36,7 @@
/*
* This entire source file is not supported on some platform
*/
+using System.Security.Permissions;
#if !NOSERIALIZABLE
using System;
using System.Runtime.Serialization;
@@ -52,6 +53,7 @@ namespace Google.ProtocolBuffers
partial class AbstractMessageLite<TMessage, TBuilder> : ISerializable
{
[SecurityCritical]
+ [SecurityPermission(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.SerializationFormatter)]
void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
{
info.SetType(typeof(SerializationSurrogate));
@@ -72,6 +74,8 @@ namespace Google.ProtocolBuffers
_initialized = info.GetBoolean("initialized");
}
+ [SecurityCritical]
+ [SecurityPermission(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.SerializationFormatter)]
object IObjectReference.GetRealObject(StreamingContext context)
{
ExtensionRegistry registry = context.Context as ExtensionRegistry;
@@ -95,6 +99,7 @@ namespace Google.ProtocolBuffers
}
[SecurityCritical]
+ [SecurityPermission(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.SerializationFormatter)]
void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
{
info.AddValue("message", _message);
@@ -106,6 +111,7 @@ namespace Google.ProtocolBuffers
partial class AbstractBuilderLite<TMessage, TBuilder> : ISerializable
{
[SecurityCritical]
+ [SecurityPermission(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.SerializationFormatter)]
void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
{
info.SetType(typeof(SerializationSurrogate));
@@ -123,6 +129,8 @@ namespace Google.ProtocolBuffers
_message = (byte[])info.GetValue("message", typeof(byte[]));
}
+ [SecurityCritical]
+ [SecurityPermission(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.SerializationFormatter)]
object IObjectReference.GetRealObject(StreamingContext context)
{
ExtensionRegistry registry = context.Context as ExtensionRegistry;
@@ -139,6 +147,7 @@ namespace Google.ProtocolBuffers
}
[SecurityCritical]
+ [SecurityPermission(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.SerializationFormatter)]
void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
{
info.AddValue("message", _message);