--- libaitio/inc/aitio.h 2013/11/21 15:01:22 1.36.2.4 +++ libaitio/inc/aitio.h 2013/11/22 15:08:49 1.37.4.1 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aitio.h,v 1.36.2.4 2013/11/21 15:01:22 misho Exp $ +* $Id: aitio.h,v 1.37.4.1 2013/11/22 15:08:49 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -86,10 +86,12 @@ struct tagCliSock { int cli_pty; sockaddr_t cli_addr; char cli_name[64]; + char cli_cmdline[PATH_MAX]; + pid_t cli_pid; sched_task_func_t cli_func; - ait_val_t cli_buf; + ait_val_t cli_buf[2]; TAILQ_ENTRY(tagCliSock) cli_node; }; @@ -172,6 +174,14 @@ void ioUpdTimerSocket(sock_cli_t * __restrict c); * return: -1 error or return result from scheduler */ int ioLoopSocket(sock_t * __restrict s, sched_task_func_t rcb); +/* + * ioBridgeProg2Socket() - Start socket scheduler and bridge program to socket + * + * @s = Socket + * @prgname = Program name + * return: 0 ok or !=0 error + */ +int ioBridgeProg2Socket(sock_t * __restrict s, const char *prgname); /* * ioPromptRead() - Read data from input h[0] with prompt to output h[1] @@ -182,7 +192,8 @@ int ioLoopSocket(sock_t * __restrict s, sched_task_fun * @dataLen = Length of data * return: 0 EOF; -1 error:: can`t read; >0 count of readed chars */ -int ioPromptRead(int *h, const char *csPrompt, char * __restrict psData, int dataLen); +int ioPromptRead(int *h, const char *csPrompt, + char * __restrict psData, int dataLen); /* * ioPromptPassword() - Read password from input h[0] with prompt to output h[1] * @@ -193,7 +204,8 @@ int ioPromptRead(int *h, const char *csPrompt, char * * @confirm = Confirm password, 0 - get password, !=0 Ask for confirmation * return: 0 EOF; -1 error:: can`t read; >0 count of readed chars */ -int ioPromptPassword(int *h, const char *csPrompt, char * __restrict psPass, int passLen, int confirm); +int ioPromptPassword(int *h, const char *csPrompt, + char * __restrict psPass, int passLen, int confirm); /*