Commit 00dbc43e by Daniel Lezcano

fix console overwrite any file

Prevent to specify a file not belonging to us as the output for the console Signed-off-by: 's avatarDaniel Lezcano <dlezcano@fr.ibm.com>
parent 28f602ff
...@@ -30,10 +30,10 @@ ...@@ -30,10 +30,10 @@
#include <sys/types.h> #include <sys/types.h>
#include <sys/un.h> #include <sys/un.h>
#include <lxc/log.h> #include "log.h"
#include <lxc/conf.h> #include "conf.h"
#include <lxc/start.h> /* for struct lxc_handler */ #include "start.h" /* for struct lxc_handler */
#include "caps.h"
#include "commands.h" #include "commands.h"
#include "mainloop.h" #include "mainloop.h"
#include "af_unix.h" #include "af_unix.h"
...@@ -192,7 +192,8 @@ int lxc_create_console(struct lxc_conf *conf) ...@@ -192,7 +192,8 @@ int lxc_create_console(struct lxc_conf *conf)
goto err; goto err;
} }
fd = open(console->path, O_CLOEXEC | O_RDWR | O_CREAT | O_APPEND, 0600); fd = lxc_unpriv(open(console->path, O_CLOEXEC | O_RDWR | O_CREAT |
O_APPEND, 0600));
if (fd < 0) { if (fd < 0) {
SYSERROR("failed to open '%s'", console->path); SYSERROR("failed to open '%s'", console->path);
goto err; goto err;
......
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