From: Torsten Bögershausen Date: Wed, 06 Feb 2013 20:16:13 GMT Subject: Re: [RFC] test-lib.sh: No POSIXPERM for cygwin Message-ID: <5112BA0D.6020200@web.de> In-Reply-To: Am 2013-02-06 10:34, schrieb Erik Faye-Lund: > On Sun, Jan 27, 2013 at 3:57 PM, Torsten Bögershausen wrote: >> t0070 and t1301 fail when running the test suite under cygwin. >> Skip the failing tests by unsetting POSIXPERM. >> > > But is this the real reason? I thought Cygwin implemented POSIX permissions...? t0070: 'mktemp to unwritable directory prints filename' mkdir cannotwrite && chmod -w cannotwrite && test_when_finished "chmod +w cannotwrite" && test_must_fail test-mktemp cannotwrite/testXXXXXX 2>err && grep "cannotwrite/test" err When a directory under Linux/*nix has no write permission, it is not allowed to create another directory (or file..) here. This is not working under cygwin, a directory/file can be created even if the parent directory has chmod 0. ------------- tb@PC /cygdrive/c/temp $ mkdir ttt tb@PC /cygdrive/c/temp $ chmod 0 ttt tb@PC /cygdrive/c/temp $ ls -ld ttt d---------+ 1 tb None 0 Feb 6 20:33 ttt tb@PC /cygdrive/c/temp $ touch ttt/x tb@PC /cygdrive/c/temp $ ls -ld ttt d---------+ 1 tb None 0 Feb 6 20:33 ttt tb@PC /cygdrive/c/temp $ ls -l ttt total 0 -rw-r--r--+ 1 tb None 0 Feb 6 20:33 x ------------------------------------------- If this is POSIX compliant? I'm not an expert here. On the other hand: This test case does not test git, but rather the file system, so we can probaly remove it? About 1301: Some resereach needs to be done, to find out the connection between umask, cygwin and the mount options. On my system I have: $mount C: on /cygdrive/c type ntfs (binary,posix=0,user,noumount,auto) /Torsten