diff options
Diffstat (limited to 'ufs/main.c')
-rw-r--r-- | ufs/main.c | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -33,6 +33,8 @@ char * trans_parse_args (int argc, char **arg) { #ifdef notyet + /* Option to set compat_mode should be provided here. */ + /* When started as a translator, we are called with the device name and an optional argument -r, which signifies read-only. */ @@ -128,6 +130,7 @@ main (int argc, char **argv) { devname = diskfs_parse_bootargs (argc, argv); diskfs_dotdot_file = MACH_PORT_NULL; + compat_mode = COMPAT_GNU; } diskfs_init_diskfs (); @@ -161,6 +164,13 @@ main (int argc, char **argv) exit (1); } + /* If the filesystem has new features in it, don't pay attention to + the user's request not to use them. */ + if ((sblock->fs_inodefmt == FS_44INODEFMT + || direct_symlink_extension) + && compat_mode == COMPAT_BSD42) + compat_mode = COMPAT_BSD44; + if (!diskfs_readonly) { sblock->fs_clean = 0; |