On Jan 27 08:12, Christian Franke via Cygwin wrote:
> Corinna Vinschen via Cygwin-announce wrote:
> > The following packages have been uploaded to the Cygwin distribution:
> > 
> > * cygwin-3.5.6-1
> > * cygwin-devel-3.5.6-1
> > * cygwin-doc-3.5.6-1
> > 
> > Fixes:
> > ------
> > 
> > ...
> > 
> > - Fix mq_unlink().
> >    Addresses: https://cygwin.com/pipermail/cygwin/2025-January/257119.html
> 
> Now mq_unlink("/queue") and unlink("/dev/mqueue/queue") work, thanks!
> 
> But there is a regression:
> stat() now returns st_mode = 0 for the queue file which results in an
> invalid S_IFMT field:
> 
> $ uname -r
> 3.5.6-1.x86_64
> 
> $ stat --printf '0x%04f/%A %n (%F)\n' /dev/mqueue /dev/mqueue/mqtest
> 0x43ff/drwxrwxrwt /dev/mqueue (directory)
> 0x0000/?--------- /dev/mqueue/mqtest (weird file)
> 
> $ rm -iv /dev/mqueue/mqtest
> rm: remove write-protected weird file '/dev/mqueue/mqtest'? y
> removed '/dev/mqueue/mqtest'
> 
> 
> Previous:
> 
> $ uname -r
> 3.5.5-1.x86_64
> 
> $ stat --printf '0x%04f/%A %n (%F)\n' /dev/mqueue /dev/mqueue/mqtest
> 0x43ff/drwxrwxrwt /dev/mqueue (directory)
> 0x8180/-rw------- /dev/mqueue/mqtest (regular file)
> 
> $ rm -iv /dev/mqueue/mqtest
> rm: remove regular file '/dev/mqueue/mqtest'? y
> rm: cannot remove '/dev/mqueue/mqtest': Operation not permitted

Oh well, I just pushed a patch to patch that patch.  I made Cygwin treat
message queues as devices, but that was apparently over the top.  I
reverted this to being treated as files again and just made sure the
check for being "anything with a representation on disk" is positive.
That in turn convinces unlink() to try removing them.

Please test cygwin-3.6.0-0.345.gb940faa144ca, which should be up in
an hour or so.


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