qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 2/3] slirp: fix warning on mingw32


From: Stefan Weil
Subject: Re: [Qemu-devel] [PATCH 2/3] slirp: fix warning on mingw32
Date: Sun, 24 Jul 2011 08:20:37 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.18) Gecko/20110617 Thunderbird/3.1.11

Am 24.07.2011 00:23, schrieb Anthony Liguori:
On 07/23/2011 04:25 PM, Blue Swirl wrote:
Avoid this warning:
   CC    slirp/ip_icmp.o
/src/qemu/slirp/ip_icmp.c: In function 'icmp_receive':
/src/qemu/slirp/ip_icmp.c:418:5: error: passing argument 2 of 'recv'
from incompatible pointer type [-Werror]
/usr/local/lib/gcc/i686-mingw32msvc/4.6.0/../../../../i686-mingw32msvc/include/winsock2.h:547:32:
note: expected 'char *' but argument is of type 'struct icmp *'

Signed-off-by: Blue Swirl<address@hidden>
---
  slirp/ip_icmp.c |    2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/slirp/ip_icmp.c b/slirp/ip_icmp.c
index 14a5312..a208648 100644
--- a/slirp/ip_icmp.c
+++ b/slirp/ip_icmp.c
@@ -415,7 +415,7 @@ void icmp_receive(struct socket *so)
      icp = mtod(m, struct icmp *);

      id = icp->icmp_id;
-    len = recv(so->s, icp, m->m_len, 0);
+    len = recv(so->s, (char *)icp, m->m_len, 0);

(char *) is wrong.  recv() takes a void *.

Maybe we need to introduce a qemu_recv?

Regards,

Anthony Liguori

Microsoft's recv() takes a char *.
Both (char *)icp and (void *)icp should work here for any host.

I suggest adding a comment:
/* Type cast needed for MinGW recv. */

Regards,

Stefan Weil




reply via email to

[Prev in Thread] Current Thread [Next in Thread]