diff options
Diffstat (limited to 'src/encoding/base32')
| -rw-r--r-- | src/encoding/base32/base32.go | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/encoding/base32/base32.go b/src/encoding/base32/base32.go index e921887285..d26cb5c685 100644 --- a/src/encoding/base32/base32.go +++ b/src/encoding/base32/base32.go @@ -26,9 +26,12 @@ type Encoding struct { } const ( - StdPadding rune = '=' // Standard padding character - NoPadding rune = -1 // No padding - decodeMapInitialize = "" + + StdPadding rune = '=' // Standard padding character + NoPadding rune = -1 // No padding +) + +const ( + decodeMapInitialize = "" + "\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff" + "\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff" + "\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff" + @@ -48,9 +51,6 @@ const ( invalidIndex = '\xff' ) -const encodeStd = "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567" -const encodeHex = "0123456789ABCDEFGHIJKLMNOPQRSTUV" - // NewEncoding returns a new padded Encoding defined by the given alphabet, // which must be a 32-byte string that contains unique byte values and // does not contain the padding character or CR / LF ('\r', '\n'). @@ -83,13 +83,12 @@ func NewEncoding(encoder string) *Encoding { return e } -// StdEncoding is the standard base32 encoding, as defined in -// RFC 4648. -var StdEncoding = NewEncoding(encodeStd) +// StdEncoding is the standard base32 encoding, as defined in RFC 4648. +var StdEncoding = NewEncoding("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567") // HexEncoding is the “Extended Hex Alphabet” defined in RFC 4648. // It is typically used in DNS. -var HexEncoding = NewEncoding(encodeHex) +var HexEncoding = NewEncoding("0123456789ABCDEFGHIJKLMNOPQRSTUV") // WithPadding creates a new encoding identical to enc except // with a specified padding character, or NoPadding to disable padding. |
