From 3dfcffc476840c949deed969e476a1fceeea57af Mon Sep 17 00:00:00 2001 From: Alan Antonuk Date: Tue, 1 May 2012 13:27:30 -0400 Subject: Refactoring amqp_ssl_writev to avoid mempcpy --- librabbitmq/amqp_api.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/librabbitmq/amqp_api.c b/librabbitmq/amqp_api.c index 82ba267..0e77964 100644 --- a/librabbitmq/amqp_api.c +++ b/librabbitmq/amqp_api.c @@ -597,14 +597,14 @@ int amqp_ssl_send(amqp_connection_state_t state, char *buf, size_t nb) int amqp_ssl_writev(amqp_connection_state_t state, const struct iovec *vec, int num) { - char * buffer; - char * bp; + char * buffer; + char * bp; - int total; - int chunk; + size_t total; + size_t chunk; - int n; - int i; + size_t n; + int i; total = 0; @@ -628,12 +628,13 @@ int amqp_ssl_writev(amqp_connection_state_t state, const struct iovec *vec, int } - n = total; bp = buffer; + n = total; + bp = buffer; for (i = 0; i < num; i++) { chunk = MIN(vec[i].iov_len, n); - bp = mempcpy(bp, vec[i].iov_base, chunk); + bp = (memcpy(bp, vec[i].iov_base, chunk) + chunk); n -= chunk; -- cgit v1.2.1