WebDAV plugin bugs/missing functionality
Moderators: Hacker, petermad, Stefan2, white
WebDAV plugin bugs/missing functionality
Hello,
first of all, thanks for the WebDAV plugin, I think it kicks some major ass !
I ran into a couple of issues, though:
- I can't move files to the WebDAV side: it looks like F6 behaves in the same way as F5 in this context.
- I can't delete directories: it tries to delete it, but nothing happens.
- I can't rename directories: the error message "Cannot write xyz! Please remove the write protection!" appears.
For the last two issues, I tested this with the Windows Web Folders feature to rule out misconfiguration, and both worked. My server is Apache 2 + mod_dav. In the Apache logs the TC's MOVE and DELETE requests are answered with a 301 status, maybe this is helpful.
first of all, thanks for the WebDAV plugin, I think it kicks some major ass !
I ran into a couple of issues, though:
- I can't move files to the WebDAV side: it looks like F6 behaves in the same way as F5 in this context.
- I can't delete directories: it tries to delete it, but nothing happens.
- I can't rename directories: the error message "Cannot write xyz! Please remove the write protection!" appears.
For the last two issues, I tested this with the Windows Web Folders feature to rule out misconfiguration, and both worked. My server is Apache 2 + mod_dav. In the Apache logs the TC's MOVE and DELETE requests are answered with a 301 status, maybe this is helpful.
I am using tcmd6.53 and have just installed webdav plugin 1.0
I tested it with a gmx account (using the "gmx secure server" defaults) and noticed another problem: I can't abort file upload (of a single file).
This is a bit annoying when uploading bigger files. The rest, however worked great. Unlike wossname, I was able to:
-delete directories (with files and subdirs)
-rename files/directories
I also found that "copy" and "move" have the same effect here (copy), but I don't mind as I usually don't move things to webdav.
I tested it with a gmx account (using the "gmx secure server" defaults) and noticed another problem: I can't abort file upload (of a single file).
This is a bit annoying when uploading bigger files. The rest, however worked great. Unlike wossname, I was able to:
-delete directories (with files and subdirs)
-rename files/directories
I also found that "copy" and "move" have the same effect here (copy), but I don't mind as I usually don't move things to webdav.
Re: WebDAV plugin bugs/missing functionality
Same here.wossName wrote:- I can't move files to the WebDAV side: it looks like F6 behaves in the same way as F5 in this context.
- I can't delete directories: it tries to delete it, but nothing happens.
- I can't rename directories: the error message "Cannot write xyz! Please remove the write protection!" appears.
Server: https://webdisk.xs4all.nl/<login> (is in experimental stage!)
Secure server checked
Use multi-step upload method checked
- I can't delete directories: it tries to delete it, but nothing happens.
- I can't rename directories: the error message "Cannot write xyz! Please remove the write protection!" appears.
- When I ren/move a directory with contents, the old directory name is not deleted (files are!)
- When moving a file, the dialog reads the same as the Copy dialog "Copy to dir/new name". But the file is moved and not copied.
- When moving a file to a sub dir in the current dir, then moving it back to the parent dir, then trying to move it again to the same dir as before: the Overwrite dialog is displayed saying the file does already exist in the target dir containing -1 bytes (less than zero bytes)?? Nothing is visible in the target dir. After restarting TC the file still cannot be moved (nor copied) to the target dir. This does not happen when the file is moved back and forth from dirs that are not parent and child of each other. Unloading plugins does not help. Disabling the option "Use multi-step upload method" does not help.
TC logfile (showing connect and failure to delete directory zz in somedir) wrote: CONNECT \Webdisk xs4all
=================
Get dir: /somedir
PROPFIND /somedir/ HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin
Host: webdisk.xs4all.nl
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
******Received headers
HTTP/1.1 207 Multi-Status
Date: Wed, 02 Aug 2006 21:28:26 GMT
Server: Apache/2.0.55
Content-Length: 6100
Keep-Alive: timeout=30, max=512
Connection: Keep-Alive
Content-Type: application/xml; charset="utf-8"
207 Multi-Status
=================
Get dir: /somedir\zz
PROPFIND /somedir/zz/ HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin
Host: webdisk.xs4all.nl
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
******Received headers
HTTP/1.1 207 Multi-Status
Date: Wed, 02 Aug 2006 21:29:33 GMT
Server: Apache/2.0.55
Content-Length: 1045
Keep-Alive: timeout=30, max=512
Connection: Keep-Alive
Content-Type: application/xml; charset="utf-8"
207 Multi-Status
=================
Get dir: /somedir\zz
PROPFIND /somedir/zz/ HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin
Host: webdisk.xs4all.nl
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
******Received headers
HTTP/1.1 207 Multi-Status
Date: Wed, 02 Aug 2006 21:29:33 GMT
Server: Apache/2.0.55
Content-Length: 1045
Keep-Alive: timeout=30, max=511
Connection: Keep-Alive
Content-Type: application/xml; charset="utf-8"
207 Multi-Status
=================
File delete: /somedir\zz
=================
Get dir: /somedir
PROPFIND /somedir/ HTTP/1.1
Depth: 1
Content-Type: text/xml; charset="utf-8"
User-Agent: ezdavplugin
Host: webdisk.xs4all.nl
Content-Length: 0
Connection: Keep-Alive
Cache-Control: no-cache
******Received headers
HTTP/1.1 207 Multi-Status
Date: Wed, 02 Aug 2006 21:29:34 GMT
Server: Apache/2.0.55
Content-Length: 6100
Keep-Alive: timeout=30, max=509
Connection: Keep-Alive
Content-Type: application/xml; charset="utf-8"
207 Multi-Status
Re: WebDAV plugin bugs/missing functionality
This is the case for all servers running Apache 2 + mod_dav. See also the german forum here.wossName wrote: - I can't delete directories: it tries to delete it, but nothing happens.
- I can't rename directories: the error message "Cannot write xyz! Please remove the write protection!" appears.
You can test this behavior at the WebDAV Testing Server (click the link for more information), which is running Apache 2 + mod_dav.
- ghisler(Author)
- Site Admin
- Posts: 50479
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
I have now created a beta version 1.4 of the plugin which should be able to rename and delete directories on such servers. It should follow the redirect messages automatically. If it still fails, you can check a new option "Use \ was ending char for directories" in the server configuration, but this shouldn't really be necessary. It will make deletings a bit faster, though.
Aborting uploads _should_ work now too, please try it.
https://plugins.ghisler.com/beta/davplug_14beta.zip
Aborting uploads _should_ work now too, please try it.
https://plugins.ghisler.com/beta/davplug_14beta.zip
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
Renaming and deleting directories seems to work okay. With and without the new option. Only thing: when redirection takes place the logfile shows "HTTP error: " followed by some garbage!ghisler(Author) wrote:I have now created a beta version 1.4 of the plugin which should be able to rename and delete directories on such servers. It should follow the redirect messages automatically. If it still fails, you can check a new option "Use \ was ending char for directories" in the server configuration, but this shouldn't really be necessary. It will make deletings a bit faster, though.
Aborting uploads _should_ work now too, please try it.
Aborting uploads seems to work okay, but aborting in between uploads (when uploading a number of small files) seems to respond slower.
By the way: THANKS

- ghisler(Author)
- Site Admin
- Posts: 50479
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Yes, this is the error which caused the function to fail. It seems to be an error which is unknown to the Microsoft HTTP handler. I'm now handling this error manually and resubmit the command with an appended backslash.when redirection takes place the logfile shows "HTTP error: " followed by some garbage!
I will try to reproduce what you describe. Can you abort the uploads in the end, or not? Do you have to press Cancel multiple times?aborting in between uploads (when uploading a number of small files) seems to respond slower.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
I can always abort the uploads and only have to press Cancel once.ghisler(Author) wrote:I will try to reproduce what you describe. Can you abort the uploads in the end, or not? Do you have to press Cancel multiple times?aborting in between uploads (when uploading a number of small files) seems to respond slower.
It looks like it takes servers longer to send the dir listing after aborting an upload of a file than after aborting in between uploads. Resulting in a more smooth operation when uploading a number of small files with the old version of the WebDAV plugin.
Other things:
When the user aborts there is no mention in the log file.
When an abort takes place in between uploads, the logging of the last uploaded file is not finished (already wrong in previous version).
Aborting an upload will leave a partially uploaded file on one server (http://test.webdav.org/dav/) and no uploaded file on another server (secure server https://webdisk.xs4all.nl/<login>).
Test results (same results for WebDAV v1.3 and WebDAV v1.4 beta):
On secure server https://webdisk.xs4all.nl/<login> all directory entries a shown with a file size of 4096 bytes (so no "<DIR>"). Other than that the directories look (icon) and behave like directories (i.e. right click menu).
When you have a WebDAV dir shown in both panels (left and right), the copy dialog and move dialog are visually the same but have different meaning. The text "Copy" should be changed into "Move" for the move dialog.
When you have a WebDAV dir shown in both panels, the copy dialog and move dialog show the target dir in the title bar. I find this very user unfriendly and inconsistent. People normally do not read the title bar, because they do not expect important information there.
Same is done when installing a plugin and a plugin with this name has been installed already. TC shows the message "A plugin with this name is already installed in the following directory..." The name of the plugin concerned is shown in the title bar. This is bad. All information should be displayed inside the window and not in the title bar. People should not have to read the title bar!
When you have a WebDAV dir shown in both panels, and left and right panel are connected to the same server, it is very easy to copy or move a dir into a subdir of itself. This will result in a loop. Aborting the operation to get out of this loop will, in case of a move operation, lead to deletion of the directory and all contents!
A reread is done after clicking Cancel in the copy or move dialog. Why? (I do not mean aborting when the operation is already started.)
Several times I was able to crash TC doing nothing special. I cannot reproduce though, so I cannot be more specific.
On secure server https://webdisk.xs4all.nl/<login> all directory entries a shown with a file size of 4096 bytes (so no "<DIR>"). Other than that the directories look (icon) and behave like directories (i.e. right click menu).
When you have a WebDAV dir shown in both panels (left and right), the copy dialog and move dialog are visually the same but have different meaning. The text "Copy" should be changed into "Move" for the move dialog.
When you have a WebDAV dir shown in both panels, the copy dialog and move dialog show the target dir in the title bar. I find this very user unfriendly and inconsistent. People normally do not read the title bar, because they do not expect important information there.
Same is done when installing a plugin and a plugin with this name has been installed already. TC shows the message "A plugin with this name is already installed in the following directory..." The name of the plugin concerned is shown in the title bar. This is bad. All information should be displayed inside the window and not in the title bar. People should not have to read the title bar!
When you have a WebDAV dir shown in both panels, and left and right panel are connected to the same server, it is very easy to copy or move a dir into a subdir of itself. This will result in a loop. Aborting the operation to get out of this loop will, in case of a move operation, lead to deletion of the directory and all contents!
A reread is done after clicking Cancel in the copy or move dialog. Why? (I do not mean aborting when the operation is already started.)
Several times I was able to crash TC doing nothing special. I cannot reproduce though, so I cannot be more specific.
- ghisler(Author)
- Site Admin
- Posts: 50479
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Thanks for your comments, I will try to reproduce what you describe.
My plugin does not delete anything when you abort an operation, so this must be a bug of the server. I will try to catch the situation of copying into a subdir of a directory, though, and disallow it.When you have a WebDAV dir shown in both panels, and left and right panel are connected to the same server, it is very easy to copy or move a dir into a subdir of itself. This will result in a loop. Aborting the operation to get out of this loop will, in case of a move operation, lead to deletion of the directory and all contents!
Please try to reproduce what you did, otherwise I cannot help you with these problems.Several times I was able to crash TC doing nothing special.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
Actually according to TC's log file your plugin IS deleting the directory after aborting!ghisler(Author) wrote:My plugin does not delete anything when you abort an operation, so this must be a bug of the server..When you have a WebDAV dir shown in both panels, and left and right panel are connected to the same server, it is very easy to copy or move a dir into a subdir of itself. This will result in a loop. Aborting the operation to get out of this loop will, in case of a move operation, lead to deletion of the directory and all contents!
I created a dir 'testdir1' containing two files 'testfile1.txt' and 'testfile2.txt'. Then I moved testdir1 into itself. Tested at http://test.webdav.org/dav/ and at https://webdisk.xs4all.nl/<login>/
When I abort immediately it works okay:
When I wait a little longer the directory 'testdir1' and all contents is deleted.logfile wrote: Get dir: /dav\testdir1
PROPFIND /dav/testdir1/ HTTP/1.1
207 Multi-Status
=================
Create dir: /dav\testdir1\testdir1
MKCOL /dav/testdir1/testdir1 HTTP/1.1
201 Created
=================
Get dir: /dav\testdir1
PROPFIND /dav/testdir1/ HTTP/1.1
207 Multi-Status
=================
Get dir: /dav
PROPFIND /dav/ HTTP/1.1
207 Multi-Status
logfile (showing directory 'testdir1' is deleted) wrote: Get dir: /dav\testdir1
PROPFIND /dav/testdir1/ HTTP/1.1
207 Multi-Status
=================
Get dir: /dav\testdir1\
PROPFIND /dav/testdir1/ HTTP/1.1
207 Multi-Status
=================
Create dir: /dav\testdir1\testdir1
MKCOL /dav/testdir1/testdir1 HTTP/1.1
201 Created
=================
Get dir: /dav\testdir1\testdir1
PROPFIND /dav/testdir1/testdir1/ HTTP/1.1
207 Multi-Status
=================
Get dir: /dav\testdir1
PROPFIND /dav/testdir1/ HTTP/1.1
207 Multi-Status
=================
MOVE: /dav\testdir1\testfile1.txt->/dav\testdir1\testdir1\testfile1.txt
MOVE /dav/testdir1/testfile1.txt HTTP/1.1
201 Created
=================
MOVE: /dav\testdir1\testfile2.txt->/dav\testdir1\testdir1\testfile2.txt
MOVE /dav/testdir1/testfile2.txt HTTP/1.1
201 Created
=================
Create dir: /dav\testdir1\testdir1\testdir1
MKCOL /dav/testdir1/testdir1/testdir1 HTTP/1.1
201 Created
=================
Get dir: /dav\testdir1\testdir1\testdir1
PROPFIND /dav/testdir1/testdir1/testdir1/ HTTP/1.1
207 Multi-Status
=================
Get dir: /dav\testdir1\testdir1
PROPFIND /dav/testdir1/testdir1/ HTTP/1.1
207 Multi-Status
=================
MOVE: /dav\testdir1\testdir1\testfile1.txt->/dav\testdir1\testdir1\testdir1\testfile1.txt
MOVE /dav/testdir1/testdir1/testfile1.txt HTTP/1.1
201 Created
=================
MOVE: /dav\testdir1\testdir1\testfile2.txt->/dav\testdir1\testdir1\testdir1\testfile2.txt
MOVE /dav/testdir1/testdir1/testfile2.txt HTTP/1.1
201 Created
=================
Create dir: /dav\testdir1\testdir1\testdir1\testdir1
MKCOL /dav/testdir1/testdir1/testdir1/testdir1 HTTP/1.1
201 Created
=================
Get dir: /dav\testdir1\testdir1\testdir1\testdir1
PROPFIND /dav/testdir1/testdir1/testdir1/testdir1/ HTTP/1.1
207 Multi-Status
=================
File delete: /dav\testdir1\testdir1
DELETE /dav/testdir1/testdir1/ HTTP/1.1
204 No Content
=================
File delete: /dav\testdir1
DELETE /dav/testdir1/ HTTP/1.1
204 No Content
=================
Get dir: /dav\testdir1
PROPFIND /dav/testdir1/ HTTP/1.1
Error: 404 Not Found
=================
Get dir: /dav
PROPFIND /dav/ HTTP/1.1
207 Multi-Status
Then maybe you should have a look at FTP too. Using FTP I was also able to copy (not move!) a dir into itself and get into a loop.ghisler(Author) wrote: ..I will try to catch the situation of copying into a subdir of a directory, though, and disallow it.
I know. As I said I was not able to reproduce. I wanted to note it though.ghisler(Author) wrote:Please try to reproduce what you did, otherwise I cannot help you with these problems.Several times I was able to crash TC doing nothing special.
It's probably best to ignore it until it happens again or anyone else complains. I have three Inspector IIXII crash logs though if you are interested. (More about Inspector IIXII here).
empty password
Hallo,
I have the same problem with moving fieles.
Another thing: it would be nice to have the ability to store an empty password with alt-gr Enter (version beta 1.4). What works is to insert one blank " " and than store the password.
Thanks
ajoe
PS: the webdav plugin is the only reason way i use/discoverd TC. But until now i have to say it is a nice tool.
I have the same problem with moving fieles.
Another thing: it would be nice to have the ability to store an empty password with alt-gr Enter (version beta 1.4). What works is to insert one blank " " and than store the password.
Thanks
ajoe
PS: the webdav plugin is the only reason way i use/discoverd TC. But until now i have to say it is a nice tool.