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);
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]);
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;
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)
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);
*/
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];
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);
+ if (ret < 0) {
lxc_sync_fini(handler);
return -1;
}
int pinfd;
const char *lxcpath;
void *cgroup_data;
- int ttysock[2]; // socketpair for child->parent tty fd passing
- bool backgrounded; // indicates whether should we close std{in,out,err} on start
+
+ /* 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;
int nsfd[LXC_NS_MAX];
int netnsfd;
- /* The socketpair() fds used to wait on successful daemonized
- * startup.
- */
+ /* The socketpair() fds used to wait on successful daemonized startup. */
int state_socket_pair[2];
struct lxc_list state_clients;
};