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:
Jason A. Donenfeld 2018-01-29 21:40:08 +01:00
parent 17e7c34d38
commit 1e5d6b9a66

View file

@ -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);