Skip to content

EPERM for clients connecting via named pipe #19154

Description

@computerquip-streamlabs

Platform: Windows 10
Node: 8.9.4
Subsystem: Net

We sometimes must launch our application as administrator. When we do, clients attempting to connect to our application over a named pipe (which was created during a call to server.listen()) that are not run as administrator are no longer able to connect. We have no known way of change permissions of our handle to make sure it can be written to from a non-administrator process.

Activity

  1. changed the title [-]EPERM for connection clients when run as administrator mode[/-] [+]EPERM for clients connecting via named pipe[/+] on Mar 5, 2018
  2. gireeshpunathil commented on Mar 6, 2018

    @gireeshpunathil
    Member

    we recently added a chmod facility for pipes through libuv/libuv#1386 in libuv, though I am not sure whether we have made an abstraction around it in node, and whether it covers windows platform.
    /cc @bzoz

  3. computerquip-streamlabs commented on Mar 6, 2018

    @computerquip-streamlabs
    Author

    There appears to be code there for Windows but I don't see a way to use it from Node.

  4. bzoz commented on Mar 6, 2018

    @bzoz
    Contributor

    Yep, we need to add mappings to Node. I'll do this.

  5. bzoz commented on Mar 8, 2018

    @bzoz
    Contributor

    I've gave it a shot (JaneaSystems@74c72e0), but this does not work. Node client fails with ENOTCONN when trying to read from pipe, maybe because of this line: https://github.com/libuv/libuv/blob/88c2af0e65ed49ff599f5afd4bf952ecdfab4594/src/win/pipe.c#L2122.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions