summaryrefslogtreecommitdiff
path: root/librabbitmq/amqp_socket.c
diff options
context:
space:
mode:
authorAlan Antonuk <alan.antonuk@gmail.com>2013-06-11 10:56:07 -0700
committerAlan Antonuk <alan.antonuk@gmail.com>2013-06-13 16:40:29 -0700
commit22e41b8b52bace283c424d9a125656fcb0a41120 (patch)
tree24a7b782a4f48643e6d7303884d00e32385c98a2 /librabbitmq/amqp_socket.c
parent7231d921b3db2f7d62e716976c31abdbf8e0edc5 (diff)
downloadrabbitmq-c-github-ask-22e41b8b52bace283c424d9a125656fcb0a41120.tar.gz
Improve error handling in socket functions
Diffstat (limited to 'librabbitmq/amqp_socket.c')
-rw-r--r--librabbitmq/amqp_socket.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/librabbitmq/amqp_socket.c b/librabbitmq/amqp_socket.c
index 9ab9fec..7649c74 100644
--- a/librabbitmq/amqp_socket.c
+++ b/librabbitmq/amqp_socket.c
@@ -50,7 +50,7 @@
#include <string.h>
ssize_t
-amqp_socket_writev(amqp_socket_t *self, const struct iovec *iov, int iovcnt)
+amqp_socket_writev(amqp_socket_t *self, struct iovec *iov, int iovcnt)
{
assert(self);
assert(self->klass->writev);
@@ -58,11 +58,11 @@ amqp_socket_writev(amqp_socket_t *self, const struct iovec *iov, int iovcnt)
}
ssize_t
-amqp_socket_send(amqp_socket_t *self, const void *buf, size_t len, int flags)
+amqp_socket_send(amqp_socket_t *self, const void *buf, size_t len)
{
assert(self);
assert(self->klass->send);
- return self->klass->send(self, buf, len, flags);
+ return self->klass->send(self, buf, len);
}
ssize_t
@@ -179,7 +179,7 @@ int amqp_send_header(amqp_connection_state_t state)
AMQP_PROTOCOL_VERSION_MINOR,
AMQP_PROTOCOL_VERSION_REVISION
};
- return amqp_socket_send(state->socket, header, 8, MSG_NOSIGNAL);
+ return amqp_socket_send(state->socket, header, sizeof(header));
}
static amqp_bytes_t sasl_method_name(amqp_sasl_method_enum method)
@@ -496,7 +496,10 @@ static amqp_rpc_reply_t amqp_login_inner(amqp_connection_state_t state,
uint16_t server_heartbeat;
amqp_rpc_reply_t result;
- amqp_send_header(state);
+ res = amqp_send_header(state);
+ if (AMQP_STATUS_OK != res) {
+ goto error_res;
+ }
res = amqp_simple_wait_method(state, 0, AMQP_CONNECTION_START_METHOD,
&method);