ISO9660 bug and loopback driver bug

From: Barubary (barubary@cox.net)
Date: Tue Feb 26 2002 - 06:37:04 EST


First, the ISO9660 bug. The ISO file system driver in Linux doesn't handle
leap years correctly. It assumes all years divisible by 4 are leap years,
which is incorrect. For those that don't know the right algorithm, all
years that (are divisible by 4) and ((not divisible by 100), or (divisible
by 400)) are leap years. ISO file dates on or after March 1, 2100 will be 1
day off when viewed under Linux as a result. The bug is in fs/isofs/util.c,
function iso_date(). This is a very low priority bug, because a) nobody
cares about ISO file date accuracy including me; and b) it shouldn't matter
until 2100. Anyone bored enough to fix this? :) I guess I could do it...

Now the loopback bug. Files whose size is greater than 2^31-1 don't work
with the loopback driver. It fails with strange errors, like "device not
found". This bug prevents DVD-ROM .iso files from being mounted as either
UDF or ISO file systems - the particular use I encountered it with. It's a
bit higher of a priority than the ISO9660 date bug, because it prevents
useful features from working. Still not too important though.

The above were encountered on 2.4.17, and are both in 2.4.18.

-- Barubary

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Feb 28 2002 - 21:00:26 EST