Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Date: Thu, 14 Nov 2002 11:57:57 -0500 From: Christopher Faylor To: cygwin AT cygwin DOT com Subject: Re: recvfrom bug Message-ID: <20021114165757.GA1550@redhat.com> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <002001c28b93$f5bb6e70$0164a8c0 AT PROJECTTECHNOLOGY1> <3DD396F9 DOT 5000905 AT gmx DOT net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3DD396F9.5000905@gmx.net> User-Agent: Mutt/1.5.1i On Thu, Nov 14, 2002 at 01:28:41PM +0100, Thomas Pfaff wrote: >Dr. M. C. Nelson wrote: >>Dear mailing list: >> >>The following code works well on a Linux platform, >> >> int sockfd; >> char buf[1024]; >> struct sockaddr fromaddr; >> int fromlen; >> >> if ( (retv = recvfrom( sockfd, buf, sizeof(buf), 0, &fromaddr,&fromlen )) >> < >>0 ) >> { >> perror( "udpclient: recvfrom" ); >> } >> >>However, in cygwin the following error message is produced: >> >> udpclient: recvfrom: Bad address >> >>Can anyone tell me how to get pas this problem? > >You must initialize fromlen with sizeof(fromaddr) prior to recvfrom. > >int fromlen = sizeof(fromaddr). Doh! Nice catch, Thomas. cgf -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/