mirror of
https://github.com/netbirdio/netbird.git
synced 2026-08-02 02:38:51 -04:00
31 lines
881 B
Go
31 lines
881 B
Go
package daemonaddr
|
|
|
|
import (
|
|
"slices"
|
|
"testing"
|
|
)
|
|
|
|
// The protected name must be tried before the plain one on both sides: it is the
|
|
// one an unprivileged process cannot create, so preferring it is what keeps a
|
|
// squatter from owning the name the service daemon would otherwise use.
|
|
func TestPipePaths_PrefersTheProtectedName(t *testing.T) {
|
|
got := PipePaths("netbird")
|
|
want := []string{
|
|
`\\.\pipe\ProtectedPrefix\Administrators\netbird`,
|
|
`\\.\pipe\netbird`,
|
|
}
|
|
if !slices.Equal(got, want) {
|
|
t.Errorf("PipePaths = %q, want %q", got, want)
|
|
}
|
|
}
|
|
|
|
// An operator who passes a full path chose exactly one pipe, so neither side may
|
|
// look anywhere else.
|
|
func TestPipePaths_QualifiedPathIsUsedAsIs(t *testing.T) {
|
|
path := `\\.\pipe\custom-netbird`
|
|
got := PipePaths(path)
|
|
if !slices.Equal(got, []string{path}) {
|
|
t.Errorf("PipePaths = %q, want just %q", got, path)
|
|
}
|
|
}
|