(t *testing.T, username string, forceV1Behavior bool, allowSendEnv bool)
| 748 | } |
| 749 | |
| 750 | func testServer(t *testing.T, username string, forceV1Behavior bool, allowSendEnv bool) string { |
| 751 | srv := &server{ |
| 752 | lb: &testBackend{localUser: username, forceV1Behavior: forceV1Behavior, allowSendEnv: allowSendEnv}, |
| 753 | logf: log.Printf, |
| 754 | tailscaledPath: os.Getenv("TAILSCALED_PATH"), |
| 755 | timeNow: time.Now, |
| 756 | } |
| 757 | |
| 758 | l, err := net.Listen("tcp", "127.0.0.1:0") |
| 759 | if err != nil { |
| 760 | t.Fatal(err) |
| 761 | } |
| 762 | t.Cleanup(func() { l.Close() }) |
| 763 | |
| 764 | go func() { |
| 765 | for { |
| 766 | conn, err := l.Accept() |
| 767 | if err == nil { |
| 768 | go srv.HandleSSHConn(&addressFakingConn{conn}) |
| 769 | } |
| 770 | } |
| 771 | }() |
| 772 | |
| 773 | return l.Addr().String() |
| 774 | } |
| 775 | |
| 776 | type testServerOpts struct { |
| 777 | username string |
no test coverage detected
searching dependent graphs…