summaryrefslogtreecommitdiffstats
path: root/sys/isofs/cd9660
diff options
context:
space:
mode:
authorbp <bp@FreeBSD.org>2001-03-11 10:05:08 +0000
committerbp <bp@FreeBSD.org>2001-03-11 10:05:08 +0000
commitc259a60fbb24af2792958372205c7b1652d0d044 (patch)
treebf24cdddc58b977ea343f8c04c85e77ac5bac614 /sys/isofs/cd9660
parent13607586552a34e4142ab379b7b1631c43377ed2 (diff)
downloadFreeBSD-src-c259a60fbb24af2792958372205c7b1652d0d044.zip
FreeBSD-src-c259a60fbb24af2792958372205c7b1652d0d044.tar.gz
Add a mount time option which slightly relaxes checks for valid Joilet
extensions. PR: kern/23315 Reviewed by: adrian
Diffstat (limited to 'sys/isofs/cd9660')
-rw-r--r--sys/isofs/cd9660/cd9660_mount.h1
-rw-r--r--sys/isofs/cd9660/cd9660_vfsops.c3
2 files changed, 3 insertions, 1 deletions
diff --git a/sys/isofs/cd9660/cd9660_mount.h b/sys/isofs/cd9660/cd9660_mount.h
index 5263912..8cc6a86 100644
--- a/sys/isofs/cd9660/cd9660_mount.h
+++ b/sys/isofs/cd9660/cd9660_mount.h
@@ -52,3 +52,4 @@ struct iso_args {
#define ISOFSMNT_GENS 0x00000002 /* enable generation numbers */
#define ISOFSMNT_EXTATT 0x00000004 /* enable extended attributes */
#define ISOFSMNT_NOJOLIET 0x00000008 /* disable Joliet Ext.*/
+#define ISOFSMNT_BROKENJOLIET 0x00000010/* allow broken Joliet disks */
diff --git a/sys/isofs/cd9660/cd9660_vfsops.c b/sys/isofs/cd9660/cd9660_vfsops.c
index 606f9d3..e73fb7e 100644
--- a/sys/isofs/cd9660/cd9660_vfsops.c
+++ b/sys/isofs/cd9660/cd9660_vfsops.c
@@ -355,7 +355,8 @@ iso_mountfs(devvp, mp, p, argp)
if (bcmp(sup->escape, "%/E", 3) == 0)
joliet_level = 3;
- if (isonum_711 (sup->flags) & 1)
+ if ((isonum_711 (sup->flags) & 1) &&
+ (argp->flags & ISOFSMNT_BROKENJOLIET) == 0)
joliet_level = 0;
}
}
OpenPOWER on IntegriCloud