Opened 7 years ago

Last modified 7 years ago

#7952 new Bug report

Cannot manipulate remote files that end with an asterisk

Reported by: Dan Lech Owned by:
Priority: normal Component: FileZilla Client
Keywords: asterisk delete file name Cc:
Component version: Operating system type: Windows
Operating system version: 7

Description

I cannot rename or delete a file that ends in an asterisk (*).
Also, the asterisk does not show up on the file listing.

This can be reproduced with the following:

  1. log into FTP server
  2. Right click test file and chose rename.
  3. Add an asterisk to the end of the file name (in my case, test.txt became test.txt*)
  4. Important! Refresh the file listing.
  5. Notice that the asterisk is no longer in the file listing. (test.txt* now looks like test.txt)
  6. Try to rename or delete test.txt

You will get the following error:


Command: DELE test.txt
Response: 550 test.txt: A file or directory in the path name does not exist.


If I turn on raw directory listing in debug setting I see the following:


Command: LIST
Response: 150 Opening data connection for /bin/ls.
Response: 226 Transfer complete.
Listing: total 8
Listing: -rw-r----- 1 dlech mis 2346 Feb 03 09:30 test.txt*
Status: Directory listing successful


Notice the asterisk is at the end in the debug listing but it's missing in the interface listing.

If I execute the following custom command it will delete:
DELE test.txt*

Command: DELE test.txt*
Response: 250 DELE command successful.

The server OS in this case is AIX using standard FTP but I can repeat the problem on a linux system using SFTP except it rejects my custom commands when I try to delete manually.

We have an old system that creates temp files then end in asterisk that sometimes need to be cleared out. That is how I discovered the problem.
Thank you.

Change History (7)

comment:1 Changed 7 years ago by Kissaki

I was able to confirm this issue with FileZilla version 3.5.3 on Win7x64, connecting to a debian box via SFTP.

comment:2 Changed 7 years ago by Abhinav Garg

I an interested in working on this ticket. Please assign this ticket to me. I am a newbie. Please guide me how can i proceed further on this ticket resolution.

comment:3 Changed 7 years ago by Kissaki

General? Or specifically?
General:

# get your development environment working
source code, build-able,
# build filezilla in debug configuration
# reproduce the issue
# check the source on where the issue probably occurs
# debug and/or log, use debugoutput/logging to check where the issue resides specifically
# think of a fix and implement it
# submit the patch (not sure about the specifics here, on how the filezilla project handles/expects them)

comment:4 Changed 7 years ago by Abhinav Garg

Thanks a lot kissaki..Can you suggest the probable places where to look for the error..i.e. how to proceed with the checking of the source code.

comment:5 Changed 7 years ago by Kissaki

Sorry, no, me, personally, I can not. :)

comment:6 Changed 7 years ago by Abhinav Garg

I was able to resolve the bug..But i wonder why in the original code explicitly there is a block of code removing '*' sign at the end of the file name .Please can you help me with this..
Even if we do not remove '*' sign it works for all the cases.
Also the file name on the server is the one with '*' at the end, it is just in the file listing that we are not showing the files with '*' sign, instead we remove the '*' sign from the end and then display it in directory listing as of now.

comment:7 Changed 7 years ago by Tim Kosse

The reason for removing a trailing asterisk is because on some systems it denotes executable files. See e.g. http://www.cs.bu.edu/teaching/unix/reference/vocab.html

Unfortunately there's no easy solution that works in all cases, so in this case it's first come first serve.

Note: See TracTickets for help on using tickets.