|
version 1.8.2.2, 2012/05/15 20:49:24
|
version 1.8.2.6, 2012/05/16 07:24:08
|
|
Line 58 SUCH DAMAGE.
|
Line 58 SUCH DAMAGE.
|
| #endif |
#endif |
| #include <sys/socket.h> |
#include <sys/socket.h> |
| #include <sys/queue.h> |
#include <sys/queue.h> |
| #include <sys/time.h> |
|
| #include <aitio.h> |
#include <aitio.h> |
| #include <aitsched.h> |
#include <aitsched.h> |
| |
|
|
Line 73 SUCH DAMAGE.
|
Line 72 SUCH DAMAGE.
|
| |
|
| /* RPC builtin registed calls */ |
/* RPC builtin registed calls */ |
| |
|
| |
#define CALL_MAX_ID 65535 |
| |
|
| #define CALL_BLOBSHUTDOWN "rpcBLOBServerShutdown" |
#define CALL_BLOBSHUTDOWN "rpcBLOBServerShutdown" |
| |
#define CALL_BLOBSHUTDOWN_ID 65530 |
| #define CALL_BLOBCLIENTS "rpcBLOBServerClients" |
#define CALL_BLOBCLIENTS "rpcBLOBServerClients" |
| |
#define CALL_BLOBCLIENTS_ID 65529 |
| #define CALL_BLOBVARS "rpcBLOBServerVars" |
#define CALL_BLOBVARS "rpcBLOBServerVars" |
| |
#define CALL_BLOBVARS_ID 65528 |
| #define CALL_BLOBSTATE "rpcBLOBServerState" |
#define CALL_BLOBSTATE "rpcBLOBServerState" |
| |
#define CALL_BLOBSTATE_ID 65527 |
| |
|
| #define CALL_SRVSHUTDOWN "rpcServerShutdown" |
#define CALL_SRVSHUTDOWN "rpcServerShutdown" |
| |
#define CALL_SRVSHUTDOWN_ID 65534 |
| #define CALL_SRVCLIENTS "rpcServerClients" |
#define CALL_SRVCLIENTS "rpcServerClients" |
| |
#define CALL_SRVCLIENTS_ID 65533 |
| #define CALL_SRVCALLS "rpcServerCalls" |
#define CALL_SRVCALLS "rpcServerCalls" |
| |
#define CALL_SRVCALLS_ID 65532 |
| #define CALL_SRVSESSIONS "rpcServerSessions" |
#define CALL_SRVSESSIONS "rpcServerSessions" |
| |
#define CALL_SRVSESSIONS_ID 65531 |
| |
|
| |
|
| /* RPC types */ |
/* RPC types */ |
|
Line 144 struct tagRPCCall {
|
Line 153 struct tagRPCCall {
|
| uint16_t call_tag; |
uint16_t call_tag; |
| uint16_t call_argc; |
uint16_t call_argc; |
| ait_val_t call_argv[0]; |
ait_val_t call_argv[0]; |
| } __packed; /* size == 24 bytes */ | } __packed; /* size == 24 bytes */ |
| |
|
| /* Network BLOB packet - Header */ |
/* Network BLOB packet - Header */ |
| |
|
|
Line 259 inline int rpc_addPktSession(rpc_sess_t *p, rpc_sess_t
|
Line 268 inline int rpc_addPktSession(rpc_sess_t *p, rpc_sess_t
|
| * return: -1 error or 0 ok |
* return: -1 error or 0 ok |
| */ |
*/ |
| int rpc_register_srvServices(rpc_srv_t * __restrict srv); |
int rpc_register_srvServices(rpc_srv_t * __restrict srv); |
| |
/* |
| |
* rpc_register_blobServices() - Register internal service functions |
| |
* |
| |
* @srv = RPC server instance |
| |
* return: -1 error or 0 ok |
| |
*/ |
| |
int rpc_register_blobServices(rpc_srv_t * __restrict srv); |
| |
|
| |
|
| /* RPC Server side functions */ |
/* RPC Server side functions */ |
|
Line 336 int rpc_srv_loopBLOB(rpc_srv_t * __restrict srv);
|
Line 352 int rpc_srv_loopBLOB(rpc_srv_t * __restrict srv);
|
| * rpc_srv_registerCall() - Register call to RPC server |
* rpc_srv_registerCall() - Register call to RPC server |
| * |
* |
| * @srv = RPC Server instance |
* @srv = RPC Server instance |
| * @csModule = Module name, if NULL self binary | * @tag = Function tag |
| * @csFunc = Function name | * @funcaddr = Function address |
| * @args = Number of return function arguments, use for restriction case! | * @args = Number of return function arguments |
| * return: -1 error or 0 register ok | * return: -1 error, 0 already registered tag or 1 register ok |
| */ |
*/ |
| int rpc_srv_registerCall(rpc_srv_t * __restrict srv, const char *csModule, const char *csFunc, | int rpc_srv_registerCall(rpc_srv_t * __restrict srv, unsigned short tag, |
| unsigned short args); | void *funcaddr, unsigned short args); |
| /* |
/* |
| * rpc_srv_unregisterCall() - Unregister call from RPC server |
* rpc_srv_unregisterCall() - Unregister call from RPC server |
| * |
* |
| * @srv = RPC Server instance |
* @srv = RPC Server instance |
| * @csModule = Module name, if NULL self binary | * @tag = Function tag |
| * @csFunc = Function name | |
| * return: -1 error, 0 not found call, 1 unregister ok |
* return: -1 error, 0 not found call, 1 unregister ok |
| */ |
*/ |
| int rpc_srv_unregisterCall(rpc_srv_t * __restrict srv, const char *csModule, const char *csFunc); | int rpc_srv_unregisterCall(rpc_srv_t * __restrict srv, unsigned short tag); |
| /* |
/* |
| * rpc_srv_getFunc() - Get registered call from RPC server by Name | * rpc_srv_getCall() - Get registered call from RPC server |
| * |
* |
| * @srv = RPC Server instance |
* @srv = RPC Server instance |
| * @csModule = Module name, if NULL self binary |
|
| * @csFunc = Function name |
|
| * return: NULL not found call, !=NULL return call |
|
| */ |
|
| rpc_func_t *rpc_srv_getFunc(rpc_srv_t * __restrict srv, const char *csModule, const char *csFunc); |
|
| /* |
|
| * rpc_srv_getCall() - Get registered call from RPC server |
|
| * |
|
| * @srv = RPC Server instance |
|
| * @tag = tag for function |
* @tag = tag for function |
| * return: NULL not found call, !=NULL return call |
* return: NULL not found call, !=NULL return call |
| */ |
*/ |
|
Line 382 int rpc_srv_execCall(rpc_func_t * __restrict call, str
|
Line 388 int rpc_srv_execCall(rpc_func_t * __restrict call, str
|
| |
|
| |
|
| /* |
/* |
| * rpc_srv_getVars() - Get variables array for RPC call |
|
| * |
|
| * @call = RPC function call |
|
| * @vars = Returned variables array, may be NULL |
|
| * return: -1 error, !=-1 Number of returned variables |
|
| */ |
|
| inline int rpc_srv_getVars(rpc_func_t * __restrict call, array_t ** __restrict vars); |
|
| |
|
| |
|
| /* |
|
| * rpc_srv_blobCreate() - Create map blob to memory region and return object |
* rpc_srv_blobCreate() - Create map blob to memory region and return object |
| * |
* |
| * @srv = RPC Server instance |
* @srv = RPC Server instance |
|
Line 503 int rpc_cli_delBLOB(rpc_cli_t * __restrict cli, ait_va
|
Line 499 int rpc_cli_delBLOB(rpc_cli_t * __restrict cli, ait_va
|
| */ |
*/ |
| inline int rpc_cli_getBLOB(rpc_cli_t * __restrict cli, ait_val_t * __restrict var, |
inline int rpc_cli_getBLOB(rpc_cli_t * __restrict cli, ait_val_t * __restrict var, |
| void ** __restrict data); |
void ** __restrict data); |
| |
|
| |
|
| /* |
|
| * rpc_calcHashes() - Calculate hashes for RPC call |
|
| * |
|
| * @func = function |
|
| * @csModule = Module name, if NULL self binary |
|
| * @csFunc = Function name |
|
| * return: -1 error or 0 ok |
|
| */ |
|
| int rpc_calcHashes(rpc_func_t * __restrict func, const char *csModule, const char *csFunc); |
|
| |
|
| |
|
| /* RPC Client side functions */ |
/* RPC Client side functions */ |