Skip to content

server: Allow creating named pipes using \Device\NamedPipe\ as RootDirectory. (#52105)

Jinoh Kang requested to merge iamahuman/wine:server/npfs-rootdir-lax into master

On Windows, \Device\NamedPipe\ is the root directory of the named pipe file system (NPFS), and can be used as RootDirectory to skip its path when accessing the NPFS namespace.


Note: subpath->str may look hacky, but it's used to indicate trailing \\1 and existing code already does it too:

  • server/directory.c checks name->str2 to test if this is the last component. This is evident by the fact that changing it to name->len will lead to major regression.
  • server/registry.c has similar lookup logic.34
  1. https://gitlab.winehq.org/wine/wine/-/blob/c64aa0006e4a33d755a57a693cd81dc1ed95fa9d/server/directory.c#L214

  2. https://gitlab.winehq.org/wine/wine/-/blob/c64aa0006e4a33d755a57a693cd81dc1ed95fa9d/server/directory.c#L220

  3. https://gitlab.winehq.org/wine/wine/-/blob/c64aa0006e4a33d755a57a693cd81dc1ed95fa9d/server/registry.c#L521

  4. https://gitlab.winehq.org/wine/wine/-/blob/c64aa0006e4a33d755a57a693cd81dc1ed95fa9d/server/registry.c#L531

Edited by Jinoh Kang

Merge request reports

Loading