diff options
Diffstat (limited to 'pkg/server/module')
| -rw-r--r-- | pkg/server/module/hex.go | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/pkg/server/module/hex.go b/pkg/server/module/hex.go index b632c11..8a25e50 100644 --- a/pkg/server/module/hex.go +++ b/pkg/server/module/hex.go @@ -2,9 +2,13 @@ package module import ( "encoding/hex" + "tunnel/pkg/server/env" + "tunnel/pkg/server/opts" "tunnel/pkg/server/queue" ) +type hexModule struct{} + func hexEncoder(rq, wq queue.Q) error { enc := hex.NewEncoder(wq.Writer()) @@ -21,7 +25,12 @@ func hexDecoder(rq, wq queue.Q) error { return queue.IoCopy(r, w) } +func (m hexModule) Open(env env.Env) (Pipe, Pipe) { + return hexEncoder, hexDecoder +} + func init() { - registerPipe("hex", Pipe(hexEncoder)) - registerPipe("unhex", Pipe(hexDecoder)) + register("hex", func(opts.Opts, env.Env) (module, error) { + return hexModule{}, nil + }) } |
