[PATCH] tools: fix removing preshared keys failing on some platforms

Tim Sedlmeyer tim at sedlmeyer.org
Sat Jan 27 19:11:36 CET 2018


errno is checked following fread of the preshared key file. fread doesn't set errno, so it shouldn't be checked. On the EdgeRouter ER-X when wg uses glibc instead of musl libc this incorrect check causes removal of preshared keys to fail. This patch removes the check of errno.

Signed-off-by: Tim Sedlmeyer <tim at sedlmeyer.org>
---
 src/tools/config.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/src/tools/config.c b/src/tools/config.c
index 5ab6ece..0407b36 100644
--- a/src/tools/config.c
+++ b/src/tools/config.c
@@ -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 (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 (!ferror(f) && feof(f) && !ftell(f)) {
 			memset(key, 0, WG_KEY_LEN);
-- 
2.16.1



More information about the WireGuard mailing list