diff options
Diffstat (limited to 'util')
-rw-r--r-- | util/fusermount.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/util/fusermount.c b/util/fusermount.c index f55d92b..93a44e2 100644 --- a/util/fusermount.c +++ b/util/fusermount.c @@ -574,6 +574,11 @@ static int do_mount(const char *mnt, const char *type, mode_t rootmode, } res = mount(fsname, mnt, type, flags, optbuf); + if (res == -1 && errno == EINVAL) { + /* It could be an old version not supporting group_id */ + sprintf(d, "fd=%i,rootmode=%o,user_id=%i", fd, rootmode, getuid()); + res = mount(fsname, mnt, type, flags, optbuf); + } if (res == -1) { fprintf(stderr, "%s: mount failed: %s\n", progname, strerror(errno)); free(fsname); |