Hello,

> > I'm unsure whether this is a problem with Mono or with Liquid's library, so 
> > I'm
> > posting here in case this rings a bell with someone. The Liquid code runs 
> > fine
> > on Windows under .NET 2.0. The fact that it is in the Liquid "resigtration" 
> > code
> > may be a key piece of evidence, or it may not! They told me that there is no
> > reason my code should not run under Mono - that my licensing info is self
> > contained in the built IL binaries.
> 
> Considering that there's some sort of license validation embedded in
> the Liquid XML runtime, it's pretty likely that they've also
> obfuscated the assembly. Some obfuscators use particular IL patterns
> that are invalid according to the CLI spec, but are "overlooked" by
> .NET dues to limitations in its IL validation. They're essentially
> exploiting .NET bugs in order to confuse decompilers. The downside is
> that assemblies that have been obfuscated using these techniques
> usually don't work on Mono, which doesn't have the same
> bugs/limitations -- and they might not even work on future versions of
> .NET.

At one point we had this discussion at ECMA, and I believe answer from
Microsoft was that they considered accepting harmless invalid CIL code
to be a value add feature of Microsoft's implementation of the CIL.

Miguel.

_______________________________________________
Mono-list maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-list

Reply via email to