Re: Problem in SVN using Cygwin

TM Tiwari wrote:

I was trying to download the codes for GNU radio, and I used following
command in Cygwin

$ svn co http://gnuradio.org/svn/gnuradio/trunk gnuradio

and I received error as follwed:

svn: PROPFIND request failed on ‘/svn/gnuradio/trunk’
svn: PROPFIND of ‘/svn/gnuradio/trunk’: Could not parse response status
line.
(
http://gnuradio.org)

I am able to ping the IP Address as well homepage of
http://www.gnuradio.org

please advise me on this error.

I am glad this thread was ongoing, because I ran into this error too,
and it
helped to know someone else was experiencing it. The problem appears to
be our
corporate firewall. Is there a generic way to get svn to do a checkout
around
a firewall? In the meantime I found I can checkout from home.

At work I ran the command that TM Tiwari lists above. I tried all kinds
of
variations. Machines running svn under Cygwin, Linux and through
Mongoose all
failed. The error message on the Linux machines was:

svn: PROPFIND request failed on ‘/svn/gnuradio/trunk’
svn: PROPFIND of ‘/svn/gnuradio/trunk’: Could not read status line:
connection
was closed by server. (http://gnuradio.org)

It was frustating because all machines could access the url through web
browsers, traverse the directories and view the files in the repository.

I took my laptop home and tried the download, and everything was fine.

Thanks,
Bill Guthrie


William Guthrie wrote:

I am glad this thread was ongoing, because I ran into this error too, and it
helped to know someone else was experiencing it. The problem appears to be our
corporate firewall. Is there a generic way to get svn to do a checkout around
a firewall? In the meantime I found I can checkout from home.

I just realized what the issue is when I read your post.

Subversion does indeed use HTTP as the protocol to communicate between a
client and repository server. However, it uses the WebDAV methods over
HTTP to implement versioning, transactions, etc. So while typical web
browsing uses HTTP GET and HTTP POST methods, Subversion also uses HTTP
PROPFIND, HTTP MKACTIVITY, and several other WebDAV methods.

Most corporate firewalls (or more likely, transparent proxies) are not
configured to pass or proxy these less frequently used (but still
standard) HTTP methods.

This results in being able to put the URL in your browser and being able
to see the latest version come up, but having Subversion error out when
it doesn’t get responses to its queries.

One way around this is to use SSL via a https: URL. Here, all the HTTP
protocol stuff is necessarily passed through the gateway unchanged (it’s
encrypted in the tunnel so the gateway can’t “know” what it is.) It’s
just like going to your bank’s online web interface.

But this requires configuration on the server end to support, and
gnuradio.org is not set up that way. It burns a significant amount of
CPU power (for the encryption) and we’d have to evaluate whether our
setup is sufficient to handle the load.

In the short term you can try to convince the powers that be in your
company to enable “WebDAV methods” in their web proxy or firewall.

Johnathan C.
[email protected]

Pascal C. wrote:

I had a similar problem and this is the solution that I used.

At work, my computer is behind a firewall and I must use a proxy server
to send HTTP requests. So, I needed to set proxy name and address for
SVN. So, edit ~/.subversion/servers. In the [global] section, use these
lines:
[global]
http-proxy-host = your.server.address
http-proxy-port = your_server_port

Pascal–thanks for reply.

My original email had assumed that the poster had already configured
Subversion for access through his proxy or firewall. If that’s not the
case, your instructions above will apply if he has a web proxy in place.

If the original poster has already done something similar then the
issues I brought up around WebDAV proxy problems will be where to look
next.

Johnathan C., AE6HO
[email protected]

I had a similar problem and this is the solution that I used.

At work, my computer is behind a firewall and I must use a proxy server
to
send HTTP requests. So, I needed to set proxy name and address for SVN.
So,
edit ~/.subversion/servers. In the [global] section, use these lines:
[global]
http-proxy-host = your.server.address
http-proxy-port = your_server_port

Regards,

Pascal