# cvsimport using proxy?

3 messages from 2005-10-04 to 2005-10-05. Participants: Junio C Hamano, Matthias Urlichs, Johannes Schindelin.
Thread: https://gitlist.dev/t/2014

## Junio C Hamano, 2005-10-04 21:42

Subject: cvsimport using proxy?
Message-ID: <7v4q7xc62d.fsf@assigned-by-dhcp.cox.net>
URL: https://gitlist.dev/e/7v4q7xc62d.fsf%40assigned-by-dhcp.cox.net

```
I was going to try cvsimport over the firewall --

CVSROOT=':pserver;proxy=firewall;proxyport=3128:anoncvs@anoncvs.postgresql.org:/projects/cvsroot' cvs co -c

works fine, but it does not appear to me that cvsimport knows
about the proxied connection.  Is anybody savvy and helpful
enough to look into adding this?

```

## Matthias Urlichs, 2005-10-05 12:50

Subject: Re: cvsimport using proxy?
Message-ID: <20051005125055.GF4682@kiste.smurf.noris.de>
URL: https://gitlist.dev/e/20051005125055.GF4682%40kiste.smurf.noris.de
In-Reply-To: <46a038f90510050309t1d075d7fj37c60a6052ec62f3@mail.gmail.com>

```
Hi,

Martin Langhoff:
> For the second stage, we'll need to hack CVSConn::conn() method around
> line 118. As I have never used the proxy option, I did a bit of
> googling. It seems that cvs 1.12.11 knows how to tunnel its protocol
> over an HTTP proxy.
> 
HTTP proxies are quite simple, you say 

   1. Connect to Proxy Server.
   2. Issue CONNECT Host:Port HTTP/1.1<CR><LF>.
   3. Issue <CR><LF>.
   4. Wait for a line of response.
      If it contains HTTP/1.X 200 , the connection is successful.
   5. Read further lines of response until you receive an empty line.
   6. Now, you are connected to outside world through a proxy.
      Do any data exchange you want.

-- 
Matthias Urlichs   |   {M:U} IT Design @ m-u-it.de   |  smurf@smurf.noris.de
Disclaimer: The quote was selected randomly. Really. | http://smurf.noris.de
 - -
Almost all absurdity of conduct arises from the imitation of those who we
cannot resemble.
					-- Samuel Johnson

```

## Johannes Schindelin, 2005-10-05 13:55

Subject: Re: cvsimport using proxy?
Message-ID: <Pine.LNX.4.63.0510051554310.14244@wbgn013.biozentrum.uni-wuerzburg.de>
URL: https://gitlist.dev/e/Pine.LNX.4.63.0510051554310.14244%40wbgn013.biozentrum.uni-wuerzburg.de
In-Reply-To: <20051005125055.GF4682@kiste.smurf.noris.de>

```
Hi,

On Wed, 5 Oct 2005, Matthias Urlichs wrote:

> HTTP proxies are quite simple, you say 
> 
>    1. Connect to Proxy Server.
>    2. Issue CONNECT Host:Port HTTP/1.1<CR><LF>.
>    3. Issue <CR><LF>.
>    4. Wait for a line of response.
>       If it contains HTTP/1.X 200 , the connection is successful.
>    5. Read further lines of response until you receive an empty line.
>    6. Now, you are connected to outside world through a proxy.
>       Do any data exchange you want.

Even simpler is to use transconnect, which transparently uses the proxy by 
intercepting the connect method using LD_PRELOAD.

Ciao,
Dscho

```
