summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2009-04-05 18:49:51 -0700
committerAndrew Arnott <andrewarnott@gmail.com>2009-04-05 18:49:51 -0700
commitcd9a4373f9b1fa356c28c47875c8bd1b7a2183c1 (patch)
tree4ed2de4a1479a080cdd3111ea80218826c2be1a2
parente2ed272caefe64dbd5986f391d42c860dcf77843 (diff)
downloadDotNetOpenAuth-cd9a4373f9b1fa356c28c47875c8bd1b7a2183c1.zip
DotNetOpenAuth-cd9a4373f9b1fa356c28c47875c8bd1b7a2183c1.tar.gz
DotNetOpenAuth-cd9a4373f9b1fa356c28c47875c8bd1b7a2183c1.tar.bz2
Fixed HttpWebRequest cloning in partial trust scenarios.
-rw-r--r--src/DotNetOpenAuth/Messaging/MessagingUtilities.cs12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/DotNetOpenAuth/Messaging/MessagingUtilities.cs b/src/DotNetOpenAuth/Messaging/MessagingUtilities.cs
index c024cdc..44d6a1c 100644
--- a/src/DotNetOpenAuth/Messaging/MessagingUtilities.cs
+++ b/src/DotNetOpenAuth/Messaging/MessagingUtilities.cs
@@ -10,11 +10,10 @@ namespace DotNetOpenAuth.Messaging {
using System.Collections.Specialized;
using System.Diagnostics.CodeAnalysis;
using System.Diagnostics.Contracts;
- using System.Globalization;
using System.IO;
using System.Linq;
using System.Net;
- using System.Reflection;
+ using System.Security;
using System.Security.Cryptography;
using System.Text;
using System.Web;
@@ -327,13 +326,18 @@ namespace DotNetOpenAuth.Messaging {
newRequest.Pipelined = request.Pipelined;
newRequest.PreAuthenticate = request.PreAuthenticate;
newRequest.ProtocolVersion = request.ProtocolVersion;
- newRequest.Proxy = request.Proxy;
newRequest.ReadWriteTimeout = request.ReadWriteTimeout;
newRequest.SendChunked = request.SendChunked;
newRequest.Timeout = request.Timeout;
- newRequest.UnsafeAuthenticatedConnectionSharing = request.UnsafeAuthenticatedConnectionSharing;
newRequest.UseDefaultCredentials = request.UseDefaultCredentials;
+ try {
+ newRequest.Proxy = request.Proxy;
+ newRequest.UnsafeAuthenticatedConnectionSharing = request.UnsafeAuthenticatedConnectionSharing;
+ } catch (SecurityException) {
+ Logger.Messaging.Warn("Unable to clone some HttpWebRequest properties due to partial trust.");
+ }
+
return newRequest;
}