mirror of
https://git.proxmox.com/git/mirror_lxc
synced 2025-07-27 08:12:20 +00:00
remove pivotdir only if it was created by us
The removal does not account for possible leading path components that were also created during creation of pivotdir. Signed-off-by: Ferenc Wagner <wferi@niif.hu> Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
This commit is contained in:
parent
b1789442d6
commit
a91d897a7b
@ -464,6 +464,7 @@ static int setup_rootfs_pivot_root(const char *rootfs, const char *pivotdir)
|
||||
void *cbparm[2];
|
||||
struct lxc_list mountlist, *iterator;
|
||||
int ok, still_mounted, last_still_mounted;
|
||||
int remove_pivotdir = 0;
|
||||
|
||||
/* change into new root fs */
|
||||
if (chdir(rootfs)) {
|
||||
@ -484,6 +485,7 @@ static int setup_rootfs_pivot_root(const char *rootfs, const char *pivotdir)
|
||||
return -1;
|
||||
}
|
||||
|
||||
remove_pivotdir = 1;
|
||||
DEBUG("created '%s' directory", path);
|
||||
}
|
||||
|
||||
@ -573,8 +575,8 @@ static int setup_rootfs_pivot_root(const char *rootfs, const char *pivotdir)
|
||||
|
||||
/* remove temporary mount point, we don't consider the removing
|
||||
* as fatal */
|
||||
if (rmdir(pivotdir))
|
||||
WARN("can't remove mountpoint: %m");
|
||||
if (remove_pivotdir && rmdir(pivotdir))
|
||||
WARN("can't remove mountpoint '%s': %m", pivotdir);
|
||||
|
||||
INFO("pivoted to '%s'", rootfs);
|
||||
return 0;
|
||||
|
Loading…
Reference in New Issue
Block a user