Article delegate-en/3385 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:<_A3384@delegate-en.ML_>]
Newsgroups: mail-lists.delegate-en

[DeleGate-En] Re: konqueror v3.3.2 + FTP-DeleGate (Re: Constructing a virtual origin FTP server fails on symlinks crossing "MOUNT=" points)
12 Jul 2006 08:05:16 GMT feedback@delegate.org (Yutaka Sato)
The DeleGate Project


Hallo,

In message <_A3384@delegate-en.ML_> on 07/12/06(16:10:01)
you Steffen Kaiser <p44eqbdyi-6rjyzck5z63r.ml@ml.delegate.org> wrote:
 |> It is possible that konqueror is sensitive of the physical packet
 |> sequence of FTP responses on TCP.
 |> To suppress the inclusion of remote server's message into the response
 |> to the client, you can specify as
 |>
 |>  FTPCONF=hideserv
 |
 |That's it!!
 |It's working now!
 |
 |Because of this, I'm wondering whether I should file a bugreport for 
 |konqueror. I checked RFC959, section 4.2 says much, something I cannot 
 |decide whether it is written there as brain storming or so, but the 
 |example is quite good:
...
 |                                 123-First line
 |                                 Second line
 |                                   234 A line beginning with numbers
 |                                 123 The last line
...
 |          the beginning of a line, and ignore all intermediary lines.  If
 |          an intermediary line begins with a 3-digit number, the Server
 |          must pad the front  to avoid confusion.
            ^^^^
Hmm, maybe I missed to read this "must pad" when I prototyped FTP in
12 years ago...

 |I see that the reply of Delegate does not "try to avoid confusion" as the 
 |commentary paragraphe calls it, by doing that Delegate uses different 
 |replay codes in front of the inner lines and does not quote them.
 |
 |There is the possibility that konqueror ignores the multiline response, 
 |when the reply code is the same on all the lines, because even with 
 |hideserv the initial response is multi-line with a three-digit<hyphen> 
 |prefix, but all the codes are the same. konqueror passes this comment.

I'll modify the wrapping of response message so that it follows RFC959 as
the enclosed patch.  (It can behave as before with FTPCONF=debug:0x800).

Thank you.

Cheers,
Yutaka
--
  9 9   Yutaka Sato <y.sato@delegate.org> http://delegate.org/y.sato/
 ( ~ )  National Institute of Advanced Industrial Science and Technology
_<   >_ 1-1-4 Umezono, Tsukuba, Ibaraki, 305-8568 Japan
Do the more with the less -- B. Fuller


*** ../arc/delegate9.2.3-pre12/src/ftp.c	Wed Jul 12 00:04:44 2006
--- src/ftp.c	Wed Jul 12 16:52:33 2006
***************
*** 809,815 ****
--- 809,819 ----
  		}
  	}
  }
+ /*
  static void escape_scode(PVStr(str),FILE *dst)
+ */
+ #define escape_scode(s,d)	escape_scodeX(scode,s,d)
+ static void escape_scodeX(int iscode,PVStr(str),FILE *dst)
  {	refQStr(sp,str); /**/
  	const char *np;
  	char ch;
***************
*** 817,822 ****
--- 821,829 ----
  	int len;
  
  	for( cpyQStr(sp,str); sp && *sp; sp = (char*)np ){
+ 		if( !ftpDEBUG(0x800) && isdigit(sp[0]) && atoi(sp) != iscode ){
+ 			Strins(AVStr(sp)," ");
+ 		}else
  		if( isdigit(sp[0]) && isdigit(sp[1]) && isdigit(sp[2]) ){
  			sp += 3;
  			ch = *sp;
***************
*** 5656,5661 ****
--- 5663,5669 ----
  */
  			FCF.fc_noxdcCL?XDC_OPENING_NONE:XDC_OPENING_B64,
  			D_FTPHOPS,FS->fs_myhost);
+ 		scode = 220;
  		escape_scode(AVStr(resp),tc);
  		fprintf(tc,"%d \r\n",220);
  	}

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