version 1.10.6.1, 2013/01/17 16:33:57
|
version 1.12.2.1, 2013/05/26 20:24:52
|
Line 53 SUCH DAMAGE.
|
Line 53 SUCH DAMAGE.
|
* @len = BLOB length object |
* @len = BLOB length object |
* return: NULL error or !=NULL allocated BLOB object |
* return: NULL error or !=NULL allocated BLOB object |
*/ |
*/ |
inline rpc_blob_t * | rpc_blob_t * |
rpc_srv_blobCreate(rpc_srv_t * __restrict srv, int len) |
rpc_srv_blobCreate(rpc_srv_t * __restrict srv, int len) |
{ |
{ |
rpc_blob_t *blob = NULL; |
rpc_blob_t *blob = NULL; |
Line 111 again:
|
Line 111 again:
|
* @blob = Map to this BLOB element |
* @blob = Map to this BLOB element |
* return: -1 error or 0 ok |
* return: -1 error or 0 ok |
*/ |
*/ |
inline int | int |
rpc_srv_blobMap(rpc_srv_t * __restrict srv, rpc_blob_t * __restrict blob) |
rpc_srv_blobMap(rpc_srv_t * __restrict srv, rpc_blob_t * __restrict blob) |
{ |
{ |
int f; |
int f; |
Line 155 rpc_srv_blobMap(rpc_srv_t * __restrict srv, rpc_blob_t
|
Line 155 rpc_srv_blobMap(rpc_srv_t * __restrict srv, rpc_blob_t
|
* @blob = Mapped BLOB element |
* @blob = Mapped BLOB element |
* return: none |
* return: none |
*/ |
*/ |
inline void | void |
rpc_srv_blobUnmap(rpc_blob_t * __restrict blob) |
rpc_srv_blobUnmap(rpc_blob_t * __restrict blob) |
{ |
{ |
if (blob && blob->blob_data) { |
if (blob && blob->blob_data) { |
Line 171 rpc_srv_blobUnmap(rpc_blob_t * __restrict blob)
|
Line 171 rpc_srv_blobUnmap(rpc_blob_t * __restrict blob)
|
* @blob = Mapped BLOB element |
* @blob = Mapped BLOB element |
* return: -1 error or 0 ok |
* return: -1 error or 0 ok |
*/ |
*/ |
inline int | int |
rpc_srv_blobFree(rpc_srv_t * __restrict srv, rpc_blob_t * __restrict blob) |
rpc_srv_blobFree(rpc_srv_t * __restrict srv, rpc_blob_t * __restrict blob) |
{ |
{ |
char szFName[MAXPATHLEN]; |
char szFName[MAXPATHLEN]; |
Line 293 rpc_cli_sendBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
Line 293 rpc_cli_sendBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
hdr.hdr_var = 0; |
hdr.hdr_var = 0; |
hdr.hdr_ret = 0; |
hdr.hdr_ret = 0; |
hdr.hdr_len = htonl(AIT_LEN(var)); |
hdr.hdr_len = htonl(AIT_LEN(var)); |
/* calculate CRC */ |
|
hdr.hdr_crc ^= hdr.hdr_crc; |
|
hdr.hdr_crc = htons(crcFletcher16((u_short*) &hdr, sizeof hdr / 2)); |
|
|
|
/* send SET request */ |
/* send SET request */ |
pfd.fd = cli->cli_sock; |
pfd.fd = cli->cli_sock; |
Line 331 rpc_cli_sendBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
Line 328 rpc_cli_sendBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
LOGERR; |
LOGERR; |
return 1; |
return 1; |
} |
} |
/* check CRC */ |
|
ret = ntohs(hdr.hdr_crc); |
|
hdr.hdr_crc ^= hdr.hdr_crc; |
|
if (ret != crcFletcher16((u_short*) &hdr, sizeof hdr / 2)) { |
|
rpc_SetErr(ERPCMISMATCH, "Bad CRC BLOB packet"); |
|
return 1; |
|
} |
|
|
|
if (hdr.hdr_cmd != error) { |
if (hdr.hdr_cmd != error) { |
if (ntohl(hdr.hdr_len) != AIT_LEN(var)) { |
if (ntohl(hdr.hdr_len) != AIT_LEN(var)) { |
Line 386 rpc_cli_recvBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
Line 376 rpc_cli_recvBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
hdr.hdr_var = htonl((uint32_t) AIT_GET_BLOB(var)); |
hdr.hdr_var = htonl((uint32_t) AIT_GET_BLOB(var)); |
hdr.hdr_ret = 0; |
hdr.hdr_ret = 0; |
hdr.hdr_len = 0; |
hdr.hdr_len = 0; |
/* calculate CRC */ |
|
hdr.hdr_crc ^= hdr.hdr_crc; |
|
hdr.hdr_crc = htons(crcFletcher16((u_short*) &hdr, sizeof hdr / 2)); |
|
|
|
/* send GET request */ |
/* send GET request */ |
pfd.fd = cli->cli_sock; |
pfd.fd = cli->cli_sock; |
Line 443 rpc_cli_recvBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
Line 430 rpc_cli_recvBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
*data = NULL; |
*data = NULL; |
return 1; |
return 1; |
} |
} |
/* check CRC */ |
|
ret = ntohs(hdr.hdr_crc); |
|
hdr.hdr_crc ^= hdr.hdr_crc; |
|
if (ret != crcFletcher16((u_short*) &hdr, sizeof hdr / 2)) { |
|
rpc_SetErr(ERPCMISMATCH, "Bad CRC BLOB packet"); |
|
e_free(*data); |
|
*data = NULL; |
|
return 1; |
|
} |
|
if (hdr.hdr_cmd != error) { |
if (hdr.hdr_cmd != error) { |
if (ntohl(hdr.hdr_len) != AIT_LEN(var)) { |
if (ntohl(hdr.hdr_len) != AIT_LEN(var)) { |
rpc_SetErr(ECANCELED, "Bad return length packet"); |
rpc_SetErr(ECANCELED, "Bad return length packet"); |
Line 489 rpc_cli_delBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
Line 467 rpc_cli_delBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
hdr.hdr_var = htonl((uint32_t) AIT_GET_BLOB(var)); |
hdr.hdr_var = htonl((uint32_t) AIT_GET_BLOB(var)); |
hdr.hdr_ret = 0; |
hdr.hdr_ret = 0; |
hdr.hdr_len = 0; |
hdr.hdr_len = 0; |
/* calculate CRC */ |
|
hdr.hdr_crc ^= hdr.hdr_crc; |
|
hdr.hdr_crc = htons(crcFletcher16((u_short*) &hdr, sizeof hdr / 2)); |
|
|
|
/* send UNSET request */ |
/* send UNSET request */ |
pfd.fd = cli->cli_sock; |
pfd.fd = cli->cli_sock; |
Line 520 rpc_cli_delBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
Line 495 rpc_cli_delBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
LOGERR; |
LOGERR; |
return 1; |
return 1; |
} |
} |
/* check CRC */ |
|
ret = ntohs(hdr.hdr_crc); |
|
hdr.hdr_crc ^= hdr.hdr_crc; |
|
if (ret != crcFletcher16((u_short*) &hdr, sizeof hdr / 2)) { |
|
rpc_SetErr(ERPCMISMATCH, "Bad CRC BLOB packet"); |
|
return 1; |
|
} |
|
|
|
return hdr.hdr_cmd == error; |
return hdr.hdr_cmd == error; |
} |
} |
Line 539 rpc_cli_delBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
Line 507 rpc_cli_delBLOB(rpc_cli_t * __restrict cli, ait_val_t
|
* @data = BLOB data, must be e_free after use! |
* @data = BLOB data, must be e_free after use! |
* return: -1 error, 0 ok, 1 remote error |
* return: -1 error, 0 ok, 1 remote error |
*/ |
*/ |
inline int | int |
rpc_cli_getBLOB(rpc_cli_t * __restrict cli, ait_val_t * __restrict var, void ** __restrict data) |
rpc_cli_getBLOB(rpc_cli_t * __restrict cli, ait_val_t * __restrict var, void ** __restrict data) |
{ |
{ |
int ret; |
int ret; |