improved the client sample code a bit
This commit is contained in:
parent
b3c0640ba6
commit
41b7237ae5
20
lib/main-c.c
20
lib/main-c.c
@ -68,6 +68,7 @@ struct client_xtn_t
|
|||||||
} logbuf;
|
} logbuf;
|
||||||
|
|
||||||
int reply_count;
|
int reply_count;
|
||||||
|
hcl_oow_t data_length;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* ========================================================================= */
|
/* ========================================================================= */
|
||||||
@ -449,7 +450,8 @@ static int start_reply (hcl_client_t* client, hcl_client_reply_type_t type, cons
|
|||||||
{
|
{
|
||||||
/* short-form response - no end_reply will be called */
|
/* short-form response - no end_reply will be called */
|
||||||
client_xtn->reply_count++;
|
client_xtn->reply_count++;
|
||||||
fflush (stdout);
|
/*fflush (stdout);*/
|
||||||
|
printf ("\nTOTAL DATA %lu bytes\n", (unsigned long int)client_xtn->data_length);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -470,7 +472,8 @@ static int end_reply (hcl_client_t* client, hcl_client_end_reply_state_t state)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
client_xtn->reply_count++;
|
client_xtn->reply_count++;
|
||||||
fflush (stdout);
|
/*fflush (stdout);*/
|
||||||
|
printf ("\nTOTAL DATA %lu bytes\n", (unsigned long int)client_xtn->data_length);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -482,7 +485,17 @@ static int feed_attr (hcl_client_t* client, const hcl_oocs_t* key, const hcl_ooc
|
|||||||
|
|
||||||
static int feed_data (hcl_client_t* client, const void* ptr, hcl_oow_t len)
|
static int feed_data (hcl_client_t* client, const void* ptr, hcl_oow_t len)
|
||||||
{
|
{
|
||||||
printf ("%.*s", (int)len, ptr);
|
client_xtn_t* client_xtn;
|
||||||
|
|
||||||
|
client_xtn = hcl_client_getxtn(client);
|
||||||
|
client_xtn->data_length += len;
|
||||||
|
|
||||||
|
if (write_all(0, ptr, len) <= -1)
|
||||||
|
{
|
||||||
|
hcl_client_seterrbfmt (client, HCL_EIOERR, "unabled to write data");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -563,6 +576,7 @@ static int handle_request (hcl_client_t* client, const char* ipaddr, const char*
|
|||||||
iov[index].iov_len -= nwritten;
|
iov[index].iov_len -= nwritten;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
client_xtn->data_length = 0;
|
||||||
client_xtn->reply_count = 0;
|
client_xtn->reply_count = 0;
|
||||||
|
|
||||||
/* TODO: implement timeout? */
|
/* TODO: implement timeout? */
|
||||||
|
Loading…
Reference in New Issue
Block a user