From a71836937418a0ab499e830957a310e177f129e8 Mon Sep 17 00:00:00 2001 From: Milan Broz Date: Wed, 2 May 2012 00:41:05 +0200 Subject: [PATCH] Fix loop mapping on readonly file. --- ChangeLog | 3 +++ lib/utils_loop.c | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 7000963..3864982 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,6 @@ +2012-05-02 Milan Broz + * Fix loop mapping on readonly file. + 2012-04-09 Milan Broz * Fix header check to support old (cryptsetup 1.0.0) header alignment. (1.4.0) * Version 1.4.2. diff --git a/lib/utils_loop.c b/lib/utils_loop.c index d0f185b..6a4e11f 100644 --- a/lib/utils_loop.c +++ b/lib/utils_loop.c @@ -99,7 +99,7 @@ int crypt_loop_attach(const char *loop, const char *file, int offset, int loop_fd = -1, file_fd = -1, r = 1; file_fd = open(file, (*readonly ? O_RDONLY : O_RDWR) | O_EXCL); - if (file_fd < 0 && errno == EROFS && !*readonly) { + if (file_fd < 0 && (errno == EROFS || errno == EACCES) && !*readonly) { *readonly = 1; file_fd = open(file, O_RDONLY | O_EXCL); } -- 2.7.4