Skip to content

Commit

Permalink
namespaces: allow a pathname to a nsfd for namespace to share
Browse files Browse the repository at this point in the history
Signed-off-by: Serge Hallyn <[email protected]>
  • Loading branch information
hallyn committed May 2, 2019
1 parent 0b5afd3 commit 39e6fd3
Showing 1 changed file with 9 additions and 5 deletions.
14 changes: 9 additions & 5 deletions src/lxc/confile_utils.c
Original file line number Diff line number Diff line change
Expand Up @@ -859,23 +859,27 @@ static int lxc_container_name_to_pid(const char *lxcname_or_pid,
return pid;
}

int lxc_inherit_namespace(const char *lxcname_or_pid, const char *lxcpath,
int lxc_inherit_namespace(const char *nsfd_path, const char *lxcpath,
const char *namespace)
{
int fd, pid;
char *dup, *lastslash;

lastslash = strrchr(lxcname_or_pid, '/');
if (nsfd_path[0] == '/') {
return open(nsfd_path, O_RDONLY | O_CLOEXEC);
}

lastslash = strrchr(nsfd_path, '/');
if (lastslash) {
dup = strdup(lxcname_or_pid);
dup = strdup(nsfd_path);
if (!dup)
return -1;

dup[lastslash - lxcname_or_pid] = '\0';
dup[lastslash - nsfd_path] = '\0';
pid = lxc_container_name_to_pid(lastslash + 1, dup);
free(dup);
} else {
pid = lxc_container_name_to_pid(lxcname_or_pid, lxcpath);
pid = lxc_container_name_to_pid(nsfd_path, lxcpath);
}

if (pid < 0)
Expand Down

0 comments on commit 39e6fd3

Please sign in to comment.