version 1.7, 2012/03/15 01:55:33
|
version 1.7.2.1, 2012/03/28 01:17:09
|
Line 114 execCall(sched_task_t *task)
|
Line 114 execCall(sched_task_t *task)
|
ioTRACE(RPC_TRACE_LEVEL); |
ioTRACE(RPC_TRACE_LEVEL); |
|
|
/* Go decapsulate variables ... */ |
/* Go decapsulate variables ... */ |
if (!(rpc->call_req.flags & RPC_NOREPLY) && argc) { | if (argc) { |
arr = io_buffer2vars(buf + sizeof(struct tagRPCCall), |
arr = io_buffer2vars(buf + sizeof(struct tagRPCCall), |
TASK_DATLEN(task) - sizeof(struct tagRPCCall), argc, 1); |
TASK_DATLEN(task) - sizeof(struct tagRPCCall), argc, 1); |
if (!arr) { |
if (!arr) { |
Line 135 execCall(sched_task_t *task)
|
Line 135 execCall(sched_task_t *task)
|
ioDEBUG(RPC_DEBUG_LEVEL, "RPC function %s from module %s", |
ioDEBUG(RPC_DEBUG_LEVEL, "RPC function %s from module %s", |
AIT_GET_STR(&f->func_name), AIT_GET_LIKE(&f->func_file, char*)); |
AIT_GET_STR(&f->func_name), AIT_GET_LIKE(&f->func_file, char*)); |
|
|
|
/* if client doesn't want reply */ |
|
argc = rpc->call_req.flags & RPC_NOREPLY; |
rpc->call_rep.ret = RPC_ERROR(rpc_srv_execCall(f, rpc, arr)); |
rpc->call_rep.ret = RPC_ERROR(rpc_srv_execCall(f, rpc, arr)); |
if (rpc->call_rep.ret == htonl(-1)) { |
if (rpc->call_rep.ret == htonl(-1)) { |
rpc->call_rep.eno = RPC_ERROR(errno); |
rpc->call_rep.eno = RPC_ERROR(errno); |
rpc->call_argc ^= rpc->call_argc; |
rpc->call_argc ^= rpc->call_argc; |
} else { |
} else { |
rpc->call_rep.eno ^= rpc->call_rep.eno; |
rpc->call_rep.eno ^= rpc->call_rep.eno; |
rpc->call_argc = htons(rpc_srv_getVars(f, NULL)); | if (argc) { |
| /* without reply */ |
| io_clrVars(f->func_vars); |
| rpc->call_argc ^= rpc->call_argc; |
| } else |
| rpc->call_argc = htons(rpc_srv_getVars(f, NULL)); |
} |
} |
} |
} |
|
|
Line 312 rxBLOB(sched_task_t *task)
|
Line 319 rxBLOB(sched_task_t *task)
|
ioTRACE(RPC_TRACE_LEVEL); |
ioTRACE(RPC_TRACE_LEVEL); |
|
|
/* check for disable service at this moment? */ |
/* check for disable service at this moment? */ |
if (s->srv_blob.state == disable) { | if (!s || s->srv_blob.state == disable) { |
usleep(100000); |
usleep(100000); |
#ifdef HAVE_PTHREAD_YIELD |
#ifdef HAVE_PTHREAD_YIELD |
pthread_yield(); |
pthread_yield(); |