Mail Archives: cygwin/2006/01/31/08:40:35
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
"cvs up -P" dies a horrible death when trying to update a hierachy where a
directory exists in the upstream repository, but contains no files so that
the directory has been pruned on the local checkout. This happens only
when I access my local checkout on a Win98 machine via remote access
driven by XP (in other words, running the same command locally on the
Win98 has no problems, it is only the remote network access failing):
$ uname -a
CYGWIN_NT-5.1 LOUNGE 1.5.19(0.150/4/2) 2006-01-16 15:01 i686 Cygwin
$ cd win98/coreutils
$ cvs up -dP
M Makefile.in
cvs [update aborted]: could not chdir to config: Invalid request code
I traced this to the fact that cvs expects ENOENT, and chokes when chdir
returns EBADRQC instead. A simple strace shows that cygwin1.dll could
probably be taught that a bad request return from a remote Win9x
filesystem during chdir() should be treated as the expected ENOENT:
$ strace bash -c 'cd ~/win98/coreutils/config'
...
34 514661 [main] bash 2536 chdir: dir 'config'
28 514689 [main] bash 2536 normalize_posix_path: src config
29 514718 [main] bash 2536 cwdstuff::get: posix
/cygdrive/j/cygwin/home/eblake/coreutils
29 514747 [main] bash 2536 cwdstuff::get:
(/cygdrive/j/cygwin/home/eblake/coreutils) = cwdstuff::get (0x22E610, 260,
1, 0), errno 54
108 514855 [main] bash 2536 normalize_posix_path:
/cygdrive/j/cygwin/home/eblake/coreutils/config = normalize_posix_path
(config)
33 514888 [main] bash 2536 mount_info::conv_to_win32_path:
conv_to_win32_path (/cygdrive/j/cygwin/home/eblake/coreutils/config)
33 514921 [main] bash 2536 mount_info::cygdrive_win32_path: src
'/cygdrive/j/cygwin/home/eblake/coreutils/config', dst
'j:\cygwin\home\eblake\coreutils\config'
29 514950 [main] bash 2536 set_flags: flags: binary (0x2)
28 514978 [main] bash 2536 mount_info::conv_to_win32_path: src_path
/cygdrive/j/cygwin/home/eblake/coreutils/config, dst
j:\cygwin\home\eblake\coreutils\config, flags 0x2A, rc 0
1539 516517 [main] bash 2536 symlink_info::check: GetFileAttributes
(j:\cygwin\home\eblake\coreutils\config) failed
108 516625 [main] bash 2536 geterrno_from_win_error: windows error 2 ==
errno 2
1388 518013 [main] bash 2536 symlink_info::check: GetFileAttributes
(j:\cygwin\home\eblake\coreutils\config.lnk) failed
173 518186 [main] bash 2536 geterrno_from_win_error: windows error 2 ==
errno 2
32 518218 [main] bash 2536 symlink_info::check: 0 = symlink.check
(j:\cygwin\home\eblake\coreutils\config, 0x22E2D0) (0x2A)
2435 520653 [main] bash 2536 mount_info::conv_to_win32_path:
conv_to_win32_path (/cygdrive/j/cygwin/home/eblake/coreutils)
74 520727 [main] bash 2536 mount_info::cygdrive_win32_path: src
'/cygdrive/j/cygwin/home/eblake/coreutils', dst
'j:\cygwin\home\eblake\coreutils'
31 520758 [main] bash 2536 set_flags: flags: binary (0x2)
28 520786 [main] bash 2536 mount_info::conv_to_win32_path: src_path
/cygdrive/j/cygwin/home/eblake/coreutils, dst
j:\cygwin\home\eblake\coreutils, flags 0x2A, rc 0
1549 522335 [main] bash 2536 symlink_info::check: not a symlink
109 522444 [main] bash 2536 symlink_info::check: 0 = symlink.check
(j:\cygwin\home\eblake\coreutils, 0x22E2D0) (0x2A)
35 522479 [main] bash 2536 path_conv::check:
this->path(j:\cygwin\home\eblake\coreutils\config), has_acls(0)
1350 523829 [main] bash 2536 seterrno_from_win_error:
/netrel/src/cygwin-1.5.19-1/winsup/cygwin/path.cc:3965 windows error 1
137 523966 [main] bash 2536 geterrno_from_win_error: windows error 1 ==
errno 54
30 523996 [main] bash 2536 __set_errno: void
seterrno_from_win_error(const char*, int, DWORD):310 val 54
32 524028 [main] bash 2536 chdir: -1 = chdir() cygheap->cwd.posix
'/cygdrive/j/cygwin/home/eblake/coreutils' native
'j:\cygwin\home\eblake\coreutils\config'
bash: line 0: cd: config: Invalid request code
...
- --
Life is short - so eat dessert first!
Eric Blake ebb9 AT byu DOT net
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFD32jI84KuGfSFAYARAseFAKCv8E0io02NJI/WR4LYIBNFVHGErACfYsna
4K2BEodNiEe7i1lB43YKKPQ=
=ssIG
-----END PGP SIGNATURE-----
--
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/
- Raw text -