Skip to content

Commit d34a067

Browse files
committed
Fixed several issues reported by gosec
1 parent 5c510c7 commit d34a067

File tree

4 files changed

+35
-8
lines changed

4 files changed

+35
-8
lines changed

api.go

+15-4
Original file line numberDiff line numberDiff line change
@@ -62,11 +62,17 @@ func StartAPIServer(config *Config,
6262

6363
router.GET("/blockcache/personal", func(c *gin.Context) {
6464
filePath := filepath.FromSlash("sources/personal.list")
65-
f, err := os.OpenFile(filePath, os.O_APPEND|os.O_CREATE|os.O_RDONLY, 0644)
65+
f, err := os.OpenFile(filePath, os.O_APPEND|os.O_CREATE|os.O_RDONLY, 0600)
6666
if err != nil {
6767
logger.Critical(err)
6868
}
69-
defer f.Close()
69+
70+
defer func() {
71+
if err := f.Close(); err != nil {
72+
logger.Criticalf("Error closing file: %s\n", err)
73+
}
74+
}()
75+
7076
personalBlockList := []string{}
7177

7278
scanner := bufio.NewScanner(f)
@@ -79,11 +85,16 @@ func StartAPIServer(config *Config,
7985

8086
router.GET("/blockcache/set/:key", func(c *gin.Context) {
8187
filePath := filepath.FromSlash("sources/personal.list")
82-
f, err := os.OpenFile(filePath, os.O_APPEND|os.O_CREATE|os.O_RDWR, 0644)
88+
f, err := os.OpenFile(filePath, os.O_APPEND|os.O_CREATE|os.O_RDWR, 0600)
8389
if err != nil {
8490
logger.Critical(err)
8591
}
86-
defer f.Close()
92+
93+
defer func() {
94+
if err := f.Close(); err != nil {
95+
logger.Criticalf("Error closing file: %s\n", err)
96+
}
97+
}()
8798

8899
_, err = blockCache.Get(c.Param("key"))
89100
if err == (KeyNotFound{c.Param("key")}) {

config.go

+6-1
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,12 @@ func generateConfig(path string) error {
179179
if err != nil {
180180
return fmt.Errorf("could not generate config: %s", err)
181181
}
182-
defer output.Close()
182+
183+
defer func() {
184+
if err := output.Close(); err != nil {
185+
logger.Criticalf("Error closing file: %s\n", err)
186+
}
187+
}()
183188

184189
r := strings.NewReader(fmt.Sprintf(defaultConfig, ConfigVersion))
185190
if _, err := io.Copy(output, r); err != nil {

logger.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ func createLogFile(fileName string) (*os.File, error) {
101101
}
102102
}
103103

104-
file, err := os.OpenFile(fileName, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
104+
file, err := os.OpenFile(fileName, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0600)
105105
if err != nil {
106106
return nil, fmt.Errorf("error opening log file: %s", err)
107107
}

updater.go

+13-2
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,12 @@ func downloadFile(uri string, name string) error {
4646
if err != nil {
4747
return fmt.Errorf("error creating file: %s", err)
4848
}
49-
defer output.Close()
49+
50+
defer func() {
51+
if err := output.Close(); err != nil {
52+
logger.Criticalf("Error closing file: %s\n", err)
53+
}
54+
}()
5055

5156
response, err := http.Get(uri)
5257
if err != nil {
@@ -124,7 +129,13 @@ func parseHostFile(fileName string, blockCache *MemoryBlockCache) error {
124129
if err != nil {
125130
return fmt.Errorf("error opening file: %s", err)
126131
}
127-
defer file.Close()
132+
133+
defer func() {
134+
if err := file.Close(); err != nil {
135+
logger.Criticalf("Error closing file: %s\n", err)
136+
}
137+
}()
138+
128139
scanner := bufio.NewScanner(file)
129140
for scanner.Scan() {
130141
line := scanner.Text()

0 commit comments

Comments
 (0)