diff options
-rw-r--r-- | src/tool_metalink.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/tool_metalink.c b/src/tool_metalink.c index 773158711..b9c291851 100644 --- a/src/tool_metalink.c +++ b/src/tool_metalink.c @@ -337,10 +337,15 @@ static int check_hash(const char *filename, { unsigned char *result; digest_context *dctx; - int check_ok; - int fd; + int check_ok, flags, fd; + + flags = O_RDONLY; +#ifdef O_BINARY /* O_BINARY is required in order to avoid binary EOF in text mode */ - fd = open(filename, O_RDONLY | O_BINARY); + flags |= O_BINARY; +#endif + + fd = open(filename, flags); if(fd == -1) { fprintf(error, "Metalink: validating (%s) FAILED (%s)\n", filename, strerror(errno)); |