mirror of
https://github.com/openfaas/faasd.git
synced 2025-06-19 20:46:40 +00:00
Migrate to containerd 1.54
Signed-off-by: Alex Ellis (OpenFaaS Ltd) <alexellis2@gmail.com>
This commit is contained in:
committed by
Alex Ellis
parent
4c9c66812a
commit
2ae8b31ac0
28
vendor/github.com/sethvargo/go-password/password/generate.go
generated
vendored
28
vendor/github.com/sethvargo/go-password/password/generate.go
generated
vendored
@ -13,6 +13,7 @@ package password
|
||||
import (
|
||||
"crypto/rand"
|
||||
"errors"
|
||||
"io"
|
||||
"math/big"
|
||||
"strings"
|
||||
)
|
||||
@ -67,6 +68,7 @@ type Generator struct {
|
||||
upperLetters string
|
||||
digits string
|
||||
symbols string
|
||||
reader io.Reader
|
||||
}
|
||||
|
||||
// GeneratorInput is used as input to the NewGenerator function.
|
||||
@ -75,6 +77,7 @@ type GeneratorInput struct {
|
||||
UpperLetters string
|
||||
Digits string
|
||||
Symbols string
|
||||
Reader io.Reader // rand.Reader by default
|
||||
}
|
||||
|
||||
// NewGenerator creates a new Generator from the specified configuration. If no
|
||||
@ -90,6 +93,7 @@ func NewGenerator(i *GeneratorInput) (*Generator, error) {
|
||||
upperLetters: i.UpperLetters,
|
||||
digits: i.Digits,
|
||||
symbols: i.Symbols,
|
||||
reader: i.Reader,
|
||||
}
|
||||
|
||||
if g.lowerLetters == "" {
|
||||
@ -108,6 +112,10 @@ func NewGenerator(i *GeneratorInput) (*Generator, error) {
|
||||
g.symbols = Symbols
|
||||
}
|
||||
|
||||
if g.reader == nil {
|
||||
g.reader = rand.Reader
|
||||
}
|
||||
|
||||
return g, nil
|
||||
}
|
||||
|
||||
@ -146,7 +154,7 @@ func (g *Generator) Generate(length, numDigits, numSymbols int, noUpper, allowRe
|
||||
|
||||
// Characters
|
||||
for i := 0; i < chars; i++ {
|
||||
ch, err := randomElement(letters)
|
||||
ch, err := randomElement(g.reader, letters)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
@ -156,7 +164,7 @@ func (g *Generator) Generate(length, numDigits, numSymbols int, noUpper, allowRe
|
||||
continue
|
||||
}
|
||||
|
||||
result, err = randomInsert(result, ch)
|
||||
result, err = randomInsert(g.reader, result, ch)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
@ -164,7 +172,7 @@ func (g *Generator) Generate(length, numDigits, numSymbols int, noUpper, allowRe
|
||||
|
||||
// Digits
|
||||
for i := 0; i < numDigits; i++ {
|
||||
d, err := randomElement(g.digits)
|
||||
d, err := randomElement(g.reader, g.digits)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
@ -174,7 +182,7 @@ func (g *Generator) Generate(length, numDigits, numSymbols int, noUpper, allowRe
|
||||
continue
|
||||
}
|
||||
|
||||
result, err = randomInsert(result, d)
|
||||
result, err = randomInsert(g.reader, result, d)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
@ -182,7 +190,7 @@ func (g *Generator) Generate(length, numDigits, numSymbols int, noUpper, allowRe
|
||||
|
||||
// Symbols
|
||||
for i := 0; i < numSymbols; i++ {
|
||||
sym, err := randomElement(g.symbols)
|
||||
sym, err := randomElement(g.reader, g.symbols)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
@ -192,7 +200,7 @@ func (g *Generator) Generate(length, numDigits, numSymbols int, noUpper, allowRe
|
||||
continue
|
||||
}
|
||||
|
||||
result, err = randomInsert(result, sym)
|
||||
result, err = randomInsert(g.reader, result, sym)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
@ -230,12 +238,12 @@ func MustGenerate(length, numDigits, numSymbols int, noUpper, allowRepeat bool)
|
||||
}
|
||||
|
||||
// randomInsert randomly inserts the given value into the given string.
|
||||
func randomInsert(s, val string) (string, error) {
|
||||
func randomInsert(reader io.Reader, s, val string) (string, error) {
|
||||
if s == "" {
|
||||
return val, nil
|
||||
}
|
||||
|
||||
n, err := rand.Int(rand.Reader, big.NewInt(int64(len(s)+1)))
|
||||
n, err := rand.Int(reader, big.NewInt(int64(len(s)+1)))
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
@ -244,8 +252,8 @@ func randomInsert(s, val string) (string, error) {
|
||||
}
|
||||
|
||||
// randomElement extracts a random element from the given string.
|
||||
func randomElement(s string) (string, error) {
|
||||
n, err := rand.Int(rand.Reader, big.NewInt(int64(len(s))))
|
||||
func randomElement(reader io.Reader, s string) (string, error) {
|
||||
n, err := rand.Int(reader, big.NewInt(int64(len(s))))
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
Reference in New Issue
Block a user