Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Date: Sun, 15 Apr 2001 17:34:15 -0700 From: Enoch Wu To: cygwin AT cygwin DOT com Subject: Re: cvs broken on win2k after recent cygwin upgrade: "The descriptor is a file, not a socket" Message-ID: <20010415173415.A4109115@MELON> Reply-To: Enoch Wu Mail-Followup-To: Enoch Wu , cygwin AT cygwin DOT com References: <002e01c0b29d$c880d5b0$0401a8c0 AT trinity> <010e01c0bafa$f04d9320$2b904f86 AT trinity> <07fd01c0c3dc$cf05f730$0200a8c0 AT voyager> <20010414161237 DOT A4149051 AT MELON> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from ht@cogsci.ed.ac.uk on Sun, Apr 15, 2001 at 09:22:58AM +0100 X-Mailer: Mutt 1.2.5i X-Operating-System: CYGWIN_98-4.10 1.1.8(0.34/3/2) i586 X-Sender: ewu AT eskimo DOT com Henry, On Sun, Apr 15, 2001 at 09:22:58AM +0100, Henry S. Thompson wrote: > Thanks for the observations. Seems to me to confirm Corinna's > original belief that somehow Cygwin is getting the wrong WINSOCK > library, even though the right one is available. Yes. It seems that Cygwin is getting the wrong file handle from winsock. Why would Cygwin get a file when it requests a socket from MS winsock? That is beyond my understanding. I can dig a little deeper: The message "The descriptor is a file. not a socket" is a Cygwin error message from src/winsup/cygwin/errno.cc as far as I can tell. The evidence is a code fragment from that routine: case ENOTSOCK: error = "The descriptor is a file, not a socket"; break; Cygwin itself detected a non-socket and then printed that error message. Winsock did not print that error message on your screen. It appears that a Cygwin function just returned a file descriptor instead of a socket, or that it mistook the socket as a file descriptor. Could it be possible that winsock actually returned a socket but the socket was mistaken as a file descriptor? That is beyond my understanding. However, this anomaly manifested itself only when a non-MS dialup networking program was running (in my case). The non-MS dialup software was causing problem to Cygwin only --- Windows telnet/ftp was not being affected at all. The non-MS dialup software has since been removed from my computer. I can no longer reproduce that same problem. If you know C and C++, would you be able to debug it? (since you can reproduce the problem). You are the only person that can provide more information. Enoch -- Want to unsubscribe from this list? Check out: http://cygwin.com/ml/#unsubscribe-simple