Skip to content
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

PlatformNotSupportedException for UNIX domain sockets on iOS/tvOS #73374

Merged
merged 29 commits into from
Aug 9, 2022

Conversation

directhex
Copy link
Contributor

@directhex directhex commented Aug 4, 2022

Explicitly mark UNIX domain sockets (and named pipes) with PlatformNotSupportedException.

These never worked on device, where the kernel returns EPERM on socket bind. They worked on the simulator when using /tmp as the temporary directory instead of the value from NSTemporaryDirectory(), but this seems to be an oversight by Apple rather than by design - and /tmp is not writable on device. In cases where device and simulator differ, we need to present the device scenario to our users as the canonically correct one.

See discussion in #73258

Closes: #51390
Closes: #51335

@dotnet-issue-labeler
Copy link

I couldn't figure out the best area label to add to this PR. If you have write-permissions please help me learn by adding exactly one area label.

@ghost ghost assigned directhex Aug 4, 2022
@directhex directhex force-pushed the PNSE-domain-sockets-on-ios-tvos branch from b0418b0 to d17c748 Compare August 4, 2022 14:47
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 4, 2022
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 4, 2022
@directhex directhex force-pushed the PNSE-domain-sockets-on-ios-tvos branch from 49fcad8 to 2f7ff83 Compare August 4, 2022 19:02
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 4, 2022
The same ones which fail on Linux Bionic, which has a similar problem
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 4, 2022
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 5, 2022
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 5, 2022
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 5, 2022
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 5, 2022
@directhex
Copy link
Contributor Author

Half the tests were disabled by #51392 so results aren't meaningful. Argh.

Current list of bugs this issue is designed to handle:

#51392
#51390
#67853
#51335

@dotnet dotnet deleted a comment from azure-pipelines bot Aug 5, 2022
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 5, 2022
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 8, 2022
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 8, 2022
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 8, 2022
Copy link
Member

@akoeplinger akoeplinger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good, just a few comments

@dotnet dotnet deleted a comment from azure-pipelines bot Aug 8, 2022
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 8, 2022
@dotnet dotnet deleted a comment from azure-pipelines bot Aug 8, 2022
@directhex directhex marked this pull request as ready for review August 9, 2022 00:15
@directhex
Copy link
Contributor Author

/azp run runtime-extra-platforms

@dotnet dotnet deleted a comment from azure-pipelines bot Aug 9, 2022
@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@directhex directhex merged commit 9687016 into dotnet:main Aug 9, 2022
@ghost ghost locked as resolved and limited conversation to collaborators Sep 9, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

System.IO.Tests fails on iOS/tvOS System.IO.Pipes.Tests Fails on iOS/tvOS
4 participants