int l = strlen(path);
return strcmp(subpath, path) == 0
- || (strncmp(subpath, path, l) == 0 && path[l] == '/'
- && is_mountpoint(path));
+ || (strncmp(subpath, path, l) == 0 && path[l] == '/');
}
static int path_matches(nfs_export *exp, char *path)
found_type = i;
continue;
}
+
+ /* Always prefer non-V4ROOT mounts */
+ if (found->m_export.e_flags & NFSEXP_V4ROOT)
+ continue;
+
/* If one is a CROSSMOUNT, then prefer the longest path */
if (((found->m_export.e_flags & NFSEXP_CROSSMOUNT) ||
(exp->m_export.e_flags & NFSEXP_CROSSMOUNT)) &&