fix win64 compilation warnings

Signed-off-by: Erik Boasson <eb@ilities.com>
This commit is contained in:
Erik Boasson 2018-08-03 11:12:42 +02:00
parent e062da6798
commit 6ab48746c5
7 changed files with 21 additions and 15 deletions

View file

@ -14,7 +14,7 @@
#include "ddsi/ddsi_tran.h"
enum ddsi_nearby_address_result ddsi_ipaddr_is_nearby_address (ddsi_tran_factory_t tran, const nn_locator_t *loc, const size_t ninterf, const struct nn_interface interf[]);
enum ddsi_nearby_address_result ddsi_ipaddr_is_nearby_address (ddsi_tran_factory_t tran, const nn_locator_t *loc, size_t ninterf, const struct nn_interface interf[]);
enum ddsi_locator_from_string_result ddsi_ipaddr_from_string (ddsi_tran_factory_t tran, nn_locator_t *loc, const char *str, int32_t kind);
char *ddsi_ipaddr_to_string (ddsi_tran_factory_t tran, char *dst, size_t sizeof_dst, const nn_locator_t *loc, int with_port);
void ddsi_ipaddr_to_loc (nn_locator_t *dst, const os_sockaddr_storage *src, int32_t kind);

View file

@ -220,7 +220,7 @@ int ddsi_conn_rejoin_transferred_mcgroups (ddsi_tran_conn_t conn);
int ddsi_is_mcaddr (const nn_locator_t *loc);
int ddsi_is_ssm_mcaddr (const nn_locator_t *loc);
enum ddsi_nearby_address_result ddsi_is_nearby_address (const nn_locator_t *loc, const size_t ninterf, const struct nn_interface interf[]);
enum ddsi_nearby_address_result ddsi_is_nearby_address (const nn_locator_t *loc, size_t ninterf, const struct nn_interface interf[]);
enum ddsi_locator_from_string_result ddsi_locator_from_string (nn_locator_t *loc, const char *str);
/* 8 for transport/

View file

@ -134,9 +134,11 @@ extern "C" {
#if SYSDEPS_HAVE_IOVEC
typedef struct iovec ddsi_iovec_t;
typedef size_t ddsi_iov_len_t;
#elif defined _WIN32 && !defined WINCE
typedef unsigned ddsi_iov_len_t;
typedef struct ddsi_iovec {
unsigned iov_len;
ddsi_iov_len_t iov_len;
void *iov_base;
} ddsi_iovec_t;
#define DDSI_IOVEC_MATCHES_WSABUF do { \
@ -148,9 +150,10 @@ typedef struct ddsi_iovec {
char len_size_matches[sizeof(((struct ddsi_iovec *)8)->iov_len) == sizeof(((WSABUF *)8)->len) ? 1 : -1]; \
}; } while (0)
#else
typedef size_t ddsi_iov_len_t;
typedef struct ddsi_iovec {
void *iov_base;
size_t iov_len;
ddsi_iov_len_t iov_len;
} ddsi_iovec_t;
#endif

View file

@ -57,7 +57,7 @@ static ssize_t ddsi_udp_conn_read (ddsi_tran_conn_t conn, unsigned char * buf, s
socklen_t srclen = (socklen_t) sizeof (src);
msg_iov.iov_base = (void*) buf;
msg_iov.iov_len = len;
msg_iov.iov_len = (ddsi_iov_len_t)len; /* windows uses unsigned, POISX size_t */
memset (&msghdr, 0, sizeof (msghdr));

View file

@ -97,15 +97,18 @@ static uint32_t gcreq_queue_thread (struct gcreq_queue *q)
{
assert (trace_shortsleep);
if (q->first == NULL)
{
if (delay == T_NEVER)
os_condWait (&q->cond, &q->lock);
else
{
/* FIXME: fix os_time and use absolute timeouts */
struct os_time to = { delay / T_SECOND, delay % T_SECOND };
os_condTimedWait (&q->cond, &q->lock, &to);
struct os_time to;
if (delay >= 1000 * T_SECOND) {
/* avoid overflow */
to.tv_sec = 1000;
to.tv_nsec = 0;
} else {
to.tv_sec = (os_timeSec)(delay / T_SECOND);
to.tv_nsec = (int32_t)(delay % T_SECOND);
}
os_condTimedWait (&q->cond, &q->lock, &to);
}
if (q->first)
{

View file

@ -1794,11 +1794,11 @@ int nn_xpack_addmsg (struct nn_xpack *xp, struct nn_xmsg *m, const uint32_t flag
/* Append submessage; can possibly be merged with preceding iovec */
if ((char *) xp->iov[niov-1].iov_base + xp->iov[niov-1].iov_len == (char *) m->data->payload)
xp->iov[niov-1].iov_len += m->sz;
xp->iov[niov-1].iov_len += (ddsi_iov_len_t)m->sz;
else
{
xp->iov[niov].iov_base = m->data->payload;
xp->iov[niov].iov_len = m->sz;
xp->iov[niov].iov_len = (ddsi_iov_len_t)m->sz;
niov++;
}
sz += m->sz;

View file

@ -159,7 +159,7 @@ ssize_t sendmsg (os_handle fd, const struct msghdr *message, int flags)
assert (message->msg_controllen == 0);
#endif
if (WSASendTo (fd, (WSABUF *) message->msg_iov, message->msg_iovlen, &sent, flags, (SOCKADDR *) message->msg_name, message->msg_namelen, NULL, NULL) == 0)
if (WSASendTo (fd, (WSABUF *) message->msg_iov, (DWORD)message->msg_iovlen, &sent, flags, (SOCKADDR *) message->msg_name, message->msg_namelen, NULL, NULL) == 0)
ret = (ssize_t) sent;
else
ret = -1;