diff options
author | 6543 <6543@obermui.de> | 2021-01-28 17:56:38 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-28 17:56:38 +0100 |
commit | d1353e1f7c9bf648cd72bd9731b4f843b0dc9a86 (patch) | |
tree | c41437643185d16ab257cf9856a3e1ae8a835112 /vendor/github.com/pquerna | |
parent | e45bf12a34d04b18f09663f179fb58aca9ffa192 (diff) | |
download | gitea-d1353e1f7c9bf648cd72bd9731b4f843b0dc9a86.tar.gz gitea-d1353e1f7c9bf648cd72bd9731b4f843b0dc9a86.zip |
Vendor Update (#14496)
* update code.gitea.io/sdk/gitea v0.13.1 -> v0.13.2
* update github.com/go-swagger/go-swagger v0.25.0 -> v0.26.0
* update github.com/google/uuid v1.1.2 -> v1.2.0
* update github.com/klauspost/compress v1.11.3 -> v1.11.7
* update github.com/lib/pq 083382b7e6fc -> v1.9.0
* update github.com/markbates/goth v1.65.0 -> v1.66.1
* update github.com/mattn/go-sqlite3 v1.14.4 -> v1.14.6
* update github.com/mgechev/revive 246eac737dc7 -> v1.0.3
* update github.com/minio/minio-go/v7 v7.0.6 -> v7.0.7
* update github.com/niklasfasching/go-org v1.3.2 -> v1.4.0
* update github.com/olivere/elastic/v7 v7.0.21 -> v7.0.22
* update github.com/pquerna/otp v1.2.0 -> v1.3.0
* update github.com/xanzy/go-gitlab v0.39.0 -> v0.42.0
* update github.com/yuin/goldmark v1.2.1 -> v1.3.1
Diffstat (limited to 'vendor/github.com/pquerna')
-rw-r--r-- | vendor/github.com/pquerna/otp/.travis.yml | 5 | ||||
-rw-r--r-- | vendor/github.com/pquerna/otp/README.md | 2 | ||||
-rw-r--r-- | vendor/github.com/pquerna/otp/hotp/hotp.go | 9 | ||||
-rw-r--r-- | vendor/github.com/pquerna/otp/otp.go | 16 | ||||
-rw-r--r-- | vendor/github.com/pquerna/otp/totp/totp.go | 9 |
5 files changed, 37 insertions, 4 deletions
diff --git a/vendor/github.com/pquerna/otp/.travis.yml b/vendor/github.com/pquerna/otp/.travis.yml index 5a9ed93afb..016c02c717 100644 --- a/vendor/github.com/pquerna/otp/.travis.yml +++ b/vendor/github.com/pquerna/otp/.travis.yml @@ -1,7 +1,10 @@ +arch: + - amd64 + - ppc64le language: go env: - GO111MODULE=on go: - - "1.12" + - "1.15" diff --git a/vendor/github.com/pquerna/otp/README.md b/vendor/github.com/pquerna/otp/README.md index 148e8980d6..4cb9b71dc3 100644 --- a/vendor/github.com/pquerna/otp/README.md +++ b/vendor/github.com/pquerna/otp/README.md @@ -1,6 +1,6 @@ # otp: One Time Password utilities Go / Golang -[![GoDoc](https://godoc.org/github.com/pquerna/otp?status.svg)](https://godoc.org/github.com/pquerna/otp) [![Build Status](https://travis-ci.org/pquerna/otp.svg?branch=master)](https://travis-ci.org/pquerna/otp) +[![PkgGoDev](https://pkg.go.dev/badge/github.com/pquerna/otp)](https://pkg.go.dev/github.com/pquerna/otp) [![Build Status](https://travis-ci.org/pquerna/otp.svg?branch=master)](https://travis-ci.org/pquerna/otp) # Why One Time Passwords? diff --git a/vendor/github.com/pquerna/otp/hotp/hotp.go b/vendor/github.com/pquerna/otp/hotp/hotp.go index 5e99e2218e..7b94734045 100644 --- a/vendor/github.com/pquerna/otp/hotp/hotp.go +++ b/vendor/github.com/pquerna/otp/hotp/hotp.go @@ -19,6 +19,7 @@ package hotp import ( "github.com/pquerna/otp" + "io" "crypto/hmac" "crypto/rand" @@ -152,6 +153,8 @@ type GenerateOpts struct { Digits otp.Digits // Algorithm to use for HMAC. Defaults to SHA1. Algorithm otp.Algorithm + // Reader to use for generating HOTP Key. + Rand io.Reader } var b32NoPadding = base32.StdEncoding.WithPadding(base32.NoPadding) @@ -175,6 +178,10 @@ func Generate(opts GenerateOpts) (*otp.Key, error) { opts.Digits = otp.DigitsSix } + if opts.Rand == nil { + opts.Rand = rand.Reader + } + // otpauth://totp/Example:alice@google.com?secret=JBSWY3DPEHPK3PXP&issuer=Example v := url.Values{} @@ -182,7 +189,7 @@ func Generate(opts GenerateOpts) (*otp.Key, error) { v.Set("secret", b32NoPadding.EncodeToString(opts.Secret)) } else { secret := make([]byte, opts.SecretSize) - _, err := rand.Read(secret) + _, err := opts.Rand.Read(secret) if err != nil { return nil, err } diff --git a/vendor/github.com/pquerna/otp/otp.go b/vendor/github.com/pquerna/otp/otp.go index 5db93029ce..9f20983709 100644 --- a/vendor/github.com/pquerna/otp/otp.go +++ b/vendor/github.com/pquerna/otp/otp.go @@ -31,6 +31,7 @@ import ( "image" "net/url" "strings" + "strconv" ) // Error when attempting to convert the secret from base32 to raw bytes. @@ -138,6 +139,18 @@ func (k *Key) Secret() string { return q.Get("secret") } +// Period returns a tiny int representing the rotation time in seconds. +func (k *Key) Period() uint64 { + q := k.url.Query() + + if u, err := strconv.ParseUint(q.Get("period"), 10, 64); err == nil { + return u + } + + // If no period is defined 30 seconds is the default per (rfc6238) + return 30 +} + // URL returns the OTP URL as a string func (k *Key) URL() string { return k.url.String() @@ -148,6 +161,9 @@ func (k *Key) URL() string { type Algorithm int const ( + // AlgorithmSHA1 should be used for compatibility with Google Authenticator. + // + // See https://github.com/pquerna/otp/issues/55 for additional details. AlgorithmSHA1 Algorithm = iota AlgorithmSHA256 AlgorithmSHA512 diff --git a/vendor/github.com/pquerna/otp/totp/totp.go b/vendor/github.com/pquerna/otp/totp/totp.go index b46fa567e6..db5ed36d82 100644 --- a/vendor/github.com/pquerna/otp/totp/totp.go +++ b/vendor/github.com/pquerna/otp/totp/totp.go @@ -20,6 +20,7 @@ package totp import ( "github.com/pquerna/otp" "github.com/pquerna/otp/hotp" + "io" "crypto/rand" "encoding/base32" @@ -142,6 +143,8 @@ type GenerateOpts struct { Digits otp.Digits // Algorithm to use for HMAC. Defaults to SHA1. Algorithm otp.Algorithm + // Reader to use for generating TOTP Key. + Rand io.Reader } var b32NoPadding = base32.StdEncoding.WithPadding(base32.NoPadding) @@ -169,6 +172,10 @@ func Generate(opts GenerateOpts) (*otp.Key, error) { opts.Digits = otp.DigitsSix } + if opts.Rand == nil { + opts.Rand = rand.Reader + } + // otpauth://totp/Example:alice@google.com?secret=JBSWY3DPEHPK3PXP&issuer=Example v := url.Values{} @@ -176,7 +183,7 @@ func Generate(opts GenerateOpts) (*otp.Key, error) { v.Set("secret", b32NoPadding.EncodeToString(opts.Secret)) } else { secret := make([]byte, opts.SecretSize) - _, err := rand.Read(secret) + _, err := opts.Rand.Read(secret) if err != nil { return nil, err } |