diff options
| author | Mikhail Osipov <mike.osipov@gmail.com> | 2020-02-26 02:38:02 +0300 |
|---|---|---|
| committer | Mikhail Osipov <mike.osipov@gmail.com> | 2020-02-26 02:38:57 +0300 |
| commit | e6631acaa5af979d87645d74997955a1304cd648 (patch) | |
| tree | ba1a13102d437bc908a7c32ce604a802d5098868 /pkg/server/module/aes.go | |
| parent | d6b87d6ad43219bf5b9cdfef50697e1b066dc4ea (diff) | |
[server] prepare module.Open to return error
Diffstat (limited to 'pkg/server/module/aes.go')
| -rw-r--r-- | pkg/server/module/aes.go | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/pkg/server/module/aes.go b/pkg/server/module/aes.go index 68dcc7c..13153bc 100644 --- a/pkg/server/module/aes.go +++ b/pkg/server/module/aes.go @@ -11,13 +11,13 @@ import ( "tunnel/pkg/server/queue" ) -type aesInfo struct { +type aesModule struct{} + +type aesPipe struct { key []byte } -type aesModule struct{} - -func (a *aesInfo) Send(rq, wq queue.Q) error { +func (a *aesPipe) Send(rq, wq queue.Q) error { block, err := aes.NewCipher(a.key) if err != nil { return err @@ -39,7 +39,7 @@ func (a *aesInfo) Send(rq, wq queue.Q) error { return queue.IoCopy(rq.Reader(), writer) } -func (a *aesInfo) Recv(rq, wq queue.Q) error { +func (a *aesPipe) Recv(rq, wq queue.Q) error { block, err := aes.NewCipher(a.key) if err != nil { return err @@ -64,19 +64,18 @@ func (a *aesInfo) Recv(rq, wq queue.Q) error { return queue.IoCopy(reader, wq.Writer()) } -func newAes(env env.Env) *aesInfo { +func newAes(env env.Env) *aesPipe { s := getAuthSecret(env) h := md5.Sum([]byte(s)) - a := &aesInfo{key: make([]byte, 16)} + a := &aesPipe{key: make([]byte, 16)} copy(a.key, h[:]) return a } -func (m aesModule) Open(env env.Env) (Pipe, Pipe) { - a := newAes(env) - return a.Send, a.Recv +func (m aesModule) Open(env env.Env) (interface{}, error) { + return newAes(env), nil } func init() { |
