mirror of
https://git.proxmox.com/git/mirror_lxc
synced 2025-07-26 23:37:22 +00:00
syscall_wrappers: add pivot_root()
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
This commit is contained in:
parent
2a2d77c356
commit
6b3d24d716
@ -74,6 +74,7 @@
|
||||
#include "start.h"
|
||||
#include "storage.h"
|
||||
#include "storage/overlay.h"
|
||||
#include "syscall_wrappers.h"
|
||||
#include "terminal.h"
|
||||
#include "utils.h"
|
||||
|
||||
@ -124,21 +125,6 @@ thread_local struct lxc_conf *current_config;
|
||||
struct lxc_conf *current_config;
|
||||
#endif
|
||||
|
||||
/* Define pivot_root() if missing from the C library */
|
||||
#ifndef HAVE_PIVOT_ROOT
|
||||
static int pivot_root(const char *new_root, const char *put_old)
|
||||
{
|
||||
#ifdef __NR_pivot_root
|
||||
return syscall(__NR_pivot_root, new_root, put_old);
|
||||
#else
|
||||
errno = ENOSYS;
|
||||
return -1;
|
||||
#endif
|
||||
}
|
||||
#else
|
||||
extern int pivot_root(const char *new_root, const char *put_old);
|
||||
#endif
|
||||
|
||||
char *lxchook_names[NUM_LXC_HOOKS] = {
|
||||
"pre-start",
|
||||
"pre-mount",
|
||||
|
@ -48,4 +48,18 @@ static inline long __keyctl(int cmd, unsigned long arg2, unsigned long arg3,
|
||||
#define keyctl __keyctl
|
||||
#endif
|
||||
|
||||
#if !HAVE_PIVOT_ROOT
|
||||
static int pivot_root(const char *new_root, const char *put_old)
|
||||
{
|
||||
#ifdef __NR_pivot_root
|
||||
return syscall(__NR_pivot_root, new_root, put_old);
|
||||
#else
|
||||
errno = ENOSYS;
|
||||
return -1;
|
||||
#endif
|
||||
}
|
||||
#else
|
||||
extern int pivot_root(const char *new_root, const char *put_old);
|
||||
#endif
|
||||
|
||||
#endif /* __LXC_SYSCALL_WRAPPER_H */
|
||||
|
Loading…
Reference in New Issue
Block a user