[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 07/12] qemu-sockets: Fix compiler warning (regressio
From: |
Stefan Hajnoczi |
Subject: |
[Qemu-devel] [PATCH 07/12] qemu-sockets: Fix compiler warning (regression for MinGW) |
Date: |
Fri, 5 Oct 2012 16:00:27 +0200 |
From: Stefan Weil <address@hidden>
setsockopt needs a type cast for MinGW. That type cast is missing in
a recent commit which results in a compiler warning.
Like for other socket related functions which have the same problem,
we add a 'qemu_setsockopt' macro which provides that type cast where
needed and use the new macro to avoid the warning.
A 'qemu_getsockopt' is also added and can be used for future
modifications.
Signed-off-by: Stefan Weil <address@hidden>
Signed-off-by: Stefan Hajnoczi <address@hidden>
---
qemu-common.h | 10 +++++++++-
qemu-sockets.c | 2 +-
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/qemu-common.h b/qemu-common.h
index 15d9e4e..b54612b 100644
--- a/qemu-common.h
+++ b/qemu-common.h
@@ -223,11 +223,19 @@ int qemu_pipe(int pipefd[2]);
#endif
#ifdef _WIN32
-/* MinGW needs a type cast for the 'buf' argument. */
+/* MinGW needs type casts for the 'buf' and 'optval' arguments. */
+#define qemu_getsockopt(sockfd, level, optname, optval, optlen) \
+ getsockopt(sockfd, level, optname, (void *)optval, optlen)
+#define qemu_setsockopt(sockfd, level, optname, optval, optlen) \
+ setsockopt(sockfd, level, optname, (const void *)optval, optlen)
#define qemu_recv(sockfd, buf, len, flags) recv(sockfd, (void *)buf, len,
flags)
#define qemu_sendto(sockfd, buf, len, flags, destaddr, addrlen) \
sendto(sockfd, (const void *)buf, len, flags, destaddr, addrlen)
#else
+#define qemu_getsockopt(sockfd, level, optname, optval, optlen) \
+ getsockopt(sockfd, level, optname, optval, optlen)
+#define qemu_setsockopt(sockfd, level, optname, optval, optlen) \
+ setsockopt(sockfd, level, optname, optval, optlen)
#define qemu_recv(sockfd, buf, len, flags) recv(sockfd, buf, len, flags)
#define qemu_sendto(sockfd, buf, len, flags, destaddr, addrlen) \
sendto(sockfd, buf, len, flags, destaddr, addrlen)
diff --git a/qemu-sockets.c b/qemu-sockets.c
index 1f14e8b..0f59490 100644
--- a/qemu-sockets.c
+++ b/qemu-sockets.c
@@ -282,7 +282,7 @@ static int inet_connect_addr(struct addrinfo *addr, bool
*in_progress,
inet_strfamily(addr->ai_family), strerror(errno));
return -1;
}
- setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on));
+ qemu_setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on));
if (connect_state != NULL) {
socket_set_nonblock(sock);
}
--
1.7.11.4
- [Qemu-devel] [PULL 00/12] Trivial patches for 24 September to 5 October 2012, Stefan Hajnoczi, 2012/10/05
- [Qemu-devel] [PATCH 03/12] cpu: Add missing 'static' attribute to qemu_global_mutex, Stefan Hajnoczi, 2012/10/05
- [Qemu-devel] [PATCH 02/12] configure: Support empty target list (--target-list=), Stefan Hajnoczi, 2012/10/05
- [Qemu-devel] [PATCH 01/12] hw: Fix return value check for bdrv_read, bdrv_write, Stefan Hajnoczi, 2012/10/05
- [Qemu-devel] [PATCH 05/12] slirp: Fix spelling in comment (enought -> enough, insure -> ensure), Stefan Hajnoczi, 2012/10/05
- [Qemu-devel] [PATCH 04/12] tcg/arm: Use tcg_out_mov_reg rather than inline equivalent code, Stefan Hajnoczi, 2012/10/05
- [Qemu-devel] [PATCH 07/12] qemu-sockets: Fix compiler warning (regression for MinGW),
Stefan Hajnoczi <=
- [Qemu-devel] [PATCH 06/12] vnc: Fix spelling (hellmen -> hellman) in comment, Stefan Hajnoczi, 2012/10/05
- [Qemu-devel] [PATCH 10/12] qemu-barrier: Fix compiler version check for future gcc versions, Stefan Hajnoczi, 2012/10/05
- [Qemu-devel] [PATCH 08/12] cleanup useless return sentence, Stefan Hajnoczi, 2012/10/05
- [Qemu-devel] [PATCH 09/12] hw: Add missing 'static' attribute for QEMUMachine, Stefan Hajnoczi, 2012/10/05
- [Qemu-devel] [PATCH 12/12] versatilepb: Use symbolic indices for ARM PIC, Stefan Hajnoczi, 2012/10/05
- [Qemu-devel] [PATCH 11/12] qdev: kill bogus comment, Stefan Hajnoczi, 2012/10/05
- Re: [Qemu-devel] [PULL 00/12] Trivial patches for 24 September to 5 October 2012, Aurelien Jarno, 2012/10/06