I've setup the root directory for the SFTP subsystem to be "C:\".
The login, and cd'ing, listing to subdirectories is working fine. But, I cannot "cd" to C:\ again using "cd ..". So if my working directory is "/dev", doing a "cd .." should put me back in "/" (whose real path is "C:\"). But the directory is unchanged. The "cd .." works well for directories that are deeper than one level. In other words, if my current dir is "/dev/apis" and doing a "cd .." puts me back in "/dev". Also, should the Default SSH server setup the SFTP subsystem as well? Regards, Sai Pullabhotla On Thu, May 6, 2010 at 4:54 AM, Guillaume Nodet <gno...@gmail.com> wrote: > I've made a few other fixes (including SSHD-86) which helps a lot. > Please have a look and i'll cut a release tonight or tomorrow. > > On Wed, May 5, 2010 at 21:18, Guillaume Nodet <gno...@gmail.com> wrote: > >> Thanks for the pointer. The SFTP subsystem is now using that code. >> Any more issues ? >> >> On Wed, May 5, 2010 at 18:43, Sai Pullabhotla < >> sai.pullabho...@jmethods.com> wrote: >> >>> Okay, I see the fix for the dates, but they are still incorrect when >>> the client interprets its. Couple of things - >>> >>> I believe time should be on a 24 hour clock basis - so the format need >>> to be changed to HH instead of hh. >>> >>> The listing is not compatible with UNIX style listing. So files older >>> than 6 months should show the year, but not the time. Files in the >>> last 6 months should show time, but not year. Unless SFTP has a >>> standard for the directory list format. >>> >>> In essence, FileZilla shows a file that is modified in year 2006 as 2010. >>> >>> There is some code in the FtpServer project that we may want to steal. >>> It is org.apache.ftpserver.util.DateUtils.getUnixDate(long). >>> >>> >>> Regards, >>> Sai Pullabhotla >>> >>> >>> >>> >>> >>> On Wed, May 5, 2010 at 11:15 AM, Guillaume Nodet <gno...@gmail.com> >>> wrote: >>> > Which dates ? I've fixed the "Jan 01 ..." thing if that's why you're >>> > referring to. >>> > But using filezilla, there are still things that we don't support, but >>> i've >>> > been able to download directories recursively without problems. >>> > >>> > On Wed, May 5, 2010 at 17:49, Sai Pullabhotla >>> > <sai.pullabho...@jmethods.com>wrote: >>> > >>> >> How about the dates on the files? >>> >> >>> >> Regards, >>> >> Sai Pullabhotla >>> >> >>> >> >>> >> >>> >> >>> >> >>> >> On Wed, May 5, 2010 at 10:13 AM, Guillaume Nodet <gno...@gmail.com> >>> wrote: >>> >> > Fixed, let me know if you find any other easily fixed issues. >>> >> > >>> >> > On Wed, May 5, 2010 at 16:41, Sai Pullabhotla >>> >> > <sai.pullabho...@jmethods.com>wrote: >>> >> > >>> >> >> I just noticed that the code checked in just replaces "\" with "/". >>> I >>> >> >> think for best compliance on all operating systems and file systems, >>> >> >> it should replace File.separatorChar with "/". Not sure if there are >>> >> >> any file systems that use a separator other than "/" and "\". >>> >> >> >>> >> >> Regards, >>> >> >> Sai Pullabhotla >>> >> >> >>> >> >> >>> >> >> >>> >> >> >>> >> >> >>> >> >> On Wed, May 5, 2010 at 9:22 AM, Guillaume Nodet <gno...@gmail.com> >>> >> wrote: >>> >> >> > I've committed the changes. Could you give a try ? >>> >> >> > >>> >> >> > On Wed, May 5, 2010 at 16:20, Guillaume Nodet <gno...@gmail.com> >>> >> wrote: >>> >> >> > >>> >> >> >> Removing the second string works with FileZilla but fails with >>> the >>> >> sftp >>> >> >> >> command line utility. >>> >> >> >> >>> >> >> >> >>> >> >> >> On Wed, May 5, 2010 at 16:13, Guillaume Nodet <gno...@gmail.com> >>> >> wrote: >>> >> >> >> >>> >> >> >>> Yeah, that's what I'm trying. >>> >> >> >>> Let me try with removing the double name though. >>> >> >> >>> >>> >> >> >>> >>> >> >> >>> On Wed, May 5, 2010 at 15:50, Sai Pullabhotla < >>> >> >> >>> sai.pullabho...@jmethods.com> wrote: >>> >> >> >>> >>> >> >> >>>> How about something like this: >>> >> >> >>>> >>> >> >> >>>> protected void sendAbsoluteName(int id, File file) throws >>> >> >> IOException >>> >> >> >>>> { >>> >> >> >>>> Buffer buffer = new Buffer(); >>> >> >> >>>> buffer.putByte((byte) SSH_FXP_NAME); >>> >> >> >>>> buffer.putInt(id); >>> >> >> >>>> buffer.putInt(1); >>> >> >> >>>> String path = file.getPath(); >>> >> >> >>>> if(File.separatorChar != '/') { >>> >> >> >>>> path = path.replace(File.separatorChar, '/'); >>> >> >> >>>> } >>> >> >> >>>> if(path.charAt(0) != '/') { >>> >> >> >>>> path = '/' + path; >>> >> >> >>>> } >>> >> >> >>>> buffer.putString(path); >>> >> >> >>>> //buffer.putString(file.getPath()); >>> >> >> >>>> writeAttrs(buffer, file); >>> >> >> >>>> send(buffer); >>> >> >> >>>> } >>> >> >> >>>> >>> >> >> >>>> Regards, >>> >> >> >>>> Sai Pullabhotla >>> >> >> >>>> >>> >> >> >>>> >>> >> >> >>>> >>> >> >> >>>> >>> >> >> >>>> >>> >> >> >>>> On Wed, May 5, 2010 at 8:45 AM, Sai Pullabhotla >>> >> >> >>>> <sai.pullabho...@jmethods.com> wrote: >>> >> >> >>>> > I removed the second call to place the path in the buffer and >>> >> seems >>> >> >> to >>> >> >> >>>> > be working fine. >>> >> >> >>>> > >>> >> >> >>>> > Regards, >>> >> >> >>>> > Sai Pullabhotla >>> >> >> >>>> > >>> >> >> >>>> >>> >> >> >>> >>> >> >> >>> >>> >> >> >>> >>> >> >> >>> -- >>> >> >> >>> Cheers, >>> >> >> >>> Guillaume Nodet >>> >> >> >>> ------------------------ >>> >> >> >>> Blog: http://gnodet.blogspot.com/ >>> >> >> >>> ------------------------ >>> >> >> >>> Open Source SOA >>> >> >> >>> http://fusesource.com >>> >> >> >>> >>> >> >> >>> >>> >> >> >>> >>> >> >> >> >>> >> >> >> >>> >> >> >> -- >>> >> >> >> Cheers, >>> >> >> >> Guillaume Nodet >>> >> >> >> ------------------------ >>> >> >> >> Blog: http://gnodet.blogspot.com/ >>> >> >> >> ------------------------ >>> >> >> >> Open Source SOA >>> >> >> >> http://fusesource.com >>> >> >> >> >>> >> >> >> >>> >> >> >> >>> >> >> > >>> >> >> > >>> >> >> > -- >>> >> >> > Cheers, >>> >> >> > Guillaume Nodet >>> >> >> > ------------------------ >>> >> >> > Blog: http://gnodet.blogspot.com/ >>> >> >> > ------------------------ >>> >> >> > Open Source SOA >>> >> >> > http://fusesource.com >>> >> >> > >>> >> >> >>> >> > >>> >> > >>> >> > >>> >> > -- >>> >> > Cheers, >>> >> > Guillaume Nodet >>> >> > ------------------------ >>> >> > Blog: http://gnodet.blogspot.com/ >>> >> > ------------------------ >>> >> > Open Source SOA >>> >> > http://fusesource.com >>> >> > >>> >> >>> > >>> > >>> > >>> > -- >>> > Cheers, >>> > Guillaume Nodet >>> > ------------------------ >>> > Blog: http://gnodet.blogspot.com/ >>> > ------------------------ >>> > Open Source SOA >>> > http://fusesource.com >>> > >>> >> >> >> >> -- >> Cheers, >> Guillaume Nodet >> ------------------------ >> Blog: http://gnodet.blogspot.com/ >> ------------------------ >> Open Source SOA >> http://fusesource.com >> >> >> > > > -- > Cheers, > Guillaume Nodet > ------------------------ > Blog: http://gnodet.blogspot.com/ > ------------------------ > Open Source SOA > http://fusesource.com >