--- libaitrpc/inc/aitrpc.h 2012/05/17 09:32:51 1.8.2.18 +++ libaitrpc/inc/aitrpc.h 2012/05/17 14:22:24 1.8.2.19 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aitrpc.h,v 1.8.2.18 2012/05/17 09:32:51 misho Exp $ +* $Id: aitrpc.h,v 1.8.2.19 2012/05/17 14:22:24 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -233,7 +233,7 @@ typedef struct { typedef int (*rpc_callback_t)(rpc_func_t *, struct tagRPCCall *, array_t *); -// ----------------------------------------------------------------------- +/* ----------------------------------------------------------------------- */ /* Error support functions */ @@ -330,7 +330,7 @@ int rpc_srv_loopServer(rpc_srv_t * __restrict srv); * @diskDir = Disk place for BLOB file objects * return: -1 == error or 0 bind and created BLOB server instance */ -int rpc_srv_initBLOBServer(rpc_srv_t * __restrict srv, u_short Port, const char *diskDir); +int rpc_srv_initBLOBServer(rpc_srv_t * __restrict srv, unsigned short Port, const char *diskDir); /* * rpc_srv_endBLOBServer() - Destroy BLOB server, close all opened sockets and free resources * @@ -534,12 +534,19 @@ void rpc_cli_closeClient(rpc_cli_t ** __restrict cli); * @cli = RPC Client session * @noreply = We not want RPC reply * @tag = Function tag for execution - * @in_vars = IN RPC call array of rpc values - * @out_vars = OUT returned array of rpc values, must be free after use with rpc_cli_freeVals() + * @in_vars = IN RPC call array of rpc values, may be NULL + * @out_vars = OUT returned array of rpc values, if !=NULL must be free after use with io_freeVars() * return: -1 error or != -1 ok result */ -int rpc_cli_execCall(rpc_cli_t *cli, int noreply, u_short tag, +int rpc_cli_execCall(rpc_cli_t *cli, int noreply, unsigned short tag, array_t * __restrict in_vars, array_t ** __restrict out_vars); +/* + * rpc_cli_ping() - Ping RPC server + * + * @cli = connected client + * return: -1 error or !=-1 ping seq id + */ +inline int rpc_cli_ping(rpc_cli_t *cli); /* @@ -549,7 +556,7 @@ int rpc_cli_execCall(rpc_cli_t *cli, int noreply, u_sh * @Port = Port for bind server, if Port == 0 default port is selected * return: NULL == error or !=NULL connection to BLOB server established */ -rpc_cli_t *rpc_cli_openBLOBClient(rpc_cli_t * __restrict rpccli, u_short Port); +rpc_cli_t *rpc_cli_openBLOBClient(rpc_cli_t * __restrict rpccli, unsigned short Port); /* * rpc_cli_closeBLOBClient() - Close connection to BLOB server and free resources *