Comment 16 for bug 311818

Revision history for this message
Tehnick (tehnick) wrote : Re: case-sensitivity in Unix systems

Hi to all.

In EiskaltDC++ project we are using case-sensitive share now.
See patch to the current linuxdcpp trunk branch.

> 1) adc (explicitly) and nmdc (implicitly) are case insensitive so we can't allow files with different case in the share

I am not see hard correlation between the protocols and data content in the file list.

> 2) the file system is case insensitive, so we can't try to write files that differ only in case. it is however case preserving so most of the time (when the filename comes from the filesystem itself), it shouldn't need to be lowercased...if however the filename can come from other sources (someone elses file list, user typing etc), something has to be done...

At first, look here:
http://en.wikipedia.org/wiki/Comparison_of_file_systems#cite_note-note-36-70
http://en.wikipedia.org/wiki/Comparison_of_file_systems#Features
http://en.wikipedia.org/wiki/NTFS
As you can see this is only MS Windows trouble...

At second, DC client is should not think for the user what to do when a similar file already exists in the destination directory.

> the ADC spec forbids this: "each file or directory name must be unique in a case-insensitive context"

The file name does not matter, important is only TTH, which is really unique identifier. TTH is not depend on the file name. And this is its great advantage over torrents.

> If you would share file's with the same case insensitive name, someone (on windows) downloading both files, would get an error.

This is not DC-client problem on my opinion.

For example, file sharing using samba-server and various ftp-servers is provide access to all files, regardless of the symbols register in file names. And this is user problem, if he can not copy a few of them simultaneously...

So you are using unjustified artificial restriction, which only discourage users to engage in file-sharing...