Thanks Nadappan,

I think the firewall is not the problem because it makes no difference if I disable the Windows firewall completely.

Can it be that ldtp version 2.3.1-1 (on the Linux PC) is incompatible with version 4.0.0 of CobraWinLDTP ?

When I set LDTP_DEBUG=1 on the Windows machine, I can see that there is communication between the two machines as soon as I execute "from ldtp import *" on python on the linux PC:

8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------
C:\Program Files\VMware\CobraWinLDTP>CobraWinLDTP.exe

Command Prompt - CobraWinLDTP.exe
Listening on all interface
Total Commander 7.50a - Thomas Andrews
Waiting for clients
Lister - [c:\Program Files\VMware\CobraWinLDTP\README.txt]
Command Prompt
Program Manager

Command Prompt - CobraWinLDTP.exe
Total Commander 7.50a - Thomas Andrews
Lister - [c:\Program Files\VMware\CobraWinLDTP\README.txt]
Command Prompt
Program Manager
Command Prompt
Waiting for clients
Processing request
Waiting for clients
Processing request
Waiting for clients
Processing request
Waiting for clients
Processing request
Waiting for clients
Processing request
Waiting for clients
Processing request
Waiting for clients
Processing request
Waiting for clients
etc.... many more of these...
8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------

This is what I see on the Linux machine:

8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------
$ export LDTP_SERVER_ADDR=xp-pc
$ export LDTP_DEBUG=1
$ python
Python 2.7.3 (default, Jan  2 2013, 13:56:14)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from ldtp import *
>>> getapplist()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/ldtp/client.py", line 70, in __call__
    return self.__send(self.__name, args)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1578, in __request
    verbose=self.__verbose
File "/usr/lib/python2.7/dist-packages/ldtp/client.py", line 187, in request
    raise e
xmlrpclib.Fault: <Fault 0: 'Request contains too many param elements based on method signature.'>
>>>
8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------

By the way, I have installed python on the server (Windows machine) and I can execute the same test locally on that machine successfully:

8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------
Python 2.7.6 (default, Nov 10 2013, 19:24:18) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> from ldtp import *
>>> getapplist()
['explorer', 'cmd', 'TOTALCMD', 'explorer', 'pythonw', 'taskmgr', 'gvim', 'sh']
>>>
8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------

So it looks to me like it is just an incompatibility between ldtp and cobrawinldtp. Can this be?

Many thanks,
Thomas

On 01/13/2014 09:55 PM, Nagappan Alagappan wrote:
Hi Thomas,

You can set the following environment variables on Windows box:

set LDTP_DEBUG=1 # If you need debug output printed on console
set LDTP_LISTEN_ALL_INTERFACE=1 # If you need to listen other than localhost, default is listen only on localhost

On Linux side:

export LDTP_DEBUG=1

I tried your scenario after setting above environment variables. More over, have enabled inbound firewall rule on my windows box to accept request on port 4118. Everything worked as expected.

Side note: I tried LDTP git head on Ubuntu 13.10.

Thanks
Nagappan


On Mon, Jan 13, 2014 at 10:43 AM, Thomas Andrews <tandr...@grok.co.za <mailto:tandr...@grok.co.za>> wrote:

    Hi,

    I get the following error when I try to connect from a linux
    machine to a windows machine:

    xmlrpclib.Fault: <Fault 0: 'Request contains too many param
    elements based on method signature.'>


    On the server (windows XP machine called xp-pc) I am doing this:

        CobraWinLDTP.exe

    On the client (debian linux machine) I am doing this in a bash shell:

        export LDTP_SERVER_ADDR=xp-pc
    then:
        python
        >>> from ldtp import *
        >>> getapplist()


    The client can connect to port 4118 on the server no problem, but
    the server appears to somehow not understand the request from the
    client. I downloaded a copy of VisualUIAVerify, and it can see the
    windows programs running no problem.

    I used wireshark to capture the RPC transaction from TCP/IP and
    this is what I got:

    
8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------
    >From the client (Linux PC):

    POST /RPC2 HTTP/1.1
    Host: xp-vm:4118
    Accept-Encoding: gzip
    User-Agent: xmlrpclib.py/1.0.1 <http://xmlrpclib.py/1.0.1> (by
    www.pythonware.com <http://www.pythonware.com>)
    Content-Type: text/xml
    Content-Length: 155
    <?xml version='1.0'?>
    <methodCall>
    <methodName>getapplist</methodName>
    <params>
    <param>
    <value><struct>
    </struct></value>
    </param>
    </params>
    </methodCall>

    Then response from the server (windows PC):

    HTTP/1.1 200 OK
    Content-Length: 485
    Content-Type: text/xml
    Server: Microsoft-HTTPAPI/1.0
    Date: Mon, 13 Jan 2014 16:41:16 GMT
    <?xml version="1.0"?>
    <methodResponse>
      <fault>
        <value>
          <struct>
            <member>
              <name>faultCode</name>
              <value>
                <i4>0</i4>
              </value>
            </member>
            <member>
              <name>faultString</name>
              <value>
                <string>Request contains too many param elements based
    on method signature.</string>
              </value>
            </member>
          </struct>
        </value>
      </fault>
    </methodResponse>
    
8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------8<----------

    So it looks to me like the RPC communication is fine.
    I installed Cobra-winldtp using CobraWinLDTP-4.0.0.msi from
    http://code.google.com/p/cobra-winldtp/
    On linux I have LDTP version  2.3.1-1 installed (Debian).

    Can anyone help, please?

    Many thanks,
    Thomas
    _______________________________________________
    LDTP-dev mailing list
    LDTP-dev@lists.freedesktop.org <mailto:LDTP-dev@lists.freedesktop.org>
    http://lists.freedesktop.org/mailman/listinfo/ldtp-dev




--
Cross platform GUI testing
Linux Desktop (GUI Application) Testing Project - http://ldtp.freedesktop.org
Cobra - Windows GUI Automation tool - https://github.com/ldtp/cobra
ATOMac - Mac GUI Automation tool - https://github.com/pyatom/pyatom
http://nagappanal.blogspot.com

_______________________________________________
LDTP-dev mailing list
LDTP-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/ldtp-dev

Reply via email to