summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2012-01-29 10:47:07 -0800
committerAndrew Arnott <andrewarnott@gmail.com>2012-01-29 10:47:07 -0800
commit8f4165ee515728aca3faaa26e8354a40612e85e4 (patch)
tree204c75486639c23cdda2ef38b34d7e5050a1a2e3
parentaf21cdaf77ca72f54e04f22268b740ce262582fa (diff)
parent71dc7f7a7146b021c358a9f341980d1f5e976955 (diff)
downloadDotNetOpenAuth-8f4165ee515728aca3faaa26e8354a40612e85e4.zip
DotNetOpenAuth-8f4165ee515728aca3faaa26e8354a40612e85e4.tar.gz
DotNetOpenAuth-8f4165ee515728aca3faaa26e8354a40612e85e4.tar.bz2
Merge in a bunch of build system and NuGet work.
-rw-r--r--build.proj42
-rw-r--r--lib/DotNetOpenAuth.BuildTasks.dllbin106496 -> 107008 bytes
-rw-r--r--lib/DotNetOpenAuth.BuildTasks.pdbbin263680 -> 263680 bytes
-rw-r--r--nuget/DotNetOpenAuth.Core.UI.nuspec32
-rw-r--r--nuget/DotNetOpenAuth.Core.nuspec37
-rw-r--r--nuget/DotNetOpenAuth.InfoCard.UI.nuspec33
-rw-r--r--nuget/DotNetOpenAuth.InfoCard.nuspec30
-rw-r--r--nuget/DotNetOpenAuth.OAuth.Consumer.nuspec30
-rw-r--r--nuget/DotNetOpenAuth.OAuth.Core.nuspec32
-rw-r--r--nuget/DotNetOpenAuth.OAuth.ServiceProvider.nuspec30
-rw-r--r--nuget/DotNetOpenAuth.OAuth2.AuthorizationServer.nuspec30
-rw-r--r--nuget/DotNetOpenAuth.OAuth2.Client.UI.nuspec30
-rw-r--r--nuget/DotNetOpenAuth.OAuth2.Client.nuspec30
-rw-r--r--nuget/DotNetOpenAuth.OAuth2.Core.nuspec31
-rw-r--r--nuget/DotNetOpenAuth.OAuth2.ResourceServer.nuspec31
-rw-r--r--nuget/DotNetOpenAuth.OpenId.Core.UI.nuspec30
-rw-r--r--nuget/DotNetOpenAuth.OpenId.Core.nuspec50
-rw-r--r--nuget/DotNetOpenAuth.OpenId.Provider.UI.nuspec31
-rw-r--r--nuget/DotNetOpenAuth.OpenId.Provider.nuspec32
-rw-r--r--nuget/DotNetOpenAuth.OpenId.RelyingParty.UI.nuspec31
-rw-r--r--nuget/DotNetOpenAuth.OpenId.RelyingParty.nuspec32
-rw-r--r--nuget/DotNetOpenAuth.OpenIdInfoCard.UI.nuspec31
-rw-r--r--nuget/DotNetOpenAuth.Ultimate.nuspec27
-rw-r--r--nuget/DotNetOpenAuth.nuspec22
-rw-r--r--nuget/content/Core/web.config.transform36
-rw-r--r--nuget/content/OAuth.Core/web.config.transform7
-rw-r--r--nuget/content/OpenId.Core/web.config.transform35
-rw-r--r--nuget/content/OpenId.Provider/web.config.transform8
-rw-r--r--nuget/content/OpenId.RelyingParty/web.config.transform19
-rw-r--r--nuget/content/Ultimate/web.config.transform (renamed from nuget/content/web.config.transform)12
-rw-r--r--nuget/nuget.proj88
-rw-r--r--projecttemplates/MvcRelyingParty/Web.config6
-rw-r--r--projecttemplates/WebFormsRelyingParty/Web.config6
-rw-r--r--samples/InfoCardRelyingParty/web.config6
-rw-r--r--samples/OAuthAuthorizationServer/Web.config6
-rw-r--r--samples/OAuthClient/Web.config6
-rw-r--r--samples/OAuthConsumerWpf/App.config6
-rw-r--r--samples/OAuthResourceServer/Web.config6
-rw-r--r--samples/OpenIdOfflineProvider/App.config6
-rw-r--r--samples/OpenIdOfflineProvider/OpenIdOfflineProvider.csproj17
-rw-r--r--samples/OpenIdProviderMvc/Web.config6
-rw-r--r--samples/OpenIdProviderWebForms/Web.config6
-rw-r--r--samples/OpenIdRelyingPartyMvc/Web.config6
-rw-r--r--samples/OpenIdRelyingPartyWebForms/Web.config6
-rw-r--r--samples/OpenIdRelyingPartyWebFormsVB/Web.config6
-rw-r--r--samples/OpenIdWebRingSsoProvider/Web.config6
-rw-r--r--samples/OpenIdWebRingSsoRelyingParty/Web.config6
-rw-r--r--src/DotNetOpenAuth.BuildTasks/DotNetOpenAuth.BuildTasks.sln11
-rw-r--r--src/DotNetOpenAuth.BuildTasks/GetBuildVersion.cs15
-rw-r--r--src/DotNetOpenAuth.BuildTasks/NuGetPack.cs39
-rw-r--r--src/DotNetOpenAuth.Core.UI/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.Core/DotNetOpenAuth.Core.csproj2
-rw-r--r--src/DotNetOpenAuth.Core/Messaging/ErrorUtilities.cs20
-rw-r--r--src/DotNetOpenAuth.Core/Messaging/MessagingStrings.Designer.cs11
-rw-r--r--src/DotNetOpenAuth.Core/Messaging/MessagingStrings.resx5
-rw-r--r--src/DotNetOpenAuth.Core/Messaging/MessagingUtilities.cs2
-rw-r--r--src/DotNetOpenAuth.Core/Messaging/OutgoingWebResponse.cs48
-rw-r--r--src/DotNetOpenAuth.Core/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.InfoCard.UI/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.InfoCard/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OAuth.Consumer/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OAuth.Consumer/Properties/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OAuth.ServiceProvider/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OAuth/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OAuth2.AuthorizationServer/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OAuth2.Client.UI/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OAuth2.Client/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OAuth2.ResourceServer/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OAuth2/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OpenId.Provider.UI/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OpenId.Provider/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OpenId.RelyingParty.UI/OpenId/RelyingParty/OpenIdLogin.cs4
-rw-r--r--src/DotNetOpenAuth.OpenId.RelyingParty.UI/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OpenId.RelyingParty/OpenId/RelyingParty/NegativeAuthenticationResponse.cs1
-rw-r--r--src/DotNetOpenAuth.OpenId.RelyingParty/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OpenId.UI/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OpenId/OpenId/ChannelElements/SigningBindingElement.cs4
-rw-r--r--src/DotNetOpenAuth.OpenId/OpenId/DiffieHellmanUtilities.cs8
-rw-r--r--src/DotNetOpenAuth.OpenId/OpenId/HmacShaAssociation.cs8
-rw-r--r--src/DotNetOpenAuth.OpenId/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.OpenIdInfoCard.UI/Properties/AssemblyInfo.cs2
-rw-r--r--src/DotNetOpenAuth.Test/App.config6
-rw-r--r--src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj3
-rw-r--r--src/DotNetOpenAuth.Test/Messaging/MessagingUtilitiesTests.cs6
-rw-r--r--src/DotNetOpenAuth.Test/Mocks/TestChannel.cs15
-rw-r--r--src/DotNetOpenAuth.Test/OAuth/ChannelElements/OAuthChannelTests.cs2
-rw-r--r--src/DotNetOpenAuth.Test/OpenId/ChannelElements/ExtensionsBindingElementTests.cs4
-rw-r--r--src/DotNetOpenAuth.Test/OpenId/ChannelElements/SigningBindingElementTests.cs35
-rw-r--r--src/DotNetOpenAuth.Test/OpenId/Extensions/AttributeExchange/AttributeRequestTests.cs2
-rw-r--r--src/DotNetOpenAuth.Test/OpenId/IdentifierTests.cs2
-rw-r--r--src/DotNetOpenAuth.Test/OpenId/Messages/IndirectSignedResponseTests.cs2
-rw-r--r--src/DotNetOpenAuth.Test/OpenId/RelyingParty/IdentifierDiscoveryResultTests.cs4
-rw-r--r--src/DotNetOpenAuth.Test/OpenId/UriIdentifierTests.cs2
-rw-r--r--src/DotNetOpenAuth.Test/OpenId/XriIdentifierTests.cs2
-rw-r--r--src/DotNetOpenAuth.sln1
-rw-r--r--src/DotNetOpenAuth/DotNetOpenAuth.proj12
-rw-r--r--src/Org.Mentalis.Security.Cryptography/Properties/AssemblyInfo.cs2
-rw-r--r--tools/DotNetOpenAuth.Versioning.targets19
-rw-r--r--tools/DotNetOpenAuth.automated.targets2
-rw-r--r--tools/DotNetOpenAuth.props34
-rw-r--r--tools/DotNetOpenAuth.targets2
-rw-r--r--tools/NuGet/NuGet.exebin267264 -> 625664 bytes
-rw-r--r--tools/drop.proj2
103 files changed, 1194 insertions, 199 deletions
diff --git a/build.proj b/build.proj
index 9079c70..f6a8601 100644
--- a/build.proj
+++ b/build.proj
@@ -1,19 +1,24 @@
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" InitialTargets="TouchUpProjectsForDualFrameworks">
<Import Project="EnlistmentInfo.props" />
<Import Project="$(MSBuildProjectDirectory)\tools\DotNetOpenAuth.automated.props"/>
<Import Project="$(ProjectRoot)tools\Translation.targets"/>
<ItemGroup>
+ <!--Removed from NightlyProjects until it can be fixed up. samples\tools.proj;-->
<NightlyProjects Include="
- samples\tools.proj;
- tools\drop.proj;
nuget\nuget.proj;
" />
<NightlyProjects Include="
+ tools\drop.proj;
+ ">
+ <BuildOnlyOnClr2>true</BuildOnlyOnClr2>
+ </NightlyProjects>
+ <NightlyProjects Include="
samples\samples.proj;
doc\doc.proj;
">
<Targets>DeployableArchive</Targets>
+ <BuildOnlyOnClr2>true</BuildOnlyOnClr2>
</NightlyProjects>
<ProjectsToClean Include="
@@ -36,10 +41,33 @@
$(ProjectRoot)**\*.log*;
$(ProjectRoot)doc\$(ProductName).chm;
" />
+
+ <TestProjects Include="DotNetOpenAuth_Test;DotNetOpenAuth_TestWeb" Condition=" '$(ClrVersion)' == '2' " />
+ <TestProjects Include="DotNetOpenAuth_AspNet_Test" Condition=" '$(ClrVersion)' == '4' " />
+ <TestAssemblies Include="$(OutputPath)$(ProductName).Test.dll" Condition=" '$(ClrVersion)' == '2' " />
+ <TestAssemblies Include="$(OutputPath)$(ProductName).AspNet.Test.dll" Condition=" '$(ClrVersion)' == '4' " />
</ItemGroup>
+ <Target Name="TouchUpProjectsForDualFrameworks">
+ <ItemGroup>
+ <!-- The point here is to duplicate all projects, once targeting each version of .NET that we support. -->
+ <NightlyProjects>
+ <Properties>TargetFrameworkVersion=v3.5</Properties>
+ </NightlyProjects>
+ <NightlyProjects Include="@(NightlyProjects)" Condition=" '%(NightlyProjects.BuildOnlyOnClr2)' != 'true' ">
+ <Properties>TargetFrameworkVersion=v4.0</Properties>
+ </NightlyProjects>
+ <ProjectsToClean>
+ <Properties>TargetFrameworkVersion=v3.5</Properties>
+ </ProjectsToClean>
+ <ProjectsToClean Include="@(ProjectsToClean)">
+ <Properties>TargetFrameworkVersion=v4.0</Properties>
+ </ProjectsToClean>
+ </ItemGroup>
+ </Target>
+
<Target Name="BuildTests" DependsOnTargets="SkipVerification">
- <MSBuild Projects="$(SolutionPath)" Targets="DotNetOpenAuth_Test;DotNetOpenAuth_TestWeb" BuildInParallel="$(BuildInParallel)" />
+ <MSBuild Projects="$(SolutionPath)" Targets="@(TestProjects)" BuildInParallel="$(BuildInParallel)" />
</Target>
<Target Name="Build" DependsOnTargets="SkipVerification">
@@ -51,20 +79,20 @@
</Target>
<Target Name="Test" DependsOnTargets="BuildTests"
- Inputs="$(OutputPath)$(ProductName).dll;$(OutputPath)$(ProductName).Test.dll"
+ Inputs="$(OutputPath)$(ProductName).dll;@(TestAssemblies)"
Outputs='$(OutputPath)Test-result.xml'>
<PropertyGroup>
<!-- Performance tests are only expected to pass in optimized builds. -->
<NUnitExcludeCategories Condition=" '$(Configuration)' != 'Release' ">Performance</NUnitExcludeCategories>
</PropertyGroup>
- <NUnit Assemblies="$(OutputPath)$(ProductName).Test.dll"
+ <NUnit Assemblies="@(TestAssemblies)"
ToolPath="$(NUnitToolPath)"
OutputXmlFile="$(OutputPath)Test-result.xml"
ExcludeCategory="$(NUnitExcludeCategories)" />
</Target>
<Target Name="Nightly">
- <MSBuild Projects="@(NightlyProjects)" Targets="%(NightlyProjects.Targets)" BuildInParallel="$(BuildInParallel)" />
+ <MSBuild Projects="@(NightlyProjects)" Targets="%(NightlyProjects.Targets)" BuildInParallel="$(BuildInParallel)" Properties="%(NightlyProjects.Properties)" />
</Target>
<Target Name="Publish">
diff --git a/lib/DotNetOpenAuth.BuildTasks.dll b/lib/DotNetOpenAuth.BuildTasks.dll
index 57e4b3c..54387bb 100644
--- a/lib/DotNetOpenAuth.BuildTasks.dll
+++ b/lib/DotNetOpenAuth.BuildTasks.dll
Binary files differ
diff --git a/lib/DotNetOpenAuth.BuildTasks.pdb b/lib/DotNetOpenAuth.BuildTasks.pdb
index 9e9349f..d81cf23 100644
--- a/lib/DotNetOpenAuth.BuildTasks.pdb
+++ b/lib/DotNetOpenAuth.BuildTasks.pdb
Binary files differ
diff --git a/nuget/DotNetOpenAuth.Core.UI.nuspec b/nuget/DotNetOpenAuth.Core.UI.nuspec
new file mode 100644
index 0000000..232164a
--- /dev/null
+++ b/nuget/DotNetOpenAuth.Core.UI.nuspec
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.Core.UI</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth Core (ASP.NET controls)</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <summary>Contains core assemblies of DotNetOpenOAuth library.</summary>
+ <description>Shared library implementing the messaging pipeline used by auxiliary DotNetOpenAuth libraries.</description>
+ <language>en-US</language>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.Core" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.Core.UI.dll" target="lib\net35-full\DotNetOpenAuth.Core.UI.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.Core.UI.dll" target="lib\net40-full\DotNetOpenAuth.Core.UI.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.Core.UI.pdb" target="lib\net35-full\DotNetOpenAuth.Core.UI.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.Core.UI.pdb" target="lib\net40-full\DotNetOpenAuth.Core.UI.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.Core.UI.xml" target="lib\net35-full\DotNetOpenAuth.Core.UI.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.Core.UI.xml" target="lib\net40-full\DotNetOpenAuth.Core.UI.xml" />
+
+ <file src="..\src\DotNetOpenAuth.Core.UI\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.Core.nuspec b/nuget/DotNetOpenAuth.Core.nuspec
new file mode 100644
index 0000000..55d1b00
--- /dev/null
+++ b/nuget/DotNetOpenAuth.Core.nuspec
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.Core</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth Core</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <summary>Contains core assemblies of DotNetOpenOAuth library.</summary>
+ <description>Shared library implementing the messaging pipeline used by auxiliary DotNetOpenAuth libraries.</description>
+ <language>en-US</language>
+ <frameworkAssemblies>
+ <frameworkAssembly assemblyName="System.Configuration" targetFramework="net40" />
+ </frameworkAssemblies>
+ <dependencies>
+ <dependency id="CodeContracts.Unofficial" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.Core.dll" target="lib\net35-full\DotNetOpenAuth.Core.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.Core.dll" target="lib\net40-full\DotNetOpenAuth.Core.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.Core.pdb" target="lib\net35-full\DotNetOpenAuth.Core.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.Core.pdb" target="lib\net40-full\DotNetOpenAuth.Core.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.Core.xml" target="lib\net35-full\DotNetOpenAuth.Core.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.Core.xml" target="lib\net40-full\DotNetOpenAuth.Core.xml" />
+
+ <file src="content\Core\web.config.transform" target="content\web.config.transform" />
+
+ <file src="..\src\DotNetOpenAuth.Core\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.InfoCard.UI.nuspec b/nuget/DotNetOpenAuth.InfoCard.UI.nuspec
new file mode 100644
index 0000000..8b343ec
--- /dev/null
+++ b/nuget/DotNetOpenAuth.InfoCard.UI.nuspec
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.InfoCard.UI</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth InfoCard (ASP.NET controls)</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <summary>Contains assemblies that are required to implement an InfoCard relying party.</summary>
+ <description>Contains assemblies that are required to implement an InfoCard relying party.</description>
+ <language>en-US</language>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.Core.UI" version="[$version$]" />
+ <dependency id="DotNetOpenAuth.InfoCard" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.InfoCard.UI.dll" target="lib\net35-full\DotNetOpenAuth.InfoCard.UI.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.InfoCard.UI.dll" target="lib\net40-full\DotNetOpenAuth.InfoCard.UI.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.InfoCard.UI.pdb" target="lib\net35-full\DotNetOpenAuth.InfoCard.UI.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.InfoCard.UI.pdb" target="lib\net40-full\DotNetOpenAuth.InfoCard.UI.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.InfoCard.UI.xml" target="lib\net35-full\DotNetOpenAuth.InfoCard.UI.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.InfoCard.UI.xml" target="lib\net40-full\DotNetOpenAuth.InfoCard.UI.xml" />
+
+ <file src="..\src\DotNetOpenAuth.InfoCard.UI\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.InfoCard.nuspec b/nuget/DotNetOpenAuth.InfoCard.nuspec
new file mode 100644
index 0000000..166abca
--- /dev/null
+++ b/nuget/DotNetOpenAuth.InfoCard.nuspec
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.InfoCard</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth InfoCard</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an InfoCard relying party.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.Core" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.InfoCard.dll" target="lib\net35-full\DotNetOpenAuth.InfoCard.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.InfoCard.dll" target="lib\net40-full\DotNetOpenAuth.InfoCard.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.InfoCard.pdb" target="lib\net35-full\DotNetOpenAuth.InfoCard.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.InfoCard.pdb" target="lib\net40-full\DotNetOpenAuth.InfoCard.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.InfoCard.xml" target="lib\net35-full\DotNetOpenAuth.InfoCard.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.InfoCard.xml" target="lib\net40-full\DotNetOpenAuth.InfoCard.xml" />
+
+ <file src="..\src\DotNetOpenAuth.InfoCard\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OAuth.Consumer.nuspec b/nuget/DotNetOpenAuth.OAuth.Consumer.nuspec
new file mode 100644
index 0000000..3453b55
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OAuth.Consumer.nuspec
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OAuth.Consumer</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth OAuth 1.0(a) Consumer</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OAuth consumer.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.OAuth.Core" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OAuth.Consumer.dll" target="lib\net35-full\DotNetOpenAuth.OAuth.Consumer.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OAuth.Consumer.dll" target="lib\net40-full\DotNetOpenAuth.OAuth.Consumer.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth.Consumer.pdb" target="lib\net35-full\DotNetOpenAuth.OAuth.Consumer.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth.Consumer.pdb" target="lib\net40-full\DotNetOpenAuth.OAuth.Consumer.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth.Consumer.xml" target="lib\net35-full\DotNetOpenAuth.OAuth.Consumer.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth.Consumer.xml" target="lib\net40-full\DotNetOpenAuth.OAuth.Consumer.xml" />
+
+ <file src="..\src\DotNetOpenAuth.OAuth.Consumer\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OAuth.Core.nuspec b/nuget/DotNetOpenAuth.OAuth.Core.nuspec
new file mode 100644
index 0000000..f330df8
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OAuth.Core.nuspec
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OAuth.Core</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth OAuth 1.0(a)</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OAuth consumer or service provider.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.Core" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OAuth.dll" target="lib\net35-full\DotNetOpenAuth.OAuth.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OAuth.dll" target="lib\net40-full\DotNetOpenAuth.OAuth.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth.pdb" target="lib\net35-full\DotNetOpenAuth.OAuth.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth.pdb" target="lib\net40-full\DotNetOpenAuth.OAuth.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth.xml" target="lib\net35-full\DotNetOpenAuth.OAuth.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth.xml" target="lib\net40-full\DotNetOpenAuth.OAuth.xml" />
+
+ <file src="content\OAuth.Core\web.config.transform" target="content\web.config.transform" />
+
+ <file src="..\src\DotNetOpenAuth.OAuth\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OAuth.ServiceProvider.nuspec b/nuget/DotNetOpenAuth.OAuth.ServiceProvider.nuspec
new file mode 100644
index 0000000..9aec3f8
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OAuth.ServiceProvider.nuspec
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OAuth.ServiceProvider</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth OAuth 1.0(a) Service Provider</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OAuth consumer.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.OAuth.Core" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OAuth.ServiceProvider.dll" target="lib\net35-full\DotNetOpenAuth.OAuth.ServiceProvider.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OAuth.ServiceProvider.dll" target="lib\net40-full\DotNetOpenAuth.OAuth.ServiceProvider.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth.ServiceProvider.pdb" target="lib\net35-full\DotNetOpenAuth.OAuth.ServiceProvider.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth.ServiceProvider.pdb" target="lib\net40-full\DotNetOpenAuth.OAuth.ServiceProvider.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth.ServiceProvider.xml" target="lib\net35-full\DotNetOpenAuth.OAuth.ServiceProvider.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth.ServiceProvider.xml" target="lib\net40-full\DotNetOpenAuth.OAuth.ServiceProvider.xml" />
+
+ <file src="..\src\DotNetOpenAuth.OAuth.ServiceProvider\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OAuth2.AuthorizationServer.nuspec b/nuget/DotNetOpenAuth.OAuth2.AuthorizationServer.nuspec
new file mode 100644
index 0000000..dfbe119
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OAuth2.AuthorizationServer.nuspec
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OAuth2.AuthorizationServer</id>
+ <version>$oauth2version$</version>
+ <title>DotNetOpenAuth OAuth 2.0 Authorization Server</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OAuth 2.0 Authorization Server.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.OAuth2.Core" version="[$oauth2version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OAuth2.AuthorizationServer.dll" target="lib\net35-full" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OAuth2.AuthorizationServer.dll" target="lib\net40-full" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth2.AuthorizationServer.pdb" target="lib\net35-full" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth2.AuthorizationServer.pdb" target="lib\net40-full" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth2.AuthorizationServer.xml" target="lib\net35-full" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth2.AuthorizationServer.xml" target="lib\net40-full" />
+
+ <file src="..\src\DotNetOpenAuth.OAuth2.AuthorizationServer\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OAuth2.Client.UI.nuspec b/nuget/DotNetOpenAuth.OAuth2.Client.UI.nuspec
new file mode 100644
index 0000000..9075b67
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OAuth2.Client.UI.nuspec
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OAuth2.Client.UI</id>
+ <version>$oauth2version$</version>
+ <title>DotNetOpenAuth OAuth 2.0 Client (ASP.NET controls)</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OAuth 2.0 Client ASP.NET controls.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.OAuth2.Client" version="[$oauth2version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OAuth2.Client.UI.dll" target="lib\net35-full" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OAuth2.Client.UI.dll" target="lib\net40-full" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth2.Client.UI.pdb" target="lib\net35-full" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth2.Client.UI.pdb" target="lib\net40-full" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth2.Client.UI.xml" target="lib\net35-full" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth2.Client.UI.xml" target="lib\net40-full" />
+
+ <file src="..\src\DotNetOpenAuth.OAuth2.Client.UI\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OAuth2.Client.nuspec b/nuget/DotNetOpenAuth.OAuth2.Client.nuspec
new file mode 100644
index 0000000..67de333
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OAuth2.Client.nuspec
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OAuth2.Client</id>
+ <version>$oauth2version$</version>
+ <title>DotNetOpenAuth OAuth 2.0 Client</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OAuth 2.0 Client.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.OAuth2.Core" version="[$oauth2version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OAuth2.Client.dll" target="lib\net35-full" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OAuth2.Client.dll" target="lib\net40-full" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth2.Client.pdb" target="lib\net35-full" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth2.Client.pdb" target="lib\net40-full" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth2.Client.xml" target="lib\net35-full" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth2.Client.xml" target="lib\net40-full" />
+
+ <file src="..\src\DotNetOpenAuth.OAuth2.Client\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OAuth2.Core.nuspec b/nuget/DotNetOpenAuth.OAuth2.Core.nuspec
new file mode 100644
index 0000000..4193407
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OAuth2.Core.nuspec
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OAuth2.Core</id>
+ <version>$oauth2version$</version>
+ <title>DotNetOpenAuth OAuth 2.0 Core</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OAuth 2.0 client, authorization server or resource server.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.Core" version="[$version$]" />
+ <dependency id="DotNetOpenAuth.OAuth.Core" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OAuth2.dll" target="lib\net35-full" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OAuth2.dll" target="lib\net40-full" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth2.pdb" target="lib\net35-full" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth2.pdb" target="lib\net40-full" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth2.xml" target="lib\net35-full" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth2.xml" target="lib\net40-full" />
+
+ <file src="..\src\DotNetOpenAuth.OAuth2\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OAuth2.ResourceServer.nuspec b/nuget/DotNetOpenAuth.OAuth2.ResourceServer.nuspec
new file mode 100644
index 0000000..e31adab
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OAuth2.ResourceServer.nuspec
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OAuth2.ResourceServer</id>
+ <version>$oauth2version$</version>
+ <title>DotNetOpenAuth OAuth 2.0 Resource Server</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OAuth 2.0 Resource Server.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.OAuth.ServiceProvider" version="[$version$]" />
+ <dependency id="DotNetOpenAuth.OAuth2.Core" version="[$oauth2version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OAuth2.ResourceServer.dll" target="lib\net35-full" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OAuth2.ResourceServer.dll" target="lib\net40-full" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth2.ResourceServer.pdb" target="lib\net35-full" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth2.ResourceServer.pdb" target="lib\net40-full" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OAuth2.ResourceServer.xml" target="lib\net35-full" />
+ <file src="$OutputPath40$DotNetOpenAuth.OAuth2.ResourceServer.xml" target="lib\net40-full" />
+
+ <file src="..\src\DotNetOpenAuth.OAuth2.ResourceServer\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OpenId.Core.UI.nuspec b/nuget/DotNetOpenAuth.OpenId.Core.UI.nuspec
new file mode 100644
index 0000000..b70762a
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OpenId.Core.UI.nuspec
@@ -0,0 +1,30 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OpenId.Core.UI</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth OpenID Core (ASP.NET controls)</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OpenID Relying Party or Provider.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.Core.UI" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OpenId.UI.dll" target="lib\net35-full\DotNetOpenAuth.OpenId.UI.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OpenId.UI.dll" target="lib\net40-full\DotNetOpenAuth.OpenId.UI.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OpenId.UI.pdb" target="lib\net35-full\DotNetOpenAuth.OpenId.UI.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenId.UI.pdb" target="lib\net40-full\DotNetOpenAuth.OpenId.UI.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OpenId.UI.xml" target="lib\net35-full\DotNetOpenAuth.OpenId.UI.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenId.UI.xml" target="lib\net40-full\DotNetOpenAuth.OpenId.UI.xml" />
+
+ <file src="..\src\DotNetOpenAuth.OpenId.UI\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OpenId.Core.nuspec b/nuget/DotNetOpenAuth.OpenId.Core.nuspec
new file mode 100644
index 0000000..24a9f8e
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OpenId.Core.nuspec
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OpenId.Core</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth OpenID Core</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OpenID Relying Party or Provider.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.Core" version="[$version$]" />
+ </dependencies>
+ <references>
+ <!-- Explicitly specify references so that Mono.Math other implementation detail assemblies are not referenced. -->
+ <reference file="DotNetOpenAuth.OpenId.dll" />
+ </references>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OpenId.dll" target="lib\net35-full\DotNetOpenAuth.OpenId.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OpenId.dll" target="lib\net40-full\DotNetOpenAuth.OpenId.dll" />
+ <file src="$OutputPath35$DotNetOpenAuth.OpenId.pdb" target="lib\net35-full\DotNetOpenAuth.OpenId.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenId.pdb" target="lib\net40-full\DotNetOpenAuth.OpenId.pdb" />
+ <file src="$OutputPath35$DotNetOpenAuth.OpenId.xml" target="lib\net35-full\DotNetOpenAuth.OpenId.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenId.xml" target="lib\net40-full\DotNetOpenAuth.OpenId.xml" />
+
+ <file src="$OutputPath35$signed\Org.Mentalis.Security.Cryptography.dll" target="lib\net35-full\Org.Mentalis.Security.Cryptography.dll" />
+ <file src="$OutputPath40$signed\Org.Mentalis.Security.Cryptography.dll" target="lib\net40-full\Org.Mentalis.Security.Cryptography.dll" />
+ <file src="$OutputPath35$Org.Mentalis.Security.Cryptography.pdb" target="lib\net35-full\Org.Mentalis.Security.Cryptography.pdb" />
+ <file src="$OutputPath40$Org.Mentalis.Security.Cryptography.pdb" target="lib\net40-full\Org.Mentalis.Security.Cryptography.pdb" />
+ <file src="$OutputPath35$Org.Mentalis.Security.Cryptography.xml" target="lib\net35-full\Org.Mentalis.Security.Cryptography.xml" />
+ <file src="$OutputPath40$Org.Mentalis.Security.Cryptography.xml" target="lib\net40-full\Org.Mentalis.Security.Cryptography.xml" />
+
+ <file src="$OutputPath35$signed\Mono.Math.dll" target="lib\net35-full\Mono.Math.dll" />
+ <file src="$OutputPath40$signed\Mono.Math.dll" target="lib\net40-full\Mono.Math.dll" />
+ <file src="$OutputPath35$Mono.Math.pdb" target="lib\net35-full\Mono.Math.pdb" />
+ <file src="$OutputPath40$Mono.Math.pdb" target="lib\net40-full\Mono.Math.pdb" />
+ <file src="$OutputPath35$Mono.Math.xml" target="lib\net35-full\Mono.Math.xml" />
+ <file src="$OutputPath40$Mono.Math.xml" target="lib\net40-full\Mono.Math.xml" />
+
+ <file src="content\OpenId.Core\web.config.transform" target="content\web.config.transform" />
+
+ <file src="..\src\DotNetOpenAuth.OpenId\**\*.cs" target="src\DotNetOpenAuth.OpenId" />
+ <file src="..\src\Org.Mentalis.Security.Cryptography\**\*.cs" target="src\Org.Mentalis.Security.Cryptography" />
+ <file src="..\src\Mono.Math\**\*.cs" target="src\Mono.Math" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OpenId.Provider.UI.nuspec b/nuget/DotNetOpenAuth.OpenId.Provider.UI.nuspec
new file mode 100644
index 0000000..83dd484
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OpenId.Provider.UI.nuspec
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OpenId.Provider.UI</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth OpenID Provider (ASP.NET controls)</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OpenID Provider.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.OpenId.Core.UI" version="[$version$]" />
+ <dependency id="DotNetOpenAuth.OpenId.Provider" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OpenId.Provider.UI.dll" target="lib\net35-full\DotNetOpenAuth.OpenId.Provider.UI.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OpenId.Provider.UI.dll" target="lib\net40-full\DotNetOpenAuth.OpenId.Provider.UI.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OpenId.Provider.UI.pdb" target="lib\net35-full\DotNetOpenAuth.OpenId.Provider.UI.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenId.Provider.UI.pdb" target="lib\net40-full\DotNetOpenAuth.OpenId.Provider.UI.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OpenId.Provider.UI.xml" target="lib\net35-full\DotNetOpenAuth.OpenId.Provider.UI.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenId.Provider.UI.xml" target="lib\net40-full\DotNetOpenAuth.OpenId.Provider.UI.xml" />
+
+ <file src="..\src\DotNetOpenAuth.OpenId.Provider.UI\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OpenId.Provider.nuspec b/nuget/DotNetOpenAuth.OpenId.Provider.nuspec
new file mode 100644
index 0000000..3c46153
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OpenId.Provider.nuspec
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OpenId.Provider</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth OpenID Provider</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OpenID Provider.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.OpenId.Core" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OpenId.Provider.dll" target="lib\net35-full\DotNetOpenAuth.OpenId.Provider.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OpenId.Provider.dll" target="lib\net40-full\DotNetOpenAuth.OpenId.Provider.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OpenId.Provider.pdb" target="lib\net35-full\DotNetOpenAuth.OpenId.Provider.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenId.Provider.pdb" target="lib\net40-full\DotNetOpenAuth.OpenId.Provider.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OpenId.Provider.xml" target="lib\net35-full\DotNetOpenAuth.OpenId.Provider.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenId.Provider.xml" target="lib\net40-full\DotNetOpenAuth.OpenId.Provider.xml" />
+
+ <file src="content\OpenId.Provider\web.config.transform" target="content\web.config.transform" />
+
+ <file src="..\src\DotNetOpenAuth.OpenId.Provider\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OpenId.RelyingParty.UI.nuspec b/nuget/DotNetOpenAuth.OpenId.RelyingParty.UI.nuspec
new file mode 100644
index 0000000..d868e4f
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OpenId.RelyingParty.UI.nuspec
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OpenId.RelyingParty.UI</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth OpenID Relying Party (ASP.NET controls)</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OpenID Relying Party.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.OpenId.Core.UI" version="[$version$]" />
+ <dependency id="DotNetOpenAuth.OpenId.RelyingParty" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OpenId.RelyingParty.UI.dll" target="lib\net35-full\DotNetOpenAuth.OpenId.RelyingParty.UI.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OpenId.RelyingParty.UI.dll" target="lib\net40-full\DotNetOpenAuth.OpenId.RelyingParty.UI.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OpenId.RelyingParty.UI.pdb" target="lib\net35-full\DotNetOpenAuth.OpenId.RelyingParty.UI.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenId.RelyingParty.UI.pdb" target="lib\net40-full\DotNetOpenAuth.OpenId.RelyingParty.UI.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OpenId.RelyingParty.UI.xml" target="lib\net35-full\DotNetOpenAuth.OpenId.RelyingParty.UI.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenId.RelyingParty.UI.xml" target="lib\net40-full\DotNetOpenAuth.OpenId.RelyingParty.UI.xml" />
+
+ <file src="..\src\DotNetOpenAuth.OpenId.RelyingParty.UI\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OpenId.RelyingParty.nuspec b/nuget/DotNetOpenAuth.OpenId.RelyingParty.nuspec
new file mode 100644
index 0000000..fa6a765
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OpenId.RelyingParty.nuspec
@@ -0,0 +1,32 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OpenId.RelyingParty</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth OpenID Relying Party</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an OpenID Relying Party.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.OpenId.Core" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OpenId.RelyingParty.dll" target="lib\net35-full\DotNetOpenAuth.OpenId.RelyingParty.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OpenId.RelyingParty.dll" target="lib\net40-full\DotNetOpenAuth.OpenId.RelyingParty.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OpenId.RelyingParty.pdb" target="lib\net35-full\DotNetOpenAuth.OpenId.RelyingParty.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenId.RelyingParty.pdb" target="lib\net40-full\DotNetOpenAuth.OpenId.RelyingParty.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OpenId.RelyingParty.xml" target="lib\net35-full\DotNetOpenAuth.OpenId.RelyingParty.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenId.RelyingParty.xml" target="lib\net40-full\DotNetOpenAuth.OpenId.RelyingParty.xml" />
+
+ <file src="content\OpenId.RelyingParty\web.config.transform" target="content\web.config.transform" />
+
+ <file src="..\src\DotNetOpenAuth.OpenId.RelyingParty\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.OpenIdInfoCard.UI.nuspec b/nuget/DotNetOpenAuth.OpenIdInfoCard.UI.nuspec
new file mode 100644
index 0000000..3c54275
--- /dev/null
+++ b/nuget/DotNetOpenAuth.OpenIdInfoCard.UI.nuspec
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.OpenIdInfoCard.UI</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth OpenID InfoCard Relying Party ASP.NET control</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <description>Contains assemblies that are required to implement an InfoCard relying party.</description>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.OpenId.RelyingParty.UI" version="[$version$]" />
+ <dependency id="DotNetOpenAuth.InfoCard.UI" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <file src="$OutputPath35$signed\DotNetOpenAuth.OpenIdInfoCard.UI.dll" target="lib\net35-full\DotNetOpenAuth.OpenIdInfoCard.UI.dll" />
+ <file src="$OutputPath40$signed\DotNetOpenAuth.OpenIdInfoCard.UI.dll" target="lib\net40-full\DotNetOpenAuth.OpenIdInfoCard.UI.dll" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OpenIdInfoCard.UI.pdb" target="lib\net35-full\DotNetOpenAuth.OpenIdInfoCard.UI.pdb" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenIdInfoCard.UI.pdb" target="lib\net40-full\DotNetOpenAuth.OpenIdInfoCard.UI.pdb" />
+
+ <file src="$OutputPath35$DotNetOpenAuth.OpenIdInfoCard.UI.xml" target="lib\net35-full\DotNetOpenAuth.OpenIdInfoCard.UI.xml" />
+ <file src="$OutputPath40$DotNetOpenAuth.OpenIdInfoCard.UI.xml" target="lib\net40-full\DotNetOpenAuth.OpenIdInfoCard.UI.xml" />
+
+ <file src="..\src\DotNetOpenAuth.OpenIdInfoCard.UI\**\*.cs" target="src" />
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.Ultimate.nuspec b/nuget/DotNetOpenAuth.Ultimate.nuspec
new file mode 100644
index 0000000..40ff627
--- /dev/null
+++ b/nuget/DotNetOpenAuth.Ultimate.nuspec
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
+ <metadata>
+ <id>DotNetOpenAuth.Ultimate</id>
+ <version>$version$</version>
+ <title>DotNetOpenAuth Ultimate</title>
+ <authors>Andrew Arnott</authors>
+ <owners>Outercurve Foundation</owners>
+ <projectUrl>http://www.dotnetopenauth.net/</projectUrl>
+ <iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
+ <licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
+ <requireLicenseAcceptance>false</requireLicenseAcceptance>
+ <summary>OpenID, OAuth, &amp; InfoCard library for web sites/services and apps.</summary>
+ <description>A C# library that adds OpenID 2.0 Provider and Relying Party, OAuth Consumer and Service Provider, and InfoCard Selector support to your web site both programmatically and through convenient drop-in ASP.NET controls.</description>
+ <language>en-US</language>
+ <dependencies>
+ <dependency id="DotNetOpenAuth.OpenId.RelyingParty.UI" version="[$version$]" />
+ <dependency id="DotNetOpenAuth.OpenId.Provider.UI" version="[$version$]" />
+ <dependency id="DotNetOpenAuth.OAuth.Consumer" version="[$version$]" />
+ <dependency id="DotNetOpenAuth.OAuth.ServiceProvider" version="[$version$]" />
+ <dependency id="DotNetOpenAuth.OpenIdInfoCard.UI" version="[$version$]" />
+ </dependencies>
+ </metadata>
+ <files>
+ <!-- this area intentionally left blank (so that nuget pack doesn't include all files and folders under this one in the package. -->
+ </files>
+</package> \ No newline at end of file
diff --git a/nuget/DotNetOpenAuth.nuspec b/nuget/DotNetOpenAuth.nuspec
index fcf0465..4befe6c 100644
--- a/nuget/DotNetOpenAuth.nuspec
+++ b/nuget/DotNetOpenAuth.nuspec
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
-<package>
+<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>DotNetOpenAuth</id>
<version>$version$</version>
+ <title>DotNetOpenAuth Ultimate (unified)</title>
<authors>Andrew Arnott</authors>
- <owners>Andrew Arnott</owners>
+ <owners>Outercurve Foundation</owners>
<projectUrl>http://www.dotnetopenauth.net/</projectUrl>
<iconUrl>https://github.com/AArnott/dotnetopenid/raw/v3.4/doc/logo/dnoa-logo_32x32.png</iconUrl>
<licenseUrl>http://www.opensource.org/licenses/ms-pl.html</licenseUrl>
@@ -12,5 +13,22 @@
<summary>OpenID, OAuth, &amp; InfoCard library for web sites/services and apps.</summary>
<description>A C# library that adds OpenID 2.0 Provider and Relying Party, OAuth Consumer and Service Provider, and InfoCard Selector support to your web site both programmatically and through convenient drop-in ASP.NET controls.</description>
<language>en-US</language>
+ <frameworkAssemblies>
+ <frameworkAssembly assemblyName="System.Configuration" targetFramework="net40" />
+ </frameworkAssemblies>
</metadata>
+ <files>
+ <file src="$OutputPath35$unified\signed\DotNetOpenAuth.dll" target="lib\net35-full\DotNetOpenAuth.dll" />
+ <file src="$OutputPath40$unified\signed\DotNetOpenAuth.dll" target="lib\net40-full\DotNetOpenAuth.dll" />
+
+ <file src="$OutputPath35$unified\DotNetOpenAuth.pdb" target="lib\net35-full\DotNetOpenAuth.pdb" />
+ <file src="$OutputPath40$unified\DotNetOpenAuth.pdb" target="lib\net40-full\DotNetOpenAuth.pdb" />
+
+ <file src="$OutputPath35$unified\DotNetOpenAuth.xml" target="lib\net35-full\DotNetOpenAuth.xml" />
+ <file src="$OutputPath40$unified\DotNetOpenAuth.xml" target="lib\net40-full\DotNetOpenAuth.xml" />
+
+ <file src="content\Ultimate\web.config.transform" target="content\web.config.transform" />
+
+ <file src="..\src\**\*.cs" target="src" />
+ </files>
</package> \ No newline at end of file
diff --git a/nuget/content/Core/web.config.transform b/nuget/content/Core/web.config.transform
new file mode 100644
index 0000000..57a4692
--- /dev/null
+++ b/nuget/content/Core/web.config.transform
@@ -0,0 +1,36 @@
+<configuration>
+ <configSections>
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ </sectionGroup>
+ </configSections>
+
+ <system.net>
+ <defaultProxy enabled="true" />
+ <settings>
+ <!-- This setting causes .NET to check certificate revocation lists (CRL)
+ before trusting HTTPS certificates. But this setting tends to not
+ be allowed in shared hosting environments. -->
+ <!--<servicePointManager checkCertificateRevocationList="true"/>-->
+ </settings>
+ </system.net>
+
+ <runtime>
+ <!-- This prevents the Windows Event Log from frequently logging that HMAC1 is being used (when the other party needs it). -->
+ <legacyHMACWarning enabled="0" />
+ </runtime>
+
+ <dotNetOpenAuth>
+ <messaging>
+ <untrustedWebRequest>
+ <whitelistHosts>
+ <!-- Uncomment to enable communication with localhost (should generally not activate in production!) -->
+ <!--<add name="localhost" />-->
+ </whitelistHosts>
+ </untrustedWebRequest>
+ </messaging>
+ <!-- Allow DotNetOpenAuth to publish usage statistics to library authors to improve the library. -->
+ <reporting enabled="true" />
+ </dotNetOpenAuth>
+</configuration> \ No newline at end of file
diff --git a/nuget/content/OAuth.Core/web.config.transform b/nuget/content/OAuth.Core/web.config.transform
new file mode 100644
index 0000000..d9b5d92
--- /dev/null
+++ b/nuget/content/OAuth.Core/web.config.transform
@@ -0,0 +1,7 @@
+<configuration>
+ <configSections>
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
+ <section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
+ </sectionGroup>
+ </configSections>
+</configuration> \ No newline at end of file
diff --git a/nuget/content/OpenId.Core/web.config.transform b/nuget/content/OpenId.Core/web.config.transform
new file mode 100644
index 0000000..0771d2c
--- /dev/null
+++ b/nuget/content/OpenId.Core/web.config.transform
@@ -0,0 +1,35 @@
+<configuration>
+ <configSections>
+ <section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
+ <section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
+ </sectionGroup>
+ </configSections>
+
+ <uri>
+ <!-- The uri section is necessary to turn on .NET 3.5 support for IDN (international domain names),
+ which is necessary for OpenID urls with unicode characters in the domain/host name.
+ It is also required to put the Uri class into RFC 3986 escaping mode, which OpenID and OAuth require. -->
+ <idn enabled="All"/>
+ <iriParsing enabled="true"/>
+ </uri>
+
+ <runtime>
+ <!-- When targeting ASP.NET MVC 2, this assemblyBinding makes MVC 1 references relink
+ to MVC 2 so libraries such as DotNetOpenAuth that compile against MVC 1 will work with it. -->
+ <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+ <dependentAssembly>
+ <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
+ <bindingRedirect oldVersion="1.0.0.0" newVersion="2.0.0.0" />
+ </dependentAssembly>
+ </assemblyBinding>
+ </runtime>
+
+ <dotNetOpenAuth>
+ <!-- This is an optional configuration section where aspects of dotnetopenauth can be customized. -->
+ <!-- For a complete set of configuration options see http://www.dotnetopenauth.net/developers/code-snippets/configuration-options/ -->
+ <!-- You may also refer to README.Bin.html for instructions on enabling Intellisense for this section. -->
+ <openid>
+ </openid>
+ </dotNetOpenAuth>
+</configuration> \ No newline at end of file
diff --git a/nuget/content/OpenId.Provider/web.config.transform b/nuget/content/OpenId.Provider/web.config.transform
new file mode 100644
index 0000000..8365a3a
--- /dev/null
+++ b/nuget/content/OpenId.Provider/web.config.transform
@@ -0,0 +1,8 @@
+<configuration>
+ <dotNetOpenAuth>
+ <openid>
+ <provider>
+ </provider>
+ </openid>
+ </dotNetOpenAuth>
+</configuration> \ No newline at end of file
diff --git a/nuget/content/OpenId.RelyingParty/web.config.transform b/nuget/content/OpenId.RelyingParty/web.config.transform
new file mode 100644
index 0000000..c9adf3f
--- /dev/null
+++ b/nuget/content/OpenId.RelyingParty/web.config.transform
@@ -0,0 +1,19 @@
+<configuration>
+ <dotNetOpenAuth>
+ <openid>
+ <relyingParty>
+ <security requireSsl="false">
+ <!-- Uncomment the trustedProviders tag if your relying party should only accept positive assertions from a closed set of OpenID Providers. -->
+ <!--<trustedProviders rejectAssertionsFromUntrustedProviders="true">
+ <add endpoint="https://www.google.com/accounts/o8/ud" />
+ </trustedProviders>-->
+ </security>
+ <behaviors>
+ <!-- The following OPTIONAL behavior allows RPs to use SREG only, but be compatible
+ with OPs that use Attribute Exchange (in various formats). -->
+ <add type="DotNetOpenAuth.OpenId.RelyingParty.Behaviors.AXFetchAsSregTransform, DotNetOpenAuth.OpenId.RelyingParty" />
+ </behaviors>
+ </relyingParty>
+ </openid>
+ </dotNetOpenAuth>
+</configuration> \ No newline at end of file
diff --git a/nuget/content/web.config.transform b/nuget/content/Ultimate/web.config.transform
index 7816a57..38544f3 100644
--- a/nuget/content/web.config.transform
+++ b/nuget/content/Ultimate/web.config.transform
@@ -1,11 +1,11 @@
<configuration>
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
- <section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
- <section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth">
+ <section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth" requirePermission="false" allowLocation="true" />
+ <section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth" requirePermission="false" allowLocation="true" />
</sectionGroup>
</configSections>
@@ -56,7 +56,7 @@
<behaviors>
<!-- The following OPTIONAL behavior allows RPs to use SREG only, but be compatible
with OPs that use Attribute Exchange (in various formats). -->
- <add type="DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregRelyingPartyTransform, DotNetOpenAuth" />
+ <add type="DotNetOpenAuth.OpenId.RelyingParty.Behaviors.AXFetchAsSregTransform, DotNetOpenAuth" />
</behaviors>
</relyingParty>
</openid>
diff --git a/nuget/nuget.proj b/nuget/nuget.proj
index f8b8e93..efa8845 100644
--- a/nuget/nuget.proj
+++ b/nuget/nuget.proj
@@ -3,60 +3,60 @@
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), EnlistmentInfo.props))\EnlistmentInfo.props" Condition=" '$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), EnlistmentInfo.props))' != '' " />
<Import Project="$(MSBuildProjectDirectory)\..\tools\DotNetOpenAuth.automated.props"/>
- <Target Name="Layout" DependsOnTargets="BuildUnifiedProduct;ReSignDelaySignedAssemblies">
- <PropertyGroup>
- <NuGetLayoutPath>$(DropsRoot)NuGet\$(BuildVersion)\</NuGetLayoutPath>
- </PropertyGroup>
+ <Target Name="BuildIntermediates">
+ <ItemGroup>
+ <ProductTargets Include="BuildUnifiedProduct;ReSignDelaySignedAssemblies" Condition=" '$(SkipNugetDependenciesBuild)' != 'true' " />
+ <ProductTargets Include="GetOutputPath" />
+ </ItemGroup>
- <MSBuild Projects="$(ProjectRoot)src\DotNetOpenAuth\DotNetOpenAuth.csproj" Targets="DocumentationProjectOutputGroup" BuildInParallel="$(BuildInParallel)">
- <Output TaskParameter="TargetOutputs" ItemName="NuGetSource"/>
+ <!-- We build the entire unified, signed product targeting both CLRs, since NuGet supports packages that contain both,
+ and by building against CLR 4, several assembly references fall away from dotnetopenauth.dll, which makes some folks happy. -->
+ <MSBuild
+ Projects="$(ProjectRoot)src\DotNetOpenAuth\DotNetOpenAuth.proj"
+ Targets="@(ProductTargets)"
+ Properties="TargetFrameworkVersion=v3.5"
+ BuildInParallel="$(BuildInParallel)">
+ <Output TaskParameter="TargetOutputs" ItemName="TargetOutputs35"/>
+ </MSBuild>
+ <MSBuild
+ Projects="$(ProjectRoot)src\DotNetOpenAuth\DotNetOpenAuth.proj"
+ Targets="@(ProductTargets)"
+ Properties="TargetFrameworkVersion=v4.0"
+ BuildInParallel="$(BuildInParallel)">
+ <Output TaskParameter="TargetOutputs" ItemName="TargetOutputs40"/>
</MSBuild>
- <!-- IMPORTANT: These must appear as separate ItemGroups or else batching screws it up. -->
<ItemGroup>
- <NuGetSource Include="%(ResignedAssembliesOutputs.Identity)" Condition=" '%(FileName)%(Extension)' == 'DotNetOpenAuth.dll' "/>
- <NuGetSource>
- <TargetPath>$(NuGetLayoutPath)lib\%(FileName)%(Extension)</TargetPath>
- </NuGetSource>
+ <ResignedAssembliesOutputs Include="@(TargetOutputs35)" Condition=" '%(MSBuildSourceTargetName)' == 'Sign' ">
+ <TargetFramework>v3.5</TargetFramework>
+ </ResignedAssembliesOutputs>
+ <ResignedAssembliesOutputs Include="@(TargetOutputs40)" Condition=" '%(MSBuildSourceTargetName)' == 'Sign' ">
+ <TargetFramework>v4.0</TargetFramework>
+ </ResignedAssembliesOutputs>
</ItemGroup>
- <ItemGroup>
- <NuGetContentSource Include="$(ProjectRoot)NuGet\content\**"/>
- </ItemGroup>
- <ItemGroup>
- <NuGetSource Include="@(NuGetContentSource)">
- <TargetPath>$(NuGetLayoutPath)content\%(RecursiveDir)%(FileName)%(Extension)</TargetPath>
- </NuGetSource>
-
- <NuSpecSource Include="DotNetOpenAuth.nuspec">
- <LayoutPath>$(NuGetLayoutPath)</LayoutPath>
- <BeforeTokens>$version$</BeforeTokens>
- <AfterTokens>$(BuildVersion)</AfterTokens>
- </NuSpecSource>
+ <PropertyGroup>
+ <OutputPath35 Condition=" '%(MSBuildSourceTargetName)' == 'GetOutputPath' ">@(TargetOutputs35)</OutputPath35>
+ <OutputPath40 Condition=" '%(MSBuildSourceTargetName)' == 'GetOutputPath' ">@(TargetOutputs40)</OutputPath40>
+ </PropertyGroup>
+ </Target>
- <NuSpecTarget Include="@(NuSpecSource->'$(NuGetLayoutPath)%(FileName)%(Extension)')" />
- </ItemGroup>
+ <Target Name="Build" DependsOnTargets="BuildIntermediates">
<ItemGroup>
- <NuGetContentsTarget Include="%(NuGetSource.TargetPath)" />
- </ItemGroup>
+ <NuGetPackages Include="*.nuspec" Exclude="DotNetOpenAuth.Ultimate.nuspec">
+ <Symbols>true</Symbols>
+ </NuGetPackages>
+ <NuGetPackages Include="DotNetOpenAuth.Ultimate.nuspec" />
- <CopyWithTokenSubstitution
- SourceFiles="@(NuSpecSource)"
- DestinationFiles="@(NuSpecTarget)"
- />
-
- <Copy
- SourceFiles="@(NuGetSource)"
- DestinationFiles="@(NuGetContentsTarget)"
- SkipUnchangedFiles="true" />
-
- <Purge Directories="$(NuGetLayoutPath)" IntendedFiles="@(NuGetContentsTarget);@(NuSpecTarget)" />
- </Target>
-
- <Target Name="Build" DependsOnTargets="Layout">
+ <NuGetProperties Include="version=$(NuGetPackageVersion)" />
+ <NuGetProperties Include="oauth2version=0.11.0-draft" />
+ <NuGetProperties Include="OutputPath35=$(OutputPath35)" />
+ <NuGetProperties Include="OutputPath40=$(OutputPath40)" />
+ </ItemGroup>
<NuGetPack
- NuSpec="%(NuSpecTarget.Identity)"
- BaseDirectory="%(NuSpecTarget.LayoutPath)"
+ NuSpec="%(NuGetPackages.Identity)"
OutputPackageDirectory="$(DropsRoot)"
+ Properties="@(NuGetProperties)"
+ Symbols="%(NuGetPackages.Symbols)"
ToolPath="$(NuGetToolPath)" />
</Target>
diff --git a/projecttemplates/MvcRelyingParty/Web.config b/projecttemplates/MvcRelyingParty/Web.config
index 4ebaf04..1884dd8 100644
--- a/projecttemplates/MvcRelyingParty/Web.config
+++ b/projecttemplates/MvcRelyingParty/Web.config
@@ -11,11 +11,11 @@
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false"/>
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
diff --git a/projecttemplates/WebFormsRelyingParty/Web.config b/projecttemplates/WebFormsRelyingParty/Web.config
index 4f57f16..d60edc3 100644
--- a/projecttemplates/WebFormsRelyingParty/Web.config
+++ b/projecttemplates/WebFormsRelyingParty/Web.config
@@ -11,11 +11,11 @@
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false" />
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
diff --git a/samples/InfoCardRelyingParty/web.config b/samples/InfoCardRelyingParty/web.config
index c93dc1f..578ea26 100644
--- a/samples/InfoCardRelyingParty/web.config
+++ b/samples/InfoCardRelyingParty/web.config
@@ -2,11 +2,11 @@
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false" />
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
diff --git a/samples/OAuthAuthorizationServer/Web.config b/samples/OAuthAuthorizationServer/Web.config
index 8f059b0..3d13e5a 100644
--- a/samples/OAuthAuthorizationServer/Web.config
+++ b/samples/OAuthAuthorizationServer/Web.config
@@ -9,11 +9,11 @@
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false"/>
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
</configSections>
diff --git a/samples/OAuthClient/Web.config b/samples/OAuthClient/Web.config
index 8cd62d2..9fa30d9 100644
--- a/samples/OAuthClient/Web.config
+++ b/samples/OAuthClient/Web.config
@@ -3,11 +3,11 @@
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false" />
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
diff --git a/samples/OAuthConsumerWpf/App.config b/samples/OAuthConsumerWpf/App.config
index 2b7898a..64d2032 100644
--- a/samples/OAuthConsumerWpf/App.config
+++ b/samples/OAuthConsumerWpf/App.config
@@ -3,11 +3,11 @@
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false" />
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
</configSections>
diff --git a/samples/OAuthResourceServer/Web.config b/samples/OAuthResourceServer/Web.config
index e2257bd..827fb07 100644
--- a/samples/OAuthResourceServer/Web.config
+++ b/samples/OAuthResourceServer/Web.config
@@ -3,11 +3,11 @@
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false"/>
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
diff --git a/samples/OpenIdOfflineProvider/App.config b/samples/OpenIdOfflineProvider/App.config
index f7c757e..7bd5b37 100644
--- a/samples/OpenIdOfflineProvider/App.config
+++ b/samples/OpenIdOfflineProvider/App.config
@@ -2,11 +2,11 @@
<configuration>
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" requirePermission="false"/>
</configSections>
diff --git a/samples/OpenIdOfflineProvider/OpenIdOfflineProvider.csproj b/samples/OpenIdOfflineProvider/OpenIdOfflineProvider.csproj
index 355919f..6971026 100644
--- a/samples/OpenIdOfflineProvider/OpenIdOfflineProvider.csproj
+++ b/samples/OpenIdOfflineProvider/OpenIdOfflineProvider.csproj
@@ -99,6 +99,7 @@
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Web" />
+ <Reference Include="System.Web.Abstractions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" Condition=" '$(ClrVersion)' == '2' " />
<Reference Include="System.Xml.Linq">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
@@ -238,12 +239,16 @@
</ItemGroup>
<Target Name="BuildUnified" DependsOnTargets="Build" Inputs="@(ILMergeProjectInputAssemblies)" Outputs="$(ILMergeProjectOutputAssembly)">
<MakeDir Directories="$(ILMergeOutputAssemblyDirectory)" />
- <ILMerge ExcludeFile="$(ProjectRoot)ILMergeInternalizeExceptions.txt"
- InputAssemblies="@(ILMergeProjectInputAssemblies)"
- OutputFile="$(ILMergeProjectOutputAssembly)"
- ToolPath="$(ProjectRoot)tools\ILMerge"
- KeyFile="$(PublicKeyFile)"
- DelaySign="true" />
+ <ILMerge
+ ExcludeFile="$(ProjectRoot)ILMergeInternalizeExceptions.txt"
+ InputAssemblies="@(ILMergeProjectInputAssemblies)"
+ OutputFile="$(ILMergeProjectOutputAssembly)"
+ SearchDirectories="$(OutputPath);@(ILMergeSearchDirectories)"
+ ToolPath="$(ProjectRoot)tools\ILMerge"
+ KeyFile="$(PublicKeyFile)"
+ DelaySign="true"
+ TargetPlatformVersion="$(ClrVersion).0"
+ TargetPlatformDirectory="$(ILMergeTargetPlatformDirectory)" />
</Target>
<Import Project="$(ProjectRoot)tools\DotNetOpenAuth.targets" />
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), EnlistmentInfo.targets))\EnlistmentInfo.targets" Condition=" '$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), EnlistmentInfo.targets))' != '' " />
diff --git a/samples/OpenIdProviderMvc/Web.config b/samples/OpenIdProviderMvc/Web.config
index b19d23d..6c5b5b6 100644
--- a/samples/OpenIdProviderMvc/Web.config
+++ b/samples/OpenIdProviderMvc/Web.config
@@ -3,11 +3,11 @@
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false"/>
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
diff --git a/samples/OpenIdProviderWebForms/Web.config b/samples/OpenIdProviderWebForms/Web.config
index eecd9b9..0c56bfe 100644
--- a/samples/OpenIdProviderWebForms/Web.config
+++ b/samples/OpenIdProviderWebForms/Web.config
@@ -3,11 +3,11 @@
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false"/>
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
diff --git a/samples/OpenIdRelyingPartyMvc/Web.config b/samples/OpenIdRelyingPartyMvc/Web.config
index 1c609c7..5442e0a 100644
--- a/samples/OpenIdRelyingPartyMvc/Web.config
+++ b/samples/OpenIdRelyingPartyMvc/Web.config
@@ -2,11 +2,11 @@
<configuration>
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
diff --git a/samples/OpenIdRelyingPartyWebForms/Web.config b/samples/OpenIdRelyingPartyWebForms/Web.config
index f34b171..3a667c2 100644
--- a/samples/OpenIdRelyingPartyWebForms/Web.config
+++ b/samples/OpenIdRelyingPartyWebForms/Web.config
@@ -3,11 +3,11 @@
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false" />
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
</configSections>
diff --git a/samples/OpenIdRelyingPartyWebFormsVB/Web.config b/samples/OpenIdRelyingPartyWebFormsVB/Web.config
index 14719ef..9c65b28 100644
--- a/samples/OpenIdRelyingPartyWebFormsVB/Web.config
+++ b/samples/OpenIdRelyingPartyWebFormsVB/Web.config
@@ -3,11 +3,11 @@
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false" />
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
</configSections>
diff --git a/samples/OpenIdWebRingSsoProvider/Web.config b/samples/OpenIdWebRingSsoProvider/Web.config
index 881f6c7..656ea44 100644
--- a/samples/OpenIdWebRingSsoProvider/Web.config
+++ b/samples/OpenIdWebRingSsoProvider/Web.config
@@ -3,11 +3,11 @@
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false"/>
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
diff --git a/samples/OpenIdWebRingSsoRelyingParty/Web.config b/samples/OpenIdWebRingSsoRelyingParty/Web.config
index fe59dae..5c5965d 100644
--- a/samples/OpenIdWebRingSsoRelyingParty/Web.config
+++ b/samples/OpenIdWebRingSsoRelyingParty/Web.config
@@ -4,11 +4,11 @@
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler" requirePermission="false" />
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
diff --git a/src/DotNetOpenAuth.BuildTasks/DotNetOpenAuth.BuildTasks.sln b/src/DotNetOpenAuth.BuildTasks/DotNetOpenAuth.BuildTasks.sln
index 9922a2b..ddf80bd 100644
--- a/src/DotNetOpenAuth.BuildTasks/DotNetOpenAuth.BuildTasks.sln
+++ b/src/DotNetOpenAuth.BuildTasks/DotNetOpenAuth.BuildTasks.sln
@@ -17,7 +17,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
..\..\tools\drop.proj = ..\..\tools\drop.proj
..\..\EnlistmentInfo.props = ..\..\EnlistmentInfo.props
..\..\EnlistmentInfo.targets = ..\..\EnlistmentInfo.targets
- ..\..\nuget\nuget.proj = ..\..\nuget\nuget.proj
..\..\tools\ohloh.proj = ..\..\tools\ohloh.proj
..\..\projecttemplates\projecttemplates.proj = ..\..\projecttemplates\projecttemplates.proj
..\..\samples\Samples.proj = ..\..\samples\Samples.proj
@@ -30,14 +29,16 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DotNetOpenAuth.BuildTasks",
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NuGet", "NuGet", "{D49E2011-0E1C-4AB5-9887-BD1D42266503}"
ProjectSection(SolutionItems) = preProject
- ..\..\nuget\DotNetOpenAuth.nuspec = ..\..\nuget\DotNetOpenAuth.nuspec
+ ..\..\nuget\DotNetOpenAuth.Core.nuspec = ..\..\nuget\DotNetOpenAuth.Core.nuspec
+ ..\..\nuget\DotNetOpenAuth.OAuth.Consumer.nuspec = ..\..\nuget\DotNetOpenAuth.OAuth.Consumer.nuspec
+ ..\..\nuget\DotNetOpenAuth.OAuth.Core.nuspec = ..\..\nuget\DotNetOpenAuth.OAuth.Core.nuspec
+ ..\..\nuget\DotNetOpenAuth.OpenId.Core.nuspec = ..\..\nuget\DotNetOpenAuth.OpenId.Core.nuspec
+ ..\..\nuget\DotNetOpenAuth.OpenId.RelyingParty.nuspec = ..\..\nuget\DotNetOpenAuth.OpenId.RelyingParty.nuspec
+ ..\..\nuget\DotNetOpenAuth.Ultimate.nuspec = ..\..\nuget\DotNetOpenAuth.Ultimate.nuspec
..\..\nuget\nuget.proj = ..\..\nuget\nuget.proj
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "content", "content", "{BF3868D6-3BBA-4E40-B180-213370C15494}"
- ProjectSection(SolutionItems) = preProject
- ..\..\nuget\content\web.config.transform = ..\..\nuget\content\web.config.transform
- EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
diff --git a/src/DotNetOpenAuth.BuildTasks/GetBuildVersion.cs b/src/DotNetOpenAuth.BuildTasks/GetBuildVersion.cs
index 9818885..50bc89f 100644
--- a/src/DotNetOpenAuth.BuildTasks/GetBuildVersion.cs
+++ b/src/DotNetOpenAuth.BuildTasks/GetBuildVersion.cs
@@ -35,6 +35,12 @@ namespace DotNetOpenAuth.BuildTasks {
public string GitCommitId { get; private set; }
/// <summary>
+ /// Gets the build number (JDate) for this version.
+ /// </summary>
+ [Output]
+ public int BuildNumber { get; private set; }
+
+ /// <summary>
/// The file that contains the version base (Major.Minor.Build) to use.
/// </summary>
[Required]
@@ -48,11 +54,12 @@ namespace DotNetOpenAuth.BuildTasks {
public override bool Execute() {
try {
Version typedVersion = ReadVersionFromFile();
- SimpleVersion = typedVersion.ToString();
+ this.SimpleVersion = typedVersion.ToString();
+ this.BuildNumber = this.CalculateJDate(DateTime.Now);
+
+ var fullVersion = new Version(typedVersion.Major, typedVersion.Minor, typedVersion.Build, this.BuildNumber);
+ this.Version = fullVersion.ToString();
- var fullVersion = new Version(typedVersion.Major, typedVersion.Minor, typedVersion.Build, CalculateJDate(DateTime.Now));
- Version = fullVersion.ToString();
-
this.GitCommitId = GetGitHeadCommitId();
} catch (ArgumentOutOfRangeException ex) {
Log.LogErrorFromException(ex);
diff --git a/src/DotNetOpenAuth.BuildTasks/NuGetPack.cs b/src/DotNetOpenAuth.BuildTasks/NuGetPack.cs
index 356c51f..91365e5 100644
--- a/src/DotNetOpenAuth.BuildTasks/NuGetPack.cs
+++ b/src/DotNetOpenAuth.BuildTasks/NuGetPack.cs
@@ -35,6 +35,16 @@ namespace DotNetOpenAuth.BuildTasks {
public ITaskItem OutputPackageDirectory { get; set; }
/// <summary>
+ /// Gets or sets the semicolon delimited list of properties to supply to the NuGet Pack command to perform token substitution.
+ /// </summary>
+ public string Properties { get; set; }
+
+ /// <summary>
+ /// Gets or sets a value indicating whether to generate a symbols nuget package.
+ /// </summary>
+ public bool Symbols { get; set; }
+
+ /// <summary>
/// Returns the fully qualified path to the executable file.
/// </summary>
/// <returns>
@@ -63,15 +73,7 @@ namespace DotNetOpenAuth.BuildTasks {
Directory.CreateDirectory(Path.GetDirectoryName(this.OutputPackageDirectory.ItemSpec));
}
- string fullPackagePath = this.DeriveFullPackagePath();
- this.Log.LogMessage("Creating NuGet package '{0}'.", fullPackagePath);
-
bool result = base.Execute();
-
- if (result) {
- this.Log.LogMessage(MessageImportance.High, "Successfully created package '{0}'.", fullPackagePath);
- }
-
return result;
}
@@ -86,23 +88,14 @@ namespace DotNetOpenAuth.BuildTasks {
args.AppendSwitch("pack");
args.AppendFileNameIfNotNull(this.NuSpec);
- args.AppendSwitchIfNotNull("-b ", this.BaseDirectory);
- args.AppendSwitchIfNotNull("-o ", this.OutputPackageDirectory);
+ args.AppendSwitchIfNotNull("-BasePath ", this.BaseDirectory);
+ args.AppendSwitchIfNotNull("-OutputDirectory ", this.OutputPackageDirectory);
+ args.AppendSwitchIfNotNull("-Properties ", this.Properties);
+ if (this.Symbols) {
+ args.AppendSwitch("-Symbols");
+ }
return args.ToString();
}
-
- /// <summary>
- /// Derives the path to the generated .nupkg file.
- /// </summary>
- /// <returns>A relative path.</returns>
- private string DeriveFullPackagePath() {
- var spec = XDocument.Load(this.NuSpec.ItemSpec);
- var metadata = spec.Element("package").Element("metadata");
- string id = metadata.Element("id").Value;
- string version = metadata.Element("version").Value;
- string baseDirectory = this.OutputPackageDirectory != null ? this.OutputPackageDirectory.ItemSpec : String.Empty;
- return Path.Combine(baseDirectory, String.Format("{0}.{1}.nupkg", id, version));
- }
}
}
diff --git a/src/DotNetOpenAuth.Core.UI/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.Core.UI/Properties/AssemblyInfo.cs
index b58f251..3a94681 100644
--- a/src/DotNetOpenAuth.Core.UI/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.Core.UI/Properties/AssemblyInfo.cs
@@ -58,6 +58,7 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider.UI, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.InfoCard")]
@@ -69,4 +70,5 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider.UI")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.Core/DotNetOpenAuth.Core.csproj b/src/DotNetOpenAuth.Core/DotNetOpenAuth.Core.csproj
index 68d1864..3692b4e 100644
--- a/src/DotNetOpenAuth.Core/DotNetOpenAuth.Core.csproj
+++ b/src/DotNetOpenAuth.Core/DotNetOpenAuth.Core.csproj
@@ -10,7 +10,7 @@
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{60426312-6AE5-4835-8667-37EDEA670222}</ProjectGuid>
<AppDesignerFolder>Properties</AppDesignerFolder>
- <AssemblyName>DotNetOpenAuth.Messaging</AssemblyName>
+ <AssemblyName>DotNetOpenAuth.Core</AssemblyName>
</PropertyGroup>
<Import Project="$(ProjectRoot)tools\DotNetOpenAuth.Product.props" />
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
diff --git a/src/DotNetOpenAuth.Core/Messaging/ErrorUtilities.cs b/src/DotNetOpenAuth.Core/Messaging/ErrorUtilities.cs
index c6a652b..129a03d 100644
--- a/src/DotNetOpenAuth.Core/Messaging/ErrorUtilities.cs
+++ b/src/DotNetOpenAuth.Core/Messaging/ErrorUtilities.cs
@@ -6,6 +6,7 @@
namespace DotNetOpenAuth.Messaging {
using System;
+ using System.Collections.Generic;
using System.Diagnostics;
using System.Diagnostics.Contracts;
using System.Globalization;
@@ -361,5 +362,24 @@ namespace DotNetOpenAuth.Messaging {
Contract.Ensures(HttpContext.Current.Request != null);
ErrorUtilities.VerifyOperation(HttpContext.Current != null && HttpContext.Current.Request != null, MessagingStrings.HttpContextRequired);
}
+
+ /// <summary>
+ /// Obtains a value from the dictionary if possible, or throws a <see cref="ProtocolException"/> if it's missing.
+ /// </summary>
+ /// <typeparam name="TKey">The type of key in the dictionary.</typeparam>
+ /// <typeparam name="TValue">The type of value in the dictionary.</typeparam>
+ /// <param name="dictionary">The dictionary.</param>
+ /// <param name="key">The key to use to look up the value.</param>
+ /// <param name="message">The message to claim is invalid if the key cannot be found.</param>
+ /// <returns>The value for the given key.</returns>
+ [Pure]
+ internal static TValue GetValueOrThrow<TKey, TValue>(this IDictionary<TKey, TValue> dictionary, TKey key, IMessage message) {
+ Requires.NotNull(dictionary, "dictionary");
+ Requires.NotNull(message, "message");
+
+ TValue value;
+ VerifyProtocol(dictionary.TryGetValue(key, out value), MessagingStrings.ExpectedParameterWasMissing, key, message.GetType().Name);
+ return value;
+ }
}
}
diff --git a/src/DotNetOpenAuth.Core/Messaging/MessagingStrings.Designer.cs b/src/DotNetOpenAuth.Core/Messaging/MessagingStrings.Designer.cs
index 11bd751..3ad2bdd 100644
--- a/src/DotNetOpenAuth.Core/Messaging/MessagingStrings.Designer.cs
+++ b/src/DotNetOpenAuth.Core/Messaging/MessagingStrings.Designer.cs
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
-// Runtime Version:4.0.30319.1
+// Runtime Version:4.0.30319.239
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -187,6 +187,15 @@ namespace DotNetOpenAuth.Messaging {
}
/// <summary>
+ /// Looks up a localized string similar to The message part {0} was expected in the {1} message but was not found..
+ /// </summary>
+ internal static string ExpectedParameterWasMissing {
+ get {
+ return ResourceManager.GetString("ExpectedParameterWasMissing", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to The message expired at {0} and it is now {1}..
/// </summary>
internal static string ExpiredMessage {
diff --git a/src/DotNetOpenAuth.Core/Messaging/MessagingStrings.resx b/src/DotNetOpenAuth.Core/Messaging/MessagingStrings.resx
index bd10b76..5f3f79a 100644
--- a/src/DotNetOpenAuth.Core/Messaging/MessagingStrings.resx
+++ b/src/DotNetOpenAuth.Core/Messaging/MessagingStrings.resx
@@ -321,4 +321,7 @@
<data name="ExtraParameterAddFailure" xml:space="preserve">
<value>Failed to add extra parameter '{0}' with value '{1}'.</value>
</data>
-</root>
+ <data name="ExpectedParameterWasMissing" xml:space="preserve">
+ <value>The message part {0} was expected in the {1} message but was not found.</value>
+ </data>
+</root> \ No newline at end of file
diff --git a/src/DotNetOpenAuth.Core/Messaging/MessagingUtilities.cs b/src/DotNetOpenAuth.Core/Messaging/MessagingUtilities.cs
index 9277734..2a94791 100644
--- a/src/DotNetOpenAuth.Core/Messaging/MessagingUtilities.cs
+++ b/src/DotNetOpenAuth.Core/Messaging/MessagingUtilities.cs
@@ -906,7 +906,7 @@ namespace DotNetOpenAuth.Messaging {
/// </summary>
/// <param name="headers">The headers to add.</param>
/// <param name="response">The <see cref="HttpResponse"/> instance to set the appropriate values to.</param>
- internal static void ApplyHeadersToResponse(WebHeaderCollection headers, HttpResponse response) {
+ internal static void ApplyHeadersToResponse(WebHeaderCollection headers, HttpResponseBase response) {
Requires.NotNull(headers, "headers");
Requires.NotNull(response, "response");
diff --git a/src/DotNetOpenAuth.Core/Messaging/OutgoingWebResponse.cs b/src/DotNetOpenAuth.Core/Messaging/OutgoingWebResponse.cs
index 003cac8..026b7c2 100644
--- a/src/DotNetOpenAuth.Core/Messaging/OutgoingWebResponse.cs
+++ b/src/DotNetOpenAuth.Core/Messaging/OutgoingWebResponse.cs
@@ -142,6 +142,18 @@ namespace DotNetOpenAuth.Messaging {
/// <exception cref="ThreadAbortException">Typically thrown by ASP.NET in order to prevent additional data from the page being sent to the client and corrupting the response.</exception>
[EditorBrowsable(EditorBrowsableState.Never)]
public virtual void Send(HttpContext context) {
+ this.Respond(new HttpContextWrapper(context), true);
+ }
+
+ /// <summary>
+ /// Automatically sends the appropriate response to the user agent
+ /// and ends execution on the current page or handler.
+ /// </summary>
+ /// <param name="context">The context of the HTTP request whose response should be set.
+ /// Typically this is <see cref="HttpContext.Current"/>.</param>
+ /// <exception cref="ThreadAbortException">Typically thrown by ASP.NET in order to prevent additional data from the page being sent to the client and corrupting the response.</exception>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public virtual void Send(HttpContextBase context) {
this.Respond(context, true);
}
@@ -176,7 +188,25 @@ namespace DotNetOpenAuth.Messaging {
/// ASP.NET will render HTML after the protocol message has been sent, which will corrupt the response.
/// Use the <see cref="Send()"/> method instead for web forms.
/// </remarks>
- public virtual void Respond(HttpContext context) {
+ public void Respond(HttpContext context) {
+ Requires.NotNull(context, "context");
+ this.Respond(new HttpContextWrapper(context));
+ }
+
+ /// <summary>
+ /// Automatically sends the appropriate response to the user agent
+ /// and signals ASP.NET to short-circuit the page execution pipeline
+ /// now that the response has been completed.
+ /// Not safe to call from ASP.NET web forms.
+ /// </summary>
+ /// <param name="context">The context of the HTTP request whose response should be set.
+ /// Typically this is <see cref="HttpContext.Current"/>.</param>
+ /// <remarks>
+ /// This call is not safe to make from an ASP.NET web form (.aspx file or code-behind) because
+ /// ASP.NET will render HTML after the protocol message has been sent, which will corrupt the response.
+ /// Use the <see cref="Send()"/> method instead for web forms.
+ /// </remarks>
+ public virtual void Respond(HttpContextBase context) {
Requires.NotNull(context, "context");
this.Respond(context, false);
@@ -264,7 +294,21 @@ namespace DotNetOpenAuth.Messaging {
/// <param name="endRequest">If set to <c>false</c>, this method calls
/// <see cref="HttpApplication.CompleteRequest"/> rather than <see cref="HttpResponse.End"/>
/// to avoid a <see cref="ThreadAbortException"/>.</param>
- protected internal virtual void Respond(HttpContext context, bool endRequest) {
+ protected internal void Respond(HttpContext context, bool endRequest) {
+ this.Respond(new HttpContextWrapper(context), endRequest);
+ }
+
+ /// <summary>
+ /// Automatically sends the appropriate response to the user agent
+ /// and signals ASP.NET to short-circuit the page execution pipeline
+ /// now that the response has been completed.
+ /// </summary>
+ /// <param name="context">The context of the HTTP request whose response should be set.
+ /// Typically this is <see cref="HttpContext.Current"/>.</param>
+ /// <param name="endRequest">If set to <c>false</c>, this method calls
+ /// <see cref="HttpApplication.CompleteRequest"/> rather than <see cref="HttpResponse.End"/>
+ /// to avoid a <see cref="ThreadAbortException"/>.</param>
+ protected internal virtual void Respond(HttpContextBase context, bool endRequest) {
Requires.NotNull(context, "context");
context.Response.Clear();
diff --git a/src/DotNetOpenAuth.Core/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.Core/Properties/AssemblyInfo.cs
index 2441379..205d331 100644
--- a/src/DotNetOpenAuth.Core/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.Core/Properties/AssemblyInfo.cs
@@ -65,6 +65,7 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.ResourceServer, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.Client, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.Client.UI, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.InfoCard")]
@@ -83,4 +84,5 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.AuthorizationServer")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.ResourceServer")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.Client")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.InfoCard.UI/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.InfoCard.UI/Properties/AssemblyInfo.cs
index aade2c4..63faf9a 100644
--- a/src/DotNetOpenAuth.InfoCard.UI/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.InfoCard.UI/Properties/AssemblyInfo.cs
@@ -49,6 +49,8 @@ using System.Web.UI;
[assembly: AllowPartiallyTrustedCallers]
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.InfoCard/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.InfoCard/Properties/AssemblyInfo.cs
index 6ef892d..7260f4b 100644
--- a/src/DotNetOpenAuth.InfoCard/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.InfoCard/Properties/AssemblyInfo.cs
@@ -48,7 +48,9 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.InfoCard.UI, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.InfoCard.UI")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OAuth.Consumer/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OAuth.Consumer/Properties/AssemblyInfo.cs
index 0730b90..fd29585 100644
--- a/src/DotNetOpenAuth.OAuth.Consumer/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OAuth.Consumer/Properties/AssemblyInfo.cs
@@ -48,9 +48,11 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth.Consumer")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth.ServiceProvider")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OAuth.Consumer/Properties/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OAuth.Consumer/Properties/Properties/AssemblyInfo.cs
index 21104e3..d402b02 100644
--- a/src/DotNetOpenAuth.OAuth.Consumer/Properties/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OAuth.Consumer/Properties/Properties/AssemblyInfo.cs
@@ -50,7 +50,9 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OAuth.ServiceProvider/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OAuth.ServiceProvider/Properties/AssemblyInfo.cs
index 86ff807..d038290 100644
--- a/src/DotNetOpenAuth.OAuth.ServiceProvider/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OAuth.ServiceProvider/Properties/AssemblyInfo.cs
@@ -48,7 +48,9 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OAuth/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OAuth/Properties/AssemblyInfo.cs
index 97015ec..49ef570 100644
--- a/src/DotNetOpenAuth.OAuth/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OAuth/Properties/AssemblyInfo.cs
@@ -52,9 +52,11 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth.Consumer, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth.ServiceProvider, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth.Consumer")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth.ServiceProvider")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OAuth2.AuthorizationServer/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OAuth2.AuthorizationServer/Properties/AssemblyInfo.cs
index ad8decc..54db6cf 100644
--- a/src/DotNetOpenAuth.OAuth2.AuthorizationServer/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OAuth2.AuthorizationServer/Properties/AssemblyInfo.cs
@@ -47,6 +47,8 @@ using System.Web.UI;
[assembly: AllowPartiallyTrustedCallers]
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OAuth2.Client.UI/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OAuth2.Client.UI/Properties/AssemblyInfo.cs
index ad8decc..54db6cf 100644
--- a/src/DotNetOpenAuth.OAuth2.Client.UI/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OAuth2.Client.UI/Properties/AssemblyInfo.cs
@@ -47,6 +47,8 @@ using System.Web.UI;
[assembly: AllowPartiallyTrustedCallers]
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OAuth2.Client/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OAuth2.Client/Properties/AssemblyInfo.cs
index ad8decc..54db6cf 100644
--- a/src/DotNetOpenAuth.OAuth2.Client/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OAuth2.Client/Properties/AssemblyInfo.cs
@@ -47,6 +47,8 @@ using System.Web.UI;
[assembly: AllowPartiallyTrustedCallers]
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OAuth2.ResourceServer/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OAuth2.ResourceServer/Properties/AssemblyInfo.cs
index ad8decc..54db6cf 100644
--- a/src/DotNetOpenAuth.OAuth2.ResourceServer/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OAuth2.ResourceServer/Properties/AssemblyInfo.cs
@@ -47,6 +47,8 @@ using System.Web.UI;
[assembly: AllowPartiallyTrustedCallers]
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OAuth2/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OAuth2/Properties/AssemblyInfo.cs
index 67eed6d..5c7b883 100644
--- a/src/DotNetOpenAuth.OAuth2/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OAuth2/Properties/AssemblyInfo.cs
@@ -50,9 +50,11 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.AuthorizationServer, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.ResourceServer, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.Client, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.AuthorizationServer")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.ResourceServer")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.Client")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OpenId.Provider.UI/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OpenId.Provider.UI/Properties/AssemblyInfo.cs
index e5cab0f..2fbaebd 100644
--- a/src/DotNetOpenAuth.OpenId.Provider.UI/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OpenId.Provider.UI/Properties/AssemblyInfo.cs
@@ -49,6 +49,8 @@ using System.Web.UI;
[assembly: AllowPartiallyTrustedCallers]
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OpenId.Provider/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OpenId.Provider/Properties/AssemblyInfo.cs
index ff503c4..c90d56f 100644
--- a/src/DotNetOpenAuth.OpenId.Provider/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OpenId.Provider/Properties/AssemblyInfo.cs
@@ -47,6 +47,8 @@ using System.Web.UI;
[assembly: AllowPartiallyTrustedCallers]
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OpenId.RelyingParty.UI/OpenId/RelyingParty/OpenIdLogin.cs b/src/DotNetOpenAuth.OpenId.RelyingParty.UI/OpenId/RelyingParty/OpenIdLogin.cs
index c58de9d..e65b3f4 100644
--- a/src/DotNetOpenAuth.OpenId.RelyingParty.UI/OpenId/RelyingParty/OpenIdLogin.cs
+++ b/src/DotNetOpenAuth.OpenId.RelyingParty.UI/OpenId/RelyingParty/OpenIdLogin.cs
@@ -1,4 +1,4 @@
-//-----------------------------------------------------------------------
+//-----------------------------------------------------------------------
// <copyright file="OpenIdLogin.cs" company="Andrew Arnott">
// Copyright (c) Andrew Arnott. All rights reserved.
// </copyright>
@@ -38,7 +38,7 @@ namespace DotNetOpenAuth.OpenId.RelyingParty {
/// <summary>
/// The default value for the <see cref="ButtonText"/> property.
/// </summary>
- private const string ButtonTextDefault = "Login »";
+ private const string ButtonTextDefault = "Login »";
/// <summary>
/// The default value for the <see cref="CanceledText"/> property.
diff --git a/src/DotNetOpenAuth.OpenId.RelyingParty.UI/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OpenId.RelyingParty.UI/Properties/AssemblyInfo.cs
index 7f9ef37..2b8f823 100644
--- a/src/DotNetOpenAuth.OpenId.RelyingParty.UI/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OpenId.RelyingParty.UI/Properties/AssemblyInfo.cs
@@ -51,8 +51,10 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenIdInfoCard.UI, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenIdInfoCard.UI")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OpenId.RelyingParty/OpenId/RelyingParty/NegativeAuthenticationResponse.cs b/src/DotNetOpenAuth.OpenId.RelyingParty/OpenId/RelyingParty/NegativeAuthenticationResponse.cs
index e6b84f5..4b21fea 100644
--- a/src/DotNetOpenAuth.OpenId.RelyingParty/OpenId/RelyingParty/NegativeAuthenticationResponse.cs
+++ b/src/DotNetOpenAuth.OpenId.RelyingParty/OpenId/RelyingParty/NegativeAuthenticationResponse.cs
@@ -132,6 +132,7 @@ namespace DotNetOpenAuth.OpenId.RelyingParty {
/// <value></value>
public Identifier UserSuppliedIdentifier {
get {
+ ErrorUtilities.VerifyOperation(((IAuthenticationResponse)this).Status == AuthenticationStatus.SetupRequired, OpenIdStrings.OperationOnlyValidForSetupRequiredState);
string userSuppliedIdentifier;
this.response.ExtraData.TryGetValue(AuthenticationRequest.UserSuppliedIdentifierParameterName, out userSuppliedIdentifier);
return userSuppliedIdentifier;
diff --git a/src/DotNetOpenAuth.OpenId.RelyingParty/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OpenId.RelyingParty/Properties/AssemblyInfo.cs
index 500e67c..e425143 100644
--- a/src/DotNetOpenAuth.OpenId.RelyingParty/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OpenId.RelyingParty/Properties/AssemblyInfo.cs
@@ -49,8 +49,10 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.RelyingParty.UI, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.RelyingParty.UI")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OpenId.UI/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OpenId.UI/Properties/AssemblyInfo.cs
index e4d1746..d1eef8c 100644
--- a/src/DotNetOpenAuth.OpenId.UI/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OpenId.UI/Properties/AssemblyInfo.cs
@@ -54,6 +54,7 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.RelyingParty.UI, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider.UI, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth")]
@@ -61,4 +62,5 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.RelyingParty.UI")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider.UI")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OpenId/OpenId/ChannelElements/SigningBindingElement.cs b/src/DotNetOpenAuth.OpenId/OpenId/ChannelElements/SigningBindingElement.cs
index 95a748e..d14ca8a 100644
--- a/src/DotNetOpenAuth.OpenId/OpenId/ChannelElements/SigningBindingElement.cs
+++ b/src/DotNetOpenAuth.OpenId/OpenId/ChannelElements/SigningBindingElement.cs
@@ -128,8 +128,8 @@ namespace DotNetOpenAuth.OpenId.ChannelElements {
// of check_authentication with its original id_res so the signature matches.
MessageDictionary dictionary = this.Channel.MessageDescriptions.GetAccessor(signedMessage);
var parametersToSign = from name in signedMessage.SignedParameterOrder.Split(',')
- let prefixedName = Protocol.V20.openid.Prefix + name
- select new KeyValuePair<string, string>(name, dictionary[prefixedName]);
+ let prefixedName = Protocol.V20.openid.Prefix + name
+ select new KeyValuePair<string, string>(name, dictionary.GetValueOrThrow(prefixedName, signedMessage));
byte[] dataToSign = KeyValueFormEncoding.GetBytes(parametersToSign);
string signature = Convert.ToBase64String(association.Sign(dataToSign));
diff --git a/src/DotNetOpenAuth.OpenId/OpenId/DiffieHellmanUtilities.cs b/src/DotNetOpenAuth.OpenId/OpenId/DiffieHellmanUtilities.cs
index 78f90c9..e7e1bf8 100644
--- a/src/DotNetOpenAuth.OpenId/OpenId/DiffieHellmanUtilities.cs
+++ b/src/DotNetOpenAuth.OpenId/OpenId/DiffieHellmanUtilities.cs
@@ -23,10 +23,10 @@ namespace DotNetOpenAuth.OpenId {
/// An array of known Diffie Hellman sessions, sorted by decreasing hash size.
/// </summary>
private static DHSha[] diffieHellmanSessionTypes = new List<DHSha> {
- new DHSha(new SHA512Managed(), protocol => protocol.Args.SessionType.DH_SHA512),
- new DHSha(new SHA384Managed(), protocol => protocol.Args.SessionType.DH_SHA384),
- new DHSha(new SHA256Managed(), protocol => protocol.Args.SessionType.DH_SHA256),
- new DHSha(new SHA1Managed(), protocol => protocol.Args.SessionType.DH_SHA1),
+ new DHSha(SHA512.Create(), protocol => protocol.Args.SessionType.DH_SHA512),
+ new DHSha(SHA384.Create(), protocol => protocol.Args.SessionType.DH_SHA384),
+ new DHSha(SHA256.Create(), protocol => protocol.Args.SessionType.DH_SHA256),
+ new DHSha(SHA1.Create(), protocol => protocol.Args.SessionType.DH_SHA1),
} .ToArray();
/// <summary>
diff --git a/src/DotNetOpenAuth.OpenId/OpenId/HmacShaAssociation.cs b/src/DotNetOpenAuth.OpenId/OpenId/HmacShaAssociation.cs
index 6a681a0..278cb2c 100644
--- a/src/DotNetOpenAuth.OpenId/OpenId/HmacShaAssociation.cs
+++ b/src/DotNetOpenAuth.OpenId/OpenId/HmacShaAssociation.cs
@@ -28,22 +28,22 @@ namespace DotNetOpenAuth.OpenId {
new HmacSha {
CreateHasher = secretKey => new HMACSHA512(secretKey),
GetAssociationType = protocol => protocol.Args.SignatureAlgorithm.HMAC_SHA512,
- BaseHashAlgorithm = new SHA512Managed(),
+ BaseHashAlgorithm = SHA512.Create(),
},
new HmacSha {
CreateHasher = secretKey => new HMACSHA384(secretKey),
GetAssociationType = protocol => protocol.Args.SignatureAlgorithm.HMAC_SHA384,
- BaseHashAlgorithm = new SHA384Managed(),
+ BaseHashAlgorithm = SHA384.Create(),
},
new HmacSha {
CreateHasher = secretKey => new HMACSHA256(secretKey),
GetAssociationType = protocol => protocol.Args.SignatureAlgorithm.HMAC_SHA256,
- BaseHashAlgorithm = new SHA256Managed(),
+ BaseHashAlgorithm = SHA256.Create(),
},
new HmacSha {
CreateHasher = secretKey => new HMACSHA1(secretKey),
GetAssociationType = protocol => protocol.Args.SignatureAlgorithm.HMAC_SHA1,
- BaseHashAlgorithm = new SHA1Managed(),
+ BaseHashAlgorithm = SHA1.Create(),
},
} .ToArray();
diff --git a/src/DotNetOpenAuth.OpenId/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OpenId/Properties/AssemblyInfo.cs
index 96a45a1..c5226ed 100644
--- a/src/DotNetOpenAuth.OpenId/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OpenId/Properties/AssemblyInfo.cs
@@ -53,6 +53,7 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.RelyingParty.UI, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider.UI, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth")]
@@ -61,4 +62,5 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.RelyingParty.UI")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider.UI")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.OpenIdInfoCard.UI/Properties/AssemblyInfo.cs b/src/DotNetOpenAuth.OpenIdInfoCard.UI/Properties/AssemblyInfo.cs
index 3650b55..8700856 100644
--- a/src/DotNetOpenAuth.OpenIdInfoCard.UI/Properties/AssemblyInfo.cs
+++ b/src/DotNetOpenAuth.OpenIdInfoCard.UI/Properties/AssemblyInfo.cs
@@ -62,6 +62,7 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.AuthorizationServer, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.ResourceServer, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.Client, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.InfoCard")]
@@ -79,4 +80,5 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.AuthorizationServer")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.ResourceServer")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OAuth2.Client")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/src/DotNetOpenAuth.Test/App.config b/src/DotNetOpenAuth.Test/App.config
index 56c3ecd..d0eb34e 100644
--- a/src/DotNetOpenAuth.Test/App.config
+++ b/src/DotNetOpenAuth.Test/App.config
@@ -2,11 +2,11 @@
<configuration>
<configSections>
<section name="uri" type="System.Configuration.UriSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
- <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Messaging">
+ <sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
- <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
- <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Messaging" requirePermission="false" allowLocation="true" />
+ <section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
+ <section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
</sectionGroup>
</configSections>
diff --git a/src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj b/src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj
index 8d73cec..46556f7 100644
--- a/src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj
+++ b/src/DotNetOpenAuth.Test/DotNetOpenAuth.Test.csproj
@@ -183,6 +183,7 @@
</Reference>
<Reference Include="System.ServiceModel.Web" />
<Reference Include="System.Web" />
+ <Reference Include="System.Web.Abstractions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" Condition=" '$(ClrVersion)' == '2' " />
<Reference Include="System.Xml" />
<Reference Include="System.Xml.Linq">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
@@ -483,4 +484,4 @@
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="$(ProjectRoot)tools\DotNetOpenAuth.targets" />
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), EnlistmentInfo.targets))\EnlistmentInfo.targets" Condition=" '$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), EnlistmentInfo.targets))' != '' " />
-</Project> \ No newline at end of file
+</Project>
diff --git a/src/DotNetOpenAuth.Test/Messaging/MessagingUtilitiesTests.cs b/src/DotNetOpenAuth.Test/Messaging/MessagingUtilitiesTests.cs
index 79751ae..2a683ed 100644
--- a/src/DotNetOpenAuth.Test/Messaging/MessagingUtilitiesTests.cs
+++ b/src/DotNetOpenAuth.Test/Messaging/MessagingUtilitiesTests.cs
@@ -98,7 +98,7 @@ namespace DotNetOpenAuth.Test.Messaging {
[TestCase, ExpectedException(typeof(ArgumentNullException))]
public void ApplyHeadersToResponseNullAspNetResponse() {
- MessagingUtilities.ApplyHeadersToResponse(new WebHeaderCollection(), (HttpResponse)null);
+ MessagingUtilities.ApplyHeadersToResponse(new WebHeaderCollection(), (HttpResponseBase)null);
}
[TestCase, ExpectedException(typeof(ArgumentNullException))]
@@ -108,7 +108,7 @@ namespace DotNetOpenAuth.Test.Messaging {
[TestCase, ExpectedException(typeof(ArgumentNullException))]
public void ApplyHeadersToResponseNullHeaders() {
- MessagingUtilities.ApplyHeadersToResponse(null, new HttpResponse(new StringWriter()));
+ MessagingUtilities.ApplyHeadersToResponse(null, new HttpResponseWrapper(new HttpResponse(new StringWriter())));
}
[TestCase]
@@ -116,7 +116,7 @@ namespace DotNetOpenAuth.Test.Messaging {
var headers = new WebHeaderCollection();
headers[HttpResponseHeader.ContentType] = "application/binary";
- var response = new HttpResponse(new StringWriter());
+ var response = new HttpResponseWrapper(new HttpResponse(new StringWriter()));
MessagingUtilities.ApplyHeadersToResponse(headers, response);
Assert.AreEqual(headers[HttpResponseHeader.ContentType], response.ContentType);
diff --git a/src/DotNetOpenAuth.Test/Mocks/TestChannel.cs b/src/DotNetOpenAuth.Test/Mocks/TestChannel.cs
index 95fb90a..92fd9c6 100644
--- a/src/DotNetOpenAuth.Test/Mocks/TestChannel.cs
+++ b/src/DotNetOpenAuth.Test/Mocks/TestChannel.cs
@@ -25,6 +25,21 @@ namespace DotNetOpenAuth.Test.Mocks {
: base(messageTypeProvider, bindingElements) {
}
+ /// <summary>
+ /// Deserializes a dictionary of values into a message.
+ /// </summary>
+ /// <param name="fields">The dictionary of values that were read from an HTTP request or response.</param>
+ /// <param name="recipient">Information about where the message was directed. Null for direct response messages.</param>
+ /// <returns>
+ /// The deserialized message, or null if no message could be recognized in the provided data.
+ /// </returns>
+ /// <remarks>
+ /// This internal method exposes Receive directly to unit tests for easier deserialization of custom (possibly malformed) messages.
+ /// </remarks>
+ internal new IProtocolMessage Receive(Dictionary<string, string> fields, MessageReceivingEndpoint recipient) {
+ return base.Receive(fields, recipient);
+ }
+
protected override IDictionary<string, string> ReadFromResponseCore(IncomingWebResponse response) {
throw new NotImplementedException("ReadFromResponseInternal");
}
diff --git a/src/DotNetOpenAuth.Test/OAuth/ChannelElements/OAuthChannelTests.cs b/src/DotNetOpenAuth.Test/OAuth/ChannelElements/OAuthChannelTests.cs
index 57a2a74..64eef0e 100644
--- a/src/DotNetOpenAuth.Test/OAuth/ChannelElements/OAuthChannelTests.cs
+++ b/src/DotNetOpenAuth.Test/OAuth/ChannelElements/OAuthChannelTests.cs
@@ -41,7 +41,7 @@ namespace DotNetOpenAuth.Test.OAuth.ChannelElements {
this.channel.WebRequestHandler = this.webRequestHandler;
}
- [TestCase, ExpectedException(typeof(ArgumentNullException))]
+ [TestCase, ExpectedException(typeof(ArgumentException))]
public void CtorNullSigner() {
new OAuthConsumerChannel(null, this.nonceStore, new InMemoryTokenManager(), this.consumerSecuritySettings, new TestMessageFactory());
}
diff --git a/src/DotNetOpenAuth.Test/OpenId/ChannelElements/ExtensionsBindingElementTests.cs b/src/DotNetOpenAuth.Test/OpenId/ChannelElements/ExtensionsBindingElementTests.cs
index 0ef4bca..a4291d6 100644
--- a/src/DotNetOpenAuth.Test/OpenId/ChannelElements/ExtensionsBindingElementTests.cs
+++ b/src/DotNetOpenAuth.Test/OpenId/ChannelElements/ExtensionsBindingElementTests.cs
@@ -52,9 +52,9 @@ namespace DotNetOpenAuth.Test.OpenId.ChannelElements {
Assert.AreSame(this.factory, this.rpElement.ExtensionFactory);
}
- [TestCase, ExpectedException(typeof(ArgumentNullException))]
+ [TestCase]
public void PrepareMessageForSendingNull() {
- this.rpElement.ProcessOutgoingMessage(null);
+ Assert.IsNull(this.rpElement.ProcessOutgoingMessage(null));
}
/// <summary>
diff --git a/src/DotNetOpenAuth.Test/OpenId/ChannelElements/SigningBindingElementTests.cs b/src/DotNetOpenAuth.Test/OpenId/ChannelElements/SigningBindingElementTests.cs
index 955ea2d..22714a9 100644
--- a/src/DotNetOpenAuth.Test/OpenId/ChannelElements/SigningBindingElementTests.cs
+++ b/src/DotNetOpenAuth.Test/OpenId/ChannelElements/SigningBindingElementTests.cs
@@ -6,13 +6,16 @@
namespace DotNetOpenAuth.Test.OpenId.ChannelElements {
using System;
+ using System.Collections.Generic;
using System.Linq;
+ using DotNetOpenAuth.Messaging;
using DotNetOpenAuth.Messaging.Bindings;
using DotNetOpenAuth.OpenId;
using DotNetOpenAuth.OpenId.ChannelElements;
using DotNetOpenAuth.OpenId.Messages;
using DotNetOpenAuth.OpenId.Provider;
using DotNetOpenAuth.Test.Mocks;
+ using Moq;
using NUnit.Framework;
[TestFixture]
@@ -68,5 +71,37 @@ namespace DotNetOpenAuth.Test.OpenId.ChannelElements {
Assert.IsTrue(signedParameters.Contains("somesigned"));
Assert.IsFalse(signedParameters.Contains("someunsigned"));
}
+
+ /// <summary>
+ /// Regression test for bug #45 (https://github.com/AArnott/dotnetopenid/issues/45)
+ /// </summary>
+ [TestCase, ExpectedException(typeof(ProtocolException))]
+ public void MissingSignedParameter() {
+ var cryptoStore = new MemoryCryptoKeyStore();
+ byte[] associationSecret = Convert.FromBase64String("rsSwv1zPWfjPRQU80hciu8FPDC+GONAMJQ/AvSo1a2M=");
+ string handle = "{634477555066085461}{TTYcIg==}{32}";
+ cryptoStore.StoreKey(ProviderAssociationKeyStorage.PrivateAssociationBucket, handle, new CryptoKey(associationSecret, DateTime.UtcNow.AddDays(1)));
+
+ var signer = new ProviderSigningBindingElement(new ProviderAssociationKeyStorage(cryptoStore), new ProviderSecuritySettings());
+ var testChannel = new TestChannel(new OpenIdProviderMessageFactory());
+ signer.Channel = testChannel;
+
+ var buggyRPMessage = new Dictionary<string, string>() {
+ { "openid.assoc_handle", "{634477555066085461}{TTYcIg==}{32}" },
+ { "openid.claimed_id", "https://openid.stackexchange.com/user/f5e91123-e5b4-43c5-871f-5f276c75d31a" },
+ { "openid.identity", "https://openid.stackexchange.com/user/f5e91123-e5b4-43c5-871f-5f276c75d31a" },
+ { "openid.mode", "check_authentication" },
+ { "openid.op_endpoint", "https://openid.stackexchange.com/openid/provider" },
+ { "openid.response_nonce", "2011-08-01T00:32:10Zvdyt3efw" },
+ { "openid.return_to", "http://openid-consumer.appspot.com/finish?session_id=1543025&janrain_nonce=2011-08-01T00%3A32%3A09ZIPGz7D" },
+ { "openid.sig", "b0Rll6Kt1KKBWWBEg/qBvW3sQYtmhOUmpI0/UREBVZ0=" },
+ { "openid.signed", "claimed_id,identity,assoc_handle,op_endpoint,return_to,response_nonce,ns.sreg,sreg.email,sreg.fullname" },
+ { "openid.sreg.email", "kevin.montrose@stackoverflow.com" },
+ { "openid.sreg.fullname", "Kevin K Montrose" },
+ };
+ var message = (CheckAuthenticationRequest)testChannel.Receive(buggyRPMessage, new MessageReceivingEndpoint(OPUri, HttpDeliveryMethods.PostRequest));
+ var originalResponse = new IndirectSignedResponse(message, signer.Channel);
+ signer.ProcessIncomingMessage(originalResponse);
+ }
}
}
diff --git a/src/DotNetOpenAuth.Test/OpenId/Extensions/AttributeExchange/AttributeRequestTests.cs b/src/DotNetOpenAuth.Test/OpenId/Extensions/AttributeExchange/AttributeRequestTests.cs
index 5cc8ec1..3a7ecd7 100644
--- a/src/DotNetOpenAuth.Test/OpenId/Extensions/AttributeExchange/AttributeRequestTests.cs
+++ b/src/DotNetOpenAuth.Test/OpenId/Extensions/AttributeExchange/AttributeRequestTests.cs
@@ -25,7 +25,7 @@ namespace DotNetOpenAuth.Test.OpenId.Extensions {
new AttributeRequest(string.Empty);
}
- [TestCase, ExpectedException(typeof(ArgumentException))]
+ [TestCase, ExpectedException(typeof(ArgumentNullException))]
public void CtorNullTypeUri() {
new AttributeRequest(null);
}
diff --git a/src/DotNetOpenAuth.Test/OpenId/IdentifierTests.cs b/src/DotNetOpenAuth.Test/OpenId/IdentifierTests.cs
index 01e2fdc..5d3a15e 100644
--- a/src/DotNetOpenAuth.Test/OpenId/IdentifierTests.cs
+++ b/src/DotNetOpenAuth.Test/OpenId/IdentifierTests.cs
@@ -75,7 +75,7 @@ namespace DotNetOpenAuth.Test.OpenId {
Assert.AreEqual(this.uri, ((UriIdentifier)id).Uri.AbsoluteUri);
}
- [TestCase, ExpectedException(typeof(ArgumentException))]
+ [TestCase, ExpectedException(typeof(ArgumentNullException))]
public void ParseNull() {
Identifier.Parse(null);
}
diff --git a/src/DotNetOpenAuth.Test/OpenId/Messages/IndirectSignedResponseTests.cs b/src/DotNetOpenAuth.Test/OpenId/Messages/IndirectSignedResponseTests.cs
index 406a48b..848c849 100644
--- a/src/DotNetOpenAuth.Test/OpenId/Messages/IndirectSignedResponseTests.cs
+++ b/src/DotNetOpenAuth.Test/OpenId/Messages/IndirectSignedResponseTests.cs
@@ -125,7 +125,7 @@ namespace DotNetOpenAuth.Test.OpenId.Messages {
}
}
- [TestCase, ExpectedException(typeof(ArgumentException))]
+ [TestCase, ExpectedException(typeof(ArgumentNullException))]
public void GetReturnToArgumentNullKey() {
this.response.GetReturnToArgument(null);
}
diff --git a/src/DotNetOpenAuth.Test/OpenId/RelyingParty/IdentifierDiscoveryResultTests.cs b/src/DotNetOpenAuth.Test/OpenId/RelyingParty/IdentifierDiscoveryResultTests.cs
index 896cf57..6d2de71 100644
--- a/src/DotNetOpenAuth.Test/OpenId/RelyingParty/IdentifierDiscoveryResultTests.cs
+++ b/src/DotNetOpenAuth.Test/OpenId/RelyingParty/IdentifierDiscoveryResultTests.cs
@@ -143,7 +143,7 @@ namespace DotNetOpenAuth.Test.OpenId.RelyingParty {
Assert.IsFalse(se.IsTypeUriPresent("http://someother"));
}
- [TestCase, ExpectedException(typeof(ArgumentException))]
+ [TestCase, ExpectedException(typeof(ArgumentNullException))]
public void IsTypeUriPresentNull() {
IdentifierDiscoveryResult se = IdentifierDiscoveryResult.CreateForClaimedIdentifier(this.claimedXri, this.userSuppliedXri, this.localId, new ProviderEndpointDescription(this.providerEndpoint, this.v20TypeUris), this.servicePriority, this.uriPriority);
se.IsTypeUriPresent(null);
@@ -161,7 +161,7 @@ namespace DotNetOpenAuth.Test.OpenId.RelyingParty {
se.IsExtensionSupported((Type)null);
}
- [TestCase, ExpectedException(typeof(ArgumentException))]
+ [TestCase, ExpectedException(typeof(ArgumentNullException))]
public void IsTypeUriPresentNullString() {
var se = IdentifierDiscoveryResult.CreateForProviderIdentifier(OPUri, new ProviderEndpointDescription(OPUri, this.v20TypeUris), null, null);
se.IsTypeUriPresent((string)null);
diff --git a/src/DotNetOpenAuth.Test/OpenId/UriIdentifierTests.cs b/src/DotNetOpenAuth.Test/OpenId/UriIdentifierTests.cs
index e6bed2f..427f890 100644
--- a/src/DotNetOpenAuth.Test/OpenId/UriIdentifierTests.cs
+++ b/src/DotNetOpenAuth.Test/OpenId/UriIdentifierTests.cs
@@ -31,7 +31,7 @@ namespace DotNetOpenAuth.Test.OpenId {
new UriIdentifier((Uri)null);
}
- [TestCase, ExpectedException(typeof(ArgumentException))]
+ [TestCase, ExpectedException(typeof(ArgumentNullException))]
public void CtorNullString() {
new UriIdentifier((string)null);
}
diff --git a/src/DotNetOpenAuth.Test/OpenId/XriIdentifierTests.cs b/src/DotNetOpenAuth.Test/OpenId/XriIdentifierTests.cs
index 0c80821..e2acf34 100644
--- a/src/DotNetOpenAuth.Test/OpenId/XriIdentifierTests.cs
+++ b/src/DotNetOpenAuth.Test/OpenId/XriIdentifierTests.cs
@@ -22,7 +22,7 @@ namespace DotNetOpenAuth.Test.OpenId {
base.SetUp();
}
- [TestCase, ExpectedException(typeof(ArgumentException))]
+ [TestCase, ExpectedException(typeof(ArgumentNullException))]
public void CtorNull() {
new XriIdentifier(null);
}
diff --git a/src/DotNetOpenAuth.sln b/src/DotNetOpenAuth.sln
index b7a2b39..505ce7e 100644
--- a/src/DotNetOpenAuth.sln
+++ b/src/DotNetOpenAuth.sln
@@ -9,7 +9,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
..\doc\README.Bin.html = ..\doc\README.Bin.html
..\doc\README.html = ..\doc\README.html
..\samples\README.html = ..\samples\README.html
- ..\nuget\content\web.config.transform = ..\nuget\content\web.config.transform
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Specs", "Specs", "{CD57219F-24F4-4136-8741-6063D0D7A031}"
diff --git a/src/DotNetOpenAuth/DotNetOpenAuth.proj b/src/DotNetOpenAuth/DotNetOpenAuth.proj
index 3a9f222..0ae9c17 100644
--- a/src/DotNetOpenAuth/DotNetOpenAuth.proj
+++ b/src/DotNetOpenAuth/DotNetOpenAuth.proj
@@ -18,7 +18,7 @@
<ItemGroup>
<ProjectReference Include="@(ProductProjects)">
- <PrimaryProductOutput>true</PrimaryProductOutput>
+ <PrimaryProductOutput Condition=" '%(MergeIntoUnifiedAssembly)' != 'false' ">true</PrimaryProductOutput>
</ProjectReference>
<SignDependsOn Include="BuildUnifiedProduct" />
<DelaySignedAssemblies Include="$(ILMergeOutputContractAssembly)"
@@ -26,16 +26,11 @@
</ItemGroup>
<Target Name="BuildILMergeInputs" DependsOnTargets="ResolveReferences">
- <PropertyGroup>
- <!-- The ILMerge task doesn't properly quote the path. -->
- <ILMergeTargetPlatformDirectory Condition=" '$(ClrVersion)' == '4' ">"$(MSBuildProgramFiles32)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0"</ILMergeTargetPlatformDirectory>
- </PropertyGroup>
-
<ItemGroup>
<ILMergeProductInputAssemblies Include="@(ReferencePath)"
Condition=" '%(ReferencePath.PrimaryProductOutput)' == 'true' "/>
<ILMergeInputContractAssemblies Include="@(ILMergeProductInputAssemblies->'%(RootDir)%(Directory)CodeContracts\%(FileName).Contracts%(Extension)')"
- Condition=" '%(FileName)' != 'Microsoft.Contracts' "/>
+ Condition=" '%(FileName)' != 'Microsoft.Contracts' "/>
</ItemGroup>
</Target>
@@ -50,7 +45,7 @@
ExcludeFile="$(ProjectRoot)ILMergeInternalizeExceptions.txt"
InputAssemblies="@(ILMergeInputContractAssemblies)"
OutputFile="$(ILMergeOutputContractAssembly)"
- SearchDirectories="$(OutputPath)"
+ SearchDirectories="$(OutputPath);@(ILMergeSearchDirectories)"
KeyFile="$(PublicKeyFile)"
DelaySign="true"
ToolPath="$(ProjectRoot)tools\ILMerge"
@@ -66,6 +61,7 @@
ExcludeFile="$(ProjectRoot)ILMergeInternalizeExceptions.txt"
InputAssemblies="@(ILMergeProductInputAssemblies);@(ILMergeInputAssemblies)"
OutputFile="$(ILMergeOutputAssembly)"
+ SearchDirectories="@(ILMergeSearchDirectories)"
KeyFile="$(PublicKeyFile)"
DelaySign="true"
XmlDocumentation="true"
diff --git a/src/Org.Mentalis.Security.Cryptography/Properties/AssemblyInfo.cs b/src/Org.Mentalis.Security.Cryptography/Properties/AssemblyInfo.cs
index a167166..45a2fda 100644
--- a/src/Org.Mentalis.Security.Cryptography/Properties/AssemblyInfo.cs
+++ b/src/Org.Mentalis.Security.Cryptography/Properties/AssemblyInfo.cs
@@ -50,9 +50,11 @@ using System.Web.UI;
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.RelyingParty, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test, PublicKey=0024000004800000940000000602000000240000525341310004000001000100AD093C3765257C89A7010E853F2C7C741FF92FA8ACE06D7B8254702CAD5CF99104447F63AB05F8BB6F51CE0D81C8C93D2FCE8C20AAFF7042E721CBA16EAAE98778611DED11C0ABC8900DC5667F99B50A9DADEC24DBD8F2C91E3E8AD300EF64F1B4B9536CEB16FB440AF939F57624A9B486F867807C649AE4830EAB88C6C03998")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]
#else
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.Provider")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.OpenId.RelyingParty")]
[assembly: InternalsVisibleTo("DotNetOpenAuth.Test")]
+[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
#endif
diff --git a/tools/DotNetOpenAuth.Versioning.targets b/tools/DotNetOpenAuth.Versioning.targets
index cbcb76d..7ea18b1 100644
--- a/tools/DotNetOpenAuth.Versioning.targets
+++ b/tools/DotNetOpenAuth.Versioning.targets
@@ -6,6 +6,9 @@
<PropertyGroup>
<VersionCsFile>$(IntermediatePath)\$(AssemblyName).Version.cs</VersionCsFile>
<NoWarn>$(NoWarn);1607</NoWarn>
+
+ <!-- PrereleaseVersion can be any alphanumeric identifier with a preceding hyphen, or blank. -->
+ <PrereleaseVersion>-beta</PrereleaseVersion>
</PropertyGroup>
<UsingTask AssemblyFile="$(ProjectRoot)lib\MSBuild.Community.Tasks.dll" TaskName="AssemblyInfo"/>
@@ -16,15 +19,25 @@
GitRepoRoot="$(ProjectRoot)">
<Output TaskParameter="Version" PropertyName="BuildVersion" />
<Output TaskParameter="SimpleVersion" PropertyName="BuildVersionSimple" />
- <Output TaskParameter="GitCommitId" PropertyName="AssemblyInformationalVersion" />
+ <Output TaskParameter="GitCommitId" PropertyName="GitCommitId" />
+ <Output TaskParameter="BuildNumber" PropertyName="BuildNumber" />
</GetBuildVersion>
<PropertyGroup>
<!-- In TeamCity, the build agent doesn't get the .git directory, but the commit id is available by other means. -->
- <AssemblyInformationalVersion Condition=" '$(AssemblyInformationalVersion)' == '' ">$(BUILD_VCS_NUMBER)</AssemblyInformationalVersion>
+ <GitCommitId Condition=" '$(GitCommitId)' == '' ">$(BUILD_VCS_NUMBER)</GitCommitId>
+
+ <SemVerBuildSuffix>+build.$(BuildNumber).$(GitCommitId.Substring(0,10))</SemVerBuildSuffix>
+ <AssemblyInformationalVersion>$(BuildVersionSimple)$(PrereleaseVersion)$(SemVerBuildSuffix)</AssemblyInformationalVersion>
+
+ <!-- When NuGet supports SemVer 2.0, we can set NuGetPackageVersion to be the same as $(AssemblyInformationalVersion) -->
+ <NuGetPackageVersion Condition=" '$(PrereleaseVersion)' == '' ">$(BuildVersion)</NuGetPackageVersion>
+ <NuGetPackageVersion Condition=" '$(PrereleaseVersion)' != '' ">$(BuildVersionSimple)$(PrereleaseVersion)</NuGetPackageVersion>
</PropertyGroup>
<Warning Condition=" '$(AssemblyInformationalVersion)' == '' " Text="Unable to determine the git HEAD commit ID to use for informational version number." />
- <Message Condition=" '$(AssemblyInformationalVersion)' != '' " Text="Building version $(BuildVersion) from commit $(AssemblyInformationalVersion)"/>
+ <Message Condition=" '$(AssemblyInformationalVersion)' != '' " Text="Building version $(BuildVersion) from commit $(GitCommitId)"/>
<Message Condition=" '$(AssemblyInformationalVersion)' == '' " Text="Building version $(BuildVersion)"/>
+ <Message Importance="low" Text="AssemblyInformationalVersion: $(AssemblyInformationalVersion)" />
+ <Message Importance="low" Text="NuGetPackageVersion: $(NuGetPackageVersion)" />
</Target>
<Target Name="BeforeBuild" DependsOnTargets="GetBuildVersion">
diff --git a/tools/DotNetOpenAuth.automated.targets b/tools/DotNetOpenAuth.automated.targets
index 034fa23..d9a5e45 100644
--- a/tools/DotNetOpenAuth.automated.targets
+++ b/tools/DotNetOpenAuth.automated.targets
@@ -15,7 +15,7 @@
<Delete Files="@(FilesToClean)" />
<RemoveDir Directories="@(DirectoriesToClean)" />
- <MSBuild Projects="@(ProjectsToClean)" Targets="%(ProjectsToClean.Targets)" BuildInParallel="$(BuildInParallel)" />
+ <MSBuild Projects="@(ProjectsToClean)" Targets="%(ProjectsToClean.Targets)" BuildInParallel="$(BuildInParallel)" Properties="%(ProjectsToClean.Properties)" />
</Target>
<Target Name="_SetDropProperties" DependsOnTargets="GetBuildVersion">
diff --git a/tools/DotNetOpenAuth.props b/tools/DotNetOpenAuth.props
index d23f5f2..1455d68 100644
--- a/tools/DotNetOpenAuth.props
+++ b/tools/DotNetOpenAuth.props
@@ -39,10 +39,24 @@
<ImportCodeContractsFromToolset>true</ImportCodeContractsFromToolset>
</PropertyGroup>
+ <PropertyGroup Condition=" '$(ClrVersion)' == '4' ">
+ <ILMergeTargetPlatformDirectory>$(MSBuildProgramFiles32)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0</ILMergeTargetPlatformDirectory>
+ </PropertyGroup>
+ <ItemGroup Condition=" '$(ClrVersion)' == '4' ">
+ <ILMergeSearchDirectories Include="$(ILMergeTargetPlatformDirectory)" />
+ </ItemGroup>
+
+ <ItemGroup Condition=" '$(ClrVersion)' != '4' ">
+ <ILMergeSearchDirectories Include="
+ $(MSBuildProgramFiles32)\Reference Assemblies\Microsoft\Framework\v3.0;
+ $(MSBuildProgramFiles32)\Reference Assemblies\Microsoft\Framework\v3.5;
+ " />
+ </ItemGroup>
+
<ItemGroup>
<ProductProjectNames Include="
- DotNetOpenAuth.Messaging;
- DotNetOpenAuth.Messaging.UI;
+ DotNetOpenAuth.Core;
+ DotNetOpenAuth.Core.UI;
Mono.Math;
Org.Mentalis.Security.Cryptography;
DotNetOpenAuth.OpenId;
@@ -51,11 +65,6 @@
DotNetOpenAuth.OpenId.Provider.UI;
DotNetOpenAuth.OpenId.RelyingParty;
DotNetOpenAuth.OpenId.RelyingParty.UI;
- DotNetOpenAuth.OAuth2;
- DotNetOpenAuth.OAuth2.AuthorizationServer;
- DotNetOpenAuth.OAuth2.Client;
- DotNetOpenAuth.OAuth2.Client.UI;
- DotNetOpenAuth.OAuth2.ResourceServer;
DotNetOpenAuth.OAuth;
DotNetOpenAuth.OAuth.Consumer;
DotNetOpenAuth.OAuth.ServiceProvider;
@@ -63,6 +72,15 @@
DotNetOpenAuth.InfoCard.UI;
DotNetOpenAuth.OpenIdInfoCard.UI;
" />
+ <ProductProjectNames Include="
+ DotNetOpenAuth.OAuth2;
+ DotNetOpenAuth.OAuth2.AuthorizationServer;
+ DotNetOpenAuth.OAuth2.Client;
+ DotNetOpenAuth.OAuth2.Client.UI;
+ DotNetOpenAuth.OAuth2.ResourceServer;
+ ">
+ <MergeIntoUnifiedAssembly Condition=" '$(IncludeOAuth2)' != 'true' ">false</MergeIntoUnifiedAssembly>
+ </ProductProjectNames>
<ProductProjects Include="@(ProductProjectNames->'$(ProjectRoot)src\%(Identity)\%(Identity).csproj')"/>
<ProjectReferencesToRemove Include="@(ProductProjectNames->'..\..\src\%(Identity)\%(Identity).csproj')" />
@@ -81,4 +99,4 @@
</CheckAdminRights>
<Message Text="IsElevated = $(IsElevated)" />
</Target>
-</Project> \ No newline at end of file
+</Project>
diff --git a/tools/DotNetOpenAuth.targets b/tools/DotNetOpenAuth.targets
index 6a8689e..3765455 100644
--- a/tools/DotNetOpenAuth.targets
+++ b/tools/DotNetOpenAuth.targets
@@ -123,5 +123,7 @@
</MSBuild>
</Target>
+ <Target Name="GetOutputPath" Outputs="$(OutputPath)" />
+
<Import Condition="'$(CodeContractsImported)' != 'true' AND ('$(DontImportCodeContracts)' != 'true' or '$(ImportCodeContractsFromToolset)' == 'true')" Project="$(CodeContractsInstallDir)\MsBuild\v4.0\Microsoft.CodeContracts.targets"/>
</Project>
diff --git a/tools/NuGet/NuGet.exe b/tools/NuGet/NuGet.exe
index 907d24d..74d0d57 100644
--- a/tools/NuGet/NuGet.exe
+++ b/tools/NuGet/NuGet.exe
Binary files differ
diff --git a/tools/drop.proj b/tools/drop.proj
index e48b382..69a636c 100644
--- a/tools/drop.proj
+++ b/tools/drop.proj
@@ -50,7 +50,7 @@
$(ILMergeOutputAssemblyDirectory)$(ProductName).xml;
$(OutputPath)CodeContracts\$(SignedSubPath)$(ProductName).Contracts.???;
$(ProjectRoot)Doc\README.Bin.html;
- $(ProjectRoot)src\$(ProductName).Messaging\Configuration\$(ProductName).xsd;
+ $(ProjectRoot)src\$(ProductName).Core\Configuration\$(ProductName).xsd;
" />
<DropSatelliteSourceFiles Include="$(OutputPath)**\$(SignedSubPath)$(ProductName).resources.dll" />
<DropSatelliteSourceFiles>