mnt: use /run/usr/<uid> first when mounting dirs

This commit is contained in:
Robert Swiecki 2019-03-18 16:37:04 +01:00
parent 8059747016
commit 9fe225dbe2
2 changed files with 13 additions and 4 deletions

View File

@ -4,14 +4,14 @@ package nsjail;
enum Mode {
LISTEN = 0; /* Listening on a TCP port */
ONCE = 1; /* Running the command once only */
RERUN = 2; /* Re-executing the command (forever) */
ONCE = 1; /* Running the command once only */
RERUN = 2; /* Re-executing the command (forever) */
EXECVE = 3; /* Executing command w/o the supervisor */
}
/* Should be self explanatory */
enum LogLevel {
DEBUG = 0; /* Equivalent to the '-v' cmd-line option */
INFO = 1; /* Default level */
DEBUG = 0; /* Equivalent to the '-v' cmd-line option */
INFO = 1; /* Default level */
WARNING = 2; /* Equivalent to the '-q' cmd-line option */
ERROR = 3;
FATAL = 4;

9
mnt.cc
View File

@ -282,6 +282,15 @@ static bool mkdirAndTest(const std::string& dir) {
static std::unique_ptr<std::string> getDir(nsjconf_t* nsjconf, const char* name) {
std::unique_ptr<std::string> dir(new std::string);
dir->assign("/run/user/")
.append(std::to_string(nsjconf->orig_uid))
.append("/nsjail.")
.append(std::to_string(nsjconf->orig_uid))
.append(".")
.append(name);
if (mkdirAndTest(*dir)) {
return dir;
}
dir->assign("/run/user/")
.append("/nsjail.")
.append(std::to_string(nsjconf->orig_uid))