ftp.GetList() method is not returned soft links items which is created on Linux server.

0 votes
asked Jun 30, 2015 by ganeshspy (900 points)
edited Jul 1, 2015 by Tomas Knopp

ftp.GetList() method is not returned soft links items which is created on Linux server.

i have 2 types links in Linux server one is soft link and one is hard link.

hard links are getting but soft links are not getting.
any way to get it.

Two types of links

There are two types of links

symbolic links: Refer to a symbolic path indicating the abstract
location of another file hard links : Refer to the specific location
of physical data. How do I create soft link / symbolic link?

To create a symbolic link in Unix or Linux, at the shell prompt, enter
the following command: ln -s {target-filename} {symbolic-filename}

Log:
2015-06-30 19:18:04.964 Opening log file.
2015-06-30 19:18:05.084 INFO Ftp(1)[9] Info: Connecting to 192.168.1.132:365 using Ftp 4.0.4700.0.
2015-06-30 19:18:05.085 INFO Ftp(1)[9] Info: Using proxy none.
2015-06-30 19:18:05.273 DEBUG Ftp(1)[9] Info: Connection succeeded.
2015-06-30 19:18:05.280 INFO Ftp(1)[9] Response: 220 Vhost server
2015-06-30 19:18:05.289 INFO Ftp(1)[9] Command: USER test1234
2015-06-30 19:18:05.290 INFO Ftp(1)[9] Response: 331 Anonymous login ok, send your complete email address as your password
2015-06-30 19:18:05.290 INFO Ftp(1)[9] Command: PASS ********
2015-06-30 19:18:05.294 INFO Ftp(1)[9] Response: 230 Anonymous access granted, restrictions apply
2015-06-30 19:18:05.294 INFO Ftp(1)[9] Command: FEAT
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: 211-Features:
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: SIZE
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: LANG en-US.UTF-8;en-US*
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: SITE MKDIR
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: MFF modify;UNIX.group;UNIX.mode;
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: REST STREAM
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: MLST modify;perm;size;type;unique;UNIX.group;UNIX.mode;UNIX.owner;
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: UTF8
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: EPRT
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: SITE SYMLINK
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: EPSV
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: SITE UTIME
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: MDTM
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: SITE RMDIR
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: TVFS
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: SITE COPY
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: MFMT
2015-06-30 19:18:05.296 INFO Ftp(1)[9] Response: 211 End
2015-06-30 19:18:05.313 INFO Ftp(1)[9] Command: OPTS UTF8 ON
2015-06-30 19:18:05.315 INFO Ftp(1)[9] Response: 200 UTF8 set to on
2015-06-30 19:18:05.316 INFO Ftp(1)[9] Command: CWD a
2015-06-30 19:18:05.318 INFO Ftp(1)[9] Response: 250-Please upload first!
2015-06-30 19:18:05.318 INFO Ftp(1)[9] Response: 250 CWD command successful
2015-06-30 19:18:05.329 DEBUG Ftp(1)[9] Info: Starting data transfer.
2015-06-30 19:18:05.329 INFO Ftp(1)[9] Command: TYPE A
2015-06-30 19:18:05.329 INFO Ftp(1)[9] Response: 200 Type set to A
2015-06-30 19:18:05.332 INFO Ftp(1)[9] Command: PASV
2015-06-30 19:18:05.333 INFO Ftp(1)[9] Response: 227 Entering Passive Mode (192,168,1,132,253,77).
2015-06-30 19:18:05.336 DEBUG Ftp(1)[9] Info: Establishing data connection to 192.168.1.132:64845.
2015-06-30 19:18:05.338 INFO Ftp(1)[9] Command: MLSD
2015-06-30 19:18:05.340 INFO Ftp(1)[9] Response: 150 Opening ASCII mode data connection for MLSD
2015-06-30 19:18:05.342 DEBUG Ftp(1)[9] Info: Item: modify=20150629140028;perm=adfr;size=28;type=file;unique=802U6E00FD;UNIX.group=1000;UNIX.mode=0664;UNIX.owner=1000; 1hard~
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150630134114;perm=flcdmpe;type=pdir;unique=802U6E0002;UNIX.group=1000;UNIX.mode=0777;UNIX.owner=1000; ..
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150629140028;perm=adfr;size=71;type=file;unique=802U6E1C4D;UNIX.group=1000;UNIX.mode=0664;UNIX.owner=1000; 1
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150629141332;perm=adfr;size=1;type=OS.unix=symlink;unique=802U6E1C4D;UNIX.group=1000;UNIX.mode=0777;UNIX.owner=1000; 1soft
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150629135906;perm=adfr;size=0;type=file;unique=802U6E0105;UNIX.group=1000;UNIX.mode=0664;UNIX.owner=1000; 1~
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150630045704;perm=fle;type=cdir;unique=802U6E1C50;UNIX.group=1000;UNIX.mode=0775;UNIX.owner=1000; .
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150630045704;perm=adfr;size=1;type=OS.unix=symlink;unique=802U6E1C4D;UNIX.group=1000;UNIX.mode=0777;UNIX.owner=1000; 2soft
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150629140028;perm=adfr;size=71;type=file;unique=802U6E1C4D;UNIX.group=1000;UNIX.mode=0664;UNIX.owner=1000; 1hard
2015-06-30 19:18:05.370 DEBUG Ftp(1)[9] Info: Data transfer ended. 976 bytes transferred.
2015-06-30 19:18:05.371 DEBUG Ftp(1)[9] Info: Closing downloading data connection.
2015-06-30 19:18:05.375 DEBUG Ftp(1)[9] Info: Waiting for data transfer ending message.
2015-06-30 19:18:05.375 INFO Ftp(1)[9] Response: 226 Transfer complete
2015-06-30 19:18:05.375 DEBUG Ftp(1)[9] Info: Data transfer ended.
2015-06-30 19:18:05.375 DEBUG Ftp(1)[9] Info: Transfer ended successfully.
2015-06-30 19:18:05.376 DEBUG Ftp(1)[9] Info: Data connection closed.

Code :

Ftp ftp = new Ftp();
ftp.LogWriter=new FileLogWriter("D:\\temp.txt",LogLevel.Debug);

ftp.Connect("192.168.1.132",365);

ftp.Login("test1234", "test1234");
ftp.ChangeDirectory("a");
var ftpItemCollection = ftp.GetList();

total 5 item in folder 1 normal file(text file name- 1) 1 hard link file to normal (name -1hard) 2 soft link items(names- 1soft 2soft) create using cmd 1 using linux context menu(name- link to 1)

but method returns following item(type of all item is file)

1hard~ 1~
1 1hard

Applies to: Rebex FTP/SSL

2 Answers

0 votes
answered Jun 30, 2015 by Tomas Knopp (58,890 points)

Soft symbolic links should also be returned by GetList method. However, we need to see what was going on between the Rebex FTP client and your server to be able to see whether this is client or server issue and hopefully solve this problem.

So pleasecreate a log of communication and then post it here as another answer or send the log to support@rebex.net. Based on the log we'll be able to advice what to do next and hopefully solve this issue.

commented Jun 30, 2015 by ganeshspy (900 points)
2015-06-30 19:18:04.964 Opening log file.
2015-06-30 19:18:05.084 INFO Ftp(1)[9] Info: Connecting to 192.168.1.132:365 using Ftp 4.0.4700.0.
2015-06-30 19:18:05.085 INFO Ftp(1)[9] Info: Using proxy none.
2015-06-30 19:18:05.273 DEBUG Ftp(1)[9] Info: Connection succeeded.
2015-06-30 19:18:05.280 INFO Ftp(1)[9] Response: 220 Vhost server
2015-06-30 19:18:05.289 INFO Ftp(1)[9] Command: USER test1234
2015-06-30 19:18:05.290 INFO Ftp(1)[9] Response: 331 Anonymous login ok, send your complete email address as your password
2015-06-30 19:18:05.290 INFO Ftp(1)[9] Command: PASS ********
2015-06-30 19:18:05.294 INFO Ftp(1)[9] Response: 230 Anonymous access granted, restrictions apply
2015-06-30 19:18:05.294 INFO Ftp(1)[9] Command: FEAT
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response: 211-Features:
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  SIZE
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  LANG en-US.UTF-8;en-US*
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  SITE MKDIR
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  MFF modify;UNIX.group;UNIX.mode;
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  REST STREAM
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  MLST modify*;perm*;size*;type*;unique*;UNIX.group*;UNIX.mode*;UNIX.owner*;
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  UTF8
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  EPRT
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  SITE SYMLINK
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  EPSV
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  SITE UTIME
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  MDTM
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  SITE RMDIR
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  TVFS
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  SITE COPY
2015-06-30 19:18:05.295 INFO Ftp(1)[9] Response:  MFMT
2015-06-30 19:18:05.296 INFO Ftp(1)[9] Response: 211 End
2015-06-30 19:18:05.313 INFO Ftp(1)[9] Command: OPTS UTF8 ON
2015-06-30 19:18:05.315 INFO Ftp(1)[9] Response: 200 UTF8 set to on
2015-06-30 19:18:05.316 INFO Ftp(1)[9] Command: CWD a
2015-06-30 19:18:05.318 INFO Ftp(1)[9] Response: 250-Please upload first!
2015-06-30 19:18:05.318 INFO Ftp(1)[9] Response: 250 CWD command successful
2015-06-30 19:18:05.329 DEBUG Ftp(1)[9] Info: Starting data transfer.
2015-06-30 19:18:05.329 INFO Ftp(1)[9] Command: TYPE A
2015-06-30 19:18:05.329 INFO Ftp(1)[9] Response: 200 Type set to A
2015-06-30 19:18:05.332 INFO Ftp(1)[9] Command: PASV
2015-06-30 19:18:05.333 INFO Ftp(1)[9] Response: 227 Entering Passive Mode (192,168,1,132,253,77).
2015-06-30 19:18:05.336 DEBUG Ftp(1)[9] Info: Establishing data connection to 192.168.1.132:64845.
2015-06-30 19:18:05.338 INFO Ftp(1)[9] Command: MLSD
2015-06-30 19:18:05.340 INFO Ftp(1)[9] Response: 150 Opening ASCII mode data connection for MLSD
2015-06-30 19:18:05.342 DEBUG Ftp(1)[9] Info: Item: modify=20150629140028;perm=adfr;size=28;type=file;unique=802U6E00FD;UNIX.group=1000;UNIX.mode=0664;UNIX.owner=1000; 1hard~
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150630134114;perm=flcdmpe;type=pdir;unique=802U6E0002;UNIX.group=1000;UNIX.mode=0777;UNIX.owner=1000; ..
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150629140028;perm=adfr;size=71;type=file;unique=802U6E1C4D;UNIX.group=1000;UNIX.mode=0664;UNIX.owner=1000; 1
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150629141332;perm=adfr;size=1;type=OS.unix=symlink;unique=802U6E1C4D;UNIX.group=1000;UNIX.mode=0777;UNIX.owner=1000; 1soft
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150629135906;perm=adfr;size=0;type=file;unique=802U6E0105;UNIX.group=1000;UNIX.mode=0664;UNIX.owner=1000; 1~
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150630045704;perm=fle;type=cdir;unique=802U6E1C50;UNIX.group=1000;UNIX.mode=0775;UNIX.owner=1000; .
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150630045704;perm=adfr;size=1;type=OS.unix=symlink;unique=802U6E1C4D;UNIX.group=1000;UNIX.mode=0777;UNIX.owner=1000; 2soft
2015-06-30 19:18:05.369 DEBUG Ftp(1)[9] Info: Item: modify=20150629140028;perm=adfr;size=71;type=file;unique=802U6E1C4D;UNIX.group=1000;UNIX.mode=0664;UNIX.owner=1000; 1hard
2015-06-30 19:18:05.370 DEBUG Ftp(1)[9] Info: Data transfer ended. 976 bytes transferred.
2015-06-30 19:18:05.371 DEBUG Ftp(1)[9] Info: Closing downloading data connection.
2015-06-30 19:18:05.375 DEBUG Ftp(1)[9] Info: Waiting for data transfer ending message.
2015-06-30 19:18:05.375 INFO Ftp(1)[9] Response: 226 Transfer complete
2015-06-30 19:18:05.375 DEBUG Ftp(1)[9] Info: Data transfer ended.
2015-06-30 19:18:05.375 DEBUG Ftp(1)[9] Info: Transfer ended successfully.
2015-06-30 19:18:05.376 DEBUG Ftp(1)[9] Info: Data connection closed.
commented Jun 30, 2015 by ganeshspy (900 points)
Code :
 
            Ftp ftp = new Ftp();
            ftp.LogWriter=new FileLogWriter("D:\\temp.txt",LogLevel.Debug);

            ftp.Connect("192.168.1.132",365);

            ftp.Login("test1234", "test1234");
            ftp.ChangeDirectory("a");
            var ftpItemCollection = ftp.GetList();

total 5 item in folder
1 normal file(text file name- 1)
1 hard link file to normal (name -1hard)
2 soft link items(names- 1soft 2soft) create using cmd
1 using linux context menu(name- link to 1)


but method returns
following item(type of all item is file)
1hard~
1~
1
1hard
0 votes
answered Jul 1, 2015 by Tomas Knopp (58,890 points)

Update: This has been fixed in Rebex FTP/SSL 2015 R4.

Thanks for the logs, now I can see that this is an already known bug, to fix it please download the trial hotfix and give it a try. The fix will be part of next release, i.e. 2015R4.

Customers with active support contract can request the full version of the hotfix at support@rebex.net based on their order ID or registered email.

...