On Aug  8 21:38, Martin Wege via Cygwin wrote:
> On Tue, Aug 8, 2023 at 10:20 AM Corinna Vinschen
> <corinna-cyg...@cygwin.com> wrote:
> >
> > On Aug  7 23:14, Martin Wege via Cygwin wrote:
> > > On Mon, Aug 7, 2023 at 9:14 PM Corinna Vinschen
> > > <corinna-cyg...@cygwin.com> wrote:
> > > >
> > > > On Aug  7 12:26, Brian Inglis via Cygwin wrote:
> > > > > On 2023-08-07 08:42, Martin Wege via Cygwin wrote:
> > > > > > We get a weird mkfifo failure in Cygwin on NTFS:
> > > > > >
> > > > > > /usr/bin/mkfifo -m 600 x.fifo
> > > > > > mkfifo: cannot set permissions of 'x.fifo': Not a directory
> > > > >
> > > > > This error is also reproducible with default fifo permissions 666 or
> > > > > anything else, and appears to be returned by gen_full_path_at() in
> > > > > syscalls.cc when called with a fifo:
> > > >
> > > > This will be fixed in 3.4.8,
> > >
> > > Thank you
> > >
> > > > see
> > > > https://cygwin.com/git/?p=newlib-cygwin.git;a=commit;h=b56b4d7fd85b
> > >
> > > First, Can I download a beta of  3.4.8, or any other version with that
> > > fix? It's pretty urgent
> >
> > You can install a test release of Cygwin, simply by using the setup tool
> > These test releases are always created from the git main branch, though,
> > so they are always test releases of the next major version, currently
> > 3.5.0.
> 
> Where can I download the Setup.exe tool for those test releases?

You already have it: https://cygwin.com/install.html

> > > Secondly, how are fifos, other device nodes and mknod implemented? You
> > > encode them as softlinks on ntfs?
> >
> > Not only on NTFS.  FIFOs on the disk are always created as symlinks
> > with a special target string, recognized by Cygwin.  No differece on
> > NFS.  Microsoft NFSv3 has no way to specify creating a "real" FIFO
> > on the remote filesystem.  It wouldn't make sense anyway, because
> > there's no way to share the FIFO across systems.
> 
> So no Windows ioctl to do a mknod?

Windows does not have provisions to store FIFOs on disk.  The closest
you get in Windows are Windows named pipes, and those are stored
non-permanently in a special, temporary filesystem inside the native NT
namespace.  Try this in Cygwin:

  $ cd /proc/sys/Device/NamedPipe/    <-- trailing slash!
  $ ls -l

FIFOs in the normal Windows filesystem are a Cygwin fake.

> What does a Linux/FreeBSD FIFO file look like, if you export that
> filesystem via NFSv3, and mount it via the native Windows NFSv3
> driver, and do a ls -l in Cygwin?

It looks like a FIFO because MSFT NFSv3 exports the stat(2) info
verbatim:

linux$ mkfifo blubb

cygwin$ ls -l blubb
prw-r--r-- 1 corinna vinschen 0 Aug  8 10:22 blubb

In Windows Explorer and cmd.exe its a file of size 0 with the
"System" attribute set.

In Samba it looks like an ordinary file of size 0.


Corinna

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to