diff options
Diffstat (limited to 'pkg/server/hook/aes.go')
| -rw-r--r-- | pkg/server/hook/aes.go | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/pkg/server/hook/aes.go b/pkg/server/hook/aes.go index e437651..dc48f49 100644 --- a/pkg/server/hook/aes.go +++ b/pkg/server/hook/aes.go @@ -6,8 +6,8 @@ import ( "crypto/md5" "crypto/rand" "io" + "tunnel/pkg/server/env" - "tunnel/pkg/server/opts" "tunnel/pkg/server/queue" ) @@ -64,24 +64,16 @@ func (a *aesPipe) Recv(rq, wq queue.Q) error { return queue.IoCopy(reader, wq.Writer()) } -func newAes(env env.Env) *aesPipe { +func (aesHook) New(env env.Env) (interface{}, error) { s := env.Value("secret") h := md5.Sum([]byte(s)) a := &aesPipe{key: make([]byte, 16)} copy(a.key, h[:]) - return a -} - -func (aesHook) Open(env env.Env) (interface{}, error) { - return newAes(env), nil -} - -func newAesHook(opts.Opts) (hook, error) { - return aesHook{}, nil + return a, nil } func init() { - register("aes", newAesHook) + register("aes", aesHook{}) } |
