Skip to content

Commit

Permalink
start: non-functional changes
Browse files Browse the repository at this point in the history
This renames the socketpair() variable "ttysock" to "data_sock" since we will
use it to send arbitrary data around, not just ttys anymore.

Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
  • Loading branch information
Christian Brauner committed Sep 1, 2017
1 parent 535e885 commit c601257
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 12 deletions.
6 changes: 3 additions & 3 deletions src/lxc/conf.c
Expand Up @@ -3071,7 +3071,7 @@ static int lxc_send_ttys_to_parent(struct lxc_handler *handler)
struct lxc_pty_info *pty_info;
struct lxc_conf *conf = handler->conf;
const struct lxc_tty_info *tty_info = &conf->tty_info;
int sock = handler->ttysock[0];
int sock = handler->data_sock[0];
int ret = -1;
size_t num_ttyfds = (2 * conf->tty);

Expand All @@ -3095,8 +3095,8 @@ static int lxc_send_ttys_to_parent(struct lxc_handler *handler)
else
TRACE("sent %d ttys to parent", conf->tty);

close(handler->ttysock[0]);
close(handler->ttysock[1]);
close(handler->data_sock[0]);
close(handler->data_sock[1]);

for (i = 0; i < num_ttyfds; i++)
close(ttyfds[i]);
Expand Down
15 changes: 8 additions & 7 deletions src/lxc/start.c
Expand Up @@ -535,7 +535,7 @@ struct lxc_handler *lxc_init_handler(const char *name, struct lxc_conf *conf,

memset(handler, 0, sizeof(*handler));

handler->ttysock[0] = handler->ttysock[1] = -1;
handler->data_sock[0] = handler->data_sock[1] = -1;
handler->conf = conf;
handler->lxcpath = lxcpath;
handler->pinfd = -1;
Expand Down Expand Up @@ -759,9 +759,9 @@ void lxc_fini(const char *name, struct lxc_handler *handler)
free(cur);
}

if (handler->ttysock[0] != -1) {
close(handler->ttysock[0]);
close(handler->ttysock[1]);
if (handler->data_sock[0] != -1) {
close(handler->data_sock[0]);
close(handler->data_sock[1]);
}

if (handler->conf->ephemeral == 1 && handler->conf->reboot != 1)
Expand Down Expand Up @@ -1128,7 +1128,7 @@ static int lxc_recv_ttys_from_child(struct lxc_handler *handler)
int *ttyfds;
struct lxc_pty_info *pty_info;
int ret = -1;
int sock = handler->ttysock[1];
int sock = handler->data_sock[1];
struct lxc_conf *conf = handler->conf;
struct lxc_tty_info *tty_info = &conf->tty_info;
size_t num_ttyfds = (2 * conf->tty);
Expand Down Expand Up @@ -1201,7 +1201,7 @@ void resolve_clone_flags(struct lxc_handler *handler)
*/
static int lxc_spawn(struct lxc_handler *handler)
{
int i, flags, nveths;
int i, flags, nveths, ret;
const char *name = handler->name;
bool wants_to_map_ids;
int netpipepair[2], saved_ns_fd[LXC_NS_MAX];
Expand All @@ -1220,7 +1220,8 @@ static int lxc_spawn(struct lxc_handler *handler)
if (lxc_sync_init(handler))
return -1;

if (socketpair(AF_UNIX, SOCK_DGRAM, 0, handler->ttysock) < 0) {
ret = socketpair(AF_UNIX, SOCK_DGRAM, 0, handler->data_sock);

This comment has been minimized.

Copy link
@brauner

brauner Sep 1, 2017

Member

Should be |ed with SOCK_CLOEXEC.

if (ret < 0) {
lxc_sync_fini(handler);
return -1;
}
Expand Down
6 changes: 4 additions & 2 deletions src/lxc/start.h
Expand Up @@ -49,8 +49,10 @@ struct lxc_handler {
const char *lxcpath;
void *cgroup_data;

/* socketpair for child->parent tty fd passing */
int ttysock[2];
/* Abstract unix domain SOCK_DGRAM socketpair to pass arbitrary data
* between child and parent.
*/
int data_sock[2];

/* indicates whether should we close std{in,out,err} on start */
bool backgrounded;
Expand Down

0 comments on commit c601257

Please sign in to comment.