MCPcopy
hub / github.com/gliderlabs/ssh / main

Function main

_examples/ssh-remoteforward/portforward.go:10–37  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

8)
9
10func main() {
11
12 log.Println("starting ssh server on port 2222...")
13
14 forwardHandler := &ssh.ForwardedTCPHandler{}
15
16 server := ssh.Server{
17 LocalPortForwardingCallback: ssh.LocalPortForwardingCallback(func(ctx ssh.Context, dhost string, dport uint32) bool {
18 log.Println("Accepted forward", dhost, dport)
19 return true
20 }),
21 Addr: ":2222",
22 Handler: ssh.Handler(func(s ssh.Session) {
23 io.WriteString(s, "Remote forwarding available...\n")
24 select {}
25 }),
26 ReversePortForwardingCallback: ssh.ReversePortForwardingCallback(func(ctx ssh.Context, host string, port uint32) bool {
27 log.Println("attempt to bind", host, port, "granted")
28 return true
29 }),
30 RequestHandlers: map[string]ssh.RequestHandler{
31 "tcpip-forward": forwardHandler.HandleSSHRequest,
32 "cancel-tcpip-forward": forwardHandler.HandleSSHRequest,
33 },
34 }
35
36 log.Fatal(server.ListenAndServe())
37}

Callers

nothing calls this directly

Calls 4

ListenAndServeMethod · 0.95
HandlerFuncType · 0.92

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…