exit((out != stdout) ? EINVAL : 0);
}
-static int check_mtab_entry(char *spec, char *mtpt, char *type)
+static int check_mtab_entry(char *spec1, char *spec2, char *mtpt, char *type)
{
FILE *fp;
struct mntent *mnt;
return(0);
while ((mnt = getmntent(fp)) != NULL) {
- if (strcmp(mnt->mnt_fsname, spec) == 0 &&
+ if ((strcmp(mnt->mnt_fsname, spec1) == 0 ||
+ strcmp(mnt->mnt_fsname, spec2) == 0) &&
strcmp(mnt->mnt_dir, mtpt) == 0 &&
strcmp(mnt->mnt_type, type) == 0) {
endmntent(fp);
}
if (!force) {
- rc = check_mtab_entry(usource, target, "lustre");
+ rc = check_mtab_entry(usource, source, target, "lustre");
if (rc && !(flags & MS_REMOUNT)) {
fprintf(stderr, "%s: according to %s %s is "
"already mounted on %s\n",