From: Christian Brauner Date: Thu, 19 Mar 2020 12:11:03 +0000 (+0100) Subject: conf: don't accidently double-mount X-Git-Tag: lxc-4.0.0~18^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f759178580231ea87ed95941e2d74f0f131bd29f;p=thirdparty%2Flxc.git conf: don't accidently double-mount Closes #3073. Signed-off-by: Christian Brauner --- diff --git a/src/lxc/conf.c b/src/lxc/conf.c index 40db20c3f..5c280c381 100644 --- a/src/lxc/conf.c +++ b/src/lxc/conf.c @@ -1847,17 +1847,15 @@ static int mount_entry(const char *fsname, const char *target, } if ((mountflags & MS_REMOUNT) || (mountflags & MS_BIND)) { - unsigned long rqd_flags = 0; + unsigned long required_flags = 0; DEBUG("Remounting \"%s\" on \"%s\" to respect bind or remount options", srcpath ? srcpath : "(none)", target ? target : "(none)"); if (mountflags & MS_RDONLY) - rqd_flags |= MS_RDONLY; + required_flags |= MS_RDONLY; #ifdef HAVE_STATVFS if (srcpath && statvfs(srcpath, &sb) == 0) { - unsigned long required_flags = rqd_flags; - if (sb.f_flag & MS_NOSUID) required_flags |= MS_NOSUID; @@ -1878,8 +1876,7 @@ static int mount_entry(const char *fsname, const char *target, * mountflags, then skip the remount. */ if (!(mountflags & MS_REMOUNT)) { - if (!(required_flags & ~mountflags) && - rqd_flags == 0) { + if (!(required_flags & ~mountflags)) { DEBUG("Mountflags already were %lu, skipping remount", mountflags); goto skipremount; }