diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2021-05-25 17:49:04 +0300 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2021-05-25 17:49:04 +0300 |
commit | b62450cf172971c7805143a39c6c491a7a3c9785 (patch) | |
tree | 73b1054bd5ee9ec6ccd2ccf644dc3cee5f372879 /winsup/cygwin/globals.cc | |
parent | a4e074672aa61bd8b8a3b9493b9bdc85683e7604 (diff) |
Cygwin: POSIX msg queues: implement open/mq_open entirely in fhandler
The mq_open call is just a framework now. This patch moves the
entire functionality into fhandler_mqueue. To support standard
OS calls (as on Linux), make fhandler_mqueue a derived class from
fhandler_disk_file and keep the base handle the handle to the
default stream, to allow implementing O_PATH functionlaity as well
as reading from the file and NOT reading binary message queue data.
Implement a standard fhandler_mqueue::open method, allowing, for
instance, to touch a file under /dev/mqueue and if it doesn't exist,
to create a message queue file.
FIXME: This introduces a BAD HACK into path_conv::check, which needs
reviewing.
Keep the posix path intact in the fhandler, and change get_proc_fd_name
accordingly to return only the basename plus leading slash for
/proc/<PID>/fd.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Diffstat (limited to 'winsup/cygwin/globals.cc')
-rw-r--r-- | winsup/cygwin/globals.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/winsup/cygwin/globals.cc b/winsup/cygwin/globals.cc index d0c6046a5..3b25c2803 100644 --- a/winsup/cygwin/globals.cc +++ b/winsup/cygwin/globals.cc @@ -153,6 +153,7 @@ const int __collate_load_error = 0; extern UNICODE_STRING _RDATA ro_u_natsyml = _ROU (L"SymbolicLink"); extern UNICODE_STRING _RDATA ro_u_natdev = _ROU (L"Device"); extern UNICODE_STRING _RDATA ro_u_npfs = _ROU (L"\\Device\\NamedPipe\\"); + extern UNICODE_STRING _RDATA ro_u_mq_suffix = _ROU (L":mqueue"); #undef _ROU /* This is an exported copy of environ which can be used by DLLs |