Subject: Re: cvs broken on win2k after recent cygwin upgrade: "The descriptor is a file, not a socket"
From: "Matthew D. Langston" <[email-masked]>
To: Dmitrii Pasechnik <[email-masked]>
Cc: [email-masked]
Date: Wed, 21 Mar 2001 23:00:29 -0800

Hi Dmitrii and list,

I checked the size of my cvs.exe executable, and it was identical in size to
yours, as well as having a timestamp of October 23, 2000.

$ ls -la /bin/cvs.exe
-rwxrwxrwx   1 544      None      1466946 Oct 23 02:25 /bin/cvs.exe*

So, this would seem to indicate that the problem is external to the cvs
executable, with the problem being either with the newer cygwin dll itself,
or a Win2k SP1 problem.

I did an strace when running the command "cvs -z3 co root" to see if I could
determine why cvs works for you but doesn't work for me ("root" is the name
of the software package I want to work on).  I've cut-and-pasted the last
100 lines of the strace output and included them below on the chance that
you or another cygwin internals expert might see something.

I noticed on the 11th line something about a "WSADuplicateSocket error", and
then several lines of "_cifs: fd not disk file" messages after that.  These
messages seemed like they might be related to the original error message of
"The descriptor is a file, not a socket" that I originally reported.

Thanks for any insight you or others may be able to provide.

Regards, Matt

  632 1804222 [main] cvs 1548 fhandler_base::set_close_on_exec: set
close_on_exec for /dev/tcp to 1
  171 1804393 [main] cvs 1548 _fcntl: 0 = fcntl (3, 2, 0x1)
187329 1991722 [main] cvs 1548 __set_winsock_errno: close:147 - 10038
(WSAENOTSOCK) -> 108
  442 1992164 [main] cvs 1548 fhandler_base::set_close_on_exec: set
close_on_exec for /dev/tcp to 1
  192 1992356 [main] cvs 1548 _fcntl: 0 = fcntl (3, 2, 0x1)
 2388 1994744 [main] cvs 1548 __set_winsock_errno: close:147 - 10038
(WSAENOTSOCK) -> 108
  321 1995065 [main] cvs 1548 fhandler_base::set_close_on_exec: set
close_on_exec for /dev/tcp to 1
  182 1995247 [main] cvs 1548 _fcntl: 0 = fcntl (3, 2, 0x1)
  179 1995426 [main] cvs 1548 dtable::dup2: dup2 (3, 4)
  181 1995607 [main] cvs 1548 dtable::build_fhandler:  - cb 64, fd -1, fh
0x1A020BB8
  456 1996063 [main] cvs 1548 fhandler_socket::fixup_before_fork_exec:
WSADuplicateSocket error
  185 1996248 [main] cvs 1548 __set_winsock_errno:
fixup_before_fork_exec:56 - 10038 (WSAENOTSOCK) -> 108
  175 1996423 [main] cvs 1548 fhandler_socket::fixup_before_fork_exec:
Without Winsock 2.0
  170 1996593 [main] cvs 1548 fhandler_socket::fixup_after_fork: WSASocket
begin, dwServiceFlags1=0
  189 1996782 [main] cvs 1548 fhandler_socket::fixup_after_fork: WSASocket
error
  173 1996955 [main] cvs 1548 __set_winsock_errno: fixup_after_fork:84 -
10022 (WSAEINVAL) -> 22
  172 1997127 [main] cvs 1548 fhandler_base::fixup_after_fork: inheriting
'/dev/tcp' from parent
  184 1997311 [main] cvs 1548 fhandler_socket::fixup_after_fork: Without
Winsock 2.0
  173 1997484 [main] cvs 1548 dtable::dup2: 4 = dup2 (3, 4)
  200 1997684 [main] cvs 1548 fhandler_base::fcntl: GETFL: 2
  171 1997855 [main] cvs 1548 _fcntl: 2 = fcntl (3, 3, 0x0)
  174 1998029 [main] cvs 1548 _cygwin_istext_for_stdio:
_cygwin_istext_for_stdio (3)
  169 1998198 [main] cvs 1548 _cygwin_istext_for_stdio:  _cifs: fd not disk
file
  171 1998369 [main] cvs 1548 setmode_helper: setmode: file was raw now raw
  168 1998537 [main] cvs 1548 setmode: setmode (3, binary) returns binary
  168 1998705 [main] cvs 1548 _cygwin_istext_for_stdio:
_cygwin_istext_for_stdio (3)
  170 1998875 [main] cvs 1548 _cygwin_istext_for_stdio:  _cifs: fd not disk
file
  343 1999218 [main] cvs 1548 fhandler_base::fcntl: GETFL: 2
  170 1999388 [main] cvs 1548 _fcntl: 2 = fcntl (4, 3, 0x0)
  169 1999557 [main] cvs 1548 _cygwin_istext_for_stdio:
_cygwin_istext_for_stdio (4)
  169 1999726 [main] cvs 1548 _cygwin_istext_for_stdio:  _cifs: fd not disk
file
  170 1999896 [main] cvs 1548 setmode_helper: setmode: file was raw now raw
  168 2000064 [main] cvs 1548 setmode: setmode (4, binary) returns binary
  168 2000232 [main] cvs 1548 _cygwin_istext_for_stdio:
_cygwin_istext_for_stdio (4)
  170 2000402 [main] cvs 1548 _cygwin_istext_for_stdio:  _cifs: fd not disk
file
 2810 2003212 [main] cvs 1548 time: 985241636 = time (0)
  210 2003422 [main] cvs 1548 _fstat: 0 = fstat (3, 255FB94)
  175 2003597 [main] cvs 1548 isatty: 0 = isatty (3)
  179 2003776 [main] cvs 1548 _write: write (3, 0xA024718, 372)
  342 2004118 [main] cvs 1548 __set_winsock_errno: write:131 - 10038
(WSAENOTSOCK) -> 108
  178 2004296 [main] cvs 1548 _write: -1 = write (3, 0xA024718, 372)
24040 2028336 [main] cvs 1548 _write: write (2, 0x255FEE8, 3)
  332 2028668 [main] cvs 1548 fhandler_base::write: text write
cvs  162 2028830 [main] cvs 1548 fhandler_base::write: 3 = write (0x255FEE8,
3)
  148 2028978 [main] cvs 1548 _write: 3 = write (2, 0x255FEE8, 3)
  144 2029122 [main] cvs 1548 _write: write (2, 0x46423C, 1)
  141 2029263 [main] cvs 1548 fhandler_base::write: text write
   151 2029414 [main] cvs 1548 fhandler_base::write: 1 = write (0x46423C, 1)
  141 2029555 [main] cvs 1548 _write: 1 = write (2, 0x46423C, 1)
  143 2029698 [main] cvs 1548 _write: write (2, 0x46423E, 1)
  399 2030097 [main] cvs 1548 fhandler_base::write: text write
[  148 2030245 [main] cvs 1548 fhandler_base::write: 1 = write (0x46423E, 1)
  141 2030386 [main] cvs 1548 _write: 1 = write (2, 0x46423E, 1)
  143 2030529 [main] cvs 1548 _write: write (2, 0x42E3B3, 8)
  137 2030666 [main] cvs 1548 fhandler_base::write: text write
checkout  142 2030808 [main] cvs 1548 fhandler_base::write: 8 = write
(0x42E3B3, 8)
  137 2030945 [main] cvs 1548 _write: 8 = write (2, 0x42E3B3, 8)
  139 2031084 [main] cvs 1548 _write: write (2, 0x464240, 9)
  137 2031221 [main] cvs 1548 fhandler_base::write: text write
 aborted]  142 2031363 [main] cvs 1548 fhandler_base::write: 9 = write
(0x464240, 9)
  166 2031529 [main] cvs 1548 _write: 9 = write (2, 0x464240, 9)
  169 2031698 [main] cvs 1548 _write: write (2, 0x46424A, 2)
  166 2031864 [main] cvs 1548 fhandler_base::write: text write
:   170 2032034 [main] cvs 1548 fhandler_base::write: 2 = write (0x46424A,
2)
  167 2032201 [main] cvs 1548 _write: 2 = write (2, 0x46424A, 2)
  171 2032372 [main] cvs 1548 _write: write (2, 0x40A54D, 17)
  165 2032537 [main] cvs 1548 fhandler_base::write: text write
writing to server 2258 2034795 [main] cvs 1548 fhandler_base::write: 17 =
write (0x40A54D, 17)
  262 2035057 [main] cvs 1548 _write: 17 = write (2, 0x40A54D, 17)
  183 2035240 [main] cvs 1548 _write: write (2, 0x46424A, 2)
  170 2035410 [main] cvs 1548 fhandler_base::write: text write
:   175 2035585 [main] cvs 1548 fhandler_base::write: 2 = write (0x46424A,
2)
  504 2036089 [main] cvs 1548 _write: 2 = write (2, 0x46424A, 2)
  204 2036293 [main] cvs 1548 _write: write (2, 0x6100A1BC, 38)
  171 2036464 [main] cvs 1548 fhandler_base::write: text write
The descriptor is a file, not a socket  174 2036638 [main] cvs 1548
fhandler_base::write: 38 = write (0x6100A1BC, 38)
  168 2036806 [main] cvs 1548 _write: 38 = write (2, 0x6100A1BC, 38)
  169 2036975 [main] cvs 1548 _write: write (2, 0x464297, 1)
  167 2037142 [main] cvs 1548 fhandler_base::write: text write

  173 2037315 [main] cvs 1548 fhandler_base::write: 1 = write (0x464297, 1)
  167 2037482 [main] cvs 1548 _write: 1 = write (2, 0x464297, 1)
14578 2052060 [main] cvs 1548 do_exit: do_exit (1)
  271 2052331 [main] cvs 1548 void: 0x0 = signal (20, 0x1)
  144 2052475 [main] cvs 1548 void: 0x468A94 = signal (1, 0x1)
  141 2052616 [main] cvs 1548 void: 0x468A94 = signal (2, 0x1)
  136 2052752 [main] cvs 1548 void: 0x468A94 = signal (3, 0x1)
  198 2052950 [main] cvs 1548 fhandler_base::close: handle 0xB8
  154 2053104 [main] cvs 1548 fhandler_base::close: handle 0xB4
  305 2053409 [main] cvs 1548 __set_winsock_errno: close:147 - 10038
(WSAENOTSOCK) -> 108
  271 2053680 [main] cvs 1548 __set_winsock_errno: close:147 - 10038
(WSAENOTSOCK) -> 108
  186 2053866 [main] cvs 1548 proc_terminate: nchildren 0, nzombies 0
  168 2054034 [main] cvs 1548 proc_terminate: leaving
  250 2054284 [main] cvs 1548 sigproc_terminate: entering
  169 2054453 [main] cvs 1548 sigproc_terminate: done
  335 2054788 [main] cvs 1548 __to_clock_t: dwHighDateTime 0, dwLowDateTime
1201728
  142 2054930 [main] cvs 1548 __to_clock_t: total 00000000 00000078
  141 2055071 [main] cvs 1548 __to_clock_t: dwHighDateTime 0, dwLowDateTime
2103024
  138 2055209 [main] cvs 1548 __to_clock_t: total 00000000 000000D2
  137 2055346 [main] cvs 1548 _pinfo::exit: Calling ExitProcess 1

----- Original Message -----
From: "Dmitrii Pasechnik" <[email-masked]>
To: "Matthew D. Langston" <[email-masked]>
Cc: <[email-masked]>
Sent: Tuesday, March 20, 2001 4:36 PM
Subject: Re: cvs broken on win2k after recent cygwin upgrade: "The
descriptor is a file, not a socket"

> On Tue, 20 Mar 2001, Matthew D. Langston wrote:
>
> >I just upgraded this afternoon to the latest version of cygwin (by
running
> >http://sources.redhat.com/cygwin/setup.exe), and now cvs no longer works.
I
> >get the following error message when trying to do a "cvs update" or a
"cvs
> >checkout" using pserver:
> >
> >cvs [checkout aborted]: writing to server: The descriptor is a file, not
a
> >socket
> >
> >I am running cygwin under Win2k SP1, with the version of cvs (cvs version
> >1.11) that installed automatically when the aforementioned setup program
was
> >run.
> >
> strange, because I'm running cvs in exactly the same environment.
> (only I don't know if your executable is the same)
> mine is 1466946 bytes, dated Oct 23 2000, cvs 1.11
>
> I don't remember whether I updated it when running setup to ugrade to
> cygwin 1.1.8, or not.
>
> >The previous version of cygwin that I was using (and that had a working
cvs)
> >was installed sometime last fall (around October 2000 if memory serves).
> >So, it appears that the cygwin upgrade that I did this afternoon caused
cvs
> >to stop working.
> >
> >I noticed that this problem was mentioned in the mail archives from last
> >month (see http://sources.redhat.com/ml/cygwin/2001-02/msg00007.html),
but
> >there didn't seem to be any mention of a workaround.  Is there anyone who
> >could help me solve this problem?
> rebuild from source?
> it's on www.cvshome.org, and doesn't need any patches for cygwin, imho...
>
> --
> Dmitrii Pasechnik
> e-mail: [email-masked]
> http://ssor.twi.tudelft.nl/~dima/
>

--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple