[ https://issues.apache.org/jira/browse/NET-492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sebb resolved NET-492. ---------------------- Resolution: Fixed Fix Version/s: 3.3 I assume the latest change fixed the problem. If not, please re-open with full details. > FTPClient.printWorkingDirectory() incorrectly parses certain valid PWD > command results > -------------------------------------------------------------------------------------- > > Key: NET-492 > URL: https://issues.apache.org/jira/browse/NET-492 > Project: Commons Net > Issue Type: Bug > Components: FTP > Affects Versions: 3.2 > Reporter: Tomasz Jedrzejewski > Priority: Minor > Fix For: 3.3 > > > The new implementation of FTPClient.printWorkingDirectory() which tries to > follow RFC959 is invalid and can return unescaped or invalid path in certain > circumstances. According to the commentary, the author interpreted the RFC > that the output is always constructed in the following way: > 257<space>"<directory-name>"<space><commentary> > Where any double quotes within the directory name are doubled. > First issue: the RFC does not state that the output for PWD looks exactly > like this, but that the reply code is the same, as for MKD. Especially, PWD > does not return any commentary, and VSFTPD server (which I'm trying to talk > to) does not print out the terminating space, but ends up the output on the > last double quote. The algorithm uses the following code to detect the end of > the quoted path: > int end = reply.lastIndexOf("\" "); > If there is no terminating space, the last double quote cannot be found, and > as a result, the method returns the unescaped directory name: > "/foo" > instead of > /foo > Second issue: the current implementation would not work in case of the > following directory: > /Foo/Bar" /Joe > PWD command output: > 257 "/Foo/Bar"" /Joe" > Value returned by printWorkingDirectory(): > /Foo/Bar" > Note to the administrators: the problem has been found in commons-net 3.2 > version, but JIRA claims it is unreleased and does not allow me to choose it. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira