fs.archive icon indicating copy to clipboard operation
fs.archive copied to clipboard

`isofs` seems to report `case_insensitive` incorrectly for Rock Ridge

Open dcoshea opened this issue 2 years ago • 2 comments

From inspection (I haven't done testing) of fs.archive 0.7.2, it looks to me like fs.archive.isofs reports that it is case_insensitive in the following way:

if self._rock_ridge or self._joliet: True else if self._cd.interchange_level < 4: True else: False

I searched online and according to quite a few pages I found it seems like Rock Ridge is actually case-sensitive. I don't know if pycdlib has any restrictions of its own in this regard though.

After looking into this, I figured out that I don't actually care how it reports case_insensitive for my project, so I'm not actually affected by this issue.

dcoshea avatar Mar 20 '22 08:03 dcoshea

The actual code for reporting in ISOFS is about the following:

if not (self._rock_ridge or self._joliet):
    meta['case_insensitive'] = self._cd.interchange_level < 4
    meta['max_path_length'] = 255

So the ISOFS filesystem is only marked case-insensitive if neither RockRidge or Joliet extensions are available, and the interchange level is lower than 4.

althonos avatar Mar 24 '22 10:03 althonos

Isn't it the case that in the (self._rock_ridge or self._joliet) case, it uses the corresponding (might I say "default"?) value in ISOReadFS._meta, which is True?

dcoshea avatar Mar 24 '22 11:03 dcoshea