version 1.2.4.3, 2011/08/19 09:20:46
|
version 1.3.2.2, 2011/08/30 11:13:29
|
Line 49 SUCH DAMAGE.
|
Line 49 SUCH DAMAGE.
|
/* builtin RPC server functions */ |
/* builtin RPC server functions */ |
|
|
int |
int |
rpcServerClients(rpc_func_t *call, int ic, rpc_val_t *iv) | rpcServerClients(rpc_func_t *call, int ic, ait_val_t *iv) |
{ |
{ |
rpc_srv_t *srv; |
rpc_srv_t *srv; |
rpc_val_t *v, *vals; | ait_val_t *v, *vals; |
rpc_cli_t *cli; |
rpc_cli_t *cli; |
register int i; |
register int i; |
const char *str = NULL; |
const char *str = NULL; |
Line 72 rpcServerClients(rpc_func_t *call, int ic, rpc_val_t *
|
Line 72 rpcServerClients(rpc_func_t *call, int ic, rpc_val_t *
|
|
|
for (i = 0, cli = srv->srv_clients, v = vals; i < srv->srv_numcli; i++, cli++) { |
for (i = 0, cli = srv->srv_clients, v = vals; i < srv->srv_numcli; i++, cli++) { |
if (!cli->cli_sa.sa_family) { |
if (!cli->cli_sa.sa_family) { |
RPC_SET_STR(v++, ""); | AIT_SET_STR(v++, ""); |
continue; |
continue; |
} |
} |
|
|
Line 91 rpcServerClients(rpc_func_t *call, int ic, rpc_val_t *
|
Line 91 rpcServerClients(rpc_func_t *call, int ic, rpc_val_t *
|
break; |
break; |
} |
} |
if (str) |
if (str) |
RPC_SET_STR(v++, (char*) str); | AIT_SET_STR(v++, (char*) str); |
else |
else |
RPC_SET_STR(v++, "0.0.0.0"); | AIT_SET_STR(v++, "0.0.0.0"); |
} |
} |
|
|
return 0; |
return 0; |
} |
} |
|
|
int |
int |
rpcServerCalls(rpc_func_t *call, int ic, rpc_val_t *iv) | rpcServerCalls(rpc_func_t *call, int ic, ait_val_t *iv) |
{ |
{ |
rpc_srv_t *srv; |
rpc_srv_t *srv; |
rpc_val_t *v, *vals; | ait_val_t *v, *vals; |
rpc_func_t *f; |
rpc_func_t *f; |
register int i; |
register int i; |
char str[MAXPATHLEN]; |
char str[MAXPATHLEN]; |
Line 120 rpcServerCalls(rpc_func_t *call, int ic, rpc_val_t *iv
|
Line 120 rpcServerCalls(rpc_func_t *call, int ic, rpc_val_t *iv
|
|
|
for (f = srv->srv_funcs, v = vals; f; f = f->func_next) { |
for (f = srv->srv_funcs, v = vals; f; f = f->func_next) { |
if (*f->func_name) { |
if (*f->func_name) { |
memset(str, 0, MAXPATHLEN); | memset(str, 0, sizeof str); |
snprintf(str, MAXPATHLEN, "/%s/%s()", f->func_file, f->func_name); | snprintf(str, sizeof str, "/%s/%s()", f->func_file, f->func_name); |
RPC_SET_STR(v++, str); | AIT_SET_STR(v++, str); |
} |
} |
} |
} |
|
|
Line 130 rpcServerCalls(rpc_func_t *call, int ic, rpc_val_t *iv
|
Line 130 rpcServerCalls(rpc_func_t *call, int ic, rpc_val_t *iv
|
} |
} |
|
|
int |
int |
rpcServerSessions(rpc_func_t *call, int ic, rpc_val_t *iv) | rpcServerSessions(rpc_func_t *call, int ic, ait_val_t *iv) |
{ |
{ |
rpc_srv_t *srv; |
rpc_srv_t *srv; |
rpc_val_t *vals; | ait_val_t *vals; |
|
|
RPC_CALLBACK_CHECK_INPUT(call); |
RPC_CALLBACK_CHECK_INPUT(call); |
if (!call->func_parent) |
if (!call->func_parent) |
Line 144 rpcServerSessions(rpc_func_t *call, int ic, rpc_val_t
|
Line 144 rpcServerSessions(rpc_func_t *call, int ic, rpc_val_t
|
if (!(vals = rpc_srv_returnVars(call, 4))) |
if (!(vals = rpc_srv_returnVars(call, 4))) |
return -1; |
return -1; |
|
|
RPC_SET_U8(&vals[0], srv->srv_session.sess_version); | AIT_SET_U8(&vals[0], srv->srv_session.sess_version); |
RPC_SET_U32(&vals[1], srv->srv_session.sess_program); | AIT_SET_U32(&vals[1], srv->srv_session.sess_program); |
RPC_SET_U32(&vals[2], srv->srv_session.sess_process); | AIT_SET_U32(&vals[2], srv->srv_session.sess_process); |
RPC_SET_I32(&vals[3], srv->srv_numcli); | AIT_SET_I32(&vals[3], srv->srv_numcli); |
|
|
return 0; |
return 0; |
} |
} |
|
|
int |
int |
rpcServerShutdown(rpc_func_t *call, int ic, rpc_val_t *iv) | rpcServerShutdown(rpc_func_t *call, int ic, ait_val_t *iv) |
{ |
{ |
rpc_srv_t *srv; |
rpc_srv_t *srv; |
|
|
Line 173 rpcServerShutdown(rpc_func_t *call, int ic, rpc_val_t
|
Line 173 rpcServerShutdown(rpc_func_t *call, int ic, rpc_val_t
|
// ---------------------------------------------------- |
// ---------------------------------------------------- |
|
|
int |
int |
rpcBLOBServerShutdown(rpc_func_t *call, int ic, rpc_val_t *iv) | rpcBLOBServerShutdown(rpc_func_t *call, int ic, ait_val_t *iv) |
{ |
{ |
rpc_srv_t *srv; |
rpc_srv_t *srv; |
|
|
Line 191 rpcBLOBServerShutdown(rpc_func_t *call, int ic, rpc_va
|
Line 191 rpcBLOBServerShutdown(rpc_func_t *call, int ic, rpc_va
|
} |
} |
|
|
int |
int |
rpcBLOBServerVars(rpc_func_t *call, int ic, rpc_val_t *iv) | rpcBLOBServerVars(rpc_func_t *call, int ic, ait_val_t *iv) |
{ |
{ |
rpc_srv_t *srv; |
rpc_srv_t *srv; |
rpc_val_t *v, *vals; | ait_val_t *v, *vals; |
rpc_blob_t *b; |
rpc_blob_t *b; |
register int i; |
register int i; |
|
|
Line 212 rpcBLOBServerVars(rpc_func_t *call, int ic, rpc_val_t
|
Line 212 rpcBLOBServerVars(rpc_func_t *call, int ic, rpc_val_t
|
} |
} |
|
|
for (b = srv->srv_blob.blobs, v = vals; b; b = b->blob_next) |
for (b = srv->srv_blob.blobs, v = vals; b; b = b->blob_next) |
RPC_SET_U32(v++, b->blob_var); | AIT_SET_U32(v++, b->blob_var); |
pthread_mutex_unlock(&srv->srv_blob.mtx); |
pthread_mutex_unlock(&srv->srv_blob.mtx); |
|
|
return 0; |
return 0; |
} |
} |
|
|
int |
int |
rpcBLOBServerState(rpc_func_t *call, int ic, rpc_val_t *iv) | rpcBLOBServerState(rpc_func_t *call, int ic, ait_val_t *iv) |
{ |
{ |
rpc_srv_t *srv; |
rpc_srv_t *srv; |
|
|
Line 229 rpcBLOBServerState(rpc_func_t *call, int ic, rpc_val_t
|
Line 229 rpcBLOBServerState(rpc_func_t *call, int ic, rpc_val_t
|
else |
else |
srv = call->func_parent; |
srv = call->func_parent; |
|
|
if (iv[0].val_type != i32) | if (AIT_TYPE(&iv[0]) != i32) |
return -1; |
return -1; |
|
|
srv->srv_blob.state = RPC_GET_I32(&iv[0]); | srv->srv_blob.state = AIT_GET_I32(&iv[0]); |
return 0; |
return 0; |
} |
} |
|
|
int |
int |
rpcBLOBServerClients(rpc_func_t *call, int ic, rpc_val_t *iv) | rpcBLOBServerClients(rpc_func_t *call, int ic, ait_val_t *iv) |
{ |
{ |
rpc_srv_t *srv; |
rpc_srv_t *srv; |
rpc_val_t *v, *vals; | ait_val_t *v, *vals; |
rpc_cli_t *cli; |
rpc_cli_t *cli; |
register int i; |
register int i; |
const char *str = NULL; |
const char *str = NULL; |
Line 260 rpcBLOBServerClients(rpc_func_t *call, int ic, rpc_val
|
Line 260 rpcBLOBServerClients(rpc_func_t *call, int ic, rpc_val
|
|
|
for (i = 0, cli = srv->srv_blob.clients, v = vals; i < srv->srv_numcli; i++, cli++) { |
for (i = 0, cli = srv->srv_blob.clients, v = vals; i < srv->srv_numcli; i++, cli++) { |
if (!cli->cli_sa.sa_family) { |
if (!cli->cli_sa.sa_family) { |
RPC_SET_STR(v++, ""); | AIT_SET_STR(v++, ""); |
continue; |
continue; |
} |
} |
|
|
Line 279 rpcBLOBServerClients(rpc_func_t *call, int ic, rpc_val
|
Line 279 rpcBLOBServerClients(rpc_func_t *call, int ic, rpc_val
|
break; |
break; |
} |
} |
if (str) |
if (str) |
RPC_SET_STR(v++, (char*) str); | AIT_SET_STR(v++, (char*) str); |
else |
else |
RPC_SET_STR(v++, "0.0.0.0"); | AIT_SET_STR(v++, "0.0.0.0"); |
} |
} |
|
|
return 0; |
return 0; |