Adding upstream version 0.0~git20231022.c6c9f9a.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
dc12642887
commit
0e47c428eb
9 changed files with 585 additions and 0 deletions
58
generate_decode_map.go
Normal file
58
generate_decode_map.go
Normal file
|
@ -0,0 +1,58 @@
|
|||
//go:build ignore
|
||||
|
||||
package main
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
)
|
||||
|
||||
func generateDecodeMap() [256]byte {
|
||||
const alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
|
||||
|
||||
var decodeMap [256]byte
|
||||
for i := 0; i < len(decodeMap); i++ {
|
||||
decodeMap[i] = 0xff
|
||||
}
|
||||
|
||||
for i := 0; i < len(alphabet); i++ {
|
||||
decodeMap[alphabet[i]] = byte(i)
|
||||
}
|
||||
|
||||
// for URL encoding
|
||||
decodeMap['-'] = decodeMap['+']
|
||||
decodeMap['_'] = decodeMap['/']
|
||||
|
||||
return decodeMap
|
||||
}
|
||||
|
||||
func main() {
|
||||
f, err := os.OpenFile("decode_map.go", os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0644)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
m := generateDecodeMap()
|
||||
var b bytes.Buffer
|
||||
fmt.Fprintf(&b, "// Code generated by generate_decode_map.go. DO NOT EDIT.\n\n")
|
||||
fmt.Fprintf(&b, "package base64dec\n\n")
|
||||
fmt.Fprintf(&b, "var decodeMap = [256]byte{")
|
||||
for i, v := range m {
|
||||
if i%16 == 0 {
|
||||
fmt.Fprintf(&b, "\n\t")
|
||||
} else {
|
||||
fmt.Fprint(&b, " ")
|
||||
}
|
||||
fmt.Fprintf(&b, "0x%02x,", v)
|
||||
}
|
||||
fmt.Fprintf(&b, "\n}\n")
|
||||
_, err = f.Write(b.Bytes())
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
err = f.Close()
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue