Hello Erik,

on 07/30/2011 09:00 AM Erik Huelsmann said the following:
Hi Manuel,

On Sat, Jul 30, 2011 at 12:16 PM, Manuel Lemos <mle...@acm.org
<mailto:mle...@acm.org>> wrote:

    Hello,

    I am writing a small SubVersion client library independent of the
    svn client command.

    My library works well but for some reason it does not work with a
    certain SSL server that is not under my control. It returns error
    400. I assume I am sending some malformed commands.

    On the other hand the svn client command works well. I tried to use
    strace to see what svn does different but since it is all in SSL I
    cannot see the HTTP requests and responses in the strace output
    because it is all encrypted.

    Is there a way to log the svn client HTTP traffic to a file so I can
    examine and compare the requests being sent and responses being
    received?


Are you not using the libsvn_* libraries? libsvn_client is specifically
meant to build Subversion clients other than the standard command line
client: Subclipse, AnkhSVN, TortoiseSVN and others are all based on it.

When using those libraries, you don't have to be worried to "emulate"
the protocol correctly. Basically, you can build your own client on the
vast experience of the Subversion developers. The other libraries allow
you to interact as a Subversion client on different levels in the stack,
libsvn_ra for example will allow you to interact with a Subversion
server without having a local working copy.

The above is not only directed at you, btw, it's a message to everybody
who is planning to write a Subversion client.

Sorry, I did not mention that I am writing a pure PHP client that needs to run on an environment on which the svn program is not available, nor any SubVersion PHP extensions are available. So using anything based on libsvn is not an option for me unfortunately.

Anyway, I tried to hack SubVersion program code to insert some debug code to output the HTTP dialog but I got lost and could not figure where exactly the HTTP requests and responses are sent.

Anybody, knows where exactly is the code that sends and receives HTTP requests so I can hack it to just add some debug output in my svn command copy in order to see the HTTP dialog?


--

Regards,
Manuel Lemos

JS Classes - Free ready to use OOP components written in JavaScript
http://www.jsclasses.org/

Reply via email to