From 2075f4b4d2d2cab03f0df48dd967f0c54658023e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89rico=20Rolim?= Date: Fri, 9 Oct 2020 01:04:32 -0300 Subject: [PATCH] Add fread checking and fix order of parameters. Not a problem on little endian machines, potentially a problem on big endian ones. Thanks Riastradh from freenode.##crypto. --- cbc-file.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cbc-file.c b/cbc-file.c index c327e3f..8832a25 100644 --- a/cbc-file.c +++ b/cbc-file.c @@ -94,7 +94,10 @@ static ssize_t open_file_for_read(char *name, uint8_t **buffer) return -1; } - fread(*buffer, size, 1, file); + if (fread(*buffer, 1, size, file) != (size_t)size) { + fputs("mismatched file size and bytes read!\n", stderr); + return -1; + } fclose(file); return size;