raphaelts3 / wyd2encdec

Unsafe defer of .Close method GO-S2307
Security
Major
6 occurrences in this check
Deferring unsafe method "Close" on type "*os.File"
138		out, _ = os.Create("./decoded.bin")
139		out.Write(*encryptedFileRaw)
140	}
141	defer out.Close()142	diff := 0
143	for i := int64(0); i < sizeEncryptedFile; i++ {
144		if (*encryptedFileRaw)[i] != (*decryptedFileRaw)[i] {
Deferring unsafe method "Close" on type "*os.File"
 95		fmt.Println("Failed to open the data file")
 96		return nil
 97	}
 98	defer f.Close() 99	*fileSize = fileInfo.Size()
100
101	dataRaw := make([]uint8, *fileSize)
Deferring unsafe method "Close" on type "*os.File"
 79		fmt.Println(err, filePath)
 80		return false
 81	}
 82	defer f.Close() 83	count, err := f.Read(keys)
 84	if err != nil || count < 512 {
 85		fmt.Println("Failed to read the keys file")
Deferring unsafe method "Close" on type "*os.File"
138		out, _ = os.Create("./decoded.bin")
139		out.Write(*encryptedFileRaw)
140	}
141	defer out.Close()142	diff := 0
143	for i := int64(0); i < sizeEncryptedFile; i++ {
144		if (*encryptedFileRaw)[i] != (*decryptedFileRaw)[i] {
Deferring unsafe method "Close" on type "*os.File"
 95		fmt.Println("Failed to open the data file")
 96		return nil
 97	}
 98	defer f.Close() 99	*fileSize = fileInfo.Size()
100
101	dataRaw := make([]uint8, *fileSize)
Deferring unsafe method "Close" on type "*os.File"
 79		fmt.Println(err, filePath)
 80		return false
 81	}
 82	defer f.Close() 83	count, err := f.Read(keys)
 84	if err != nil || count < 512 {
 85		fmt.Println("Failed to read the keys file")