Hi, I would write some points here for that long code which make sense to me and may be the problem.
1. I tried both MSG_PEEK and MSG_OOB and still I am getting an EINVAL. 2. The process does a fork and the child does the connect to the destination, sendto and the parent does the recvfrom. 3. The 4th element of the struct sockaddr_in is not very clear in cygwin and it is the case with all instances of sockaddr_in, but they do not seem to create a problem as they are running fine in other programs using datagram UDP sockets. Also the uninitialized values of the elements of src sockaddr_in is different in linux. I think these might be the one that are creating problems. Any advice would be helpful. Thanks a lot, Varun Sharma -- 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/