version 1.1.1.1.2.6, 2010/06/23 15:07:15
|
version 1.1.1.1.2.9, 2010/06/23 17:29:07
|
Line 19
|
Line 19
|
#include <sys/socket.h> |
#include <sys/socket.h> |
|
|
|
|
#define STRSIZ 256 |
|
|
|
#define RPC_VERSION 1 |
#define RPC_VERSION 1 |
#define RPC_DEFPORT 2611 |
#define RPC_DEFPORT 2611 |
|
|
Line 49 typedef enum {
|
Line 47 typedef enum {
|
} rpc_type_t; |
} rpc_type_t; |
|
|
typedef enum { |
typedef enum { |
disable, enable, | disable, enable, // for blob.state |
get, set, unset | ok, error, // for blob reply |
| get, set, unset // for blob request |
} cmd_type_t; |
} cmd_type_t; |
|
|
/* RPC value */ |
/* RPC value */ |
Line 240 typedef struct {
|
Line 239 typedef struct {
|
|
|
// BLOB registration element! |
// BLOB registration element! |
typedef struct tagBLOB { |
typedef struct tagBLOB { |
rpc_cli_t *blob_cli; // from RPC client |
|
|
|
uint32_t blob_var; |
uint32_t blob_var; |
|
|
size_t blob_len; // size of allocated BLOB data |
size_t blob_len; // size of allocated BLOB data |
Line 422 inline int rpc_srv_delValsCall(rpc_func_t * __restrict
|
Line 419 inline int rpc_srv_delValsCall(rpc_func_t * __restrict
|
* return: -1 error, !=-1 Number of returned variables |
* return: -1 error, !=-1 Number of returned variables |
*/ |
*/ |
inline int rpc_srv_getValsCall(rpc_func_t * __restrict call, rpc_val_t ** __restrict vals); |
inline int rpc_srv_getValsCall(rpc_func_t * __restrict call, rpc_val_t ** __restrict vals); |
|
|
|
|
|
/* |
|
* rpc_srv_blobMap() Map blob to memory region |
|
* @srv = RPC Server instance |
|
* @blob = Map to this BLOB element |
|
* return: -1 error or 0 ok |
|
*/ |
|
inline int rpc_srv_blobMap(rpc_srv_t * __restrict srv, rpc_blob_t * __restrict blob); |
|
/* |
|
* rpc_srv_blobUnmap() Unmap blob memory region |
|
* @blob = Mapped BLOB element |
|
* return: none |
|
*/ |
|
inline void rpc_srv_blobUnmap(rpc_blob_t * __restrict blob); |
|
/* |
|
* rpc_srv_blobFree() Free blob from disk & memory |
|
* @srv = RPC Server instance |
|
* @blob = Mapped BLOB element |
|
* return: -1 error or 0 ok |
|
*/ |
|
inline int rpc_srv_blobFree(rpc_srv_t * __restrict srv, rpc_blob_t * __restrict blob); |
|
|
|
/* |
|
* rpc_srv_sendBLOB() Send mapped BLOB to client |
|
* @cli = Client instance |
|
* @blob = Mapped BLOB element |
|
* return: -1 error, 0 ok |
|
*/ |
|
int rpc_srv_sendBLOB(rpc_cli_t * __restrict cli, rpc_blob_t * __restrict blob); |
|
/* |
|
* rpc_srv_recvBLOB() Receive BLOB from client |
|
* @cli = Client instance |
|
* return: -1 error, 0 ok |
|
*/ |
|
int rpc_srv_recvBLOB(rpc_cli_t * __restrict cli); |
|
|
|
|
/* RPC Client side functions */ |
/* RPC Client side functions */ |