Even though you are connecting to the passive IP and Port before a data transfer command is issued (STOR, RETR etc), the server in fact does not accept the connection until a data transfer command is issued. In other words, on the server side there is no Socket open until you send the STOR command. This means that sending 150 reply is correct. Do you agree?
Sai Pullabhotla www.jMethods.com On Tue, Aug 25, 2009 at 2:47 AM, Parijat Bansal (JIRA)<[email protected]> wrote: > breaking RFC by replying 150 after establishing data connection > --------------------------------------------------------------- > > Key: FTPSERVER-327 > URL: https://issues.apache.org/jira/browse/FTPSERVER-327 > Project: FtpServer > Issue Type: Bug > Components: Server > Affects Versions: 1.0.2 > Environment: RHEL3 > Reporter: Parijat Bansal > Priority: Minor > > > Hi, > > 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"); > control_os.flush(); > System.out.println(control_is.readLine()); > > However if I tried sending STOR before establishing data channel then also I > received 150 which seems ok as per RFC. > > Regards, > Parijat Bansal > > -- > This message is automatically generated by JIRA. > - > You can reply to this email to add a comment to the issue online. > >
