recvfrom + MSG_PEEK = broken?

Eliot Moss moss@cs.umass.edu
Mon Mar 22 20:33:00 GMT 2010


On 3/22/2010 1:54 PM, Corinna Vinschen wrote:
> On Mar 22 13:40, Eliot Moss wrote:
>> On 3/22/2010 1:37 PM, Christopher Faylor wrote:
>>> On Mon, Mar 22, 2010 at 05:01:00PM +0100, Corinna Vinschen wrote:
>>>> On Mar 22 10:56, Charles Wilson wrote:
>>>>> On 3/22/2010 7:03 AM, Corinna Vinschen wrote:
>>>>>> On Mar 22 02:04, Charles Wilson wrote:
>>>>>>> I've been tracking down a problem in xinetd. It appears to be an issue
>>>>>>> with using MSG_PEEK in recvfrom() on UDP sockets.
>>>>>>
>>>>>> Yes, that's a bug in Cygwin.  The socket event handling got messed up
>>>>>> when MSG_PEEK was used.  I fixed that in CVS so it will be in 1.7.2.
>>>>>
>>>>> Confirmed: fixes both my testcase, and the error in xinetd. Thanks for
>>>>> the quick turnaround!  I was about ready to pull my hair out on this
>>>>
>>>> Sure.  I'm glad I had a simple testcase for a socket problem.  If only
>>>> somebody would come up with an equally simple testcase for the rsync
>>>> problem...
>>>
>>> I thought the rsync problem was due to the fact that select for write on
>>> pipes is unreliable.
>
> The problem has been observed with rsync using socketpairs in the first
> place.  The first reports claimed that building rsync with pipes fixed
> the issue.  Only a later report on the list claimed that the problem
> still exists even with pipes.  I don't dare to make any assumption of
> the actual reason :|

Right ... I am the one where building w/out socketpairs
definitely fixes it. I on Windows 7, 64-bit, and have one
BLODA item still installed (at your previous request so
that we can check for bugs that were related to socketpair
*completely* failing with rsync before -- back in November.)

Regards -- Eliot

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list