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/