Commit f659f642 authored by Stanislav Kinsbursky's avatar Stanislav Kinsbursky Committed by Pavel Emelyanov

crtools: make pid parameter optional for open_image_ro()

Signed-off-by: 's avatarStanislav Kinsbursky <skinsbursky@openvz.org>
Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
parent 90376f22
...@@ -106,7 +106,7 @@ extern void close_image_dir(void); ...@@ -106,7 +106,7 @@ extern void close_image_dir(void);
int open_image(int type, unsigned long flags, ...); int open_image(int type, unsigned long flags, ...);
#define open_image_ro(type, ...) open_image(type, O_RDONLY, ##__VA_ARGS__) #define open_image_ro(type, ...) open_image(type, O_RDONLY, ##__VA_ARGS__)
extern int open_image_ro_nocheck(const char *fmt, int pid); extern int open_image_ro_nocheck(const char *fmt, ...);
#define LAST_PID_PATH "/proc/sys/kernel/ns_last_pid" #define LAST_PID_PATH "/proc/sys/kernel/ns_last_pid"
#define LAST_PID_PERM 0666 #define LAST_PID_PERM 0666
......
...@@ -129,15 +129,19 @@ int move_img_fd(int *img_fd, int want_fd) ...@@ -129,15 +129,19 @@ int move_img_fd(int *img_fd, int want_fd)
return 0; return 0;
} }
int open_image_ro_nocheck(const char *fmt, int pid) int open_image_ro_nocheck(const char *fmt, ...)
{ {
char path[PATH_MAX]; char path[PATH_MAX];
va_list args;
int tmp; int tmp;
sprintf(path, fmt, pid); va_start(args, fmt);
vsprintf(path, fmt, args);
va_end(args);
tmp = openat(image_dir_fd, path, O_RDONLY); tmp = openat(image_dir_fd, path, O_RDONLY);
if (tmp < 0) if (tmp < 0)
pr_warn("Can't open image %s for %d: %m\n", fmt, pid); pr_warn("Can't open image %s: %m\n", path);
return tmp; return tmp;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment