More VerificationException in unified version 4.0.2

70 views
Skip to first unread message

Richard Collette

unread,
May 15, 2012, 11:18:51 AM5/15/12
to dotnet...@googlegroups.com
I updated to 4.0.2.xx and I am not getting the following verification exception when the RP calls the OP server.aspx   The odd thing about this one is that a generic IDictionary is being returned rather than an array, so I'm not sure why the verificationexception occurs in this instance.

I'm also curious... can pdb files be included in nuget pacakage installs (unified in this case), so that we can get line numbers in exceptions like this?   I'm not sure that there is a way to generate a pdb file with a unified assembly anyway.

2012-05-15 10:36:28,605 (GMT-4) [5] ERROR OpenIdProviderWebForms.Global - An unhandled exception was raised. Details follow: System.Web.HttpUnhandledException (0x80004005): Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.Security.VerificationException: Operation could destabilize the runtime.
   at DotNetOpenAuth.OpenId.Messages.IndirectSignedResponse.GetSignedMessageParts(Channel channel)
   at DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement.GetExtensionsDictionary(IProtocolMessage message, Boolean ignoreUnsigned)
   at DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement.<GetExtensions>d__a.MoveNext()
   at DotNetOpenAuth.OpenId.ChannelElements.ExtensionsBindingElement.ProcessIncomingMessage(IProtocolMessage message)
   at DotNetOpenAuth.Messaging.Channel.ProcessIncomingMessage(IProtocolMessage message)
   at DotNetOpenAuth.OpenId.ChannelElements.OpenIdChannel.ProcessIncomingMessage(IProtocolMessage message)
   at DotNetOpenAuth.Messaging.Channel.ReadFromRequest(HttpRequestBase httpRequest)
   at DotNetOpenAuth.OpenId.Provider.OpenIdProvider.GetRequest(HttpRequestBase httpRequestInfo)
   at DotNetOpenAuth.OpenId.Provider.OpenIdProvider.GetRequest()
   at DotNetOpenAuth.OpenId.Provider.ProviderEndpoint.OnLoad(EventArgs e)
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.HandleError(Exception e)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.ProcessRequest()
   at System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context)
   at System.Web.UI.Page.ProcessRequest(HttpContext context)
   at ASP.server_aspx.ProcessRequest(HttpContext context) in c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\2bc34c16\58b665cd\App_Web_21a4a4kw.2.cs:line 0
   at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

Richard Collette

unread,
May 15, 2012, 11:35:46 AM5/15/12
to dotnet...@googlegroups.com
From this site:
http://srndolha.wordpress.com/2007/07/02/generic-interfaces-dotfuscator-ce-verificationexception/

Never do these together:
  • Add multiple (at least 2) overloaded methods, like in this code example:
    Check(IDictionary<KeyType1, ValueType>) {…}
    Check(IDictionary<KeyType2, ValueType>) {…}
Is it possible this scenario exists in the library either directly or through some inheritance chain?

Another article that I had mentioned previously but did not have the URL handy.
http://www.mattwrock.com/post/2012/02/03/VerificationException-%E2%80%9COperation-could-destabilize-the-runtime%E2%80%9D-An-exception-with-a-bark-much-worse-than-its-bite.aspx

Andrew Arnott

unread,
May 15, 2012, 11:56:04 AM5/15/12
to dotnet...@googlegroups.com
Hi Richard,

Thanks for reporting this.  Can you please file an issue that includes everything in your first email?

We do periodically run peverify.exe and DNOA doesn't have any verification errors (you'll see a bunch if you don't have all the assemblies in the same directory, however), at least last I checked.  But in spite of that, we do see these exceptions pop up at random places periodically so as they come in, we fix 'em.  We should be able to get this one fixed in v4.0.3.

As for the generic overloads you mentioned, the link you point to says that the assembly must be dotfuscated as well, which DNOA does not do.   So it seems irrelevant.  

--
Andrew Arnott
"I [may] not agree with what you have to say, but I'll defend to the death your right to say it." - S. G. Tallentyre


--
You received this message because you are subscribed to the Google Groups "DotNetOpenAuth" group.
To view this discussion on the web visit https://groups.google.com/d/msg/dotnetopenid/-/cRzE4BR9nkQJ.

To post to this group, send email to dotnet...@googlegroups.com.
To unsubscribe from this group, send email to dotnetopenid...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/dotnetopenid?hl=en.

Konstantin Tarkus

unread,
May 26, 2013, 6:09:01 PM5/26/13
to dotnet...@googlegroups.com
It seems like this error takes place when IntelliTrace is turned on for the application.

On Sunday, May 26, 2013 4:32:16 AM UTC+4, Konstantin Tarkus wrote:
I have the same issue with DotNetOpenAuth 4.3.0, ASP.NET MVC 4 App hosted in Windows Azure (as a cloud service)

Server Error in '/' Application.

Operation could destabilize the runtime.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Security.VerificationException: Operation could destabilize the runtime.

Reply all
Reply to author
Forward
0 new messages