This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: Problem Adding Membership Multicast Errno 22
Thanks for the advice, I just tried it, but I keep getting the same mistake.
Maybe there is no IP_ADD_MEMBERSHIP option for Multicast in Cygwin?
Victor
Corinna Vinschen-2 wrote:
>
> On Feb 20 04:05, victhor_1983 wrote:
>>
>> Hi,
>>
>> I have written a C++ program for a Multicast Client that compiles and
>> runs
>> on Ubuntu. I tried to compile and run it on Cygwin version 1.5.25 (June
>> 2008). However, when I run the code, the Multicast receiving socket
>> doesn't
>> seem to work. The problem comes when I use setsockopt() to add Multicast
>> membership. The errno() declaration returns 22 (EINVAL), but I cannot
>> find a
>> solution. My code is:
>>
>> int Descriptor, Descriptor2, payloadoffset,sqnum, T_ns, status;
>> long nsegundos,Dnsegundos, segundos, Dsegundos;
>> struct sockaddr_in Direccion, Direccion2;
>> unsigned short Puerto;
>> struct timespec valorcontador,valorcontador2,Next;
>> struct ip_mreq Multic;
>>
>> Descriptor=socket(AF_INET,SOCK_DGRAM,0);
>> Puerto=12100;
>> Direccion.sin_family=AF_INET;
>> Direccion.sin_port=htons(Puerto);
>> Direccion.sin_addr.s_addr=inet_addr("224.0.22.1");
>> memset(&(Direccion.sin_zero),'\0',8);
>>
>> Multic.imr_multiaddr.s_addr=inet_addr("224.0.22.1");
>> Multic.imr_interface.s_addr=inet_addr("138.4.32.34");
>> status= setsockopt(Descriptor, IPPROTO_IP, IP_ADD_MEMBERSHIP, &Multic,
>> sizeof(Multic));
>> if (status<0){
>> printf("Fallo al aÃadir el grupo de Multicast, codigo %i\n",
>> errno);
>> }
>
> I'm sorry, I can't tell you why this doesn't work. Cygwin's setsockopt
> function is basically just a shim between application and Winsock's
> setsockopt call. It only performs special actions on a very limited
> set of options, only two actually: (SOL_SOCKET, SO_REUSEADDR) and
> (IPPROTO_IP, IP_TOS). I'm also quite multicast illiterate. Is it
> possible that you have to use the IP_MULTICAST_IF option on Windows
> before you can use IP_ADD_MEMBERSHIP?!?
>
>
> Corinna
>
> --
> Corinna Vinschen Please, send mails regarding Cygwin to
> Cygwin Project Co-Leader cygwin AT cygwin DOT com
> Red Hat
>
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Problem reports: http://cygwin.com/problems.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
>
>
>
--
View this message in context: http://www.nabble.com/Problem-Adding-Membership-Multicast-Errno-22-tp22119431p22120193.html
Sent from the Cygwin list mailing list archive at Nabble.com.
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/