long chunk_size,
ASYNC_BYTE_PIPE *in_pipe)
{
- long ret;
+ RPC_STATUS status;
+ long ret = -1;
byte *in_bytes;
int in_alloc_size;
int in_bytes_count;
printf("TestBytePipeIn: Start\n");
fflush(stdout);
- in_alloc_size = 5840 * sizeof(byte);
+ in_alloc_size = chunk_size * sizeof(byte);
in_bytes = malloc(in_alloc_size);
+ if (in_bytes == NULL) {
+ printf("nomem: %d\n", in_alloc_size);
+ fflush(stdout);
+ ret = -2;
+ goto done;
+ }
in_bytes_count = chunk_size;
for (i=0; in_bytes_count > 0; i++) {
in_bytes_count = 0;
- in_pipe->pull(in_pipe->state, in_bytes, in_alloc_size, &in_bytes_count);
+ status = in_pipe->pull(in_pipe->state, in_bytes, in_alloc_size, &in_bytes_count);
+ if (status != 0) {
+ printf("status: %d\n", status);
+ fflush(stdout);
+ ret = -3;
+ goto done;
+ }
printf("pull[%u] bytes_count[%u]\n", i, in_bytes_count);
fflush(stdout);
}
- printf("TestBytePipeIn: End\n");
- fflush(stdout);
ret = i;
+done:
+ printf("TestBytePipeIn: End ret[%d]\n", ret);
+ fflush(stdout);
+ if (in_bytes) {
+ free(in_bytes);
+ }
RpcAsyncCompleteCall(TestBytePipeIn_AsyncHandle, &ret);
}
long chunk_size,
ASYNC_BYTE_PIPE *out_pipe)
{
- long ret;
+ RPC_STATUS status;
+ long ret = -1;
byte *out_bytes = NULL;
unsigned long out_alloc_size = 0;
unsigned long out_bytes_count = 0;
fflush(stdout);
out_alloc_size = chunk_size * sizeof(byte);
- out_pipe->alloc(out_pipe->state, out_alloc_size, &out_bytes, &out_bytes_count);
+ status = out_pipe->alloc(out_pipe->state, out_alloc_size, &out_bytes, &out_bytes_count);
+ if (status != 0) {
+ printf("status: %d\n", status);
+ fflush(stdout);
+ ret = -2;
+ goto done;
+ }
memset(out_bytes, 0xCC, out_bytes_count * sizeof(byte));
for (i = 0; i <= num_chunks; i++) {
}
printf("[%u] push outb_len[%u]\n", i, out_bytes_count);
fflush(stdout);
- out_pipe->push(out_pipe->state, out_bytes, out_bytes_count);
+ status = out_pipe->push(out_pipe->state, out_bytes, out_bytes_count);
+ if (status != 0) {
+ printf("status: %d\n", status);
+ fflush(stdout);
+ ret = -3;
+ goto done;
+ }
}
- printf("TestBytePipeOut: End\n");
- fflush(stdout);
ret = i;
+done:
+ printf("TestBytePipeOut: End ret[%d]\n", ret);
+ fflush(stdout);
+ if (out_bytes) {
+ free(out_bytes);
+ }
RpcAsyncCompleteCall(TestBytePipeOut_AsyncHandle, &ret);
}