diff options
| author | Mikhail Osipov <mike.osipov@gmail.com> | 2020-02-25 01:10:47 +0300 |
|---|---|---|
| committer | Mikhail Osipov <mike.osipov@gmail.com> | 2020-02-25 01:10:47 +0300 |
| commit | 1e94e06ef2c5d0b62c604b6ee491acc24dd8302c (patch) | |
| tree | bbc963a67c2b768ee0729a301ff21c1b038e5481 /pkg/server/module | |
| parent | 3d0f5fc15b5542704a432b0399d1a8ddbb3c72ad (diff) | |
make hex module duplex
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 + }) } |
