Hi,

Enabling IPV6 gives a bunch of warnings:
multicast.c
./network_io/unix\multicast.c(206) : warning C4133: 'function' : incompatible 
types - from 'struct ipv6_mreq *' to 'const char *'
./network_io/unix\multicast.c(240) : warning C4133: 'function' : incompatible 
types - from 'unsigned int *' to 'const char *'
./network_io/unix\multicast.c(326) : warning C4133: 'function' : incompatible 
types - from 'unsigned int *' to 'const char *'

Now, the solution is to typecast the 4th param for setsockopt with
(const void *), like we have with ipv4.


if (sock_is_ipv4(sock)) {
...
     setsockopt(sock->socketdes, IPPROTO_IP, type,
                (const void *) &mip4, sizeof(mip4))
....
#if APR_HAVE_IPV6 && defined(IPV6_JOIN_GROUP) && defined(IPV6_LEAVE_GROUP)
... we have:
    setsockopt(sock->socketdes, IPPROTO_IPV6, type,
               &mip6, sizeof(mip6))

... it should be:
    setsockopt(sock->socketdes, IPPROTO_IPV6, type,
               (const void *)&mip6, sizeof(mip6))



Any objections for fixing that and backporting to 1.2 ?

Regards,
Mladen.

Reply via email to