Skip to content

Commit

Permalink
commands: cleanup macros in lxc_cmd_console()
Browse files Browse the repository at this point in the history
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
  • Loading branch information
Christian Brauner committed Feb 18, 2019
1 parent 2ebc7bd commit 8259d86
Showing 1 changed file with 5 additions and 9 deletions.
14 changes: 5 additions & 9 deletions src/lxc/commands.c
Expand Up @@ -698,8 +698,8 @@ static int lxc_cmd_terminal_winch_callback(int fd, struct lxc_cmd_req *req,
*/
int lxc_cmd_console(const char *name, int *ttynum, int *fd, const char *lxcpath)
{
__do_free struct lxc_cmd_console_rsp_data *rspdata = NULL;
int ret, stopped;
struct lxc_cmd_console_rsp_data *rspdata;
struct lxc_cmd_rr cmd = {
.req = { .cmd = LXC_CMD_CONSOLE, .data = INT_TO_PTR(*ttynum) },
};
Expand All @@ -708,32 +708,28 @@ int lxc_cmd_console(const char *name, int *ttynum, int *fd, const char *lxcpath)
if (ret < 0)
return ret;

rspdata = cmd.rsp.data;
if (cmd.rsp.ret < 0) {
errno = -cmd.rsp.ret;
SYSERROR("Denied access to tty");
ret = -1;
goto out;
return -1;
}

if (ret == 0) {
ERROR("tty number %d invalid, busy or all ttys busy", *ttynum);
ret = -1;
goto out;
return -1;
}

rspdata = cmd.rsp.data;
if (rspdata->masterfd < 0) {
ERROR("Unable to allocate fd for tty %d", rspdata->ttynum);
goto out;
return -1;
}

ret = cmd.rsp.ret; /* socket fd */
*fd = rspdata->masterfd;
*ttynum = rspdata->ttynum;
INFO("Alloced fd %d for tty %d via socket %d", *fd, rspdata->ttynum, ret);

out:
free(cmd.rsp.data);
return ret;
}

Expand Down

0 comments on commit 8259d86

Please sign in to comment.