aboutsummaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
authorChristine Dodrill <me@christine.website>2019-02-17 09:35:25 -0800
committerChristine Dodrill <me@christine.website>2019-02-17 09:35:25 -0800
commit2511992a18cf4a425aacbdd4d84449ae81b2dbc3 (patch)
tree9c8243cabe67f8c3e4e9db7dab247e790ddf8fcb /internal
parent60d342478afe343cd36af5fb89a8569ced0e896e (diff)
downloadx-2511992a18cf4a425aacbdd4d84449ae81b2dbc3.tar.xz
x-2511992a18cf4a425aacbdd4d84449ae81b2dbc3.zip
kill glue
Diffstat (limited to 'internal')
-rw-r--r--internal/gluaexpect/expect.go35
-rw-r--r--internal/gluasimplebox/sb.go100
2 files changed, 0 insertions, 135 deletions
diff --git a/internal/gluaexpect/expect.go b/internal/gluaexpect/expect.go
deleted file mode 100644
index b7e57d4..0000000
--- a/internal/gluaexpect/expect.go
+++ /dev/null
@@ -1,35 +0,0 @@
-package gluaexpect
-
-import (
- "github.com/ThomasRooney/gexpect"
- luar "github.com/layeh/gopher-luar"
- lua "github.com/yuin/gopher-lua"
-)
-
-func Preload(L *lua.LState) {
- L.PreloadModule("expect", Loader)
-}
-
-// Loader is the module loader function.
-func Loader(L *lua.LState) int {
- mod := L.SetFuncs(L.NewTable(), api)
- L.Push(mod)
- return 1
-}
-
-var api = map[string]lua.LGFunction{
- "spawn": spawn,
-}
-
-func spawn(L *lua.LState) int {
- cmd := L.CheckString(1)
- child, err := gexpect.Spawn(cmd)
- if err != nil {
- L.Push(lua.LNil)
- L.Push(lua.LString(err.Error()))
- return 2
- }
-
- L.Push(luar.New(L, child))
- return 1
-}
diff --git a/internal/gluasimplebox/sb.go b/internal/gluasimplebox/sb.go
deleted file mode 100644
index cbb707e..0000000
--- a/internal/gluasimplebox/sb.go
+++ /dev/null
@@ -1,100 +0,0 @@
-package gluasimplebox
-
-import (
- "crypto/rand"
- "encoding/base64"
- "encoding/hex"
- "errors"
-
- "github.com/brandur/simplebox"
- luar "github.com/layeh/gopher-luar"
- lua "github.com/yuin/gopher-lua"
-)
-
-func Preload(L *lua.LState) {
- L.PreloadModule("simplebox", Loader)
-}
-
-// Loader is the module loader function.
-func Loader(L *lua.LState) int {
- mod := L.SetFuncs(L.NewTable(), api)
- L.Push(mod)
- return 1
-}
-
-var api = map[string]lua.LGFunction{
- "new": newSecretBox,
- "genkey": genKey,
-}
-
-func newSecretBox(L *lua.LState) int {
- key := L.CheckString(1)
-
- k, err := parseKey(key)
- if err != nil {
- L.Push(lua.LNil)
- L.Push(lua.LString(err.Error()))
- return 2
- }
-
- sb := simplebox.NewFromSecretKey(k)
-
- L.Push(luar.New(L, &box{sb: sb}))
- return 1
-}
-
-func genKey(L *lua.LState) int {
- key, err := generateKey()
- if err != nil {
- L.Push(lua.LNil)
- L.Push(lua.LString(err.Error()))
- return 2
- }
-
- L.Push(lua.LString(base64.URLEncoding.EncodeToString(key[:])))
- return 1
-}
-
-func generateKey() (*[32]byte, error) {
- var k [32]byte
- _, err := rand.Read(k[:])
- if err != nil {
- return nil, err
- }
- return &k, nil
-}
-
-func parseKey(s string) (*[32]byte, error) {
- k := &[32]byte{}
- raw, err := base64.URLEncoding.DecodeString(s)
- if err != nil {
- return nil, err
- }
- if n := copy(k[:], raw); n < len(k) {
- return nil, errors.New("not valid")
- }
- return k, nil
-}
-
-type box struct {
- sb *simplebox.SimpleBox
-}
-
-func (b *box) Encrypt(data string) string {
- result := b.sb.Encrypt([]byte(data))
- return hex.EncodeToString(result)
-}
-
-func (b *box) Decrypt(data string) (string, error) {
- d, err := hex.DecodeString(data)
- if err != nil {
- return "", err
- }
-
- plain, err := b.sb.Decrypt([]byte(d))
- if err != nil {
- return "", err
- }
-
- return string(plain), nil
-}