dotnet / dotnet/aspnetcore

Allow Kestrel to listen on abstract UNIX socket

Open
#68,038 0 comments 0 reactions 0 assignees View on GitHub
area-networking feature-kestrel
Dominant language
C#
Stars
38.4k
Forks
10.9k
Avg merge
2d 10h
Merged PRs (30d)
281

Description

### Is there an existing issue for this?

- [x] I have searched the existing issues

### Is your feature request related to a problem? Please describe the problem.

I would like to be able to configure Kestrel to listen on a UNIX socket in abstract namespace.

### Describe the solution you'd like

It would be great if `KestrelServerOptions.ListenUnixSocket` would accept a path to a socket that is not absolute but prepended with a `@` character, as is customary to denote an abstract UNIX socket.

### Additional context

Currently my workaround is to parse the configuration manually and explicitly create an `UnixDomainSocketEndPoint` with path from abstract namespace (starting with `\0` character). I pass the created endpoint directly to `KestrelServerOptions.Listen` method.

Contributor guide

Open the contributing guide

Research direction

Start with KestrelServerOptions.ListenUnixSocket and compare its handling with the existing KestrelServerOptions.Listen entry point. Trace how the socket path reaches the endpoint, then verify that an @-prefixed path is accepted for an abstract UNIX socket while existing paths continue to work.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
backend, networking
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
65/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.