mirror of
https://github.com/adnanh/webhook.git
synced 2025-05-14 17:44:42 +00:00
Add a -socket option that configures the server to listen on a Unix-domain socket or Windows named pipe instead of a TCP port. This allows webhook to be used behind a reverse proxy on multi-tenant shared hosting without the need to choose (and the permission to bind to) a free port number. On Windows, -socket is expected to be a named pipe such as \\.\pipe\webhook, and the code uses https://github.com/microsoft/go-winio to bind the listening socket. On other platforms, -socket is the path to a Unix domain socket such as /tmp/webhook.sock, or an abstract socket name starting with @, bound using the regular net.Listen function with the "network" parameter set to "unix". Note: this pushes our minimum Go version up to 1.21 as that is what go-winio requires, but that is already the minimum version against which we are testing in the CI matrix.
12 lines
469 B
Go
12 lines
469 B
Go
package fs
|
|
|
|
// https://learn.microsoft.com/en-us/windows/win32/api/winnt/ne-winnt-security_impersonation_level
|
|
type SecurityImpersonationLevel int32 // C default enums underlying type is `int`, which is Go `int32`
|
|
|
|
// Impersonation levels
|
|
const (
|
|
SecurityAnonymous SecurityImpersonationLevel = 0
|
|
SecurityIdentification SecurityImpersonationLevel = 1
|
|
SecurityImpersonation SecurityImpersonationLevel = 2
|
|
SecurityDelegation SecurityImpersonationLevel = 3
|
|
)
|