-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add PipeOptions.FirstPipeInstance enum value #83936
Add PipeOptions.FirstPipeInstance enum value #83936
Conversation
Note regarding the This serves as a reminder for when your PR is modifying a ref *.cs file and adding/modifying public APIs, please make sure the API implementation in the src *.cs file is documented with triple slash comments, so the PR reviewers can sign off that change. |
Tagging subscribers to this area: @dotnet/area-system-io Issue DetailsAdded a new Enum Value to represent expose the FILE_FLAG_FIRST_PIPE_INSTANCE flag specific to Windows Kernel API to create named pipes.
|
src/libraries/System.IO.Pipes/src/System/IO/Pipes/NamedPipeServerStream.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.IO.Pipes/tests/NamedPipeTests/NamedPipeTest.CreateServer.cs
Show resolved
Hide resolved
…eOptions-FirstPipeInstance
src/libraries/System.IO.Pipes/src/System/IO/Pipes/NamedPipeServerStream.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.IO.Pipes/src/System/IO/Pipes/NamedPipeServerStream.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.IO.Pipes/src/System/IO/Pipes/PipeOptions.cs
Outdated
Show resolved
Hide resolved
…eOptions-FirstPipeInstance
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Tarun047 big thanks for your contribution!
Could you please address @stephentoub feedback and let me know whether you could experiment with implementing it also for Unix?
src/libraries/System.IO.Pipes/src/System/IO/Pipes/PipeOptions.cs
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
However within the same process we use the static dictionary to check if a server for the given path already exists.
I've changed the code in this area such that it checks if there is firstPipeInstance applied and throw exception.
Great catch!
I've add some comments, we need only a little bit of polishing before merging the PR.
@Tarun047 big thanks for working on it!
src/libraries/System.IO.Pipes/src/System/IO/Pipes/NamedPipeServerStream.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.IO.Pipes/tests/NamedPipeTests/NamedPipeTest.CreateServer.cs
Show resolved
Hide resolved
src/libraries/System.IO.Pipes/src/System/IO/Pipes/NamedPipeServerStream.Unix.cs
Show resolved
Hide resolved
src/libraries/System.IO.Pipes/src/System/IO/Pipes/NamedPipeServerStream.Unix.cs
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
However within the same process we use the static dictionary to check if a server for the given path already exists.
I've changed the code in this area such that it checks if there is firstPipeInstance applied and throw exception.
Great catch!
I've add some comments, we need only a little bit of polishing before merging the PR.
@Tarun047 big thanks for working on it!
…verStream.cs Co-authored-by: Adam Sitnik <adam.sitnik@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Excellent, great job @Tarun047 !
The failures are unrelated (#86861, dotnet/arcade#11683). I'll re-run the tests that were cancelled due to timeout.
No luck, will try to repro the timeout locally. Edit: the timeouts happen in other PRs as well and are being tracked by #76454 |
Added a new Enum Value to represent expose the FILE_FLAG_FIRST_PIPE_INSTANCE flag specific to Windows Kernel API to create named pipes.
Resolve #76984