On Fri, Aug 18, 2023 at 10:34 AM Corinna Vinschen
<corinna-cyg...@cygwin.com> wrote:
>
> On Aug 18 06:02, Martin Wege via Cygwin wrote:
> > On Mon, Aug 7, 2023 at 4:42 PM Martin Wege <martin.l.w...@gmail.com> wrote:
> > >
> > > Hello,
> > >
> > > 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
> > >
> > > Is there a known workaround? So far named fifos cannot be created somehow.
> >
> > This is fixed for NTFS, but still broken for Windows builtin NFS v3 client:
>
> It was actually never supposed to work on NFS.  Cygwin FIFOs are
> created as symlinks of the type Windows shortcut with the R/O attribute
> set.  Those are only generated on NTFS and FAT filesystems.  NFS symlinks
> are generated using special magic.  NFS doesn't support DOS attributes.

NFS supports symlinks!
Easy solution would be to say that symlinks on NFS pointing to
:\0:c4:$inodenum are pipes on the local Cygwin machine.
/usr/bin/mkfifo on Cygwin creates a symlink :\0:c4:$inodenum. Cygwin
stat() functions turn symlinks with a value of :\0:c4:... to pipes.
Everyone is happy!

It does not have to be portable across different platforms. Just
portable enough that mkfifo in with bash scripts works on NFS.

Thanks,
Martin
>
> 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