breaking RFC by replying 150 after establishing data connection
|Reported by:||Parijat Bansal||Owned by:|
|Component version:||Operating system type:||Windows|
|Operating system version:||Windows XP(SP3) version 2002|
RFC 959 explains 125 and 150 (valid intermediate responses for STOR/RETR) as follows:
125 Data connection already open; transfer starting.
150 File status okay; about to open data connection.
If the data connection is already estabilished and after it the server receives STOR/RETR then it should respond with 125. I connected in passive mode using my custom client to verify this. I first estabilished a data channel and after it only I sent STOR but still got 150 which is wrong.
Following is part of my code :
data = new Socket(pasv_ip, pasv_port);
data_os = data.getOutputStream();
data_is = data.getInputStream();
control_os.print("STOR " + "file.txt" + "\r\n");
System.out.print("---> STOR " + "file.txt" + "\n");
However if I tried sending STOR before establishing data channel then Filezilla hanged while other servers were able to handle this scenario.