| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
RabbitMQ set a new default limit of 2048 channels to prevent buggy
clients from consuming too many broker resources with open channels.
This change matches the default set in the Java client. See:
https://github.com/rabbitmq/rabbitmq-server/issues/1593
Fixes: #513
|
|
|
|
|
|
|
| |
When initializing OpenSSL in v1.1.0 or later, tell OpenSSL to ignore
missing openssl.cnf.
Fixes #523
|
|
|
| |
The order of arguments were incorrect, --build must directly specify the directory afterwards.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Fixes #488
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
After commit b80de27b, users have to explicitly un-initialize
OpenSSL if they care to.
|
| |
|
| |
|
|
|
|
|
|
| |
Check encoded table length isn't longer than the encoded buffer.
Fixes CID 1383630 caught by Coverity.
|
|
|
|
|
|
|
| |
Check that the encoded array length doesn't go past the available
encoded data.
Fixes defect CID 1383632 found by Coverity.
|
|
|
|
|
|
| |
amqp_open_socket_inner will leak the socket when sockfd == 0.
Fixes CID: 1383631 caught by Coverity.
|
|
|
|
|
|
|
| |
amqps_* examples only differ in the connection, and are otherwise
duplicates of the amqp_* examples. Delete these examples and rename
amqps_connection_timeout.c to amqp_ssl_connect.c to demonstrate how to
connect over SSL.
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of un-initializing OpenSSL when the connection count reaches 0
require API users to explicitly un-initialize OpenSSL if they care to.
In the common case this will require much less work to start a new SSL
connection.
As a side effect: cleanup and simplify the OpenSSL initialization
routines, including removing the thread-safety checks done for the BIO
since they will be called under the OpenSSL locking.
|
|
|
|
|
|
|
|
|
| |
Remove the option to disable thread-safety in the parts of rabbitmq-c
that use OpenSSL, making it a requirement for thread-safety to use SSL
with rabbitmq-c.
The existing #ifdef's are a source of additional complexity and the
non-thread-safe version is not well tested.
|
|
|
|
|
|
| |
Add a check that validates that running clang-format across the codebase
does not produce diffs. This will (hopefully) reduce the amount of
effort spent formatting stuff during PR reviews.
|
| |
|
|
|
|
| |
They're hard to keep in sync with .clang-format or other tools.
|
|
|
|
|
| |
amqp_framing.h is included by amqp.h, user code should not need to
include this.
|
|
|
|
| |
500ms is too short, and regularly times out when running on travis.
|
| |
|
|
|
|
|
| |
This builds rabbitmq-c with coverage enabled, and runs the tests,
uploading the results to coveralls.io.
|
|
|
|
| |
Add integration tests that run against a locally running broker.
|
|
|
| |
Fixes #451
|
| |
|
|
|
|
|
|
| |
CMake based system works on the 3 platforms that we target, and
maintaining a parallel build-system isn't worth it for this sized
project.
|
|
|
|
|
| |
HAVE_HTONLL was used for the byteswap code, which no longer uses htonll,
this can be removed.
|
| |
|
| |
|
|
|
|
|
|
| |
compatible int.
Signed-off-by: kokan <peter.kokai@balabit.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Autotools configure steps fails, when clang is used with -Werror option.
autoreconf (GNU Autoconf) 2.69
clang version 4.0.0-1ubuntu1 (tags/RELEASE_400/rc1)
More details:
The `AC_SEARCH_LIBS` creates a dummy function definition, with empty argument list, but in clang it is a warning unless void is given as parameter.
Signed-off-by: kokan <peter.kokai@balabit.com>
|
| |
|
| |
|
|
|
|
|
|
| |
Add a #define for AMQP_DEFAULT_VHOST pointing to "/", which is the
default vhost used by the RabbitMQ broker. This makes the code a bit
more readable, especially in example code.
|
|
|
|
|
| |
The documentation for amqp_consume_message refers to AMQP_STATUS_UNEXPECTED_FRAME, but this value doesn't exist. The correct value appears to be AMQP_STATUS_UNEXPECTED_STATE to match the implementation and amqp_consumer.c example.
https://github.com/alanxz/rabbitmq-c/blob/master/examples/amqp_consumer.c#L85
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactor amqp_socket_open_inner so that the socket connection logic is
in it's own OS-specific socket_connect function, and the host resolution
and retry logic calls this. This makes the socket connection logic
easier to understand and reduces the number of win32 #ifdefs.
This also fixes an issue where multiple hostnames are not tried if
connect doesn't fail immediately.
Fixes #430
|
|
|
|
|
|
|
|
| |
precise (12.04) is EOL'd and scheduled to be turned down by the travis
folks in the next couple months.
Note that this switches back to VM-based system, as the libpopt-dev
package isn't available yet.
|
| |
|
|
|
|
| |
e.g., librabbitmq/.libs/librabbitmq.so: undefined reference to `pthread_once'
|
|
|
|
|
|
| |
- Enable TCP Keep Alive for rabbitmq client
- Helps in cases when the connection is conntracked or there is NAT
in between
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Introduced with commit 2bc1f9b1b0 (lib: use MSG_MORE on Linux for
basic.publish), amqp_basic_publish() sets MSG_MORE on all but the
last send() syscall it triggers on the TCP socket to improve
performance. However, if no message body is provided, no completing
call without MSG_MORE follows, keeping the TCP packet pending.
On Linux, this may introduce a message send delay, until the kernel
sends out the data anyway after 200ms. This may add a significant
delay if a consumer is waiting for such an empty (confirmation)
message.
|