Author: cliffjansen
Date: Sun Feb 3 04:14:58 2013
New Revision: 1441855
URL: http://svn.apache.org/viewvc?rev=1441855&view=rev
Log:
PROTON-159: C++ support part 1. See https://reviews.apache.org/r/8223/
Modified:
qpid/proton/trunk/proton-c/CMakeLists.txt
qpid/proton/trunk/proton-c/src/buffer.c
qpid/proton/trunk/proton-c/src/dispatcher/dispatcher.c
qpid/proton/trunk/proton-c/src/engine/engine.c
qpid/proton/trunk/proton-c/src/messenger.c
qpid/proton/trunk/proton-c/src/platform.c
qpid/proton/trunk/proton-c/src/proton.c
qpid/proton/trunk/proton-c/src/sasl/sasl.c
qpid/proton/trunk/proton-c/src/ssl/openssl.c
qpid/proton/trunk/proton-c/src/util.h
Modified: qpid/proton/trunk/proton-c/CMakeLists.txt
URL:
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/CMakeLists.txt?rev=1441855&r1=1441854&r2=1441855&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/CMakeLists.txt (original)
+++ qpid/proton/trunk/proton-c/CMakeLists.txt Sun Feb 3 04:14:58 2013
@@ -187,7 +187,7 @@ if (CMAKE_COMPILER_IS_GNUCC)
if (ENABLE_WARNING_ERROR)
set (WERROR "-Werror")
endif (ENABLE_WARNING_ERROR)
- set (COMPILE_WARNING_FLAGS "${WERROR} -Wall -pedantic-errors")
+ set (COMPILE_WARNING_FLAGS "${WERROR} -Wall -pedantic-errors -Wc++-compat")
set (COMPILE_LANGUAGE_FLAGS "-std=c99")
set (COMPILE_PLATFORM_FLAGS "-std=gnu99")
if (ENABLE_UNDEFINED_ERROR)
Modified: qpid/proton/trunk/proton-c/src/buffer.c
URL:
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/buffer.c?rev=1441855&r1=1441854&r2=1441855&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/buffer.c (original)
+++ qpid/proton/trunk/proton-c/src/buffer.c Sun Feb 3 04:14:58 2013
@@ -132,7 +132,7 @@ int pn_buffer_ensure(pn_buffer_t *buf, s
}
if (buf->capacity != old_capacity) {
- buf->bytes = realloc(buf->bytes, buf->capacity);
+ buf->bytes = (char *) realloc(buf->bytes, buf->capacity);
if (wrapped) {
size_t n = old_capacity - old_head;
Modified: qpid/proton/trunk/proton-c/src/dispatcher/dispatcher.c
URL:
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/dispatcher/dispatcher.c?rev=1441855&r1=1441854&r2=1441855&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/dispatcher/dispatcher.c (original)
+++ qpid/proton/trunk/proton-c/src/dispatcher/dispatcher.c Sun Feb 3 04:14:58
2013
@@ -380,7 +380,7 @@ int pn_post_transfer_frame(pn_dispatcher
while (!(n = pn_write_frame(disp->output + disp->available,
disp->capacity - disp->available, frame))) {
disp->capacity *= 2;
- disp->output = realloc(disp->output, disp->capacity);
+ disp->output = (char *) realloc(disp->output, disp->capacity);
}
disp->output_frames_ct += 1;
if (disp->trace & PN_TRACE_RAW) {
Modified: qpid/proton/trunk/proton-c/src/engine/engine.c
URL:
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/engine/engine.c?rev=1441855&r1=1441854&r2=1441855&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/engine/engine.c (original)
+++ qpid/proton/trunk/proton-c/src/engine/engine.c Sun Feb 3 04:14:58 2013
@@ -38,7 +38,7 @@
void pn_delivery_buffer_init(pn_delivery_buffer_t *db, pn_sequence_t next,
size_t capacity)
{
// XXX: error handling
- db->deliveries = malloc(sizeof(pn_delivery_state_t) * capacity);
+ db->deliveries = (pn_delivery_state_t *) malloc(sizeof(pn_delivery_state_t)
* capacity);
db->next = next;
db->capacity = capacity;
db->head = 0;
@@ -250,7 +250,7 @@ void pn_transport_free(pn_transport_t *t
void pn_add_session(pn_connection_t *conn, pn_session_t *ssn)
{
- PN_ENSURE(conn->sessions, conn->session_capacity, conn->session_count + 1);
+ PN_ENSURE(conn->sessions, conn->session_capacity, conn->session_count + 1,
pn_session_t*);
conn->sessions[conn->session_count++] = ssn;
ssn->connection = conn;
ssn->id = conn->session_count;
@@ -312,7 +312,7 @@ void pn_session_set_context(pn_session_t
void pn_add_link(pn_session_t *ssn, pn_link_t *link)
{
- PN_ENSURE(ssn->links, ssn->link_capacity, ssn->link_count + 1);
+ PN_ENSURE(ssn->links, ssn->link_capacity, ssn->link_count + 1, pn_link_t*);
ssn->links[ssn->link_count++] = link;
link->session = ssn;
link->id = ssn->link_count;
@@ -800,7 +800,7 @@ void pn_transport_init(pn_transport_t *t
pn_session_state_t *pn_session_get_state(pn_transport_t *transport,
pn_session_t *ssn)
{
int old_capacity = transport->session_capacity;
- PN_ENSURE(transport->sessions, transport->session_capacity, ssn->id + 1);
+ PN_ENSURE(transport->sessions, transport->session_capacity, ssn->id + 1,
pn_session_state_t);
for (int i = old_capacity; i < transport->session_capacity; i++)
{
transport->sessions[i] = (pn_session_state_t) {.session=NULL,
@@ -816,13 +816,13 @@ pn_session_state_t *pn_session_get_state
pn_session_state_t *pn_channel_state(pn_transport_t *transport, uint16_t
channel)
{
- PN_ENSUREZ(transport->channels, transport->channel_capacity, channel + 1);
+ PN_ENSUREZ(transport->channels, transport->channel_capacity, channel + 1,
pn_session_state_t *);
return transport->channels[channel];
}
void pn_map_channel(pn_transport_t *transport, uint16_t channel,
pn_session_state_t *state)
{
- PN_ENSUREZ(transport->channels, transport->channel_capacity, channel + 1);
+ PN_ENSUREZ(transport->channels, transport->channel_capacity, channel + 1,
pn_session_state_t *);
state->remote_channel = channel;
transport->channels[channel] = state;
}
@@ -1081,7 +1081,7 @@ int pn_terminus_copy(pn_terminus_t *term
pn_link_state_t *pn_link_get_state(pn_session_state_t *ssn_state, pn_link_t
*link)
{
int old_capacity = ssn_state->link_capacity;
- PN_ENSURE(ssn_state->links, ssn_state->link_capacity, link->id + 1);
+ PN_ENSURE(ssn_state->links, ssn_state->link_capacity, link->id + 1,
pn_link_state_t);
for (int i = old_capacity; i < ssn_state->link_capacity; i++)
{
ssn_state->links[i] = (pn_link_state_t) {.link=NULL, .local_handle = -1,
@@ -1094,14 +1094,14 @@ pn_link_state_t *pn_link_get_state(pn_se
void pn_map_handle(pn_session_state_t *ssn_state, uint32_t handle,
pn_link_state_t *state)
{
- PN_ENSUREZ(ssn_state->handles, ssn_state->handle_capacity, handle + 1);
+ PN_ENSUREZ(ssn_state->handles, ssn_state->handle_capacity, handle + 1,
pn_link_state_t*);
state->remote_handle = handle;
ssn_state->handles[handle] = state;
}
pn_link_state_t *pn_handle_state(pn_session_state_t *ssn_state, uint32_t
handle)
{
- PN_ENSUREZ(ssn_state->handles, ssn_state->handle_capacity, handle + 1);
+ PN_ENSUREZ(ssn_state->handles, ssn_state->handle_capacity, handle + 1,
pn_link_state_t*);
return ssn_state->handles[handle];
}
@@ -1693,7 +1693,7 @@ int pn_do_flow(pn_dispatcher_t *disp)
int pn_do_disposition(pn_dispatcher_t *disp)
{
- pn_transport_t *transport = disp->context;
+ pn_transport_t *transport = (pn_transport_t *) disp->context;
bool role;
pn_sequence_t first, last;
uint64_t code;
Modified: qpid/proton/trunk/proton-c/src/messenger.c
URL:
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/messenger.c?rev=1441855&r1=1441854&r2=1441855&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/messenger.c (original)
+++ qpid/proton/trunk/proton-c/src/messenger.c Sun Feb 3 04:14:58 2013
@@ -83,7 +83,7 @@ void pn_queue_init(pn_queue_t *queue)
queue->window = 0;
queue->lwm = 0;
queue->hwm = 0;
- queue->deliveries = calloc(queue->capacity, sizeof(pn_delivery_t *));
+ queue->deliveries = (pn_delivery_t **) calloc(queue->capacity,
sizeof(pn_delivery_t *));
}
void pn_queue_tini(pn_queue_t *queue)
@@ -122,13 +122,13 @@ void pn_queue_gc(pn_queue_t *queue)
static void pn_incref(pn_connection_t *conn)
{
- pn_connection_ctx_t *ctx = pn_connection_get_context(conn);
+ pn_connection_ctx_t *ctx = (pn_connection_ctx_t *)
pn_connection_get_context(conn);
ctx->refcount++;
}
static void pn_decref(pn_connection_t *conn)
{
- pn_connection_ctx_t *ctx = pn_connection_get_context(conn);
+ pn_connection_ctx_t *ctx = (pn_connection_ctx_t *)
pn_connection_get_context(conn);
ctx->refcount--;
if (ctx->refcount == 0) {
pn_connection_free(conn);
@@ -178,7 +178,7 @@ pn_sequence_t pn_queue_add(pn_queue_t *q
{
pn_sequence_t id = queue->hwm++;
size_t offset = id - queue->lwm;
- PN_ENSUREZ(queue->deliveries, queue->capacity, offset + 1);
+ PN_ENSUREZ(queue->deliveries, queue->capacity, offset + 1, pn_delivery_t *);
assert(offset >= 0 && offset < queue->capacity);
queue->deliveries[offset] = delivery;
pn_delivery_set_context(delivery, (void *) (intptr_t) id);
@@ -411,7 +411,7 @@ static void pn_transport_config(pn_messe
pn_connector_t *connector,
pn_connection_t *connection)
{
- pn_connection_ctx_t *ctx = pn_connection_get_context(connection);
+ pn_connection_ctx_t *ctx = (pn_connection_ctx_t *)
pn_connection_get_context(connection);
pn_transport_t *transport = pn_connector_transport(connector);
if (ctx->scheme && !strcmp(ctx->scheme, "amqps")) {
pn_ssl_domain_t *d = pn_ssl_domain( PN_SSL_MODE_CLIENT );
@@ -562,7 +562,7 @@ pn_connection_t *pn_messenger_connection
{
pn_connection_t *connection = pn_connection();
if (!connection) return NULL;
- pn_connection_ctx_t *ctx = malloc(sizeof(pn_connection_ctx_t));
+ pn_connection_ctx_t *ctx = (pn_connection_ctx_t *)
malloc(sizeof(pn_connection_ctx_t));
ctx->refcount = 0;
ctx->scheme = pn_strdup(scheme);
ctx->user = pn_strdup(user);
@@ -733,7 +733,7 @@ pn_connection_t *pn_messenger_resolve(pn
pn_connector_t *ctor = pn_connector_head(messenger->driver);
while (ctor) {
pn_connection_t *connection = pn_connector_connection(ctor);
- pn_connection_ctx_t *ctx = pn_connection_get_context(connection);
+ pn_connection_ctx_t *ctx = (pn_connection_ctx_t *)
pn_connection_get_context(connection);
if (pn_streq(scheme, ctx->scheme) && pn_streq(user, ctx->user) &&
pn_streq(pass, ctx->pass) && pn_streq(host, ctx->host) &&
pn_streq(port, ctx->port)) {
@@ -761,7 +761,7 @@ pn_connection_t *pn_messenger_resolve(pn
pn_subscription_t *pn_subscription(pn_messenger_t *messenger, const char
*scheme)
{
- PN_ENSURE(messenger->subscriptions, messenger->sub_capacity,
messenger->sub_count + 1);
+ PN_ENSURE(messenger->subscriptions, messenger->sub_capacity,
messenger->sub_count + 1, pn_subscription_t);
pn_subscription_t *sub = messenger->subscriptions + messenger->sub_count++;
sub->scheme = pn_strdup(scheme);
sub->context = NULL;
@@ -858,7 +858,7 @@ pn_subscription_t *pn_messenger_subscrib
} else {
pn_link_t *src = pn_messenger_source(messenger, source);
if (src) {
- pn_subscription_t *sub = pn_link_get_context(src);
+ pn_subscription_t *sub = (pn_subscription_t *) pn_link_get_context(src);
return sub;
} else {
pn_error_format(messenger->error, PN_ERR,
@@ -1109,7 +1109,7 @@ int pn_messenger_get(pn_messenger_t *mes
while (d) {
if (pn_delivery_readable(d) && !pn_delivery_partial(d)) {
pn_link_t *l = pn_delivery_link(d);
- pn_subscription_t *sub = pn_link_get_context(l);
+ pn_subscription_t *sub = (pn_subscription_t *) pn_link_get_context(l);
size_t pending = pn_delivery_pending(d);
pn_buffer_t *buf = messenger->buffer;
int err = pn_buffer_ensure(buf, pending + 1);
Modified: qpid/proton/trunk/proton-c/src/platform.c
URL:
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/platform.c?rev=1441855&r1=1441854&r2=1441855&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/platform.c (original)
+++ qpid/proton/trunk/proton-c/src/platform.c Sun Feb 3 04:14:58 2013
@@ -46,7 +46,7 @@ pn_timestamp_t pn_i_now(void)
#include <uuid/uuid.h>
#include <stdlib.h>
char* pn_i_genuuid(void) {
- char *generated = malloc(37*sizeof(char));
+ char *generated = (char *) malloc(37*sizeof(char));
uuid_t uuid;
uuid_generate(uuid);
uuid_unparse(uuid, generated);
Modified: qpid/proton/trunk/proton-c/src/proton.c
URL:
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/proton.c?rev=1441855&r1=1441854&r2=1441855&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/proton.c (original)
+++ qpid/proton/trunk/proton-c/src/proton.c Sun Feb 3 04:14:58 2013
@@ -130,7 +130,7 @@ void server_callback(pn_connector_t *cto
}
pn_connection_t *conn = pn_connector_connection(ctor);
- struct server_context *ctx = pn_connector_context(ctor);
+ struct server_context *ctx = (struct server_context *)
pn_connector_context(ctor);
char tagstr[1024];
char msg[10*1024];
char data[ctx->size + 16];
Modified: qpid/proton/trunk/proton-c/src/sasl/sasl.c
URL:
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/sasl/sasl.c?rev=1441855&r1=1441854&r2=1441855&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/sasl/sasl.c (original)
+++ qpid/proton/trunk/proton-c/src/sasl/sasl.c Sun Feb 3 04:14:58 2013
@@ -66,7 +66,7 @@ int pn_do_outcome(pn_dispatcher_t *disp)
pn_sasl_t *pn_sasl(pn_transport_t *transport)
{
if (!transport->sasl) {
- pn_sasl_t *sasl = malloc(sizeof(pn_sasl_t));
+ pn_sasl_t *sasl = (pn_sasl_t *) malloc(sizeof(pn_sasl_t));
sasl->disp = pn_dispatcher(1, sasl);
sasl->disp->batch = false;
@@ -375,7 +375,7 @@ int pn_do_mechanisms(pn_dispatcher_t *di
int pn_do_recv(pn_dispatcher_t *disp)
{
- pn_sasl_t *sasl = disp->context;
+ pn_sasl_t *sasl = (pn_sasl_t *) disp->context;
pn_bytes_t recv;
int err = pn_scan_args(disp, "D.[z]", &recv);
if (err) return err;
@@ -395,7 +395,7 @@ int pn_do_response(pn_dispatcher_t *disp
int pn_do_outcome(pn_dispatcher_t *disp)
{
- pn_sasl_t *sasl = disp->context;
+ pn_sasl_t *sasl = (pn_sasl_t *) disp->context;
uint8_t outcome;
int err = pn_scan_args(disp, "D.[B]", &outcome);
if (err) return err;
Modified: qpid/proton/trunk/proton-c/src/ssl/openssl.c
URL:
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/ssl/openssl.c?rev=1441855&r1=1441854&r2=1441855&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/ssl/openssl.c (original)
+++ qpid/proton/trunk/proton-c/src/ssl/openssl.c Sun Feb 3 04:14:58 2013
@@ -210,7 +210,7 @@ static bool match_dns_pattern( const cha
const char *cptr;
int len;
- cptr = memchr( pattern, '.', plen );
+ cptr = (const char *) memchr( pattern, '.', plen );
len = (cptr) ? cptr - pattern : plen;
if (len > sizeof(plabel) - 1) return false;
memcpy( plabel, pattern, len );
@@ -218,7 +218,7 @@ static bool match_dns_pattern( const cha
pattern = cptr + 1;
plen -= len;
- cptr = memchr( hostname, '.', slen );
+ cptr = (const char *) memchr( hostname, '.', slen );
len = (cptr) ? cptr - hostname : slen;
if (len > sizeof(slabel) - 1) return false;
memcpy( slabel, hostname, len );
@@ -255,7 +255,7 @@ static int verify_callback(int preverify
return preverify_ok;
X509 *cert = X509_STORE_CTX_get_current_cert(ctx);
- SSL *ssn = X509_STORE_CTX_get_ex_data(ctx,
SSL_get_ex_data_X509_STORE_CTX_idx());
+ SSL *ssn = (SSL *) X509_STORE_CTX_get_ex_data(ctx,
SSL_get_ex_data_X509_STORE_CTX_idx());
if (!ssn) {
_log_error("Error: unexpected error - SSL session info not available for
peer verify!\n");
return 0; // fail connection
@@ -419,7 +419,7 @@ pn_ssl_domain_t *pn_ssl_domain( pn_ssl_m
NULL, NULL, NULL);
}
- pn_ssl_domain_t *domain = calloc(1, sizeof(pn_ssl_domain_t));
+ pn_ssl_domain_t *domain = (pn_ssl_domain_t *) calloc(1,
sizeof(pn_ssl_domain_t));
if (!domain) return NULL;
domain->ref_count = 1;
@@ -712,7 +712,7 @@ pn_ssl_t *pn_ssl(pn_transport_t *transpo
if (!transport) return NULL;
if (transport->ssl) return transport->ssl;
- pn_ssl_t *ssl = calloc(1, sizeof(pn_ssl_t));
+ pn_ssl_t *ssl = (pn_ssl_t *) calloc(1, sizeof(pn_ssl_t));
if (!ssl) return NULL;
ssl->transport = transport;
transport->ssl = ssl;
Modified: qpid/proton/trunk/proton-c/src/util.h
URL:
http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/util.h?rev=1441855&r1=1441854&r2=1441855&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/util.h (original)
+++ qpid/proton/trunk/proton-c/src/util.h Sun Feb 3 04:14:58 2013
@@ -97,18 +97,18 @@ char *pn_strndup(const char *src, size_t
#define pn_min(X,Y) ((X) > (Y) ? (Y) : (X))
#define pn_max(X,Y) ((X) < (Y) ? (Y) : (X))
-#define PN_ENSURE(ARRAY, CAPACITY, COUNT) \
+#define PN_ENSURE(ARRAY, CAPACITY, COUNT, TYPE) \
while ((CAPACITY) < (COUNT)) { \
(CAPACITY) = (CAPACITY) ? 2 * (CAPACITY) : 16; \
- (ARRAY) = realloc((ARRAY), (CAPACITY) * sizeof (*(ARRAY))); \
+ (ARRAY) = (TYPE *) realloc((ARRAY), (CAPACITY) * sizeof (TYPE)); \
} \
-#define PN_ENSUREZ(ARRAY, CAPACITY, COUNT) \
+#define PN_ENSUREZ(ARRAY, CAPACITY, COUNT, TYPE) \
{ \
size_t _old_capacity = (CAPACITY); \
- PN_ENSURE((ARRAY), (CAPACITY), (COUNT)); \
+ PN_ENSURE(ARRAY, CAPACITY, COUNT, TYPE); \
memset((ARRAY) + _old_capacity, 0, \
- sizeof(*(ARRAY))*((CAPACITY) - _old_capacity)); \
+ sizeof(TYPE)*((CAPACITY) - _old_capacity)); \
}
#endif /* util.h */
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]