[Mono-dev] Re: new test framework works on dotnet

2006-05-18 Thread Robert Jordan

Hi,


Some tests pass on Mono, but some of them need more effort. Sometimes
mono vm stucks, I worked around that by adding Sleep at the beginning of
each test. Some tests still fail.


Mhm, very strange.

Could you send a QUIT signal to the Mono process when it hangs?  This
will help pinpoint.


Maybe it's the appdomain unloading issue. Is Helper.Unload()
really necessary?

Robert

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


AW: [Mono-dev] Mono remoting on an embedded arm system

2006-05-18 Thread FALE(Leopold Faschalek)
 Von: Miguel de Icaza [mailto:[EMAIL PROTECTED] 
 Gesendet: Donnerstag, 18. Mai 2006 01:15
 An: FALE(Leopold Faschalek)
 Cc: mono-devel-list@lists.ximian.com
 Betreff: Re: [Mono-dev] Mono remoting on an embedded arm system
 
 hello,
 
  we are running mono 1.1.14 on an embedded arm system with remoting 
  services to communicate with a host system.
 
 This does not ring any bells;   Could you cook a small test 
 case, maybe
 include the exception, stack traces produced?
 
Hello,

I have made 3 runs with different debug/trace options
1) # mono --debug server.exe
2) # mono --trace=CommonLib --debug server.exe
3) # mono --trace=N:System.Runtime.Remoting --debug server.exe

In the 3. trace you see that RemotingServices:InternalExecute() which
has a 
try/catch block, doesn't resume execution.

Could you give me information to produce more infos on the exception
handling?

I append also the 3 sourcefiles

Greetings Leopold


== OUTPUT 1
==
# mono --debug server.exe
creating channel at port 9000
registering channel
Starting Server
Server serving at port 9000...
InfoDisplay.Show was called
toDevice called

Unhandled Exception: System.Exception: Hello World!
in [0x00042] (at /CommonLib.cs:25) CommonLib.InfoDisplay:toDevice (Byte
bitsToSet)
in [0xc] (at /CommonLib.cs:12) CommonLib.InfoDisplay:Show (Byte
bitsToSet)
in 0x0 unknown method

== OUTPUT 2
==
# mono --trace=CommonLib server.exe
ENTER: (wrapper remoting-invoke-with-check) CommonLib.InfoDisplay:.ctor
()() ip: (nil)
. ENTER: CommonLib.InfoDisplay:.ctor ()() ip: (nil)
. LEAVE: CommonLib.InfoDisplay:.ctor ()
LEAVE: (wrapper remoting-invoke-with-check) CommonLib.InfoDisplay:.ctor
()
creating channel at port 9000
EXCEPTION handling: FormatException
EXCEPTION handling: FormatException
EXCEPTION handling: FormatException
registering channel
Starting Server
Server serving at port 9000...
ENTER: CommonLib.InfoDisplay:Show (byte)() ip: (nil)
InfoDisplay.Show was called
. ENTER: CommonLib.InfoDisplay:toDevice (byte)() ip: (nil)
toDevice called
EXCEPTION handling: Exception

Unhandled Exception: System.Exception: Hello World!
in 0x000e0 CommonLib.InfoDisplay:toDevice (Byte bitsToSet)
in 0x00057 CommonLib.InfoDisplay:Show (Byte bitsToSet)
in 0x0 unknown method
== OUTPUT 3
==
# mono --trace=N:System.Runtime.Remoting --debug server.exe
snip/
ENTER: System.Runtime.Remoting.RemotingServices:SetMessageTargetIdentity
(System.Runtime.Remoting.Messaging.IMessage,)
LEAVE: System.Runtime.Remoting.RemotingServices:SetMessageTargetIdentity
(System.Runtime.Remoting.Messaging.IMessage,)
ENTER: System.Runtime.Remoting.RemotingServices:GetMessageTargetIdentity
(System.Runtime.Remoting.Messaging.IMessage))
LEAVE: System.Runtime.Remoting.RemotingServices:GetMessageTargetIdentity
(System.Runtime.Remoting.Messaging.IMessage)]
ENTER: System.Runtime.Remoting.ServerIdentity:get_Context ()() ip: (nil)
LEAVE: System.Runtime.Remoting.ServerIdentity:get_Context
()[System.Runtime.Remoting.Contexts.Context:0x291fc0]
ENTER: System.Runtime.Remoting.ServerIdentity:get_Context ()() ip: (nil)
LEAVE: System.Runtime.Remoting.ServerIdentity:get_Context
()[System.Runtime.Remoting.Contexts.Context:0x291fc0]
ENTER: System.Runtime.Remoting.RemotingServices:GetMessageTargetIdentity
(System.Runtime.Remoting.Messaging.IMessage))
LEAVE: System.Runtime.Remoting.RemotingServices:GetMessageTargetIdentity
(System.Runtime.Remoting.Messaging.IMessage)]
ENTER:
System.Runtime.Remoting.ClientActivatedIdentity:SyncObjectProcessMessage
(System.Runtime.Remoting.Messaging.IM)
. ENTER: (wrapper managed-to-native)
System.Runtime.Remoting.RemotingServices:IsTransparentProxy (object)()
ip: (nil)
. LEAVE: (wrapper managed-to-native)
System.Runtime.Remoting.RemotingServices:IsTransparentProxy
(object)FALSE
. ENTER:
System.Runtime.Remoting.RemotingServices:GetMessageTargetIdentity
(System.Runtime.Remoting.Messaging.IMessag)
. LEAVE:
System.Runtime.Remoting.RemotingServices:GetMessageTargetIdentity
(System.Runtime.Remoting.Messaging.IMessag]
. ENTER: System.Runtime.Remoting.ServerIdentity:get_Lease ()() ip: (nil)
. LEAVE: System.Runtime.Remoting.ServerIdentity:get_Lease
()[System.Runtime.Remoting.Lifetime.Lease:0x25be40]
. ENTER:
System.Runtime.Remoting.RemotingServices:GetMessageTargetIdentity
(System.Runtime.Remoting.Messaging.IMessag)
. LEAVE:
System.Runtime.Remoting.RemotingServices:GetMessageTargetIdentity
(System.Runtime.Remoting.Messaging.IMessag]
. ENTER: System.Runtime.Remoting.Identity:NotifyServerDynamicSinks
(bool,System.Runtime.Remoting.Messaging.IMessage,b)
. LEAVE: System.Runtime.Remoting.Identity:NotifyServerDynamicSinks
(bool,System.Runtime.Remoting.Messaging.IMessage,b)
. ENTER: System.Runtime.Remoting.RemotingServices:InternalExecuteMessage

[Mono-dev] DES problem

2006-05-18 Thread Arnhoffer Károly
Hi,

There is a little difference between .NET and Mono. When I call the routine 
below in .NET I get the results:

True
True

With Mono it says:

False
True.

Is it possible to set this CanReuseTransform property to true and reuse the 
transform once again or shall I reinitialize it every time? (I found that with 
Mono I can not decrypt two or more times with the same ICryptoTransform. I get 
different results with same inputs.)

The code snippet:

Private mobjEncryptTransform As ICryptoTransform
Private mobjDecryptTransform As ICryptoTransform

Private Function InitTripleDESCSP(ByVal tbytaDESKey As Byte(), ByVal 
tbytaDESIV As Byte(), Optional ByVal tlogForceInit As Boolean = False) As 
Boolean
Dim lobjTripleDESCSP As TripleDESCryptoServiceProvider
Try
If lobjTripleDESCSP Is Nothing OrElse mobjDecryptTransform Is 
Nothing OrElse mobjEncryptTransform Is Nothing OrElse tlogForceInit Then
lobjTripleDESCSP = New TripleDESCryptoServiceProvider()
mobjDecryptTransform = 
lobjTripleDESCSP.CreateDecryptor(tbytaDESKey, tbytaDESIV)
mobjEncryptTransform = 
lobjTripleDESCSP.CreateEncryptor(tbytaDESKey, tbytaDESIV)

Console.WriteLine(mobjDecryptTransform.CanReuseTransform)

Console.WriteLine(mobjDecryptTransform.CanTransformMultipleBlocks)
End If
Return True
Catch ex As Exception
End Try
End Function
___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


AW: [Mono-dev] Mono remoting on an embedded arm system

2006-05-18 Thread FALE(Leopold Faschalek)
Hello,

I looked at the 4th trace on x86 and arm and found 
an interesting difference. When the exception on the
x86 is handled it has 5 stack frames and produces
at the end a new RemoteException with 3 stackframes
which is sent to the client.

On the arm the exception has only 3 stack frames
and is not catched by the remoting system.
So maybe the failor is in the mono runtime InternalExecute()
Function

Hope this helpes to find the bug

Greetings Leopold

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


Re: [Mono-dev] DES problem

2006-05-18 Thread Sebastien Pouliot
Hello Arnhoffer,

Your code should *always* check for CanReuseTransform (and should also
check for CanTransformMultipleBlock if it's not using a CryptoStream)
and, if false, re-create the transform.

The reason is the .NET crypto classes are pluggable - so it's possible
that another implementation, or a future version of the FX, will change
those values. Checking those values will make your code resistant to
such changes and more adaptable to other algorithms or different
implementations.

On Thu, 2006-05-18 at 13:28 +0200, Arnhoffer Károly wrote:
 Hi,
 
 There is a little difference between .NET and Mono. When I call the routine 
 below in .NET I get the results:
 
 True
 True
 
 With Mono it says:
 
 False
 True.
 
 Is it possible to set this CanReuseTransform property to true and reuse the 
 transform once again or shall I reinitialize it every time? (I found that 
 with Mono I can not decrypt two or more times with the same ICryptoTransform. 
 I get different results with same inputs.)
 
 The code snippet:
 
 Private mobjEncryptTransform As ICryptoTransform
 Private mobjDecryptTransform As ICryptoTransform
 
 Private Function InitTripleDESCSP(ByVal tbytaDESKey As Byte(), ByVal 
 tbytaDESIV As Byte(), Optional ByVal tlogForceInit As Boolean = False) As 
 Boolean
 Dim lobjTripleDESCSP As TripleDESCryptoServiceProvider
 Try
 If lobjTripleDESCSP Is Nothing OrElse mobjDecryptTransform Is 
 Nothing OrElse mobjEncryptTransform Is Nothing OrElse tlogForceInit Then
 lobjTripleDESCSP = New TripleDESCryptoServiceProvider()
 mobjDecryptTransform = 
 lobjTripleDESCSP.CreateDecryptor(tbytaDESKey, tbytaDESIV)
 mobjEncryptTransform = 
 lobjTripleDESCSP.CreateEncryptor(tbytaDESKey, tbytaDESIV)
 
 Console.WriteLine(mobjDecryptTransform.CanReuseTransform)
 
 Console.WriteLine(mobjDecryptTransform.CanTransformMultipleBlocks)
 End If
 Return True
 Catch ex As Exception
 End Try
 End Function
 ___
 Mono-devel-list mailing list
 Mono-devel-list@lists.ximian.com
 http://lists.ximian.com/mailman/listinfo/mono-devel-list
-- 
Sebastien Pouliot  [EMAIL PROTECTED]
Blog: http://pages.infinit.net/ctech/

___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list


FW: [Mono-dev] new test framework works on dotnet

2006-05-18 Thread Andrew Skiba
Title: Re: [Mono-dev] new test framework works on dotnet






Hello 
Miguel,



Thank youfor your response. I forgot 
to mention that I used cygwin to run mono, if that matters. When I sent QUIT to 
the Mono process, it terminated, with message about core dump, but core dump was 
not created. I did not manage to try it on Linux today, I'll try to do that on 
Sunday.

Also I was not clear enough about the Sleep 
work around. With sleep, there is no hang problem, when I said that 'some tests 
still fail', I meant that they did not pass some assert. So right nowhang 
problemdoes not blockmy work.

Andrew.


From: Miguel de Icaza 
[mailto:[EMAIL PROTECTED]Sent: Wed 5/17/2006 4:14 PMTo: 
Andrew SkibaCc: mono-devel-list@lists.ximian.comSubject: 
Re: [Mono-dev] new test framework works on dotnet

Hello, Some tests pass on Mono, but some of them 
need more effort. Sometimes mono vm stucks, I worked around that by 
adding Sleep at the beginning of each test. Some tests still 
fail.Mhm, very strange.Could you send a QUIT signal to the Mono 
process when it hangs? Thiswill help pinpoint. I added a 
custom target run-nunitweb-ondotnet and run-nunitweb-onmono to the 
makefile to run only the tests which use the new framework. So 
I'm looking for the help to make them all pass on mono, so we can run 
them as a part of a build. Andrew. 
___ Mono-devel-list mailing 
list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list--Miguel 
de Icaza [EMAIL PROTECTED]



___
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list