summaryrefslogtreecommitdiff
path: root/librabbitmq/amqp_socket.h
diff options
context:
space:
mode:
Diffstat (limited to 'librabbitmq/amqp_socket.h')
-rw-r--r--librabbitmq/amqp_socket.h15
1 files changed, 12 insertions, 3 deletions
diff --git a/librabbitmq/amqp_socket.h b/librabbitmq/amqp_socket.h
index fee7d7b..45c2f1b 100644
--- a/librabbitmq/amqp_socket.h
+++ b/librabbitmq/amqp_socket.h
@@ -37,6 +37,11 @@
AMQP_BEGIN_DECLS
+typedef enum {
+ AMQP_SF_NONE = 0,
+ AMQP_SF_MORE = 1
+} amqp_socket_flag_enum;
+
int
amqp_os_socket_error(void);
@@ -44,7 +49,7 @@ int
amqp_os_socket_close(int sockfd);
/* Socket callbacks. */
-typedef ssize_t (*amqp_socket_send_fn)(void *, const void *, size_t);
+typedef ssize_t (*amqp_socket_send_fn)(void *, const void *, size_t, int);
typedef ssize_t (*amqp_socket_recv_fn)(void *, void *, size_t, int);
typedef int (*amqp_socket_open_fn)(void *, const char *, int, struct timeval *);
typedef int (*amqp_socket_close_fn)(void *);
@@ -91,14 +96,15 @@ amqp_set_socket(amqp_connection_state_t state, amqp_socket_t *socket);
* \param [in,out] self A socket object.
* \param [in] buf A buffer to read from.
* \param [in] len The number of bytes in \e buf.
+ * \param [in]
*
* \return AMQP_STATUS_OK on success. amqp_status_enum value otherwise
*/
ssize_t
-amqp_socket_send(amqp_socket_t *self, const void *buf, size_t len);
+amqp_socket_send(amqp_socket_t *self, const void *buf, size_t len, int flags);
ssize_t amqp_try_send(amqp_connection_state_t state, const void *buf,
- size_t len, amqp_time_t deadline);
+ size_t len, amqp_time_t deadline, int flags);
/**
* Receive a message from a socket.
@@ -163,6 +169,9 @@ int amqp_poll_read(int fd, amqp_time_t deadline);
/* Wait up to deadline for fd to become writeable */
int amqp_poll_write(int fd, amqp_time_t deadline);
+int amqp_send_method_inner(amqp_connection_state_t state,
+ amqp_channel_t channel, amqp_method_number_t id,
+ void *decoded, int flags);
int
amqp_queue_frame(amqp_connection_state_t state, amqp_frame_t *frame);