...
1
2
3
4
5
6
7
8
9
10
11 package obscuretestdata
12
13 import (
14 "encoding/base64"
15 "io"
16 "os"
17 )
18
19
20
21
22 func DecodeToTempFile(name string) (path string, err error) {
23 f, err := os.Open(name)
24 if err != nil {
25 return "", err
26 }
27 defer f.Close()
28
29 tmp, err := os.CreateTemp("", "obscuretestdata-decoded-")
30 if err != nil {
31 return "", err
32 }
33 if _, err := io.Copy(tmp, base64.NewDecoder(base64.StdEncoding, f)); err != nil {
34 tmp.Close()
35 os.Remove(tmp.Name())
36 return "", err
37 }
38 if err := tmp.Close(); err != nil {
39 os.Remove(tmp.Name())
40 return "", err
41 }
42 return tmp.Name(), nil
43 }
44
45
46 func ReadFile(name string) ([]byte, error) {
47 f, err := os.Open(name)
48 if err != nil {
49 return nil, err
50 }
51 defer f.Close()
52 return io.ReadAll(base64.NewDecoder(base64.StdEncoding, f))
53 }
54
View as plain text