diff options
| author | Mikhail Osipov <mike.osipov@gmail.com> | 2020-02-28 14:09:56 +0300 |
|---|---|---|
| committer | Mikhail Osipov <mike.osipov@gmail.com> | 2020-02-28 14:09:56 +0300 |
| commit | ddd97084c236d860d8b81c7ab6d0742f4d230a96 (patch) | |
| tree | 0ac0bd769fa0a600ef45c04392c3bad464985f9c /pkg/server | |
| parent | e9bf22ae73b50bf7e72664bd7e71daedacbac9b6 (diff) | |
[cmd/tunneld] add modules command
Diffstat (limited to 'pkg/server')
| -rw-r--r-- | pkg/server/module/module.go | 13 | ||||
| -rw-r--r-- | pkg/server/tunnel.go | 16 |
2 files changed, 24 insertions, 5 deletions
diff --git a/pkg/server/module/module.go b/pkg/server/module/module.go index 3df6eb5..c638299 100644 --- a/pkg/server/module/module.go +++ b/pkg/server/module/module.go @@ -3,6 +3,7 @@ package module import ( "fmt" "log" + "sort" "strings" "tunnel/pkg/server/env" "tunnel/pkg/server/opts" @@ -111,3 +112,15 @@ func registerFunc(name string, p Func) { return p, nil }) } + +func GetList() []string { + var list []string + + for k := range modules { + list = append(list, k) + } + + sort.Strings(list) + + return list +} diff --git a/pkg/server/tunnel.go b/pkg/server/tunnel.go index 5a5e302..189703d 100644 --- a/pkg/server/tunnel.go +++ b/pkg/server/tunnel.go @@ -381,13 +381,13 @@ func foreachStream(m map[int]*stream, f func(s *stream)) { } } -func tunnelShow(r *request) { +func showTunnels(r *request) { foreachTunnel(r.c.s.tunnels, func(t *tunnel) { r.Println(t.id, t.args) }) } -func streamShow(r *request) { +func showStreams(r *request) { foreachTunnel(r.c.s.tunnels, func(t *tunnel) { t.mu.Lock() defer t.mu.Unlock() @@ -403,13 +403,19 @@ func streamShow(r *request) { }) } +func showModules(r *request) { + for _, m := range module.GetList() { + r.Println(m) + } +} + func init() { newCmd(tunnelAdd, "add") newCmd(tunnelDel, "del") newCmd(tunnelRename, "rename") - newCmd(tunnelShow, "show") - - newCmd(streamShow, "streams") + newCmd(showModules, "modules") + newCmd(showStreams, "streams") + newCmd(showTunnels, "show") } |
