diff options
| author | Stefan Majewsky <majewsky@gmx.net> | 2017-05-04 22:36:53 +0200 |
|---|---|---|
| committer | Stefan Majewsky <majewsky@gmx.net> | 2017-05-04 22:36:53 +0200 |
| commit | ec4270c43f1ddd37d1eb19da5db78129b93f72b7 (patch) | |
| tree | 67ab3eab1e71ef1b5479f3f5a00e040b622d7191 /vendor/golang.org/x/crypto/bcrypt/base64.go | |
| parent | c69e9f604c47469429a6a8a27ba7ef873134e0a1 (diff) | |
| download | gofu-ec4270c43f1ddd37d1eb19da5db78129b93f72b7.tar.gz | |
add "cli" package with a Query method
Diffstat (limited to 'vendor/golang.org/x/crypto/bcrypt/base64.go')
| -rw-r--r-- | vendor/golang.org/x/crypto/bcrypt/base64.go | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/vendor/golang.org/x/crypto/bcrypt/base64.go b/vendor/golang.org/x/crypto/bcrypt/base64.go new file mode 100644 index 0000000..fc31160 --- /dev/null +++ b/vendor/golang.org/x/crypto/bcrypt/base64.go @@ -0,0 +1,35 @@ +// Copyright 2011 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package bcrypt + +import "encoding/base64" + +const alphabet = "./ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" + +var bcEncoding = base64.NewEncoding(alphabet) + +func base64Encode(src []byte) []byte { + n := bcEncoding.EncodedLen(len(src)) + dst := make([]byte, n) + bcEncoding.Encode(dst, src) + for dst[n-1] == '=' { + n-- + } + return dst[:n] +} + +func base64Decode(src []byte) ([]byte, error) { + numOfEquals := 4 - (len(src) % 4) + for i := 0; i < numOfEquals; i++ { + src = append(src, '=') + } + + dst := make([]byte, bcEncoding.DecodedLen(len(src))) + n, err := bcEncoding.Decode(dst, src) + if err != nil { + return nil, err + } + return dst[:n], nil +} |
