wg: fread doesn't change errno
Thus we might be responding to an old errno, which could cause this to unnecessarily fail. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
parent
17e7c34d38
commit
1e5d6b9a66
|
@ -128,10 +128,6 @@ static bool parse_keyfile(uint8_t key[static WG_KEY_LEN], const char *path)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (fread(dst, WG_KEY_LEN_BASE64 - 1, 1, f) != 1) {
|
if (fread(dst, WG_KEY_LEN_BASE64 - 1, 1, f) != 1) {
|
||||||
if (errno) {
|
|
||||||
perror("fread");
|
|
||||||
goto out;
|
|
||||||
}
|
|
||||||
/* If we're at the end and we didn't read anything, we're /dev/null or an empty file. */
|
/* If we're at the end and we didn't read anything, we're /dev/null or an empty file. */
|
||||||
if (!ferror(f) && feof(f) && !ftell(f)) {
|
if (!ferror(f) && feof(f) && !ftell(f)) {
|
||||||
memset(key, 0, WG_KEY_LEN);
|
memset(key, 0, WG_KEY_LEN);
|
||||||
|
|
Reference in New Issue