Amir Shalem found some bugs in the new mount code; unknown options didn't get

added to the list, and my assumption that nfsmount() actually called
mount() was incorrect (and I coded it wrong anyway; I hate having to touch
codepaths I can't personally test).
This commit is contained in:
Rob Landley 2005-08-30 17:07:49 +00:00
parent cc8885f6f3
commit 9a643149de

View File

@ -99,12 +99,12 @@ static void parse_mount_options(char *options, int *flags, char **strflags)
} }
} }
// Unrecognized mount option? // Unrecognized mount option?
if(i == sizeof(mount_options)) { if(i == (sizeof(mount_options) / sizeof(*mount_options))) {
// Add it to strflags, to pass on to kernel // Add it to strflags, to pass on to kernel
i = *strflags ? strlen(*strflags) : 0; i = *strflags ? strlen(*strflags) : 0;
*strflags = xrealloc(*strflags, i+strlen(options)+2); *strflags = xrealloc(*strflags, i+strlen(options)+2);
// Comma separated if it's not the first one // Comma separated if it's not the first one
if(i) (*strflags)[i] = ','; if(i) (*strflags)[i++] = ',';
strcpy((*strflags)+i, options); strcpy((*strflags)+i, options);
} }
// Advance to next option, or finish // Advance to next option, or finish
@ -286,6 +286,8 @@ singlemount:
else { else {
rc = 0; rc = 0;
fsType="nfs"; fsType="nfs";
// Strangely enough, nfsmount() doesn't actually mount()
goto mount_it_now;
} }
} else { } else {