summaryrefslogtreecommitdiff
path: root/pkg
diff options
context:
space:
mode:
authorMikhail Osipov <mike.osipov@gmail.com>2020-02-28 14:09:56 +0300
committerMikhail Osipov <mike.osipov@gmail.com>2020-02-28 14:09:56 +0300
commitddd97084c236d860d8b81c7ab6d0742f4d230a96 (patch)
tree0ac0bd769fa0a600ef45c04392c3bad464985f9c /pkg
parente9bf22ae73b50bf7e72664bd7e71daedacbac9b6 (diff)
[cmd/tunneld] add modules command
Diffstat (limited to 'pkg')
-rw-r--r--pkg/server/module/module.go13
-rw-r--r--pkg/server/tunnel.go16
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")
}