summaryrefslogtreecommitdiffstats
path: root/src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/HostProcessedRequest.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/HostProcessedRequest.cs')
-rw-r--r--src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/HostProcessedRequest.cs5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/HostProcessedRequest.cs b/src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/HostProcessedRequest.cs
index 7671194..5f3bba2 100644
--- a/src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/HostProcessedRequest.cs
+++ b/src/DotNetOpenAuth.OpenId.Provider/OpenId/Provider/HostProcessedRequest.cs
@@ -31,6 +31,8 @@ namespace DotNetOpenAuth.OpenId.Provider {
/// </summary>
private RelyingPartyDiscoveryResult? realmDiscoveryResult;
+ private IHostFactories hostFactories;
+
/// <summary>
/// Initializes a new instance of the <see cref="HostProcessedRequest"/> class.
/// </summary>
@@ -40,6 +42,7 @@ namespace DotNetOpenAuth.OpenId.Provider {
: base(request, provider.SecuritySettings) {
Requires.NotNull(provider, "provider");
+ this.hostFactories = provider.Channel.HostFactories;
this.negativeResponse = new Lazy<Task<NegativeAssertionResponse>>(() => NegativeAssertionResponse.CreateAsync(request, CancellationToken.None, provider.Channel));
Reporting.RecordEventOccurrence(this, request.Realm);
}
@@ -139,8 +142,8 @@ namespace DotNetOpenAuth.OpenId.Provider {
/// Result of realm discovery.
/// </returns>
private async Task<RelyingPartyDiscoveryResult> IsReturnUrlDiscoverableCoreAsync(IHostFactories hostFactories, CancellationToken cancellationToken) {
- Requires.NotNull(hostFactories, "hostFactories");
ErrorUtilities.VerifyInternal(this.Realm != null, "Realm should have been read or derived by now.");
+ hostFactories = hostFactories ?? this.hostFactories;
try {
if (this.SecuritySettings.RequireSsl && this.Realm.Scheme != Uri.UriSchemeHttps) {