Commit c5b76b381081680633e2e0a91216507430409fb2
1 parent
487fefdb
Fix mingw32 build warnings
Work around buffer and ioctlsocket argument type signedness problems Suppress a prototype which is unused on mingw32 Expand a macro to avoid warnings from some GCC versions Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Showing
7 changed files
with
37 additions
and
12 deletions
net.c
@@ -665,7 +665,9 @@ static const char *slirp_smb_export; | @@ -665,7 +665,9 @@ static const char *slirp_smb_export; | ||
665 | #endif | 665 | #endif |
666 | static VLANClientState *slirp_vc; | 666 | static VLANClientState *slirp_vc; |
667 | 667 | ||
668 | +#ifndef _WIN32 | ||
668 | static void slirp_smb(const char *exported_dir); | 669 | static void slirp_smb(const char *exported_dir); |
670 | +#endif | ||
669 | static void slirp_redirection(Monitor *mon, const char *redir_str); | 671 | static void slirp_redirection(Monitor *mon, const char *redir_str); |
670 | 672 | ||
671 | int slirp_can_output(void) | 673 | int slirp_can_output(void) |
@@ -1505,7 +1507,7 @@ static ssize_t net_socket_receive_dgram(VLANClientState *vc, const uint8_t *buf, | @@ -1505,7 +1507,7 @@ static ssize_t net_socket_receive_dgram(VLANClientState *vc, const uint8_t *buf, | ||
1505 | { | 1507 | { |
1506 | NetSocketState *s = vc->opaque; | 1508 | NetSocketState *s = vc->opaque; |
1507 | 1509 | ||
1508 | - return sendto(s->fd, buf, size, 0, | 1510 | + return sendto(s->fd, (void *)buf, size, 0, |
1509 | (struct sockaddr *)&s->dgram_dst, sizeof(s->dgram_dst)); | 1511 | (struct sockaddr *)&s->dgram_dst, sizeof(s->dgram_dst)); |
1510 | } | 1512 | } |
1511 | 1513 | ||
@@ -1517,7 +1519,7 @@ static void net_socket_send(void *opaque) | @@ -1517,7 +1519,7 @@ static void net_socket_send(void *opaque) | ||
1517 | uint8_t buf1[4096]; | 1519 | uint8_t buf1[4096]; |
1518 | const uint8_t *buf; | 1520 | const uint8_t *buf; |
1519 | 1521 | ||
1520 | - size = recv(s->fd, buf1, sizeof(buf1), 0); | 1522 | + size = recv(s->fd, (void *)buf1, sizeof(buf1), 0); |
1521 | if (size < 0) { | 1523 | if (size < 0) { |
1522 | err = socket_error(); | 1524 | err = socket_error(); |
1523 | if (err != EWOULDBLOCK) | 1525 | if (err != EWOULDBLOCK) |
@@ -1579,7 +1581,7 @@ static void net_socket_send_dgram(void *opaque) | @@ -1579,7 +1581,7 @@ static void net_socket_send_dgram(void *opaque) | ||
1579 | NetSocketState *s = opaque; | 1581 | NetSocketState *s = opaque; |
1580 | int size; | 1582 | int size; |
1581 | 1583 | ||
1582 | - size = recv(s->fd, s->buf, sizeof(s->buf), 0); | 1584 | + size = recv(s->fd, (void *)s->buf, sizeof(s->buf), 0); |
1583 | if (size < 0) | 1585 | if (size < 0) |
1584 | return; | 1586 | return; |
1585 | if (size == 0) { | 1587 | if (size == 0) { |
qemu-char.c
@@ -1708,7 +1708,7 @@ static int udp_chr_write(CharDriverState *chr, const uint8_t *buf, int len) | @@ -1708,7 +1708,7 @@ static int udp_chr_write(CharDriverState *chr, const uint8_t *buf, int len) | ||
1708 | { | 1708 | { |
1709 | NetCharDriver *s = chr->opaque; | 1709 | NetCharDriver *s = chr->opaque; |
1710 | 1710 | ||
1711 | - return sendto(s->fd, buf, len, 0, | 1711 | + return sendto(s->fd, (void *)buf, len, 0, |
1712 | (struct sockaddr *)&s->daddr, sizeof(struct sockaddr_in)); | 1712 | (struct sockaddr *)&s->daddr, sizeof(struct sockaddr_in)); |
1713 | } | 1713 | } |
1714 | 1714 | ||
@@ -1737,7 +1737,7 @@ static void udp_chr_read(void *opaque) | @@ -1737,7 +1737,7 @@ static void udp_chr_read(void *opaque) | ||
1737 | 1737 | ||
1738 | if (s->max_size == 0) | 1738 | if (s->max_size == 0) |
1739 | return; | 1739 | return; |
1740 | - s->bufcnt = recv(s->fd, s->buf, sizeof(s->buf), 0); | 1740 | + s->bufcnt = recv(s->fd, (void *)s->buf, sizeof(s->buf), 0); |
1741 | s->bufptr = s->bufcnt; | 1741 | s->bufptr = s->bufcnt; |
1742 | if (s->bufcnt <= 0) | 1742 | if (s->bufcnt <= 0) |
1743 | return; | 1743 | return; |
@@ -1913,7 +1913,7 @@ static void tcp_chr_read(void *opaque) | @@ -1913,7 +1913,7 @@ static void tcp_chr_read(void *opaque) | ||
1913 | len = sizeof(buf); | 1913 | len = sizeof(buf); |
1914 | if (len > s->max_size) | 1914 | if (len > s->max_size) |
1915 | len = s->max_size; | 1915 | len = s->max_size; |
1916 | - size = recv(s->fd, buf, len, 0); | 1916 | + size = recv(s->fd, (void *)buf, len, 0); |
1917 | if (size == 0) { | 1917 | if (size == 0) { |
1918 | /* connection closed */ | 1918 | /* connection closed */ |
1919 | s->connected = 0; | 1919 | s->connected = 0; |
savevm.c
@@ -190,7 +190,7 @@ static int socket_get_buffer(void *opaque, uint8_t *buf, int64_t pos, int size) | @@ -190,7 +190,7 @@ static int socket_get_buffer(void *opaque, uint8_t *buf, int64_t pos, int size) | ||
190 | ssize_t len; | 190 | ssize_t len; |
191 | 191 | ||
192 | do { | 192 | do { |
193 | - len = recv(s->fd, buf, size, 0); | 193 | + len = recv(s->fd, (void *)buf, size, 0); |
194 | } while (len == -1 && socket_error() == EINTR); | 194 | } while (len == -1 && socket_error() == EINTR); |
195 | 195 | ||
196 | if (len == -1) | 196 | if (len == -1) |
slirp/misc.c
@@ -778,7 +778,7 @@ fd_nonblock(int fd) | @@ -778,7 +778,7 @@ fd_nonblock(int fd) | ||
778 | { | 778 | { |
779 | #ifdef FIONBIO | 779 | #ifdef FIONBIO |
780 | #ifdef _WIN32 | 780 | #ifdef _WIN32 |
781 | - long opt = 1; | 781 | + unsigned long opt = 1; |
782 | #else | 782 | #else |
783 | int opt = 1; | 783 | int opt = 1; |
784 | #endif | 784 | #endif |
@@ -797,7 +797,11 @@ void | @@ -797,7 +797,11 @@ void | ||
797 | fd_block(int fd) | 797 | fd_block(int fd) |
798 | { | 798 | { |
799 | #ifdef FIONBIO | 799 | #ifdef FIONBIO |
800 | +#ifdef _WIN32 | ||
801 | + unsigned long opt = 0; | ||
802 | +#else | ||
800 | int opt = 0; | 803 | int opt = 0; |
804 | +#endif | ||
801 | 805 | ||
802 | ioctlsocket(fd, FIONBIO, &opt); | 806 | ioctlsocket(fd, FIONBIO, &opt); |
803 | #else | 807 | #else |
slirp/socket.c
@@ -474,7 +474,12 @@ sorecvfrom(struct socket *so) | @@ -474,7 +474,12 @@ sorecvfrom(struct socket *so) | ||
474 | udp_detach(so); | 474 | udp_detach(so); |
475 | } else { /* A "normal" UDP packet */ | 475 | } else { /* A "normal" UDP packet */ |
476 | struct mbuf *m; | 476 | struct mbuf *m; |
477 | - int len, n; | 477 | + int len; |
478 | +#ifdef _WIN32 | ||
479 | + unsigned long n; | ||
480 | +#else | ||
481 | + int n; | ||
482 | +#endif | ||
478 | 483 | ||
479 | if (!(m = m_get())) return; | 484 | if (!(m = m_get())) return; |
480 | m->m_data += IF_MAXLINKHDR; | 485 | m->m_data += IF_MAXLINKHDR; |
target-ppc/op_helper.c
@@ -1974,7 +1974,21 @@ target_ulong helper_dlmzb (target_ulong high, target_ulong low, uint32_t update_ | @@ -1974,7 +1974,21 @@ target_ulong helper_dlmzb (target_ulong high, target_ulong low, uint32_t update_ | ||
1974 | SATCVT(sh, sb, int16_t, int8_t, INT8_MIN, INT8_MAX, 1, 1) | 1974 | SATCVT(sh, sb, int16_t, int8_t, INT8_MIN, INT8_MAX, 1, 1) |
1975 | SATCVT(sw, sh, int32_t, int16_t, INT16_MIN, INT16_MAX, 1, 1) | 1975 | SATCVT(sw, sh, int32_t, int16_t, INT16_MIN, INT16_MAX, 1, 1) |
1976 | SATCVT(sd, sw, int64_t, int32_t, INT32_MIN, INT32_MAX, 1, 1) | 1976 | SATCVT(sd, sw, int64_t, int32_t, INT32_MIN, INT32_MAX, 1, 1) |
1977 | -SATCVT(uh, ub, uint16_t, uint8_t, 0, UINT8_MAX, 0, 1) | 1977 | + |
1978 | +/* Work around gcc problems with the macro version */ | ||
1979 | +static always_inline uint8_t cvtuhub(uint16_t x, int *sat) | ||
1980 | +{ | ||
1981 | + uint8_t r; | ||
1982 | + | ||
1983 | + if (x > UINT8_MAX) { | ||
1984 | + r = UINT8_MAX; | ||
1985 | + *sat = 1; | ||
1986 | + } else { | ||
1987 | + r = x; | ||
1988 | + } | ||
1989 | + return r; | ||
1990 | +} | ||
1991 | +//SATCVT(uh, ub, uint16_t, uint8_t, 0, UINT8_MAX, 0, 1) | ||
1978 | SATCVT(uw, uh, uint32_t, uint16_t, 0, UINT16_MAX, 0, 1) | 1992 | SATCVT(uw, uh, uint32_t, uint16_t, 0, UINT16_MAX, 0, 1) |
1979 | SATCVT(ud, uw, uint64_t, uint32_t, 0, UINT32_MAX, 0, 1) | 1993 | SATCVT(ud, uw, uint64_t, uint32_t, 0, UINT32_MAX, 0, 1) |
1980 | SATCVT(sh, ub, int16_t, uint8_t, 0, UINT8_MAX, 1, 1) | 1994 | SATCVT(sh, ub, int16_t, uint8_t, 0, UINT8_MAX, 1, 1) |
vnc.c
@@ -961,7 +961,7 @@ long vnc_client_write_buf(VncState *vs, const uint8_t *data, size_t datalen) | @@ -961,7 +961,7 @@ long vnc_client_write_buf(VncState *vs, const uint8_t *data, size_t datalen) | ||
961 | } | 961 | } |
962 | } else | 962 | } else |
963 | #endif /* CONFIG_VNC_TLS */ | 963 | #endif /* CONFIG_VNC_TLS */ |
964 | - ret = send(vs->csock, data, datalen, 0); | 964 | + ret = send(vs->csock, (void *)data, datalen, 0); |
965 | VNC_DEBUG("Wrote wire %p %zd -> %ld\n", data, datalen, ret); | 965 | VNC_DEBUG("Wrote wire %p %zd -> %ld\n", data, datalen, ret); |
966 | return vnc_client_io_error(vs, ret, socket_error()); | 966 | return vnc_client_io_error(vs, ret, socket_error()); |
967 | } | 967 | } |
@@ -1066,7 +1066,7 @@ long vnc_client_read_buf(VncState *vs, uint8_t *data, size_t datalen) | @@ -1066,7 +1066,7 @@ long vnc_client_read_buf(VncState *vs, uint8_t *data, size_t datalen) | ||
1066 | } | 1066 | } |
1067 | } else | 1067 | } else |
1068 | #endif /* CONFIG_VNC_TLS */ | 1068 | #endif /* CONFIG_VNC_TLS */ |
1069 | - ret = recv(vs->csock, data, datalen, 0); | 1069 | + ret = recv(vs->csock, (void *)data, datalen, 0); |
1070 | VNC_DEBUG("Read wire %p %zd -> %ld\n", data, datalen, ret); | 1070 | VNC_DEBUG("Read wire %p %zd -> %ld\n", data, datalen, ret); |
1071 | return vnc_client_io_error(vs, ret, socket_error()); | 1071 | return vnc_client_io_error(vs, ret, socket_error()); |
1072 | } | 1072 | } |