--- libaitio/src/sock.c 2013/12/15 22:57:20 1.12 +++ libaitio/src/sock.c 2013/12/18 12:36:21 1.12.2.1 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: sock.c,v 1.12 2013/12/15 22:57:20 misho Exp $ +* $Id: sock.c,v 1.12.2.1 2013/12/18 12:36:21 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -246,7 +246,7 @@ io_rxPty(sched_task_t *task) static void * io_bridgeClient(sched_task_t *task) { - int c, rlen; + int c, rlen, pty; pid_t pid; sockaddr_t sa; socklen_t salen = sizeof sa.ss; @@ -290,12 +290,14 @@ io_bridgeClient(sched_task_t *task) AIT_SET_BUFSIZ(&cli->cli_buf[0], 0, AIT_LEN(&s->sock_buf)); AIT_SET_BUFSIZ(&cli->cli_buf[1], 0, AIT_LEN(&s->sock_buf)); - switch ((pid = ioForkPTY(&cli->cli_pty, cli->cli_name, sizeof cli->cli_name, + switch ((pid = ioForkPTY(&pty, cli->cli_name, sizeof cli->cli_name, NULL, NULL, NULL))) { case -1: ELIBERR(io); break; case 0: + cli->cli_pty = pty; + array_Args(cli->cli_cmdline, 0, " \t", &args); argv = array_To(args); array_Destroy(&args); @@ -307,6 +309,7 @@ io_bridgeClient(sched_task_t *task) _exit(rlen); break; default: + cli->cli_pty = pty; cli->cli_pid = pid; schedRead(TASK_ROOT(task), io_rxPty, cli, cli->cli_pty,