Article delegate-en/978 of [1-5169] on the server localhost:119
  upper oldest olders older1 this newer1 newers latest
search
[Top/Up] [oldest] - [Older+chunk] - [Newer+chunk] - [newest + Check]
[Reference:<_A977@delegate-en.ML_>]
Newsgroups: mail-lists.delegate-en

[DeleGate-En] Re: Can delegate support FTP FXP Mode?
18 Jan 2001 20:32:27 GMT ysato@etl.go.jp (Yutaka Sato)


On 01/19/01(05:05) I wrote in <_A977@delegate-en.ML_>
 |On 01/18/01(17:51) I wrote in <_A970@delegate-en.ML_>
 | |>   Can delegate support Site to Site(fxp) mode in FTP proxy? How to fullfill it? Thanks :)
...
 |DeleGate as a FTP proxy convert both ports for PASV of server and
 |PORT of client to the port of DeleGate, to make relay the data
 |connection between server and client.
 |To support FXP, this feature must be disabled.  It is easy to do
 |so, but it seems difficult for a single FTP-DeleGate to work both
 |for normal FTP and FXP...
 |Anyway, I will introduce an option to disable data connection relay
 |with something like FTPCONF=nodatarelay, which can be useful for
 |normal-FTP also, in the next release (7.0.1).

The enclosed patch for DeleGate/7.0.0 adds FTPCONF=nodata option
which disables data connection relay, which may be useful (mainly)
for FXP proxying.

Cheers,
Yutaka
--
Yutaka Sato <ysato@delegate.org> http://www.delegate.org/~ysato/   @ @ 
Computer Science Division, Electrotechnical Laboratory            ( - )
1-1-4 Umezono, Tsukuba, Ibaraki, 305-8568 Japan                  _<   >_

*** ../../delegate7.0.0/src/ftp.c	Fri Jan  5 17:31:09 2001
--- ftp.c	Fri Jan 19 05:41:41 2001
***************
*** 40,41 ****
--- 40,42 ----
  	int	fc_init;
+ 	int	fc_nodata;	/* don't do anything for data connection */
  	int	fc_noxdcSV;	/* don't use XDC with server */
***************
*** 212,213 ****
--- 213,217 ----
  	fieldScan(conf,what,val);
+ 	if( strcaseeq(what,"NODATA") ){
+ 		FCF.fc_nodata = 1;
+ 	}else
  	if( strcaseeq(what,"NOPASV") ){
***************
*** 3295,3296 ****
--- 3299,3304 ----
  
+ 	if( FCF.fc_nodata ){
+ 		put_get(ts,fs,resp,sizeof(resp),"PASV\r\n");
+ 		goto EXIT;
+ 	}
  	if( FCF.fc_nopasvCL ){
***************
*** 3374,3375 ****
--- 3382,3386 ----
  		sprintf(resp,"200 PORT command successful [delaying].\r\n");
+ 	}else
+ 	if( FCF.fc_nodata ){
+ 		put_get(ts,fs,resp,sizeof(resp),"PORT %s\r\n",arg);
  	}else

  admin search upper oldest olders older1 this newer1 newers latest
[Top/Up] [oldest] - [Older+chunk] - [Newer+chunk] - [newest + Check]
@_@V