Visual Compare/Date Modified Incorrect

airoid

2008-08-25 02:15:26

For some reason, the date modified value on the remote server is always 8 hours later than the local modified value. This, of course, it causing Visual Compare to show all files as "not equal." Not only does my ftp server support MLSD, but the timezone on the remote server and the local browser are the same. Is there something I'm missing?

mb

2008-08-25 02:26:34

Hello ..

Many servers have a buggy MLSD implementation (PureFTPd is one of them) and therefore the date/time is always wrong. But if you post the log we can tell you more.

Regards,
Mat

airoid

2008-08-25 09:32:53

Yep, PureFTPd would be the one installed. Anything else I can do besides disabling the Visual Compare date/time check?

[02:29:50] Remote file exist check: "generate.php".

[02:29:50] MLST generate.php

[02:29:50] 250-Begin

[02:29:50] type=file;size=2234;modify=20080825155815;UNIX.mode=0644;UNIX.uid=32063;UNIX.gid

=32020;unique=80g29cda5a; generate.php

[02:29:50] 250 End.

[02:29:50] Source File: Size=2234, SizeUnit=Byte, Time=2008-08-25T07:58:15, TimeFormat=Exact

[02:29:50] Destination File: Size=2234, SizeUnit=Byte, Time=2008-08-25T15:58:15, TimeFormat=Exact

[02:29:50] RecentTime=2008-08-25T09:29:50

[02:29:50] No rule matched. Default Action="Overwrite".

[02:29:50] TYPE I

[02:29:50] 200 TYPE is now 8-bit binary

[02:29:50] PASV

[02:29:50] 227 Entering Passive Mode (REMOVED,66,166)

[02:29:50] Opening data connection to REMOVED Port: 17062

[02:29:50] STOR generate.php

[02:29:50] 150 Accepted data connection

[02:29:50] 2234 bytes transferred. (17.4 KB/s) (125 ms)

[02:29:50] 226-File successfully transferred

[02:29:50] 226 0.135 seconds (measured here), 16.14 Kbytes per second

[02:29:50] MDTM 20080825075815 generate.php

[02:29:50] 550 Can't check for file existence

[02:29:50] MFMT 20080825075815 generate.php

[02:29:50] 500 Unknown command

[02:29:50] SITE UTIME generate.php 20080825075815 20080825075815 20080825075815 UTC

[02:29:50] 250 UTIME OK

[02:29:50] MLST generate.php

[02:29:51] 250-Begin

[02:29:51] type=file;size=2234;modify=20080825155815;UNIX.mode=0644;UNIX.uid=32063;UNIX.gid

=32020;unique=80g29cda5a; generate.php

[02:29:51] 250 End.

mb

2008-08-25 15:58:42

Hello ..

Yeah it's the bug the pureftp developer refuses to fix. You can see it in the log:
[02:29:50] SITE UTIME generate.php 20080825075815 20080825075815 20080825075815 UTC
[02:29:50] 250 UTIME OK
-> SmartFTP set the time (UTC) to 20080825075815
[02:29:50] MLST generate.php
[02:29:51] 250-Begin
[02:29:51] type=file;size=2234;modify=20080825155815;UNIX.mode=0644;UNIX.uid=32063;UNIX.gid
=32020;unique=80g29cda5a; generate.php
[02:29:51] 250 End.
-> PureFTPD reports the time (UTC) as 20080825155815

=> 8 hours difference.

We have reported it several times to the pureftpd developer but he does not care to reply. Unfortunately if you do not want to switch your FTP server, respectively your web hosting provider there is not much you or we can do.

Regards,
Mat

airoid

2008-08-28 19:16:18

The developer actually responded very quickly to the first e-mail I sent him explaining my problem. He told me the ftp server requires times be received in UTC format, and so do most ftp clients. When I replied with the log I posted here, and explained that my client was providing UTC format, he never answered. I love it when people ignore e-mails.

mb

2008-08-28 19:32:56

I do not really understand why the pureftpd developer refuses to fix this bug. Bugs happen all the time and it's no shame to fix them.

In case you are looking for another FTP server the latest version (RC) of proftpd includes some great enhancements (MLST, MLSD, MFMT, working SITE UTIME). There is also a plugin available for the file integrity checks we wrote (XCRC, XMD5, etc):
https://www.smartftp.com/oss/proftpd/

Regards,
Mat